From 98119c56f4daa1feb5f683cb36295168f3203632 Mon Sep 17 00:00:00 2001 From: H4CK3R-01 Date: Fri, 11 Mar 2022 17:13:30 +0100 Subject: [PATCH] - Added plugin source code - removed plugin dll - Changed file structure - Added readme --- SOURCE/{ => Application}/App.config | 0 SOURCE/{ => Application}/Application.csproj | 48 +- SOURCE/Application/Application.sln | 31 + SOURCE/{ => Application}/Form1.Designer.cs | 10 +- SOURCE/{ => Application}/Form1.cs | 5 - SOURCE/{ => Application}/Form1.resx | 0 .../AML.Editor.PluginContracts.dll | Bin 0 -> 20480 bytes .../AML.Editor.PluginContracts.xml | 1343 ++ .../ModellingWizard/AML.Engine.Services.dll | Bin 0 -> 159744 bytes .../ModellingWizard/AML.Engine.Services.xml | 2762 +++ .../Plugins/ModellingWizard/AML.Engine.dll | Bin 0 -> 554496 bytes .../Plugins/ModellingWizard/AML.Engine.xml | 18986 ++++++++++++++++ .../Plugins/ModellingWizard/Gsd2Aml.Lib.dll | Bin 0 -> 321024 bytes .../Plugins/ModellingWizard/Gsd2Aml.Lib.xml | 3717 +++ .../ModellingWizard/Microsoft.CSharp.dll | Bin 0 -> 47792 bytes .../ModellingWizard/ModellingWizard.dll | Bin 0 -> 805888 bytes .../ModellingWizard.dll.config | 12 + .../ModellingWizard/PresentationCore.dll | Bin 0 -> 1367728 bytes .../ModellingWizard/PresentationFramework.dll | Bin 0 -> 2093248 bytes .../System.ComponentModel.Composition.dll | Bin 0 -> 110832 bytes .../System.Data.DataSetExtensions.dll | Bin 0 -> 27872 bytes .../Plugins/ModellingWizard/System.Data.dll | Bin 0 -> 1278104 bytes .../ModellingWizard/System.Drawing.dll | Bin 0 -> 189608 bytes .../System.IO.FileSystem.AccessControl.dll | Bin 0 -> 28552 bytes .../System.IO.FileSystem.AccessControl.xml | 590 + .../ModellingWizard/System.IO.Packaging.dll | Bin 0 -> 45448 bytes .../ModellingWizard/System.IO.Packaging.xml | 998 + .../ModellingWizard/System.Net.Http.dll | Bin 0 -> 86696 bytes .../System.Security.AccessControl.dll | Bin 0 -> 33672 bytes .../System.Security.AccessControl.xml | 2047 ++ .../System.Security.Principal.Windows.dll | Bin 0 -> 18312 bytes .../System.Security.Principal.Windows.xml | 1091 + .../ModellingWizard/System.Windows.Forms.dll | Bin 0 -> 1884864 bytes .../Plugins/ModellingWizard/System.Xaml.dll | Bin 0 -> 111256 bytes .../ModellingWizard/System.Xml.Linq.dll | Bin 0 -> 45736 bytes .../Plugins/ModellingWizard/System.Xml.dll | Bin 0 -> 925336 bytes .../Plugins/ModellingWizard/System.dll | Bin 0 -> 1475208 bytes .../Plugins/ModellingWizard/WindowsBase.dll | Bin 0 -> 665240 bytes .../WindowsFormsIntegration.dll | Bin 0 -> 36040 bytes SOURCE/{ => Application}/Program.cs | 0 .../Properties/AssemblyInfo.cs | 8 +- .../Properties/Resources.Designer.cs | 59 +- .../Properties/Resources.resx | 0 .../Properties/Settings.Designer.cs | 29 +- .../Properties/Settings.settings | 0 SOURCE/Plugin/.gitignore | 5 + SOURCE/Plugin/About.xaml | 161 + SOURCE/Plugin/About.xaml.cs | 42 + SOURCE/Plugin/AnimationClass.cs | 164 + SOURCE/Plugin/AutomationMLDataTables.cs | 172 + SOURCE/Plugin/ClassDiagram1.cd | 40 + SOURCE/Plugin/ClassDiagram2.cd | 141 + .../Plugin/ClassOfListsFromDataGridViews.cs | 65 + .../Plugin/ClassOfListsFromReferencefile.cs | 69 + SOURCE/Plugin/Code Documentation/Doxyfile | 2577 +++ .../html/_about_8xaml_8cs.html | 131 + .../html/_animation_class_8cs.html | 130 + .../html/_automation_m_l_data_tables_8cs.html | 130 + ...ass_of_lists_from_data_grid_views_8cs.html | 130 + ...class_of_lists_from_referencefile_8cs.html | 130 + .../_device_description_8_designer_8cs.html | 130 + .../html/_device_description_8cs.html | 130 + .../html/_m_w_controller_8cs.html | 131 + .../html/_m_w_data_8cs.html | 132 + .../html/_m_w_device_8cs.html | 143 + .../html/_modelling_wizard_8xaml_8cs.html | 131 + .../html/_r_e_a_d_m_e_8md.html | 112 + .../_search_a_m_l_component_file_8cs.html | 130 + .../html/_search_a_m_l_library_file_8cs.html | 131 + .../Code Documentation/html/annotated.html | 137 + .../Code Documentation/html/annotated_dup.js | 4 + .../Plugin/Code Documentation/html/bc_s.png | Bin 0 -> 676 bytes .../Plugin/Code Documentation/html/bdwn.png | Bin 0 -> 147 bytes ...1_editor_1_1_plugin_1_1_about-members.html | 116 + ...s_aml_1_1_editor_1_1_plugin_1_1_about.html | 190 + ...ass_aml_1_1_editor_1_1_plugin_1_1_about.js | 5 + ...ss_aml_1_1_editor_1_1_plugin_1_1_about.png | Bin 0 -> 557 bytes ..._1_plugin_1_1_animation_class-members.html | 131 + ...editor_1_1_plugin_1_1_animation_class.html | 634 + ...1_editor_1_1_plugin_1_1_animation_class.js | 20 + ...les_data_grid_view_parameters-members.html | 120 + ...attachables_data_grid_view_parameters.html | 299 + ...1_attachables_data_grid_view_parameters.js | 9 + ..._1_automation_m_l_data_tables-members.html | 118 + ...plugin_1_1_automation_m_l_data_tables.html | 282 + ...1_plugin_1_1_automation_m_l_data_tables.js | 7 + ...of_lists_from_data_grid_views-members.html | 129 + ...1_class_of_lists_from_data_grid_views.html | 569 + ...1_1_class_of_lists_from_data_grid_views.js | 18 + ...s_of_lists_from_referencefile-members.html | 132 + ...1_1_class_of_lists_from_referencefile.html | 659 + ...n_1_1_class_of_lists_from_referencefile.js | 21 + ...ugin_1_1_data_grid_parameters-members.html | 120 + ...r_1_1_plugin_1_1_data_grid_parameters.html | 299 + ...tor_1_1_plugin_1_1_data_grid_parameters.js | 9 + ...plugin_1_1_device_description-members.html | 126 + ...tor_1_1_plugin_1_1_device_description.html | 486 + ...ditor_1_1_plugin_1_1_device_description.js | 15 + ...itor_1_1_plugin_1_1_device_description.png | Bin 0 -> 1065 bytes ...ectrical_interface_parameters-members.html | 127 + ...n_1_1_electrical_interface_parameters.html | 503 + ...gin_1_1_electrical_interface_parameters.js | 16 + ...gin_1_1_electrical_parameters-members.html | 123 + ..._1_1_plugin_1_1_electrical_parameters.html | 388 + ...or_1_1_plugin_1_1_electrical_parameters.js | 12 + ...lectrical_data_data_grid_view-members.html | 121 + ...ers_in_electrical_data_data_grid_view.html | 329 + ...eters_in_electrical_data_data_grid_view.js | 10 + ...1_1_plugin_1_1_m_w_controller-members.html | 120 + ..._editor_1_1_plugin_1_1_m_w_controller.html | 382 + ..._1_editor_1_1_plugin_1_1_m_w_controller.js | 14 + ...ditor_1_1_plugin_1_1_m_w_data-members.html | 137 + ...ml_1_1_editor_1_1_plugin_1_1_m_w_data.html | 700 + ..._aml_1_1_editor_1_1_plugin_1_1_m_w_data.js | 18 + ...aml_1_1_editor_1_1_plugin_1_1_m_w_data.png | Bin 0 -> 1060 bytes ..._1_plugin_1_1_m_w_data_1_1_m_w_object.html | 124 + ...1_1_plugin_1_1_m_w_data_1_1_m_w_object.png | Bin 0 -> 866 bytes ...tor_1_1_plugin_1_1_m_w_device-members.html | 130 + ..._1_1_editor_1_1_plugin_1_1_m_w_device.html | 516 + ...ml_1_1_editor_1_1_plugin_1_1_m_w_device.js | 19 + ...l_1_1_editor_1_1_plugin_1_1_m_w_device.png | Bin 0 -> 855 bytes ...1_plugin_1_1_modelling_wizard-members.html | 136 + ...ditor_1_1_plugin_1_1_modelling_wizard.html | 797 + ..._editor_1_1_plugin_1_1_modelling_wizard.js | 25 + ...editor_1_1_plugin_1_1_modelling_wizard.png | Bin 0 -> 998 bytes ...rs_in_pin_info_data_grid_view-members.html | 122 + ...parameters_in_pin_info_data_grid_view.html | 359 + ...n_parameters_in_pin_info_data_grid_view.js | 11 + ...1_search_a_m_l_component_file-members.html | 131 + ...lugin_1_1_search_a_m_l_component_file.html | 864 + ..._plugin_1_1_search_a_m_l_component_file.js | 20 + ...1_1_search_a_m_l_library_file-members.html | 158 + ..._plugin_1_1_search_a_m_l_library_file.html | 2369 ++ ..._1_plugin_1_1_search_a_m_l_library_file.js | 47 + .../Code Documentation/html/classes.html | 158 + .../Plugin/Code Documentation/html/closed.png | Bin 0 -> 132 bytes SOURCE/Plugin/Code Documentation/html/doc.png | Bin 0 -> 746 bytes .../Code Documentation/html/doxygen.css | 1771 ++ .../Code Documentation/html/doxygen.png | Bin 0 -> 3779 bytes .../Code Documentation/html/dynsections.js | 120 + .../Plugin/Code Documentation/html/files.html | 128 + .../Code Documentation/html/files_dup.js | 49 + .../Code Documentation/html/folderclosed.png | Bin 0 -> 616 bytes .../Code Documentation/html/folderopen.png | Bin 0 -> 597 bytes .../Code Documentation/html/functions.html | 145 + .../Code Documentation/html/functions_b.html | 114 + .../Code Documentation/html/functions_c.html | 212 + .../Code Documentation/html/functions_d.html | 203 + .../Code Documentation/html/functions_dup.js | 22 + .../Code Documentation/html/functions_e.html | 135 + .../html/functions_enum.html | 115 + .../html/functions_evnt.html | 115 + .../Code Documentation/html/functions_f.html | 120 + .../html/functions_func.html | 382 + .../Code Documentation/html/functions_g.html | 114 + .../Code Documentation/html/functions_i.html | 142 + .../Code Documentation/html/functions_l.html | 126 + .../Code Documentation/html/functions_m.html | 129 + .../Code Documentation/html/functions_n.html | 115 + .../Code Documentation/html/functions_o.html | 114 + .../Code Documentation/html/functions_p.html | 150 + .../html/functions_prop.html | 435 + .../Code Documentation/html/functions_r.html | 143 + .../Code Documentation/html/functions_s.html | 164 + .../Code Documentation/html/functions_t.html | 127 + .../Code Documentation/html/functions_u.html | 120 + .../Code Documentation/html/functions_v.html | 127 + .../html/functions_vars.html | 121 + .../Code Documentation/html/functions_w.html | 120 + .../Code Documentation/html/hierarchy.html | 138 + .../Code Documentation/html/hierarchy.js | 31 + .../Plugin/Code Documentation/html/index.html | 126 + .../Plugin/Code Documentation/html/jquery.js | 35 + .../html/md__r_e_a_d_m_e.html | 165 + .../html/namespace_aml.html | 120 + .../Code Documentation/html/namespace_aml.js | 4 + .../html/namespace_aml_1_1_editor.html | 120 + .../html/namespace_aml_1_1_editor.js | 4 + .../namespace_aml_1_1_editor_1_1_plugin.html | 159 + .../namespace_aml_1_1_editor_1_1_plugin.js | 21 + .../Code Documentation/html/namespaces.html | 118 + .../Code Documentation/html/namespaces_dup.js | 4 + .../Plugin/Code Documentation/html/nav_f.png | Bin 0 -> 153 bytes .../Plugin/Code Documentation/html/nav_g.png | Bin 0 -> 95 bytes .../Plugin/Code Documentation/html/nav_h.png | Bin 0 -> 98 bytes .../Code Documentation/html/navtree.css | 146 + .../Plugin/Code Documentation/html/navtree.js | 544 + .../Code Documentation/html/navtreedata.js | 61 + .../Code Documentation/html/navtreeindex0.js | 253 + .../Code Documentation/html/navtreeindex1.js | 67 + .../Plugin/Code Documentation/html/open.png | Bin 0 -> 123 bytes .../Plugin/Code Documentation/html/pages.html | 116 + .../Plugin/Code Documentation/html/resize.js | 137 + .../Code Documentation/html/search/all_0.html | 30 + .../Code Documentation/html/search/all_0.js | 20 + .../Code Documentation/html/search/all_1.html | 30 + .../Code Documentation/html/search/all_1.js | 4 + .../html/search/all_10.html | 30 + .../Code Documentation/html/search/all_10.js | 5 + .../html/search/all_11.html | 30 + .../Code Documentation/html/search/all_11.js | 7 + .../html/search/all_12.html | 30 + .../Code Documentation/html/search/all_12.js | 6 + .../Code Documentation/html/search/all_2.html | 30 + .../Code Documentation/html/search/all_2.js | 38 + .../Code Documentation/html/search/all_3.html | 30 + .../Code Documentation/html/search/all_3.js | 34 + .../Code Documentation/html/search/all_4.html | 30 + .../Code Documentation/html/search/all_4.js | 11 + .../Code Documentation/html/search/all_5.html | 30 + .../Code Documentation/html/search/all_5.js | 5 + .../Code Documentation/html/search/all_6.html | 30 + .../Code Documentation/html/search/all_6.js | 5 + .../Code Documentation/html/search/all_7.html | 30 + .../Code Documentation/html/search/all_7.js | 14 + .../Code Documentation/html/search/all_8.html | 30 + .../Code Documentation/html/search/all_8.js | 8 + .../Code Documentation/html/search/all_9.html | 30 + .../Code Documentation/html/search/all_9.js | 16 + .../Code Documentation/html/search/all_a.html | 30 + .../Code Documentation/html/search/all_a.js | 4 + .../Code Documentation/html/search/all_b.html | 30 + .../Code Documentation/html/search/all_b.js | 4 + .../Code Documentation/html/search/all_c.html | 30 + .../Code Documentation/html/search/all_c.js | 16 + .../Code Documentation/html/search/all_d.html | 30 + .../Code Documentation/html/search/all_d.js | 12 + .../Code Documentation/html/search/all_e.html | 30 + .../Code Documentation/html/search/all_e.js | 23 + .../Code Documentation/html/search/all_f.html | 30 + .../Code Documentation/html/search/all_f.js | 6 + .../html/search/classes_0.html | 30 + .../html/search/classes_0.js | 7 + .../html/search/classes_1.html | 30 + .../html/search/classes_1.js | 5 + .../html/search/classes_2.html | 30 + .../html/search/classes_2.js | 5 + .../html/search/classes_3.html | 30 + .../html/search/classes_3.js | 6 + .../html/search/classes_4.html | 30 + .../html/search/classes_4.js | 8 + .../html/search/classes_5.html | 30 + .../html/search/classes_5.js | 4 + .../html/search/classes_6.html | 30 + .../html/search/classes_6.js | 5 + .../Code Documentation/html/search/close.png | Bin 0 -> 273 bytes .../html/search/enums_0.html | 30 + .../Code Documentation/html/search/enums_0.js | 5 + .../html/search/enumvalues_0.html | 30 + .../html/search/enumvalues_0.js | 5 + .../html/search/enumvalues_1.html | 30 + .../html/search/enumvalues_1.js | 4 + .../html/search/enumvalues_2.html | 30 + .../html/search/enumvalues_2.js | 4 + .../html/search/enumvalues_3.html | 30 + .../html/search/enumvalues_3.js | 4 + .../html/search/enumvalues_4.html | 30 + .../html/search/enumvalues_4.js | 4 + .../html/search/events_0.html | 30 + .../html/search/events_0.js | 5 + .../html/search/files_0.html | 30 + .../Code Documentation/html/search/files_0.js | 6 + .../html/search/files_1.html | 30 + .../Code Documentation/html/search/files_1.js | 5 + .../html/search/files_2.html | 30 + .../Code Documentation/html/search/files_2.js | 5 + .../html/search/files_3.html | 30 + .../Code Documentation/html/search/files_3.js | 7 + .../html/search/files_4.html | 30 + .../Code Documentation/html/search/files_4.js | 4 + .../html/search/files_5.html | 30 + .../Code Documentation/html/search/files_5.js | 5 + .../html/search/functions_0.html | 30 + .../html/search/functions_0.js | 7 + .../html/search/functions_1.html | 30 + .../html/search/functions_1.js | 29 + .../html/search/functions_2.html | 30 + .../html/search/functions_2.js | 7 + .../html/search/functions_3.html | 30 + .../html/search/functions_3.js | 7 + .../html/search/functions_4.html | 30 + .../html/search/functions_4.js | 4 + .../html/search/functions_5.html | 30 + .../html/search/functions_5.js | 7 + .../html/search/functions_6.html | 30 + .../html/search/functions_6.js | 4 + .../html/search/functions_7.html | 30 + .../html/search/functions_7.js | 7 + .../html/search/functions_8.html | 30 + .../html/search/functions_8.js | 4 + .../html/search/functions_9.html | 30 + .../html/search/functions_9.js | 8 + .../html/search/functions_a.html | 30 + .../html/search/functions_a.js | 18 + .../html/search/functions_b.html | 30 + .../html/search/functions_b.js | 4 + .../html/search/functions_c.html | 30 + .../html/search/functions_c.js | 4 + .../html/search/mag_sel.png | Bin 0 -> 465 bytes .../html/search/namespaces_0.html | 30 + .../html/search/namespaces_0.js | 6 + .../html/search/nomatches.html | 12 + .../html/search/pages_0.html | 30 + .../Code Documentation/html/search/pages_0.js | 4 + .../html/search/properties_0.html | 30 + .../html/search/properties_0.js | 9 + .../html/search/properties_1.html | 30 + .../html/search/properties_1.js | 4 + .../html/search/properties_2.html | 30 + .../html/search/properties_2.js | 9 + .../html/search/properties_3.html | 30 + .../html/search/properties_3.js | 27 + .../html/search/properties_4.html | 30 + .../html/search/properties_4.js | 7 + .../html/search/properties_5.html | 30 + .../html/search/properties_5.js | 5 + .../html/search/properties_6.html | 30 + .../html/search/properties_6.js | 8 + .../html/search/properties_7.html | 30 + .../html/search/properties_7.js | 7 + .../html/search/properties_8.html | 30 + .../html/search/properties_8.js | 4 + .../html/search/properties_9.html | 30 + .../html/search/properties_9.js | 7 + .../html/search/properties_a.html | 30 + .../html/search/properties_a.js | 11 + .../html/search/properties_b.html | 30 + .../html/search/properties_b.js | 5 + .../html/search/properties_c.html | 30 + .../html/search/properties_c.js | 5 + .../html/search/properties_d.html | 30 + .../html/search/properties_d.js | 5 + .../html/search/properties_e.html | 30 + .../html/search/properties_e.js | 7 + .../html/search/properties_f.html | 30 + .../html/search/properties_f.js | 5 + .../Code Documentation/html/search/search.css | 273 + .../Code Documentation/html/search/search.js | 814 + .../html/search/search_l.png | Bin 0 -> 567 bytes .../html/search/search_m.png | Bin 0 -> 158 bytes .../html/search/search_r.png | Bin 0 -> 553 bytes .../html/search/searchdata.js | 45 + .../html/search/variables_0.html | 30 + .../html/search/variables_0.js | 4 + .../html/search/variables_1.html | 30 + .../html/search/variables_1.js | 4 + .../html/search/variables_2.html | 30 + .../html/search/variables_2.js | 5 + .../Code Documentation/html/splitbar.png | Bin 0 -> 314 bytes .../Code Documentation/html/sync_off.png | Bin 0 -> 853 bytes .../Code Documentation/html/sync_on.png | Bin 0 -> 845 bytes .../Plugin/Code Documentation/html/tab_a.png | Bin 0 -> 142 bytes .../Plugin/Code Documentation/html/tab_b.png | Bin 0 -> 169 bytes .../Plugin/Code Documentation/html/tab_h.png | Bin 0 -> 177 bytes .../Plugin/Code Documentation/html/tab_s.png | Bin 0 -> 184 bytes .../Plugin/Code Documentation/html/tabs.css | 1 + .../Plugin/Code Documentation/latex/Makefile | 23 + .../latex/_about_8xaml_8cs.tex | 16 + .../latex/_animation_class_8cs.tex | 16 + .../latex/_automation_m_l_data_tables_8cs.tex | 16 + ...lass_of_lists_from_data_grid_views_8cs.tex | 16 + ..._class_of_lists_from_referencefile_8cs.tex | 16 + .../_device_description_8_designer_8cs.tex | 16 + .../latex/_device_description_8cs.tex | 16 + .../latex/_m_w_controller_8cs.tex | 16 + .../latex/_m_w_data_8cs.tex | 18 + .../latex/_m_w_device_8cs.tex | 28 + .../latex/_modelling_wizard_8xaml_8cs.tex | 16 + .../latex/_r_e_a_d_m_e_8md.tex | 2 + .../_search_a_m_l_component_file_8cs.tex | 16 + .../latex/_search_a_m_l_library_file_8cs.tex | 16 + .../Code Documentation/latex/annotated.tex | 22 + ...ss_aml_1_1_editor_1_1_plugin_1_1_about.eps | 197 + ...ss_aml_1_1_editor_1_1_plugin_1_1_about.pdf | 95 + ...ss_aml_1_1_editor_1_1_plugin_1_1_about.tex | 51 + ..._editor_1_1_plugin_1_1_animation_class.tex | 158 + ..._attachables_data_grid_view_parameters.tex | 70 + ..._plugin_1_1_automation_m_l_data_tables.tex | 45 + ..._1_class_of_lists_from_data_grid_views.tex | 142 + ..._1_1_class_of_lists_from_referencefile.tex | 166 + ...or_1_1_plugin_1_1_data_grid_parameters.tex | 70 + ...itor_1_1_plugin_1_1_device_description.eps | 203 + ...itor_1_1_plugin_1_1_device_description.pdf | Bin 0 -> 2954 bytes ...itor_1_1_plugin_1_1_device_description.tex | 160 + ...in_1_1_electrical_interface_parameters.tex | 126 + ...r_1_1_plugin_1_1_electrical_parameters.tex | 104 + ...ters_in_electrical_data_data_grid_view.tex | 78 + ...1_editor_1_1_plugin_1_1_m_w_controller.tex | 172 + ...aml_1_1_editor_1_1_plugin_1_1_m_w_data.eps | 203 + ...aml_1_1_editor_1_1_plugin_1_1_m_w_data.pdf | Bin 0 -> 2952 bytes ...aml_1_1_editor_1_1_plugin_1_1_m_w_data.tex | 239 + ...1_1_plugin_1_1_m_w_data_1_1_m_w_object.eps | 197 + ...1_1_plugin_1_1_m_w_data_1_1_m_w_object.pdf | 95 + ...1_1_plugin_1_1_m_w_data_1_1_m_w_object.tex | 13 + ...l_1_1_editor_1_1_plugin_1_1_m_w_device.eps | 197 + ...l_1_1_editor_1_1_plugin_1_1_m_w_device.pdf | Bin 0 -> 2876 bytes ...l_1_1_editor_1_1_plugin_1_1_m_w_device.tex | 147 + ...editor_1_1_plugin_1_1_modelling_wizard.eps | 203 + ...editor_1_1_plugin_1_1_modelling_wizard.pdf | 95 + ...editor_1_1_plugin_1_1_modelling_wizard.tex | 357 + ..._parameters_in_pin_info_data_grid_view.tex | 86 + ...plugin_1_1_search_a_m_l_component_file.tex | 158 + ...1_plugin_1_1_search_a_m_l_library_file.tex | 850 + .../Code Documentation/latex/doxygen.sty | 576 + .../Plugin/Code Documentation/latex/files.tex | 16 + .../Code Documentation/latex/hierarchy.tex | 33 + .../latex/longtable_doxygen.sty | 448 + .../Plugin/Code Documentation/latex/make.bat | 31 + .../latex/md__r_e_a_d_m_e.tex | 47 + .../latex/namespace_aml.tex | 7 + .../latex/namespace_aml_1_1_editor.tex | 7 + .../namespace_aml_1_1_editor_1_1_plugin.tex | 41 + .../Code Documentation/latex/namespaces.tex | 6 + .../Code Documentation/latex/refman.tex | 235 + .../Code Documentation/latex/tabu_doxygen.sty | 2557 +++ SOURCE/Plugin/CreateInterface.resx | 120 + SOURCE/Plugin/DeviceDescription.Designer.cs | 2799 +++ SOURCE/Plugin/DeviceDescription.cs | 4684 ++++ SOURCE/Plugin/DeviceDescription.resx | 770 + SOURCE/Plugin/LICENSE | 21 + SOURCE/Plugin/MWController.cs | 146 + SOURCE/Plugin/MWData.cs | 1055 + SOURCE/Plugin/MWDevice.cs | 251 + SOURCE/Plugin/ModellingWizard.csproj | 253 + .../ModellingWizard.sln} | 16 +- SOURCE/Plugin/ModellingWizard.xaml | 12 + SOURCE/Plugin/ModellingWizard.xaml.cs | 377 + SOURCE/Plugin/Properties/AssemblyInfo.cs | 36 + .../Plugin/Properties/Resources.Designer.cs | 163 + SOURCE/Plugin/Properties/Resources.resx | 151 + .../AutomationComponentLibrary_v1_0_0.aml | 465 + ...tionComponentLibrary_v1_0_0_CAEX3_BETA.aml | 454 + ...AutomationComponentLibrary_v1_0_0_Full.aml | 614 + ...omponentLibrary_v1_0_0_Full_CAEX3_BETA.aml | 603 + .../ElectricConnectorLibrary_v1_0_0.aml | 4123 ++++ .../IndustrialSensorLibrary_v1_0_0.aml | 350 + .../Resources/icons8-collapse-arrow-24.png | Bin 0 -> 226 bytes .../Resources/icons8-datei-hinzufügen-16.png | Bin 0 -> 351 bytes .../Resources/icons8-datei-hinzufügen-161.png | Bin 0 -> 351 bytes .../icons8-dateiuntermodul-16 (1).png | Bin 0 -> 172 bytes .../Resources/icons8-dateiuntermodul-16.png | Bin 0 -> 172 bytes .../icons8-datenbank-hinzufügen-30.png | Bin 0 -> 440 bytes .../icons8-dienstleistungen-26 (1).png | Bin 0 -> 860 bytes .../icons8-eingekreist-links-2-32.png | Bin 0 -> 619 bytes .../Resources/icons8-expand-arrow-24.png | Bin 0 -> 254 bytes .../Resources/icons8-expand-arrow-30.png | Bin 0 -> 215 bytes .../Resources/icons8-liste-hinzufügen-26.png | Bin 0 -> 464 bytes SOURCE/Plugin/Resources/icons8-löschen-26.png | Bin 0 -> 330 bytes SOURCE/Plugin/Resources/icons8-plus-2-24.png | Bin 0 -> 224 bytes .../Plugin/Resources/icons8-plus-mathe-30.png | Bin 0 -> 152 bytes .../Plugin/Resources/icons8-stornieren-16.png | Bin 0 -> 423 bytes .../Resources/icons8-winkel-links-30.png | Bin 0 -> 271 bytes .../Resources/icons8-winkel-rechts-30.png | Bin 0 -> 261 bytes SOURCE/Plugin/SearchAMLComponentFile.cs | 519 + SOURCE/Plugin/SearchAMLLibraryFile.cs | 1939 ++ SOURCE/Plugin/app.config | 12 + SOURCE/Plugin/gsd2aml.xml | 444 + SOURCE/{ => Plugin}/packages.config | 3 + SOURCE/README.md | 12 + SOURCE/logo.ico | Bin 53302 -> 0 bytes 460 files changed, 92059 insertions(+), 98 deletions(-) rename SOURCE/{ => Application}/App.config (100%) rename SOURCE/{ => Application}/Application.csproj (58%) create mode 100644 SOURCE/Application/Application.sln rename SOURCE/{ => Application}/Form1.Designer.cs (84%) rename SOURCE/{ => Application}/Form1.cs (79%) rename SOURCE/{ => Application}/Form1.resx (100%) create mode 100644 SOURCE/Application/Plugins/ModellingWizard/AML.Editor.PluginContracts.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/AML.Editor.PluginContracts.xml create mode 100644 SOURCE/Application/Plugins/ModellingWizard/AML.Engine.Services.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/AML.Engine.Services.xml create mode 100644 SOURCE/Application/Plugins/ModellingWizard/AML.Engine.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/AML.Engine.xml create mode 100644 SOURCE/Application/Plugins/ModellingWizard/Gsd2Aml.Lib.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/Gsd2Aml.Lib.xml create mode 100644 SOURCE/Application/Plugins/ModellingWizard/Microsoft.CSharp.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/ModellingWizard.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/ModellingWizard.dll.config create mode 100644 SOURCE/Application/Plugins/ModellingWizard/PresentationCore.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/PresentationFramework.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.ComponentModel.Composition.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Data.DataSetExtensions.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Data.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Drawing.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.IO.FileSystem.AccessControl.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.IO.FileSystem.AccessControl.xml create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.IO.Packaging.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.IO.Packaging.xml create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Net.Http.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Security.AccessControl.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Security.AccessControl.xml create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Security.Principal.Windows.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Security.Principal.Windows.xml create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Windows.Forms.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Xaml.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Xml.Linq.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.Xml.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/System.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/WindowsBase.dll create mode 100644 SOURCE/Application/Plugins/ModellingWizard/WindowsFormsIntegration.dll rename SOURCE/{ => Application}/Program.cs (100%) rename SOURCE/{ => Application}/Properties/AssemblyInfo.cs (85%) rename SOURCE/{ => Application}/Properties/Resources.Designer.cs (67%) rename SOURCE/{ => Application}/Properties/Resources.resx (100%) rename SOURCE/{ => Application}/Properties/Settings.Designer.cs (63%) rename SOURCE/{ => Application}/Properties/Settings.settings (100%) create mode 100644 SOURCE/Plugin/.gitignore create mode 100644 SOURCE/Plugin/About.xaml create mode 100644 SOURCE/Plugin/About.xaml.cs create mode 100644 SOURCE/Plugin/AnimationClass.cs create mode 100644 SOURCE/Plugin/AutomationMLDataTables.cs create mode 100644 SOURCE/Plugin/ClassDiagram1.cd create mode 100644 SOURCE/Plugin/ClassDiagram2.cd create mode 100644 SOURCE/Plugin/ClassOfListsFromDataGridViews.cs create mode 100644 SOURCE/Plugin/ClassOfListsFromReferencefile.cs create mode 100644 SOURCE/Plugin/Code Documentation/Doxyfile create mode 100644 SOURCE/Plugin/Code Documentation/html/_about_8xaml_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_animation_class_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_automation_m_l_data_tables_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_class_of_lists_from_data_grid_views_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_class_of_lists_from_referencefile_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_device_description_8_designer_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_device_description_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_m_w_controller_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_m_w_data_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_m_w_device_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_modelling_wizard_8xaml_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_r_e_a_d_m_e_8md.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_search_a_m_l_component_file_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/_search_a_m_l_library_file_8cs.html create mode 100644 SOURCE/Plugin/Code Documentation/html/annotated.html create mode 100644 SOURCE/Plugin/Code Documentation/html/annotated_dup.js create mode 100644 SOURCE/Plugin/Code Documentation/html/bc_s.png create mode 100644 SOURCE/Plugin/Code Documentation/html/bdwn.png create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.png create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.png create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.png create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.png create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.png create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.png create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.js create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file-members.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html create mode 100644 SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.js create mode 100644 SOURCE/Plugin/Code Documentation/html/classes.html create mode 100644 SOURCE/Plugin/Code Documentation/html/closed.png create mode 100644 SOURCE/Plugin/Code Documentation/html/doc.png create mode 100644 SOURCE/Plugin/Code Documentation/html/doxygen.css create mode 100644 SOURCE/Plugin/Code Documentation/html/doxygen.png create mode 100644 SOURCE/Plugin/Code Documentation/html/dynsections.js create mode 100644 SOURCE/Plugin/Code Documentation/html/files.html create mode 100644 SOURCE/Plugin/Code Documentation/html/files_dup.js create mode 100644 SOURCE/Plugin/Code Documentation/html/folderclosed.png create mode 100644 SOURCE/Plugin/Code Documentation/html/folderopen.png create mode 100644 SOURCE/Plugin/Code Documentation/html/functions.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_b.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_c.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_d.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_dup.js create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_e.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_enum.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_evnt.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_f.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_func.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_g.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_i.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_l.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_m.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_n.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_o.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_p.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_prop.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_r.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_s.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_t.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_u.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_v.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_vars.html create mode 100644 SOURCE/Plugin/Code Documentation/html/functions_w.html create mode 100644 SOURCE/Plugin/Code Documentation/html/hierarchy.html create mode 100644 SOURCE/Plugin/Code Documentation/html/hierarchy.js create mode 100644 SOURCE/Plugin/Code Documentation/html/index.html create mode 100644 SOURCE/Plugin/Code Documentation/html/jquery.js create mode 100644 SOURCE/Plugin/Code Documentation/html/md__r_e_a_d_m_e.html create mode 100644 SOURCE/Plugin/Code Documentation/html/namespace_aml.html create mode 100644 SOURCE/Plugin/Code Documentation/html/namespace_aml.js create mode 100644 SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor.html create mode 100644 SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor.js create mode 100644 SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor_1_1_plugin.html create mode 100644 SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor_1_1_plugin.js create mode 100644 SOURCE/Plugin/Code Documentation/html/namespaces.html create mode 100644 SOURCE/Plugin/Code Documentation/html/namespaces_dup.js create mode 100644 SOURCE/Plugin/Code Documentation/html/nav_f.png create mode 100644 SOURCE/Plugin/Code Documentation/html/nav_g.png create mode 100644 SOURCE/Plugin/Code Documentation/html/nav_h.png create mode 100644 SOURCE/Plugin/Code Documentation/html/navtree.css create mode 100644 SOURCE/Plugin/Code Documentation/html/navtree.js create mode 100644 SOURCE/Plugin/Code Documentation/html/navtreedata.js create mode 100644 SOURCE/Plugin/Code Documentation/html/navtreeindex0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/navtreeindex1.js create mode 100644 SOURCE/Plugin/Code Documentation/html/open.png create mode 100644 SOURCE/Plugin/Code Documentation/html/pages.html create mode 100644 SOURCE/Plugin/Code Documentation/html/resize.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_1.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_1.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_10.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_10.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_11.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_11.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_12.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_12.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_2.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_2.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_3.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_3.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_4.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_4.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_5.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_5.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_6.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_6.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_7.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_7.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_8.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_8.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_9.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_9.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_a.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_a.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_b.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_b.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_c.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_c.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_d.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_d.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_e.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_e.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_f.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/all_f.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_1.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_1.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_2.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_2.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_3.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_3.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_4.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_4.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_5.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_5.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_6.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/classes_6.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/close.png create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enums_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enums_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_1.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_1.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_2.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_2.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_3.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_3.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_4.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/enumvalues_4.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/events_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/events_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_1.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_1.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_2.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_2.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_3.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_3.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_4.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_4.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_5.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/files_5.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_1.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_1.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_2.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_2.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_3.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_3.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_4.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_4.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_5.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_5.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_6.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_6.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_7.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_7.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_8.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_8.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_9.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_9.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_a.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_a.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_b.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_b.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_c.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/functions_c.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/mag_sel.png create mode 100644 SOURCE/Plugin/Code Documentation/html/search/namespaces_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/namespaces_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/nomatches.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/pages_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/pages_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_1.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_1.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_2.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_2.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_3.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_3.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_4.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_4.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_5.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_5.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_6.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_6.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_7.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_7.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_8.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_8.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_9.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_9.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_a.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_a.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_b.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_b.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_c.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_c.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_d.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_d.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_e.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_e.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_f.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/properties_f.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/search.css create mode 100644 SOURCE/Plugin/Code Documentation/html/search/search.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/search_l.png create mode 100644 SOURCE/Plugin/Code Documentation/html/search/search_m.png create mode 100644 SOURCE/Plugin/Code Documentation/html/search/search_r.png create mode 100644 SOURCE/Plugin/Code Documentation/html/search/searchdata.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/variables_0.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/variables_0.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/variables_1.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/variables_1.js create mode 100644 SOURCE/Plugin/Code Documentation/html/search/variables_2.html create mode 100644 SOURCE/Plugin/Code Documentation/html/search/variables_2.js create mode 100644 SOURCE/Plugin/Code Documentation/html/splitbar.png create mode 100644 SOURCE/Plugin/Code Documentation/html/sync_off.png create mode 100644 SOURCE/Plugin/Code Documentation/html/sync_on.png create mode 100644 SOURCE/Plugin/Code Documentation/html/tab_a.png create mode 100644 SOURCE/Plugin/Code Documentation/html/tab_b.png create mode 100644 SOURCE/Plugin/Code Documentation/html/tab_h.png create mode 100644 SOURCE/Plugin/Code Documentation/html/tab_s.png create mode 100644 SOURCE/Plugin/Code Documentation/html/tabs.css create mode 100644 SOURCE/Plugin/Code Documentation/latex/Makefile create mode 100644 SOURCE/Plugin/Code Documentation/latex/_about_8xaml_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_animation_class_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_automation_m_l_data_tables_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_class_of_lists_from_data_grid_views_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_class_of_lists_from_referencefile_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_device_description_8_designer_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_device_description_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_m_w_controller_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_m_w_data_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_m_w_device_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_modelling_wizard_8xaml_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_r_e_a_d_m_e_8md.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_search_a_m_l_component_file_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/_search_a_m_l_library_file_8cs.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/annotated.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.eps create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.pdf create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.eps create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.pdf create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.eps create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.pdf create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.eps create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.pdf create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.eps create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.pdf create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.eps create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.pdf create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/doxygen.sty create mode 100644 SOURCE/Plugin/Code Documentation/latex/files.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/hierarchy.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/longtable_doxygen.sty create mode 100644 SOURCE/Plugin/Code Documentation/latex/make.bat create mode 100644 SOURCE/Plugin/Code Documentation/latex/md__r_e_a_d_m_e.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/namespace_aml.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/namespace_aml_1_1_editor.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/namespace_aml_1_1_editor_1_1_plugin.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/namespaces.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/refman.tex create mode 100644 SOURCE/Plugin/Code Documentation/latex/tabu_doxygen.sty create mode 100644 SOURCE/Plugin/CreateInterface.resx create mode 100644 SOURCE/Plugin/DeviceDescription.Designer.cs create mode 100644 SOURCE/Plugin/DeviceDescription.cs create mode 100644 SOURCE/Plugin/DeviceDescription.resx create mode 100644 SOURCE/Plugin/LICENSE create mode 100644 SOURCE/Plugin/MWController.cs create mode 100644 SOURCE/Plugin/MWData.cs create mode 100644 SOURCE/Plugin/MWDevice.cs create mode 100644 SOURCE/Plugin/ModellingWizard.csproj rename SOURCE/{Application.sln => Plugin/ModellingWizard.sln} (54%) create mode 100644 SOURCE/Plugin/ModellingWizard.xaml create mode 100644 SOURCE/Plugin/ModellingWizard.xaml.cs create mode 100644 SOURCE/Plugin/Properties/AssemblyInfo.cs create mode 100644 SOURCE/Plugin/Properties/Resources.Designer.cs create mode 100644 SOURCE/Plugin/Properties/Resources.resx create mode 100644 SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0.aml create mode 100644 SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_CAEX3_BETA.aml create mode 100644 SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_Full.aml create mode 100644 SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_Full_CAEX3_BETA.aml create mode 100644 SOURCE/Plugin/Resources/ElectricConnectorLibrary_v1_0_0.aml create mode 100644 SOURCE/Plugin/Resources/IndustrialSensorLibrary_v1_0_0.aml create mode 100644 SOURCE/Plugin/Resources/icons8-collapse-arrow-24.png create mode 100644 SOURCE/Plugin/Resources/icons8-datei-hinzufügen-16.png create mode 100644 SOURCE/Plugin/Resources/icons8-datei-hinzufügen-161.png create mode 100644 SOURCE/Plugin/Resources/icons8-dateiuntermodul-16 (1).png create mode 100644 SOURCE/Plugin/Resources/icons8-dateiuntermodul-16.png create mode 100644 SOURCE/Plugin/Resources/icons8-datenbank-hinzufügen-30.png create mode 100644 SOURCE/Plugin/Resources/icons8-dienstleistungen-26 (1).png create mode 100644 SOURCE/Plugin/Resources/icons8-eingekreist-links-2-32.png create mode 100644 SOURCE/Plugin/Resources/icons8-expand-arrow-24.png create mode 100644 SOURCE/Plugin/Resources/icons8-expand-arrow-30.png create mode 100644 SOURCE/Plugin/Resources/icons8-liste-hinzufügen-26.png create mode 100644 SOURCE/Plugin/Resources/icons8-löschen-26.png create mode 100644 SOURCE/Plugin/Resources/icons8-plus-2-24.png create mode 100644 SOURCE/Plugin/Resources/icons8-plus-mathe-30.png create mode 100644 SOURCE/Plugin/Resources/icons8-stornieren-16.png create mode 100644 SOURCE/Plugin/Resources/icons8-winkel-links-30.png create mode 100644 SOURCE/Plugin/Resources/icons8-winkel-rechts-30.png create mode 100644 SOURCE/Plugin/SearchAMLComponentFile.cs create mode 100644 SOURCE/Plugin/SearchAMLLibraryFile.cs create mode 100644 SOURCE/Plugin/app.config create mode 100644 SOURCE/Plugin/gsd2aml.xml rename SOURCE/{ => Plugin}/packages.config (70%) create mode 100644 SOURCE/README.md delete mode 100644 SOURCE/logo.ico diff --git a/SOURCE/App.config b/SOURCE/Application/App.config similarity index 100% rename from SOURCE/App.config rename to SOURCE/Application/App.config diff --git a/SOURCE/Application.csproj b/SOURCE/Application/Application.csproj similarity index 58% rename from SOURCE/Application.csproj rename to SOURCE/Application/Application.csproj index e3603ff..5df3597 100644 --- a/SOURCE/Application.csproj +++ b/SOURCE/Application/Application.csproj @@ -4,10 +4,10 @@ Debug AnyCPU - {E2DEECD6-0102-4CAB-A3D9-C76314D81D99} + {165D011D-D27B-48F5-995D-BAC062F41986} WinExe - App - TINF20C_ModellingWizard_Devices + Application + Application v4.7.2 512 true @@ -32,44 +32,11 @@ prompt 4 - - - - - - logo.ico - - - packages\Aml.Engine.1.5.8\lib\net4.7\AML.Engine.dll - - - packages\Aml.Engine.1.5.8\lib\net4.7\AML.Engine.Services.dll - - - ..\..\..\Downloads\ModellingWizard.dll - - - packages\System.IO.FileSystem.AccessControl.5.0.0\lib\net461\System.IO.FileSystem.AccessControl.dll - - - packages\System.IO.FileSystem.Primitives.4.3.0\lib\net46\System.IO.FileSystem.Primitives.dll - True - True - - - packages\System.IO.Packaging.5.0.0\lib\net46\System.IO.Packaging.dll - - - packages\System.Security.AccessControl.5.0.0\lib\net461\System.Security.AccessControl.dll - - - packages\System.Security.Principal.Windows.5.0.0\lib\net461\System.Security.Principal.Windows.dll - @@ -80,7 +47,9 @@ + + @@ -102,9 +71,7 @@ True Resources.resx - True - SettingsSingleFileGenerator Settings.Designer.cs @@ -119,7 +86,10 @@ - + + {10E1A26F-1F33-478A-84A3-BF59710893C0} + ModellingWizard + \ No newline at end of file diff --git a/SOURCE/Application/Application.sln b/SOURCE/Application/Application.sln new file mode 100644 index 0000000..238d1c4 --- /dev/null +++ b/SOURCE/Application/Application.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.32228.343 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Application", "Application.csproj", "{165D011D-D27B-48F5-995D-BAC062F41986}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ModellingWizard", "..\Plugin\ModellingWizard.csproj", "{10E1A26F-1F33-478A-84A3-BF59710893C0}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {165D011D-D27B-48F5-995D-BAC062F41986}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {165D011D-D27B-48F5-995D-BAC062F41986}.Debug|Any CPU.Build.0 = Debug|Any CPU + {165D011D-D27B-48F5-995D-BAC062F41986}.Release|Any CPU.ActiveCfg = Release|Any CPU + {165D011D-D27B-48F5-995D-BAC062F41986}.Release|Any CPU.Build.0 = Release|Any CPU + {10E1A26F-1F33-478A-84A3-BF59710893C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {10E1A26F-1F33-478A-84A3-BF59710893C0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {10E1A26F-1F33-478A-84A3-BF59710893C0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {10E1A26F-1F33-478A-84A3-BF59710893C0}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C56F1D04-53B4-40D4-9B1C-6FECF9F987A3} + EndGlobalSection +EndGlobal diff --git a/SOURCE/Form1.Designer.cs b/SOURCE/Application/Form1.Designer.cs similarity index 84% rename from SOURCE/Form1.Designer.cs rename to SOURCE/Application/Form1.Designer.cs index 760d94d..485ef40 100644 --- a/SOURCE/Form1.Designer.cs +++ b/SOURCE/Application/Form1.Designer.cs @@ -36,22 +36,26 @@ namespace App // this.deviceDescription1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; this.deviceDescription1.BackColor = System.Drawing.Color.Transparent; + this.deviceDescription1.Dock = System.Windows.Forms.DockStyle.Fill; this.deviceDescription1.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.deviceDescription1.Location = new System.Drawing.Point(0, 0); this.deviceDescription1.Margin = new System.Windows.Forms.Padding(0); + this.deviceDescription1.MaximumSize = new System.Drawing.Size(1750, 866); this.deviceDescription1.MinimumSize = new System.Drawing.Size(1750, 866); this.deviceDescription1.Name = "deviceDescription1"; - this.deviceDescription1.Size = new System.Drawing.Size(1813, 888); + this.deviceDescription1.Size = new System.Drawing.Size(1750, 866); this.deviceDescription1.TabIndex = 0; - this.deviceDescription1.Load += new System.EventHandler(this.deviceDescription1_Load); // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(800, 450); + this.AutoSize = true; + this.ClientSize = new System.Drawing.Size(884, 461); this.Controls.Add(this.deviceDescription1); + this.MinimumSize = new System.Drawing.Size(900, 500); this.Name = "Form1"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; this.Text = "Form1"; this.ResumeLayout(false); diff --git a/SOURCE/Form1.cs b/SOURCE/Application/Form1.cs similarity index 79% rename from SOURCE/Form1.cs rename to SOURCE/Application/Form1.cs index 74a7a22..66d8a07 100644 --- a/SOURCE/Form1.cs +++ b/SOURCE/Application/Form1.cs @@ -16,10 +16,5 @@ namespace App { InitializeComponent(); } - - private void deviceDescription1_Load(object sender, EventArgs e) - { - - } } } diff --git a/SOURCE/Form1.resx b/SOURCE/Application/Form1.resx similarity index 100% rename from SOURCE/Form1.resx rename to SOURCE/Application/Form1.resx diff --git a/SOURCE/Application/Plugins/ModellingWizard/AML.Editor.PluginContracts.dll b/SOURCE/Application/Plugins/ModellingWizard/AML.Editor.PluginContracts.dll new file mode 100644 index 0000000000000000000000000000000000000000..045a465daac8881171e0c4908f2e4b538421c74b GIT binary patch literal 20480 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 + + + AML.Editor.PluginContracts + + + + + The command arguments for the + + + + + + Gets the captured image. If no image was captured, the value is null. + + + + + The command arguments for the + + + + + + Some extension methods, which can be used to get access to the commanding interface of a PlugIn + + + + + Calls the command, to close the CAEX file. + + The plug in. + The result. + + true, if the operation has been executed successfully; false + if an Error exists or the operation has been cancelled. Interpret the result output for details. + + + + + Calls the command, to save the CAEX file. + + The plug in. + The result. + + true, if the operation has been executed successfully; false + if an Error exists or the operation has been cancelled. Interpret the result output for details. + + + + + Calls the command, to get the currently edited CAEX file from the AutomationML editor. + + The plug in. + The result. + + true, if the operation has been executed successfully; false + if an Error exists or no current file is loaded. Interpret the result output for details. + + + + + Calls the command, to capture the selected tree node and its visible descendants. + + The plug in. + The result. + + true, if the operation has been executed successfully; false + if an Error exists or no image has been created. Interpret the result output for details. + + + + + Calls the command, to open the CAEX file. + + The plug in. + The file path. + The library names. + if set to true no user interaction is required. + The result. + + true, if the operation has been executed successfully; false + if an Error exists or the operation has been cancelled. Interpret the result output for details. + + + + + Calls the command, to create a new CAEX file. + + The plug in. + The result. + + true, if the operation has been executed successfully; false + if an Error exists or the operation has been cancelled. Interpret the result output for details. + + + + + Calls the command, to open the CAEX file. + + The plug in. + The file path. + The result. + + true, if the operation has been executed successfully; false + if an Error exists or the operation has been cancelled. Interpret the result output for details. + + + + + Calls the command, to open the CAEX file from a stream. + + The plug in. + The file content stream. + The result. + + true, if the operation has been executed successfully; false + if an Error exists or the operation has been cancelled. Interpret the result output for details. + + + + + The available commands of the AMLEditor, which can be invoked by a PlugIn, implementing the + interface. + + + + + The close file command. Use this command with the callback arguments. + The command executes identical to the close command invoked from the File/Close menu item of the AutomationML + Editor. + + + Be aware, that this command is a User Interaction and may be cancelled by the user. + + + + + The save file command. Use this command with the callback arguments. + The command executes identical to the save command invoked from the File/Save menu item of the AutomationML Editor. + + + Be aware, that this command is a User Interaction and may be cancelled by the user. + + + + + The open file command. Use this command with the callback arguments. + The command executes nearly identical to the open command invoked from the File/Open menu item, except that + no open file browser dialogue is presented to the user. + + + Be aware, that this command may include a User Interaction (if a currently opened and modified file has not been + saved) and may be cancelled by the user. + + + + + The new file command. Use this command with the callback arguments. + The command executes identical to the close command invoked from the File/New menu item. The new file's CAEX schema + is set to the currently selected schema. + + + Be aware, that this command may include a User Interaction (if a currently opened and modified file has not been + saved) and may be cancelled by the user. + + + + + The get current CAEX file command. Use this command with the callback + arguments. + + + + + The command to insert AML libraries from an external file into the current document. Use this command with the + callback arguments. + The command executes nearly identical to the import from file command invoked from the File/ImportFromFile menu + item, except that + no selection dialogue is presented to the user, if the command mode is set to silent. In silent mode, libraries are + automatically transformed if a schema transformation is needed. + + + + + The command to capture an image from the selected tree node and its visible sub tree. Use this command with the + callback arguments. + The command executes nearly identical to the capture command provided by the editor except the save dialogue. The + created image is returned to the caller. + /// + + + + + The command arguments for the + + + + + + This delegate type defines the callback function, provided by the AMLEditor to a PlugIn, implementing the + interface. + + The source PlugIn which calls the delegate. + The command which should be executed. + The command arguments. + + + + + This class defines the base command properties for an AMLEditor command. + + + + + Gets or sets the input arguments for a command. Specific access properties to the arguments array are provided by + the derived classes. + + + + + Gets or sets a value indicating whether an interactive operation has been canceled by the user. + + + The PlugIn application should check the Canceled property before accessing any properties in a class derived from + EditorCommandArguments; + otherwise, the property will raise an InvalidOperationException if the operation was aborted. + + + + + Gets a value indicating which error occurred during the operation. + + + If an exception is raised during an operation, the AutomationML editor will assign the exception to the Error + property. + The PlugIn application should check the Error property before accessing any properties in a class derived from + EditorCommandArguments; + otherwise, the property will raise a TargetInvocationException with its InnerException property holding a reference + to Error. + The value of the Error property is null if the operation was completed successful or canceled. + + + + + Gets the result of the command. Specific type conversions for this property are provided by the derived classes. + + + + + The command arguments for the + + + + + + Gets the CAEX file of the current opened AML file. If no file is currently edited, the value is null. + + + + + This interface is a PlugIn interface, that provides a callback function, which can be used to execute commands + provided by the AMLEditor. + + + + + + Property set by the AMLEditor to provide a callback function to a PlugIn, which can be used to execute an editor + command. + All available commands are listed in . The current implementation only supports + synchronous + execution of commands. + + + + + The command arguments for the + + + + + + Initializes a new instance of the class. + + Name of the file. + The library names. + if set to true the import command doesn't require a user interaction. + + + + Gets the file path of the AML file, containing the libraries. + + + The file path. + + + + + Gets a value indicating whether the import command requires a user interaction. + + + true if this instance is silent; otherwise, false. + + + + + Gets the library names, which should be imported + + + + + The Aml.Editor.Plugin.Commanding name space contains a specific PlugIn Interface class to enable a PlugIn to call a + specific command of the AMLEditor using a callback function. Each command has an assigned command argument class, + which + should be used with the command. + + + + + The command arguments for the + + + + + + The command arguments for the + + + + + + Initializes a new instance of the class. + + The file path, which defines the path to the file which should be opened in the editor. + + + + Initializes a new instance of the class. + + The file path, which defines the path to the file which should be opened in the editor. + + + + Gets the file path for the Opened file. + + + + + Gets the file content as a stream for the Opened file. + + + + + The Aml.Editor.Plugin.Contracts.Base name space contains abstract Base Classes for AutomationML + Editor PlugIn Developers which implement some basic Functionality for PlugIns. + Example Implementations, that may be used as a starting point for PlugIn Development + are available on + + the + Aml.Editor.Plugin + + Project side for Developers. + + + To get a PlugIns loaded into the AutomationML Editor at startup the DLLs have to be put in the PlugIns + Folder in the Execution Directory of the Editor. Only the AutomationML Editor Version 4 and + higher supports 3d Party PlugIns. Every PlugIn shall use the same version of the Aml.Engine as the + used Aml.Editor version. + + + + + This enum defines the possible docking positions for a plugIn window, when it is layouted by the Editors + Docking manager. + + + + + The initial position is the left tabular docking pane + + + + + The initial position is the right tabular docking pane + + + + + The initial position is the bottom tabular docking pane + + + + + The initial position is the top tabular docking pane + + + + + The initial position is the content host containing also the library views + + + + + The initial position is the content host containing also the library views. The existing library views are set to + the maximized window. + + + + + The plugIn window is viewed as a floating window + + + + + This interface can be implemented by plugIns, which are used to view external data, referenced by external data + connectors in an AutomationML file or stream. + + + + + + Gets a value indicating whether this PlugIn is an externals viewer. An external viewer is provided + with a selected external data source like a PLCopenXML document or a COLLADA document or any other + content. An external viewer can restrict itself to a specific MIME type . + If any external content is ready to be viewed, the AML Editors calls the + or + . + + + true if this instance is externals viewer; otherwise, false. + + + + + Gets the MIME type defining the content class, this viewer is able to handle. The AML editor looks at the + MIME type, found in the external reference or AutomationML container relation. As an example, the MIME type in + the is + set to "model/vnd.collada+xml". + + + + + This method is called by the AML editor if the PlugIn's property + returns true and the URI attribute references a file. + + The attribute. + The file path. + + + + This method is called by the AML editor if the PlugIn's property + returns true and the URI attribute references a stream in an AutomationML container. + + The attribute. + The memory stream. + + + + InterfaceClass for any AutomationML Editor PlugIn. + The AutomationML Editor is the Host Application for any PlugIn, which implements this interface. + The PlugIn implementing this interface will typically run it's own user interface thread. For an + integrated UI-PlugIn, which will be controlled by the AutomationML Editors Main UI-Thread the + -Interface Contract has to be used. + + + + [ExportMetadata("Author", "...")] + [ExportMetadata("DisplayName", "HelloAml")] + [ExportMetadata("Description", "The 'HelloAml' is an AutomationML Editor plugin, which ....")] + [Export(typeof(IAMLEditorPlugin))] + public class HelloAml : IAMLEditorPlugin + { + } + + + + + + The Event occurs when the PlugIn is Activated (for example via an Activation Command). + This event is raised by the PlugIn and handled by the AutomationML Editor. If the PlugIn + has a UI-Control, the AutomationML Editor will show the UI and dock the Control in a + Container Window, used for external Views. + + + + + Occurs when the PlugIn is terminated (some UserInteraction inside the PlugIn, i. e. a + Window is Closed, or via a Command). This event is raised by the PlugIn and handled by + the AutomationML Editor. If the PlugIn is a UI-Control , the + control is removed from the Container Window. The State of the currently open AutomationML + Document is checked, and if it was modified, the User will be asked to reload it. + + + + + Gets the Activation command for the PlugIn. + + The activation command. + + + + Gets the List of commands, which are bound to the PlugIn Menu in the AutomationML + Editor. The Command Names are shown in a sub-Menu in the PlugIn-Menu. + + The commands. + + + + Gets the display name which is shown in the PlugIn Menu in the AutomationML Editor. + + The display name. + + + + Gets a value indicating whether this instance is active. + + true if this instance is active; otherwise, false. + + + + Gets or sets a value indicating whether this instance is automatic active when loaded. + This value can be initially set and will be defined by the user. + + + true if this instance is automatic active; otherwise, false. + + + + + Gets a value indicating whether this instance is reactive. Reactive PlugIn will be + notified, when the actual CAEX-Object changes (Selection of any Tree view Item in an + AutomationML TreeView) via the Method or an + AutomationML File is opened via the Method. + + true if this instance is reactive; otherwise, false. + + + + Gets a value indicating whether this instance is read only. A Read only PlugIn should not + change any CAEX Objects. + + true if this instance is read only; otherwise, false. + + + + Gets the package name which is used to download the PlugIn package from a NuGet feed. If a Package name + is defined, the AMLEditor can update PlugIn packages independently from its own update cycle. + + The package name. + + + + Gets the Terminate command for the PlugIn. + + The terminate command. + + + + Changes the current amlFilePath. The Host Application will call this method when the + PlugIns Property is set to true and the Currently opened + AutomationML File changes in the AMLEditor Host Application. + + The Path to the current AML File in the AML Editor. + + + + Changes the selected object. The Host Application will call this method when the PlugIns + Property is set to true and the Current Selection changes in + the AMLEditor Host Application. + + The selected CAEX - object. + + + + This Method enables the AutomationML Editor to execute a command. Only those commands + are executable, which are identifiable via the . + + The command identifier. + + The FilePath of the currently loaded AMLDocument, if a CAEXDocument is loaded, otherwise null + or empty + + + + // ... + switch (command) + { + case PluginCommandsEnum.Activate: + // activation code; + // call your ActivateCommand execution method + + ActivateCommand.Execute (amlFilePath); + break; + + case PluginCommandsEnum.Terminate: + + // termination code; + // call your TerminateCommand execution method + // the Execution Method of the PlugIn may save the changes of the AMLDocument if it was edited by the plugIn. + // It should raise the PluginTerminated Event. This Event is handled by the AMLEditor, the Editor will + // check, if the Document was modified and ask the user to reload the document. The Editor will also return + // to editing mode if it was disabled during activation. + + TerminateCommand.Execute (amlFilePath); + break; + } + + + + + + PublishAutomationMLFileAndObject after the PlugIn is activated. This Method is called by + the AutomationML Editor when the Event is handled. The + AutomationML Editor will send the actual Path of the AutomationML File and the actual + selected Object to the PlugIn, when an AutomationML File is currently open. If the + Activation happened, when no AutomationML File was opened so far, the PlugIn will be + informed as soon as this will happen, but only if the Flag is set to true. + + The AML file path. + The selected CAEX Object. + + + // To Load the content of the AutomationML Document the AmlEngine can be used + var document = CAEXDocument.LoadFromFile (amlFilePath); /// + + + + + + Interface which defines Metadata for an exported PlugIn. + + + + + Gets the name of the author. + + + + + Gets the name of the owner. + + + + + Gets the description of the PlugIn. + + + + + Gets the display name of the PlugIn. + + + + + The Interface IAMLEditorView is used for a PlugIn, which can be embedded in + the AutomationML Editor's Window- and Docking-Manager. The PlugIn must implement the + IFrameworkInputElement Interface (as an example, a WPF UserControl) and + the Interface. For windows, based on , + the view must have a wrapper. + + + + [ExportMetadata("Author", "...")] + [ExportMetadata("DisplayName", "HelloAml")] + [ExportMetadata("Description", "The 'HelloAml' is an AutomationML Editor plugin, which ....")] + [Export(typeof(IAMLEditorView))] + public partial class HelloAml : System.Windows.Control.UserControl, IAMLEditorView + { + } + + + + + + Gets a value indicating whether this PlugIn Instance can close. If set to true, + the PlugIn may be closed from the AutomationML Docking Manger Window Menu or the + Windows Close Button. + + true if this instance can close; otherwise, false. + + + + Gets the initial dock position for the PlugIn window + + + + + Gets the image which should be used in the Header of the PlugIn window. If no image is defined the editor uses a + default image. + + + + + The Interface IAMLEditorViewCollection is used for a PlugIn, which can be embedded in + the AutomationML Editor's Window- and Docking-Manager. This PlugIn can provide + multiple independent views, to be embedded at different positions in the AML Editor where + each of the views shall implement the interface. + It is possible to dynamically add and remove views from the collection while the PlugIn is + active. + + + The individual views in this collection shall not export themselves as PlugIns because + the Activation and Termination is handled by this collection PlugIn for all views in the + list as a whole. + + + + [ExportMetadata("Author", "...")] + [ExportMetadata("DisplayName", "MultiWindowPlugin")] + [ExportMetadata("Description", "The 'MultiWindowPlugin' is an AutomationML Editor plugin, which ....")] + [Export(typeof(IAMLEditorViewCollection))] + public partial class MultiWindowPlugin : List<IAMLEditorView> + { + } + + + + + + The Event occurs when a view has been added to this collection. The AML editor will handle this event and + will dock the added view at the dock position, defined by the view. + + + + + This PlugIn interface can be implemented to get notifications when an AML document + is loaded or unloaded by the AutomationML editor. + + + + + Occurs when the PlugIn has loaded a new document, which should be loaded into the AutomationML editor for editing. + + + + + Method called by the AutomationML editor, when the editor application is closed. + + + + + Method called by the AutomationML editor, when a document is loaded. + + The loaded document + + + + Method called by the AutomationML editor, when the current document is unloaded. + + + + + This PlugIn interface can be implemented to get notifications when an AML document + is saved by the AutomationML editor. + + + + + Method called by the AutomationML editor, when the editor saved a document + + + + + This interfaces is used to implement a PlugIn which will receive a notification with the + method called, when the AMLEditor activates a view. + + + + + Is called, when the AMLEditor activates a view. + + Name of the activated view. This is the display name shown in the view tab header. + + + + This interface can be implemented by a PlugIn to get the AutomationML editor to notify + the plugin when the UI zoom factor changes. + + + + + The event which is raised when an element should be selected. + + + + + Supported application themes of the AML Editor. + + + + + The default theme + + + + + The office2010 blue theme + + + + + The office2013 theme + + + + + The metro theme + + + + + The royal light theme + + + + + No theme defined + + + + + This interface can be implemented by a PlugIn which needs a notification when the editor + theme changes. + + + + + Called when the editors theme changes. + + Name of the theme. + + + + This interface can be implemented by a PlugIn to get the AutomationML editor to select a + CAEX element in a tree view when the event is raised. + + + + + The event which is raised when an element should be selected. + + + + + The event arguments for the selection event . + + + + + Creates an instance of the for the + specified . + + This element should be selected by the AutomationML editor. + + + + The element to select. + + + + + This interface can be implemented by PlugIns which provide , integrated into the + AMLEditors tool bar. + + + + + Gets the commands to be integrated into the tool bar. The commands shall specify an image source for the tool bar + button. + + + + + The Aml.Editor.Plugin.Contracts Namespace contains Classes and Interfaces for AutomationML + Editor PlugIn Developers. The Interface Classes should be used as MEF Contracts, that + matches Import and Export components, defined by Import and Export Attributes, at runtime. + An AutomationML Editor PlugIn will export the components, implementing the Interfaces in the + Contract DLL and the AutomationML Editor imports those components. The Contracts DLL is + managed on nuget. + + + All PlugIns which export an interface are loaded into the AutomationML Editor at startup + only. If the AutomationML Editor restarts after a crash, no PlugIns are loaded, because the + crash may be caused by a PlugIn. To get a PlugIn loaded, the DLLs have to be in the PlugIns + Folder in the Execution Directory of the Editor. Only the AutomationML Editor Version 4 and + higher supports 3d Party PlugIns. + + + + + Class PluginCommand is used to publish Commands from a PlugIn to the AutomationML Editor. + + + Since version 2.2.0 the PluginCommand implements the ICommand interface. The + AutomationML Editor > v5.1.3 binds UI commanding elements directly to this instance and + not to the property. The Execution methods defined by the + command property are indirectly called. This allows the PluginCommand to catch exceptions of + Command execution. + + + + + + + Initializes a new instance of the class. + + + + + The DoNothing - Command + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Occurs when a property value changes + + + + + Occurs when changes occur that affect the execution of the command + + + + + Gets or sets the command, as an example a . A Command + Parameter is set to the FilePath of the Active AMLDocument if a document is loaded, + otherwise it is null or empty. + + The command. + + + + Gets or sets the command icon which should be used, if the command is bound to a button control. + + + + + Gets or sets the button content which should be used, if the command is bound to a button control. + This is an alternative to the property if the button content is not an icon + but any content. The content will be loaded to the Button using a content presenter. + + + + + Gets or sets the name of the command used by the AutomationML Editor to show the Command + in the PlugIn Menu + + The name of the command. + + + + Gets or sets the command tool tip + + The command tool tip. + + + + Gets the display name (This returns only the ). + A DisplayName Property is needed to bind the CommandName to UI controls. + + + + + Gets or sets a value indicating whether this instance is a checkable command. Checkable + Commands get a Check Box in the MenuItem + + true if this instance is checkable command; otherwise, false. + + + + Gets or sets a value indicating whether this instance is a toggle command. Toggle + Commands get a Check Box in the MenuItem + + true if this instance is toggle command; otherwise, false. + + + + Test, if the can execute. + + TODO The parameter. + true, if command can execute + + + + The Execution Action. + + TODO The parameter. + + + + Called when [property changed]. + + Name of the property. + + + + Enumeration Constants for Plugin Commands. This Constants are used in the Host AutomationML Editor Application + to Execute a Plugin internal command. The Plugin should at least publish these commands to the Host via its command + list. + + + + + Identifies the activate command + + + + + Identifies the terminate command + + + + + Class RelayCommand as it was defined in an MSDN Article + by Josh Smith. + This class is an implementation pattern for a plugin command, which the AutomationML Editor + can bind to a plugin Menu. This Implementation provides the UI with the state information, to enabled or disable a + command, and with the + invocation Method. + + Type of Command Data (this may be the System type 'object') + + + + Gets or sets the identifier for the command, when the command is published by the plugin + class, the Identifier can be set as an + + The identifier. + + + + Occurs, when property changes are notified, which have an effect on the command execution. + + + + + The _can execute + + + + + The _execute + + + + + Initializes a new instance of the class. + + + + + Creates a new command. + + The execution logic. + The execution status logic. + execute + + + + Defines the method used to determine whether the command in the current state can be performed. + + + Data used from the command. When the command does not require data transfer, the object + can be set to null. + + true, if the command can be executed, otherwise false. + + + + Defines the method that will be called when the command is invoked. + + + Data used from the command. When the command does not require data transfer, the object + can be set to null. + + + + + PluginBase is an abstract base class for PlugIn Implementation which is a basic implementation of the + + PlugIn Interface + + + + + The Display name + + + + + The PlugIn commands which are shown in the PlugIn Menu. + + + + + Initializes a new instance of the class which contains the two PlugIn Commands + and which every PlugIn should have. + + + + + The Event occurs when the PlugIn is Activated (for example via an Activation Command). + This event is raised by the PlugIn and handled by the AutomationML Editor. If the PlugIn + has a UI-Control, the AutomationML Editor will show the UI and dock the Control in a + Container Window, used for external Views. + + + + + Occurs when the PlugIn is terminated (some UserInteraction inside the PlugIn, i. e. a + Window is Closed, or via a Command). This event is raised by the PlugIn and handled by + the AutomationML Editor. If the PlugIn is a UI-Control , the + control is removed from the Container Window. The State of the currently open AutomationML + Document is checked, and if it was modified, the User will be asked to reload it. + + + + + Gets the Activation command for the PlugIn. + + + The activation command. + + + + + Gets the List of commands, which are bound to the PlugIn Menu in the AutomationML + Editor. The Command Names are shown in a sub-Menu in the PlugIn-Menu. + + + The commands. + + + + + Gets the display name which is shown in the PlugIn Menu in the AutomationML Editor. + + + The display name. + + + + + Gets a value indicating whether this instance is active. + + true if this instance is active; otherwise, false. + + + + Gets or sets a value indicating whether this instance is automatic active when loaded. + This value can be initially set and will be defined by the user. + + + true if this instance is automatic active; otherwise, false. + + + + + Gets a value indicating whether this instance is reactive. Reactive PlugIn will be + notified, when the actual CAEX-Object changes (Selection of any Tree view Item in an + AutomationML TreeView) via the Method or an + AutomationML File is opened via the Method. + + + true if this instance is reactive; otherwise, false. + + + + + Gets a value indicating whether this instance is read only. A Read only PlugIn should not + change any CAEX Objects. + + + true if this instance is read only; otherwise, false. + + + + + Gets the package name which is used to download the PlugIn package from a NuGet feed. If a Package name + is defined, the AMLEditor can update PlugIn packages independently from its own update cycle. + + + The package name. + + + + + Gets the Terminate command for the PlugIn. + + + The terminate command. + + + + + Changes the current amlFilePath. The Host Application will call this method when the + PlugIns Property is set to true and the Currently opened + AutomationML File changes in the AMLEditor Host Application. + + The Path to the current AML File in the AML Editor. + + + + Changes the selected object. The Host Application will call this method when the PlugIns + Property is set to true and the Current Selection changes in + the AMLEditor Host Application. + + The selected CAEX - object. + + + + This Method enables the AutomationML Editor to execute a command. Only those commands + are executable, which are identifiable via the . + + The command identifier. + + The FilePath of the currently loaded AMLDocument, if a CAEXDocument is loaded, otherwise null + or empty + + + + // ... + switch (command) + { + case PluginCommandsEnum.Activate: + // activation code; + // call your ActivateCommand execution method + ActivateCommand.Execute (amlFilePath); + break; + case PluginCommandsEnum.Terminate: + // termination code; + // call your TerminateCommand execution method + // the Execution Method of the PlugIn may save the changes of the AMLDocument if it was edited by the PlugIn. + // It should raise the PluginTerminated Event. This Event is handled by the AMLEditor, the Editor will + // check, if the Document was modified and ask the user to reload the document. The Editor will also return + // to editing mode if it was disabled during activation. + TerminateCommand.Execute (amlFilePath); + break; + } + + + + + + PublishAutomationMLFileAndObject after the PlugIn is activated. This Method is called by + the AutomationML Editor when the Event is handled. The + AutomationML Editor will send the actual Path of the AutomationML File and the actual + selected Object to the PlugIn, when an AutomationML File is currently open. If the + Activation happened, when no AutomationML File was opened so far, the PlugIn will be + informed as soon as this will happen, but only if the Flag is set to true. + + The AML file path. + The selected CAEX Object. + + + // To Load the content of the AutomationML Document the AmlEngine can be used + var document = CAEXDocument.LoadFromFile (amlFilePath); + + + + + Test, if the can execute. + + + parameter may contain the FilePath of the Active AMLDocument if a document is loaded, + otherwise it is null or empty + + true, if command can execute + + + + The Execution Action. The Property is set to true and + the Event is raised. + + + parameter may contain the FilePath of the Active AMLDocument if a document is loaded, + otherwise it is null or empty + + + + + Raises the PlugIn activated. + + + + + Raises the PlugIn terminated. + + + + + Test, if the can execute. + + + parameter may contain the FilePath of the Active AMLDocument if a document is loaded, + otherwise it is null or empty + + true, if command can execute + + + + The Execution Action. The Property is set to false and + the Event is raised. + + + parameter may contain the FilePath of the Active AMLDocument if a document is loaded, + otherwise it is null or empty + + + + diff --git a/SOURCE/Application/Plugins/ModellingWizard/AML.Engine.Services.dll b/SOURCE/Application/Plugins/ModellingWizard/AML.Engine.Services.dll new file mode 100644 index 0000000000000000000000000000000000000000..91a50a403258520cd5df90dd894df3031573e680 GIT binary patch literal 159744 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 ncjzy^ + + + AML.Engine.Services + + + + + This service calculates statistics for a CAEX document. + + + + + + Registers a new instance of a CAEXFileStatisticService with the of the AMLEngine. + + The service instance + + + + Unregisters this service + + + + + Counts all objects (sum of all others with specific counts) and returns the result. + + The CAEX file. + Total number of all countable objects. + + + + Counts all Attribute objects and returns the result. + + The CAEX file. + Total number of all attributes. + + + + Counts all Attribute type reference objects and returns the result. + + The CAEX file. + Total number of all attribute type references. + + + + Counts all AttributeType objects and returns the result. + + The CAEX file. + + Total number of all AttributeTypes + + + + + Counts all InterfaceClass objects and returns the result. + + The CAEX file. + + Total number of all InterfaceClasses + + + + + Counts all ExternalInterface objects and returns the result. + + The CAEX file. + + Total number of all ExternalInterfaces + + + + + Counts all InternalElement objects and returns the result. + + The CAEX file. + + Total number of all InternalElements + + + + + Counts all InternalLink objects and returns the result. + + The CAEX file. + + Total number of all InternalLinks + + + + + Counts all RoleClass objects and returns the result. + + The CAEX file. + + Total number of all RoleClasses + + + + + Counts all RoleClass reference (RoleRequirements and SupportedRoleClass) objects and returns the result. + + The CAEX file. + + Total number of all RoleClasses references + + + + + Counts all SystemUnitClass objects and returns the result. + + The CAEX file. + + Total number of all SystemUnitClasses + + + + + Counts all SystemUnitClass reference objects and returns the result. + + The CAEX file. + + Total number of all SystemUnitClasses + + + + + Clears the disposed documents from the dictionary. + + + + + This class implements the service interface. With this service it is + possible to access CAEX objects which are outsourced into external documents and referenced using alias names. + Normally the service is located by other services like query services. They can call this service to resolve an + external reference if an alias is part of a CAEX path in any query. + + + + + + Registers a service to resolve external references. + + The registered service. + + + + Unregister this service + + + + + This method is used to load an outsourced CAEX document. The external representation for that document is defined + in the provided + ExternalReference object. The CAEXDocument is loaded as a new 'stand alone' document, which means that no libraries + of the + loaded document are merged to the original referencing document. The ExternalReference is not changed and all + external references + in the original document which use the alias name in a path- or id-reference will not change too. A merge of + documents can only + be requested by a service. + + the ExternalReference object + + If the ExternalReference doesn't have an alias, the document is not loaded. If a referenced document for the alias + already exists, + the existing document is returned. + + + + + Determines, if the provided path contains an alias and gets the resolved document + for that alias. + + The CAEX document, which provides the ExternalReference to resolve the 'Alias'. + The CAEX path which contains an 'Alias'. + + The resolved document for the alias, extracted from the path. + + + + + Gets all already resolved externals for the provided CAEXDocument containing ExternalReference objects + + The CAEX document, containing ExternalReference objects. + + An enumeration of all CAEX documents, which have been loaded from the ExternalReferences. + + + + + Clears the disposed documents from the dictionary + + + + + Adds the specified reference to the node collection assigned to the provided key. + If no node collection exists, a new collection is added for the given key. + Before the reference is added, it is checked, if referenced elements exist. If no element exists, + the reference is not added. If elements exists, these elements are added too. + + The key. + The attribute used to reference an element. + The referenced Element if not null + The node collection, if the reference was added; otherwise false. + + + + Updates all name references, which use the provided "oldName" to reference an element. + + The old name. + The new name. + The referenced element, which will change its name from oldName to newName. + + + + Gets all attributes from the reference collection, which define references to the provided element. + + The reference collection. + The referenced element. + All attributes from the reference collection, which define references to the provided element + + + + This class implements a merge service which is able to merge CAEX documents from different sources into one + common document. The merge service adds the libraries from the external referenced file into the target document + and updates all references, which use an alias and can be resolved after the merge. If a library, which is used + in the external source, also exists in the target document, this library is replaced, if the library version in the + external source is newer. If not the existing library is kept. If an InstanceHierarchy in the external source can + be identified as an outsourced Master InternalElement, it is tried to add the Master InternalElement back to its + original position. + + + + + + Registers a new instance of a MergeService with the of the AMLEngine. + + The service instance + + + + Unregisters this service + + + + + Merges the defined ExternalReference into the provided CAEXDocument. The source is loaded from the provided + external source stream. + + The document. + The external reference. + The external source stream. + The merge protocol. + if set to true the service performs a schema transformation if necessary. + + true, if merge was successful + + + + + Merges the defined ExternalReference into the provided CAEXDocument. + + The document. + The external reference. + The merge protocol. + if set to true the service performs a schema transformation if necessary. + + true, if merge was successful + + + + + Gets the external libraries from the source which should be imported into the target. + + + The target. + The source. + The protocol. + + + + + Tries to load the external source which is defined in the external reference. + + The document. + The external reference. + The source. + The merge protocol. + if set to true [automatic transform]. + + true, if loaded; otherwise false. + + + + + The Aml.Engine.Services namespace contains classes that define and implement specific Services + that provide additional features for the processing of AMLDocuments. Registered services + are located by the AMLEngine and can enhance API methods to provide faster queries or automated + name assignment to added elements. + + + + + This interface defines methods, each NodeDictionary should provide. + + + + + + + Adds the specified element to the node collection identified with the provided key. + If no node collection exists, a new collection is added for the given key. + + The key. + The element. + The node collection + + + + Adds the specified reference to the node collection assigned to the provided key. + If no node collection exists, a new collection is added for the given key. + + The key. + The attribute used to reference an element. + The referenced element, if already known. + + The node collection + + + + + Removes the element. If this is the last element in the + collection, remaining references will be deleted and the key is deleted from the dictionary. + + The key. + The node. + if set to true reference attribute values will be set to null. + + + + Removes the reference from the collection. If this is the last item in the + collection, the key is deleted from the dictionary. + + The key. + The node. + + + + This class implements a dictionary which allows the association of multiple nodes to the same key. The source of + the key is an attribute value of a CAEX object. The nodes are assembled into a . + + + + + + + Generic class for all node dictionaries + + + + + + + + Gets and sets the with the specified key. If no entry exists, the value is + null. + + The key. + a node collection + + + + Adds the specified element to the node collection identified with the provided key. + If no node collection exists, a new collection is added for the given key. + + The key. + The element. + + The node collection + + + + + Adds the specified reference to the node collection assigned to the provided key. + If no node collection exists, a new collection is added for the given key. + + The key. + The attribute used to reference an element. + The referenced element, if already known. + + The node collection + + + + + Removes the reference from the collection. If this is the last item in the + collection, the key is deleted from the dictionary. + + The key. + The node. + + + + Removes the element. If this is the last element in the + collection, remaining references will be deleted and the key is deleted from the dictionary. + If updating is enabled, the registered references will all get a value of null. + + The key. + The node. + if set to true [update references]. + + + + Removes the unused references in a collection. Unused references may exist, after an element + is deleted. + + The collection. + The element. + + + + Updates the references in a collection. Updates are applied, if the updating mode is + on and a referenced element is removed or changed. + + The collection. + The element. + The value. + if set to true the referenced element has been deleted. + The actual registry key. + + + + This class is used to get key-based access to XML nodes of an CAEX document using an identifying string. + Currently the CAEX ID and the CAEX Name of an XML node are valid keys. The class currently + uses three different tables to store nodes. The IDTable is used to identify nodes with the CAEX ID. The + PathTable is used to identify nodes with the CAEXPath and the Alias of an ExternalReference object is + used to identify nodes which contain references to nodes which are not contained in the current document + but stored in an externally referenced document. + + + + + The Key used to identify elements which define a reference attribute but with an invalid value + + + + + The Key used to identify elements which don't define an ID but should have one. + + + + + The Key used to identify elements which don't define a reference attribute but should have one. + + + + + Initializes a new instance of the class. + + The root. + + + + Gets the alias table. This Table contains the ExternalReference objects as well as the references using + the alias of the ExternalReference. + + + + + Gets the identifier table. This Table contains the Elements identifiable by an ID as well as the references + to the element using the ID. + + + + + Gets the name table. This Table contains the Elements which reference another element using the name of that + element. + + + + + Gets the path table. This Table contains the Elements identifiable by a CAEXPath as well as the references + to the element using the Path. + + + + + Gets the root which creates the dictionary. + + + + + Adds the specified XML element and all its descendants to the table. An element is added + if it is a CAEXClass , + an element with an identifier , + an element with an ID reference or + an element with a Path reference . + + The service. + The element. + + + + Adds the provided node if not already added using its CAEX ID as the key. If the ID is missing, the node + is added with the "NOKEY" identifier. + + The node. + + + + Adds the provided node if not already added using its ID reference attribute as the key. + + The service. + The node. + + + + Adds an lookup table entry with name reference. + + The service. + The node. + + + + Adds the node using its path reference attribute as the key. + + The service. + The node. + + + + Finds all the elements, which are identifiable by a CAEX path and are descendants of the + specified CAEX object. Only elements are included, which can be referenced by their path + from other CAEX objects. These includes also the elements, which + represent an element on the path (like class libraries). The elements are put into a lookup table, + using the path as a key. + Elements, having the same CAEX path are grouped together.The Elements are represented as + . + + The CAEX object. + Elements, which are identifiable by a CAEX path. + + + + Finds all elements with IDs, which are descendants of the provided CAEX object. + Elements, using the same ID are grouped together. + + The CAEX object. + Elements with an ID + + + + Finds all the elements, which are have a reference to a class using a CAEX path. The elements are put into a + dictionary, + using the path as a key. The Elements are represented as . + + + + + Finds all elements which have references to other elements using the ID of the referenced element + + + + + Finds all elements with IDs. + + + + + Finds all elements with a name reference, which are descendants of the provided CAEX objects. Elements + using the same name in their reference are grouped together. A name reference uses the CAEX attribute Name + of another CAEX object to reference that CAEX object. + + The CAEX object. + Elements with name references. + + + + Finds the table value using the Alias as a key + + The alias. + + the identified table value + + + + + Finds the table value using the ID as a key + + The ID. + if set to true [is alias]. + + the identified table value + + + + + Finds the table value using the path as a key + + The path. + if set to true [is alias]. + + the identified table value + + + + + Gets all ExternalInterface objects which are used in InternalLinks. + + A collection of all ExternalInterface objects, having an associated InternalLink. + + + + Called when [changed reference]. + + The service. + The instance containing the event data. + The change mode. + + + + Handles the event. + + The service. + The instance containing the event data. + The change mode. + + + + Updates the complete table for all descendants of the associated root node. + + The service. + The element. + if set to true [automatic update]. + + + + This method is used to handle a name change for any CAEX element, which is a CAEXClass. It will updated the + elements registration + and also - if the auto update is enabled - the updates for all references to this element and nested CAEXClass + elements. + + The instance containing the change information. + The change mode. + if set to true [is automatic update enabled]. + + + + Determines whether the specified key is a special reference key used to identify + invalid and missing references. + + The key. + + true if the specified key is a special reference key; otherwise, false. + + + + + this methods applies the specified action on all IDReference attributes of the provided node. + + The node. + The action. + + + + this methods applies the specified action on all Name Reference attributes of the provided node. + + The node. + The action. + + + + this methods applies the specified action on all path reference attributes of the provided node. + + The node. + The action. + + + + Get the key to identify items which use an alias in their reference. If the reference doesn't contain + an alias, the result is null. + + The reference. + The path parts array, which is created to identify an alias in the reference. + If an alias is identified, this is the alias table. + + + + + Builds an ID-Key from the provided reference. + + The reference. + The attribute. + Name of the attribute. + The owner. + The table which has to be used with the identified key. + + + + + Get the key to identify items which use an ID in their reference. If the reference is not a valid + GUID, the key is set to INVALIDREF. + + The key. + + + + + Builds a Name-Key from the provided reference. + + The reference. + The attribute. + Name of the attribute. + The owner. + The path parts. + The table, which has to be used with the identified key. + + + + + Get a key to identify items, which don't define a reference but need to do so. + + The attribute. + Name of the attribute. + The owner. + + + + + Builds a Path-Key from the provided reference. + + The reference. + The attribute. + Name of the attribute. + The owner. + if set to true [is alias]. + The path parts. + + + + + Removes the node, registered with its ID from the table. All references to the ID are moved + to the 'invalid' entry. + + The node. + if set to true [update references]. + + + + Removes the ID-references registered with this node from the table. + + The service. + The node. + + + + Removes the Name-references registered with this node from the table. + + The service. + The node. + + + + Removes the node, registered with its CAEXPath from the . + + The node. + if set to true [update references]. + + + + Removes all path references which have been registered with this node. + + The service. + The node. + + + + This class implements a list of s. The list may contain different + types of objects, s and s. + + + + + + Gets all XAttributes from the Node list. + + + + + Gets all XElements from the Node list. + + + + + Gets a value indicating whether this instance contains a. An XAttribute represents + a reference to another node. The reference element is the parent of the attribute. + + + true if this instance has references; otherwise, false. + + + + + Gets all XElements from the Node list which are references. These are all parent nodes of the + attribute elements in the list. + + + + + Adds the specified node to the list, if it is not already contained. + + The node. + + + + This class is a query service based on dictionaries. + + + + + + + + Initializes a new instance of the class. + + + + + Occurs when any reference has been updated. + + + + + Gets or sets a value indicating whether this instance will automatically update + cross references between AutomationML objects. + + + true if the automatic update is enabled; otherwise, false. + + + + + Registers a new instance of a LookupService with the of the AMLEngine. + + The service instance + + + + Unregisters this service + + + + + Adds the document to the query service. All tables for the document will be created. + + The document. + doc + + + + Removes the document from the query service. All tables for the document will be unloaded. + + The document. + doc + + + + Gets all classes which have references to the provided class path. Use this method to get all classes which have + a class to class relation to the class, identified by the provided classPath. If the + is + set, only classes with the defined element name are considered. + + The CAEX document which is searched through. + The class path. + + Name of the element. Valid values are 'RoleClass', 'SystemUnitClass', 'InterfaceClass' and + 'AttributeType'. + + + An enumeration of all classes which use the identified class as a base class. + + + + + Gets all classes which have references to the provided CAEX object. Use this method to get all classes which have + a class to class relation to the provided CAEX object. + + The CAEX object. + + An enumeration of all classes which use the provided CAEX object as a base class. + + + + + Gets all classes which have references to the provided CAEX object and their referencing classes (recursive). + This method extends the + and gets not + only the directly + derived classes of a base class but also the derived classes of these classes and further on. + + The CAEX object. + + The derived classes tree for the specified base class. + + + + + Gets all classes which have references to the provided CAEX object and their referencing classes (recursive). + This method extends the + + and gets not only the directly + derived classes of a base class but also the derived classes of these classes and further on. If the + is + set, only classes with the defined element name are considered. + + The CAEX document which is searched through. + The class path. + + Name of the element. Valid values are 'RoleClass', 'SystemUnitClass', 'InterfaceClass' and + 'AttributeType'. + + + + + + Gets all the elements which are descendants of the provided CAEX object and are identifiable by a CAEX path. + Elements having the same path are grouped together. + Use this method to validate the existence of ambiguous CAEXPaths. + + The CAEX object. + + Lookup table of elements which are identifiable by a CAEX path. + + caexObject + + + + Gets all the elements which are descendants of the provided CAEX object and use an alias reference. + Elements referencing the same Alias are grouped together. + Use this method to validate the existence of referenced externals. If the is + set, only elements with the defined element name are considered. + + The CAEX object. + If parameter is set, only elements with the given element Name are considered. + + Lookup table of elements with Alias references. The Alias part of the CAEXPath is used as a dictionary key. + + + + + Gets all the elements which are descendants of the provided CAEX object and use a path reference. + Elements referencing the same path are grouped together. + Use this method to validate the existence of referenced classes. If the is + set, only elements with the defined element name are considered. + + The CAEX object. + If parameter is set, only elements with the given element Name are considered. + + Lookup table of elements with path references. The CAEXPath is used as a grouping key. + + caexObject + + + + Gets all the elements which are descendants of the provided CAEX object and which use identifier references. + Elements referencing the same ID are grouped together. + Use this method to validate the existence of referenced IDs. If the is + set, only elements with the defined element name are considered. + + The CAEX object. + If parameter is set, only elements with the given element Name are considered. + + Lookup table of elements with ID references. The ID is used as a dictionary key. + + caexObject + + + + Gets all the elements which are descendants of the provided CAEX object with IDs. + Elements using the same ID are grouped together. + Use this method to validate the uniqueness of IDs. + + The CAEX object. + If an ID is specified, only elements with the defined ID are searched. + + Lookup table of elements with IDs. The ID is used as a dictionary key. + + caexObject + + + + Returns all Elements which are descendants of the provided CAEX object with InternalLinks. + These elements are the owners of the InternalLink objects. + The returned collection may contain InternalElements and SystemUnitClasses as well. + + The CAEX object + + A collection of all objects with associated InternalLinks. + + caexObject + + Note the difference to the method + + which doesn't return the + owners of an InternalLink but the related elements. + + + + + Gets all the elements which are descendants of the provided CAEX object and use a name reference. + Elements referencing the same name are grouped together. + Use this method to validate the existence of referenced elements. + + The CAEX object. + + + Lookup table of elements with name references. The name is used as a grouping key. + + caexObject + + + + Returns all ExternalInterfaces in the provided document or optionally + in the caexObject and descendants, which are + instances of the standard Interface class + . + + The document. + Optional parameter, defining a possible start object for the query. + + A collection of all ExternalInterface which are instances of the + standard Interface class . + + + + + Returns all ExternalInterfaces in the provided document or optionally + in the caexObject and descendants, which are + instances of the Interface class defined by the provided . + + The document. + The CAEX ClassPath of the InterfaceClassType + Optional parameter, defining a possible start object for the query. + + A collection of all ExternalInterface which are + instances of the Interface class defined by the provided . + + + + + Returns all InternalElements which are descendants of the provided CAEX object with InternalLinks. + These elements are the owners of the InternalLink objects. + + The CAEX object + + A collection of all objects with associated InternalLinks. + + caexObject + + Note the difference to the method + + which doesn't return the + owners of an InternalLink but the related elements. + + + + + Returns all Mirrors of the specified Attribute + + The master. + + An enumeration of mirror Attribute objects + + + + + Gets alls the elements which are descendants of the provided CAEX object + which use the provided Alias in a reference. The elements in the result collection are + references, which define the CAEX object and the attribute, containing the reference + . + If the is + set, only elements with the defined element name are considered. + + The CAEX object. + The Alias. + If parameter is set, only elements with the given element Name are considered. + + a collection of element references which use the provided Alias in a reference + + caexObject + + + + Gets alls the elements which are descendants of the provided CAEX object + which have a reference to the provided CAEXPath. The elements in the result collection are + references, which define the CAEX object and the attribute, containing the reference + . + If the is set, only elements with the defined element name are considered. + + The CAEX object. + The path. + If parameter is set, only elements with the given element Name are considered. + + a collection of element references which have a reference to the provided Path^. + + + + + Gets alls the elements from the document which have a reference to the provided ID. The elements in the result + collection are + references, which define the CAEX object and the attribute, containing the reference + . + If the is + set, only elements with the defined element name are considered. + + The CAEX object. + The identifier. + If parameter is set, only elements with the given element Name are considered. + + a collection of element references which have a reference to the provided ID + + caexObject + + + + Returns all InternalElements and SystemUnitClasses which are descendants of the provided CAEX object, + which are related to others via InternalLinks. + + The CAEX object. + + A collection of related SystemUnitClass objects + + caexObject + + Note the difference to the method + + which doesn't return the + related elements but the InternalLink owners. + + + + + Returns all Mirrors of the specified ExternalInterface + + The master. + + An enumeration of mirror ExternalInterface objects + + + + + + Locates a CAEX object in the provided document using the specified ID - Attribute for identification. + + The document. + The identifier. + + if set to true tries to resolve an alias reference with an ExternalReferenceResolver + service. + + + The located object with the specified ID or null. + + + + + Locates a CAEX object in the provided document using the specified CAEX - Path for identification. + If the path uses an alias reference and an can be located, + it is tried to resolve the external reference and to get the object from the external source. + + The document. + The path. + + if set to true tries to resolve an alias reference with an ExternalReferenceResolver + service. + + + The first object which is found (if the path is not a unique identifier, than more than this object may exist). + + doc + + + + Returns all ExternalInterface objects which are descendants of the provided CAEX object + and are used in relations (InternalLinks). + + The CAEX object. + + A collection of related ExternalInterface objects + + caexObject + + + + Returns all Mirrors of the specified InternalElement + + The master. + + a collection of mirror InternalElements + + master + + + + Gets all InternalLinks that reference the specified InternalElement or SystemUnitClass. + + The InternalElement or SystemUnitClass. + + a collection of InternalLinks. + + systemUnitClass + + + + Gets all InternalLinks that reference the specified ExternalInterface. + + The ExternalInterface. + + a collection of InternalLinks. + + externalInterface + + + + Determines whether the specified InternalElement is referenced by other InternalElement + objects called 'Mirrors'. + + The InternalElement object. + + true if the specified element is a 'Master'-InternalElement; otherwise, false. + + internalElement + + + + Determines whether the specified ExternalInterface is referenced by other ExternalInterface + objects called 'Mirrors'. + + The ExternalInterface element. + + true if the specified element is a 'Master'-ExternalInterface; otherwise, false. + + externalInterface + + + + Determines whether the specified AttributeType is referenced by other AttributeType + objects called 'Mirrors'. + + The element. + + true if the specified element is a 'Master'-Attribute; otherwise, false. + + + + + Determines whether the specified CAEX object is referenced. + + The CAEX object. + + true if the specified CAEX object is referenced; otherwise, false. + + + + + RemoveDeletedElement the element which is deleted. + + The element. + + + + The PathDictionary contains nodes which are identifiable with a CAEXPath or which have + references using a CAEXPath. + + + + + + + Gets and sets the PathReferenceCollection for the last table which can be located with + the given path parts, where the last part defines the target table. + + + The . + + The parts of a path. These parts are build from a CAEXPath. + The index. + + the identified PathReferenceCollection + + + + + Gets and sets the PathReferenceCollection for the last table which can be located with + the given path parts, where the last part defines the target table. + + The parts of a path. These parts are build from a CAEXPath. + The index. + + the identified PathReferenceCollection + + + + + Removes the reference from the collection. If this is the last item in the + collection, the key is deleted from the dictionary. + + The key. + The node. + + + + TODO: There is a big confusion in this method because the parameter order is not same with the base + newValue/oldValue + + + + + + + + + + Adds all nodes, which are identifiable with the given node and the path parts + to the appropriate table. The name of each node should be equal to its path part. + The provided node's path is identifiable with the full path (all path parts). + + The path parts. + The node. + + + + + Adds the reference. + + The path parts. + The object. + + + + + Gets all elements, which are identifiable with a CAEXPath for this table and all included sub tables. + + collection of elements from all tables + + + + Gets all elements, which are references for this table and all included sub tables. + + collection of attributes from all tables + + + + Gets the dictionary which contains the node entries, assigned to the specified path parts. + + The path parts. + + + + + Removes the element from the path table. To remove the element, the elements dictionary + is located using a deep scan along the hierarchy path. If the leave node is reached, which contains + the element, the element is deleted and the ancestor levels are updated to (if any higher level becomes + empty). + + The path parts. + The element. + if set to true [update references]. + + + + Removes the reference. To remove the reference, the reference dictionary + is located using a deep scan along the hierarchy path. If the leave node is reached, which contains + the reference, the reference is deleted and the ancestor levels are updated to (if any higher level becomes + empty). + + The path parts. + The Attribute defining the reference to an element. + + + + + Updates the element. + + The path parts old. + The path parts new. + The element. + + + + This class defines the properties and methods of any value, stored in a . + A TableValue allows the construction of a hierarchical table structure. This is used to + support access to XML nodes using a . + + + + + Gets a value indicating whether this instance has a table of subordinate elements + + + true if this instance owns a table; otherwise, false. + + + + + Gets the table of associated registered elements. + + + + + This class is an implementation of a split service. This service + is able to split one into multiple files using split points. + + + + + + Initializes a new instance of the class. + + + + + Registers a new instance of a SplitService with the of the AMLEngine. + + The service instance + + + + Unregisters this service + + + + + Removes the split point for the provided CAEX object. + + The CAEX object. + + + + Removes the document from the internal registry of the split service. All registered split points for this document + will be removed. + + The document. + + + + Sets the split point for the provided CAEX object. If the actual list of split points for + the same document already contains a split point which is a child of the provided CAEX object, + this existing split point is removed from the list. + + The CAEX object. + + + + Splits the specified document on all currently defined split points. The + created libraries are saved in an AutomationML document and an ExternalReference + is created, using the specified alias. All remaining references to the + external source are renamed using the provided alias. After splitting, + the document doesn't contain any SplitPoints any more. + + The document. + The alias. + The file path. + The Split document + document or alias or filePath + File path is equal to source document + + + + Splits the specified source document. + + The source document. + The split point. + The alias. + The file path. + + + sourceDocument + or + alias + or + filePath + + File path is equal to source document + + + + Gets a collection of all split points for the provided document. + + The document. + + all split points for this document. + + + + + All alias references are checked and the necessary externals are copied from the source document. + + + + + + + + Adds the external reference for the provided alias to the source document if needed. + + The source document. + The alias. + The file path. + + + + this handler reacts on deleting elements and updates the split point list if needed + + The sender. + The instance containing the event data. + + + + Splits the internal element. ID references which stay in the source document but point to the split document are + changed + to ALIAS references. + + The source document. + The split document. + The internal element. + The alias. + + + + Splits the library. Path references and ID references which cross the library border are changed to alias + references. + + The source document. + The split document. + The library. + The alias. + + + + Checks the created external references in the source document, if they are still needed after every split point is + processed. + Additionally the outgoing references of the created split document are checked and the needed externals are + created. + + The source document. + The split document. + The alias. + + + + This class creates a new document with CAEX version 2.15 by transforming a document with CAEX version 3.0 + + + + + Executes the downgrade from Schema 3.0 to 2.15 + + New document with CAEX version 2.15 + + + + This class defines a service for a schema transformation. The service supports transformation + of CAEX documents from CAEX Version 2.15 to version 3.0 and back. Backwards transformation + can result in a loss of information. + + + + + + Prevents a default instance of the class from being created. + + + + + Raised from the ShemaTransform service when a transformation has started. + + + + + Raised from the ShemaTransform service when a transformation has ended. + + + + + Registration of a new + + The registered CAEX Schema Transformer. + + + + Unregisters this service + + + + + Method to do a schema transformation for the provided document to the defined schema. + This method can be used for upward and downward transformations. + + the document to be transformed + the target schema + the transformed document + + + + This class creates a new document with CAEX version 3.0 by transforming a document with CAEX version 2.15 + + + + + Executes the upgrade from Schema 2.15 to 3.0 + + New document with CAEX version 3.0 + + + + Converts the supported role type to role requirement type + + Parent internal element for supported roles + The role requirement object. + + + + ReferenceElement is a Tuple of an XElement and the Name of + an Attributes, which is used to reference another Element. The reference + may be used as a key to find the referenced Element. + + + + + Initializes a new instance of the class. + + The XML node. + Name of the reference attribute. + + + + Gets the XML node. + + The element. + + + + Gets the name of the reference attribute of the + + The name of the reference attribute. + + + + gets the value of the Reference Attribute + + + + + Gets the CAEX object which owns the reference. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + true if the specified is equal to this instance; otherwise, false. + + + + Returns a hash code for this instance. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + This class defines a command that contains a collection of commands. This collection is treated + as a transaction. If a transaction is undone, all commands in the transaction will be undone too. + + + + + + This class implements an Undo and Redo service. When this service is registered, changes in an AutomationML + document + can be reversed. A sequence of actions can be grouped into transactions which than can be reversed + within a single undo operation. The AMLEngine will locate a registered UndoRedoService and will notify + the service of any changes, made to a document. The service manages individual stacks for each loaded CAEX + document. + + + + + + + Prevents a default instance of the class from being created. + + + + + Occurs when a property value changes. + + + + + Removes the XML document from the internal registry of the service. + Undo- and Redo Stacks for this document will be deleted. + + The document. + + + + Request to not record changes of the specified document. + + The document. + + + + Request to resume recording changes of the specified document. + + The document. + + + + Registers a new instance of a UndoRedoService with the of the AMLEngine. + + The service instance + + + + Unregisters this service + + + + + Begins a new transaction. All changes, made to a CAEXDocument inside a transaction are treated as a single + operation. + + The CAEX document to which the transaction should be associated. + A friendly name for this transaction. + If the transaction started. + + + + Determines, if the service can redo a command + + The document. + + true if this instance can redo any undone command from the specified document; otherwise, false. + + + + + Determines, if the service can undo a command. + + The document. + + true if this instance can undo any command from the specified document; otherwise, false. + + + + + Clears the stacks, managed for the specified document. + + The document. + + + + Ends the current transaction from the specified document. + + The document. + No matching Transaction Begin + If the transaction ended + + + + A command is pushed on the undo stack of this service. + + the CAEX command. + + + + Executes the last undone operation from the specified document again. + + The document. + + + + Gets the date of the most recently executed command for the specified document. + + The document. + if set to true the last undo operation is considered; otherwise the last redo operation. + + + + + Gets the command names of all redo actions for the defined document. + + The document. + + List of command names + + + + + Reverses the last action of the defined document. + + The document. + + + + Gets the command names of all undo actions of the defined document. + + The document. + + List of command names. + + + + + This class defines methods for a unique name service. The names of CAEX-Objects in a Sequence of + Elements should all be unique. If a unique name service is registered, the AMLEngine will + automatically call this service for a unique name generation whenever a new element is added + to a sequence which requires a unique name for its members. + This services uses a generation pattern which consists of the specified default name followed by + a generated ordinal number of the elements in a sequence. + + + + + + Registers a new instance of a UniqueNameService with the of the AMLEngine. + + The service instance + + + + Unregisters the current instance of the UniqueNameService with the of the AMLEngine. + + + + + Determines whether the specified element has a unique CAEX name in the sequence of equal elements + of its parent. + + The element. + + true if the elements name is unique, otherwise false. + + + + + Registers the default name for all CAEX objects with the provided element name. + + Name of the element. + The default name. + + + + Resumes activities of the unique name service. + + + + + Suspends activities of the unique name service. + + + + + Creates a unique CAEX Name for a child with the specified elementTagName in the specified sequence + + The sequence of elements. + Name of the element tag. + + a unique name using the registered default extended with an added number, representing the maximal number + + elementTagName + + + + Creates a unique CAEX Name for a child with the specified elementTagName in the specified sequence using the + specified + defaultName + + The sequence. + Name of the element tag. + The default name. + + a unique name using the registered default extended with an added number, representing the maximal number + + elementTagName + elementTagName + + + + Enumeration RepairTypeEnum + + + + + The options which are related to ID validation issues + + + + + The options which are related to Name validation issues + + + + + The options which are related to ID reference validation issues + + + + + The options which are related to Path reference validation issues + + + + + This Flag cause the generation of a unique ID for all Empty IDs + + + + + This Flag cause the generation of a unique ID for all Double IDs + + + + + This Flag cause the renaming of all empty Names with an automatic name generation algorithm. + To apply this method, a has to be registered, + + + + + This Flag cause the removal of all references where the Reference Value is empty + + + + + This Flag cause the removal of all ID References where the ID Value has not been resolved + + + + + This Flag cause the removal of all Path References where the Path reference Value has + not been resolved + + + + + This Flag cause the generation of a new name for an element, when it's CAEX-Path is + double so that the Path is unique. + To apply this method, a has to be registered. + + + + + This Flag cause the generation of a writer header + + + + + This Flag cause the generation of an AutomationML Version header + + + + + This Flag cause the correction of the Schema Version + + + + + This Flag cause the generation of a new GUID for existing GUID's with invalid formats + + + + + This Flag cause the generation of a new reference without the alias + + + + + This Flag cause the generation of source document information + + + + + This Flag cause the deletion of an element + + + + + This Flag cause the deletion of an element which reference an element out of the allowed scope. + + + + + This Flag cause the generation of a valid file URL in an ExternalDataConnector to a localized file. + + + + + This Flag cause the removal of all Name References where the Name reference Value has + not been resolved + + + + + The Option None indicates, that nothing should be done + + + + + Extensions for + + + + + Converts the specified repair option to a readable string + + Option for repairing an element. + a readable string describing the repair option + + + + Class ValidationElement is a Tuple of an XElement and associated detailed + Information about any inconsistencies, assigned with that Element. + + + + + + Checks the validation of the element + + + + + + Initializes a new instance of the class. + + The element. + The validation key. + + + + constant string, defining validation elements which are yet not repaired. + + + + + Gets the available repair options. + + + + + Gets the CAEX element wrapper for the XElement. + + + + + Gets the element which has been validated. + + + + + Gets information about the result of a repair operation for one element. + + + + + Gets or sets the validated attribute. + + + + + Gets a short information about the validation of one element. + + + + + Gets a longer description containing more detailed information about a validation issue. To get this information, + the informative mode + shall be enabled when the validation is performed. + + + + + Gets the type of the validation. + + + + + Determines whether the specified object is identical to the current object. + + The object to be compared with the current object. + + ,if the specified object and the current object are the same, otherwise + . + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Repairs a missing or invalid SchemaVersion. + + + + + + Repairs a missing or invalid AutomationML version. + + + + + + Repairs the writer header. + + + + + Class ValidationKey. + + + + + Initializes a new instance of the class. + + The key. + Type of the validation. + + + + Gets the key. + + The key. + + + + Gets the type of the validation. + + The type of the validation. + + + + This class defines methods to assist the interpretation of validation results. + + + + + Gets the Alias reference validation results from the validation result list. + + The validation result. + + All validation results, which are related to CAEX objects which use an Alias to + reference CAEX objects in external sources. + + + + + Gets the File reference validation results from the validation result list. + + The validation result. + All validation results, which are related to External References with a not Locatable external reference + + + + Gets the CAEXPath validation results for CAEX classes from the validation result list. + + The validation result. + All validation results, which are related to the CAEXPath of a CAEX class. + + + + Gets the ID reference validation results from the validation result list. + + The validation result. + + All validation results, which are related to CAEX objects which use IDs to + reference other CAEX objects. + + + + + Gets the Path reference validation results from the validation result list. + + The validation result. + + All validation results, which are related to CAEX objects which use CAEX path to + reference other CAEX objects. + + + + + Gets the Name reference validation results from the validation result list. + + The validation result. + + Currently only name references from mapping objects are validated + + + All validation results, which are related to CAEX objects which use a Name to + reference other CAEX objects. + + + + + Gets the ID validation results from the validation result list. + + The validation result. + All validation results, which are related to the CAEX object ID attribute. + + + + Gets the MetaData validation results from the validation result list. + + The validation result. + All validation results, which are related to MetaData assigned to a CAEXFile. + + + + Gets the validation results for all MetaData which are related to the AutomationML Version + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to MetaData which are related to the AutomationML Version. + + + + Gets the validation results for all MetaData which are related to the CAEX Schema Version + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to MetaData which are related to the CAEX Schema Version. + + + + Gets the validation results for all MetaData which are related to missing source information in an AML file. + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to missing source information in an AML file. + + + + Gets the validation results for all elements with wrong formatted IDs. + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to wrong formatted CAEX object IDs. + + + + Gets the validation results for all elements which are not uniquely identifiable with a CAEX path + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to wrong named CAEX objects which are referable. + + + + Gets the validation results for all elements which are repairable + + The validation result. + All validation results, which are repairable. + + + + Gets the validation results for all elements which are not repairable + + The validation result. + All validation results, which are not repairable. + + + + Gets the validation results for all elements with ID references which are not resolvable. + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to ID references which are not resolvable. + + + + Gets the validation results for all elements with CAEX path references which are not resolvable. + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to path references which are not resolvable. + + + + Gets the validation results for all elements with CAEX path references which are not resolvable. + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to path references which are not resolvable. + + + + Gets the validation results for all elements with ID references which are empty. + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to ID references which are empty. + + + + Gets the validation results for all elements with missing IDs. + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to missing CAEX object IDs. + + + + Gets the validation results for all elements with IDs which are not unique in the document. + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to CAEX object IDs which are not unique. + + + + Gets the validation results for all elements with references to an Alias, but no ExternalReference with that Alias + is defined. + + + The validation result. Use the + as a parameter for this method. + + All validation results, which are related to CAEX objects which use an undefined ExternalReference alias. + + + + Gets the validation results for all elements with references to an Alias, where the ExternalReference has been + merged into the + document already. + + + The validation result. Use the + as a parameter for this method. + + + All validation results, which are related to CAEX objects which reference an external source which is already + merged. + + + + + Enumeration ValidationTypeEnum + + + + + The identifier validation indicates ID related issues. like a double or missing ID or a wrong formatted ID. + The issues are repairable, if the ID is not referenced. + + + + + The class path validation indicates a double ClassPath or missing Path + + + + + The attribute path validation indicates a double AttributePath or missing Path + + + + + The path reference validation indicates a missing or unresolved reference to a class + + + + + The name validation indicates a missing or not allowed name + + + + + The ID reference validation indicates a missing or unresolved reference to an object + with an ID + + + + + The alias validation + + + + + The validation result has constituted an alias in an external reference which is not merged + + + + + The validation result has constituted a missing alias in an external reference + + + + + The file reference validation indicates a wrong FilePath in an external reference, which couldn't be resolved to an + existing file + + + + + The role attribute reference validation indicates a wrong reference to a role Attribute in a Mapping + + + + + The role Interface reference validation indicates a wrong reference to a role Interface in a Mapping + + + + + The SystemUnitClass attribute reference validation indicates a wrong reference to a SystemUnitClass Attribute in a + Mapping + + + + + The SystemUnitClass Interface reference validation indicates a wrong reference to a SystemUnitClass Interface in a + Mapping + + + + + This Flag indicates a cyclic dependency between classes + + + + + The automationML meta data validation indicates a couple of validation issues with metaData, as a missing schema + name or writerHeader + + + + + This service is defined for the validation of an AML document. Additionally the + service can also be used to repair specific invalid properties in a document. + + + + + + + Normalizes a file path and resolves relative paths + + a string with a relative path + The CAEX file. + + a normalized file path string + + + + + The invalid schema key + + + + + The no AML version key + + + + + The no name key + + + + + The no schema key + + + + + Registers a new validator service. + + The registered validator service. + + + + Unregisters the validator service. + + + + + Validates the ID of a CAEX object. IDs of CAEX objects shall be unique. + + The CAEX object. + + The ID, which should be assigned to the object. If no ID is defined, the uniqueness of the already + assigned ID is evaluated. + + A value tuple, returning the validation result and a message + + + + Validates a name of a CAEX object. Names of CAEX classes or types (RoleClasses, InterfaceClasses, + SystemUnitClasses and AttributeTypes), Attributes, + Libraries and CAEX InstanceHierarchies shall be unique across its siblings or across all child elements of the same + CAEX parent element over its life time. + This shall assure that referencing a library, a class, a type or an attribute by its path delivers a unique result. + + The CAEX object. + The name, which should be assigned to the object. + A value tuple, returning the validation result and a message + + + + Repairs the specified validated element. + + The validated element. + + true if the element has been repaired, false otherwise. + + + + + + Get Validation Information for all elements in the specified document, which have validation issues. The + provides detailed information about available Repair + Options and an additional Information Text. + + The CAEX document. + if set to true [generate long description]. + + An enumeration of validation information for CAEX objects. One CAEX object may have multiple + occurrences with different validation issues in this collection. + + + + + Get Validation Information for all elements in the specified document, which have validation issues. The + provides detailed information about available Repair + Options and an additional Information Text. This method should be used, if the Document is loaded from an + AutomationML container. The Validation service will check validity of external references which are packed + parts of the container. + + The CAEX document. + The AutomationML container, containing the document source. + if set to true generate long description for each validation issue. + + A collection of validation information for CAEX objects. One CAEX object may have multiple + occurrences with different validation issues in this collection. + + + + + Get Validation Information for all elements in the specified document, which have validation issues. The + provides detailed information about available Repair + Options and an additional Information Text. + + The CAEX document. + + If set, the associated parts, defined in the AutomationML container are used to validate + external references. + + if set to true [generate long description]. + + An enumeration of validation information for CAEX objects. One CAEX object may have multiple + occurrences with different validation issues in this collection. + + + + + Validates the alias references and returns the validation result describing possible repair options. The + provides detailed information about available Repair + Options and an additional Information Text. + + The CAEX document. + if set to true [generate long description]. + + + + + Gets the alias reference validation issues for the specified document. + + The document. + set, if a validation long description should be added to the result + + + + + Gets all validation issues for the specified document. + + The document + + if set to true [generate long description]. + + + + + + Gets the AutomationML version validation issues. + + The document. + if set to true [generate long description]. + + + + + Gets the CAEX schema validation issues. + + The document. + if set to true [generate long description]. + + + + + Gets the external reference validation issues. + + The document. + + if set to true [generate long description]. + + + + + Gets the identifier reference validation issues. + + The document. + if set to true [generate long description]. + + + + + Gets all ID validation issues for the provided document + + The document. + + + if set to false [only warning will be issued during troubleshooting of ID of + InternalElement in SUCLIB. + + + + + + + + + Determine if IE is under SystemUnitClassLib + + + + + + + Gets the meta data validation issues for the specified document. + + The document. + if set to true [generate long description]. + + + + + Gets the validation issues for elements which reference another element using a CAEXPath. + + The document. + if set to true [generate long description]. + + + + + Gets the validation issues for elements which should be identifiable with a CAEXPath. + + the document + set, if a validation long description should be added to the result + + a collection of validated elements. + + + + + + + Gets validation issues for source document or writer header information + + The document. + + a collection of validated elements. + + + + + Validates the alias reference of the specified document and the provided path and item. + + The document. + The path which contains an alias. + The alias reference item. + set, if a validation long description should be added to the result + + a collection of validated elements. + + + + + Validates the external reference. + + The CAEX file. + + The alias. + if set to true [generate long description]. + + a collection of validated elements. + + + + + Validates the identifier reference of the specified document and the provide ID reference and the reference item. + + The document. + The ID reference. + The reference item. + if set to true [generate long description]. + + + + + Validates the path reference of the specified document for the provided path and reference item. + + The document. + The path. + The reference item. + if set to true [generate long description]. + + + + diff --git a/SOURCE/Application/Plugins/ModellingWizard/AML.Engine.dll b/SOURCE/Application/Plugins/ModellingWizard/AML.Engine.dll new file mode 100644 index 0000000000000000000000000000000000000000..d3f8ecd834f7d838c54d2df1da0465dd23e62b05 GIT binary patch literal 554496 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 z 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 AA^-pY literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/AML.Engine.xml b/SOURCE/Application/Plugins/ModellingWizard/AML.Engine.xml new file mode 100644 index 0000000..b0a5227 --- /dev/null +++ b/SOURCE/Application/Plugins/ModellingWizard/AML.Engine.xml @@ -0,0 +1,18986 @@ + + + + AML.Engine + + + + + This class provides methods, which exists in the old AMLEngine_v3.x.x and are no longer supported. These methods are + provided to support the migration of legacy code. + + + + + Getting an enumerable of all Elements with InternalLinks of all + InstanceHierarchies and SystemUnitClassLibraries in the CAEXFile. The + enumeration may return InternalElements or SystemUnitClass elements. + + An IEnumerable with SystemUnitClasses is returned. + + + + Getting an enumerable of InternalElements with InternalLinks of all + InstanceHierarchies and SystemUnitClassLibraries in the CAEXFile. + + An IEnumerable with InternalElements is returned. + + + + Returns all SystemUnit Classes which are ancestors of this. This SystemUnit Class is + included in the enumeration as the first Element, The farthest is the last Element in + the enumeration. + + IEnumerable<SystemUnitClassType>. + + + + Assigns new GUIDs to this InternalElement and all of its child InternalElements + + + + + Assigns the new GUIds and redirect existing internal links. + + + If you want an assignment of new GUIDs with updated references, make a copy of the SystemUnitClass and replace the + old + class with the new class. + + The system unit class. + if set to true [include system unit classes]. + + + + This Method assigns new GUIds to the SystemUnitClass and its subordinate Children, which have an ID. The References + to the + old IDs in Mirrors and InternalLinks are redirected to the new ID. If a Reference is not found in any of the + subordinate + Elements, the Reference will not be changed. + + + If you want an assignment of new GUIDs with updated references, make a copy of the SystemUnitClass and replace the + old + class with the new class. + + The system unit class. + if set to true [include system unit classes]. + + + + Enumeration Method for direct Children of Type + + IEnumerable<AttributeType>. + + + + + + A clone copy of this object + + + + Clones the node. + + The CAEX object. + if set to true [deep clone]. + if set to true [assign new GUIDs to IEs]. + + The cloned node CAEXWrapper. + + + + + Check if the given classPath is a valid path to an existent class in the AML file. + + The CAEX object. + The class path to check for validity. + + True if a class at the given path exists, else false. + + + + + Creates a copy with a unique ID. + + The internal element. + if set to true [deep clone]. + + InternalElementType. + + + + + Enumeration Method for direct Children of Type + + IEnumerable<InterfaceClassType>. + + + + Enumeration Method for all ExternalReferences of the CAEXFile. + + IEnumerable<ExternalReferenceType>. + + + + Searches for an ExternalInterface in this InternalElement + + The system unit class. + Name of the ExternalInterface to search for + + An ExternalInterface of the given element with name attribute equal to interfaceName + + + + + Resolve a reference to an InternalElement and return the referenced element if found. + + The CAEX object. + The GUID of the InternalElement + + The InternalElement with the specified GUID + + + + + Getting a List of all Elements with InternalLinks of all + InstanceHierarchies and SystemUnitClassLibraries in the CAEXFile. The List + may contain InternalElements and SystemUnitClass elements. + + A List with InternalElements is returned. + + + + Get the whole attribute field containing a collection of all attributes of this object. + + The object with attributes. + + CAEX_ClassModel.MemberElement_Attribute. + + + + + Gets the name of the referenced SystemUnit class. + + The InternalElement. + + + + + Gets the name of the referenced InterfaceClass. + + The InterfaceClass. + + + + + Gets the external interfaces. + + IEnumerable<InterfaceClassType>. + + + + Getting a List of LinkedObjects object of this SystemUnitClass containing references to the concrete referenced + InternalElements via an InternalLink. + + The system unit class. + + A list of linkedObjects for this SystemUnitClass. This list is empty if no InternalLink exists + + + + + Get the Name of the specified object. + + + The CAEX object. + + + If the caexObject is of type CAEXObject, the name is returned; otherwise string.Empty. + + + + + This method returns the parent CAEXBasicObject of the current CAEXBasicObject. + + The CAEX file. + the CAEX Basic Object + + the parent CAEXBasicObject + + + + + Getting the XML Node for a class path. + + The CAEX object. + The full path to the referenced class. Hierarchies are separated via slash "/" + + The XML Node of the desired class, or null if none found. Use FindFastByID for speed optimizations. + + + + + Parsing a string of form GUID:Interface and returning the GUID + + The CAEX object. + A reference in form GUID:InterfaceClass + + The GUID + + + + + Returns an attribute value of a given attribute name. + + + Object with attributes + + + name of attribute + + + attribute value, "" if attribute does not exist + + + + + Getting a referenced InterfaceClass. Use FindFastByPath for speed optimizations. + + The CAEX object. + Full path to an InterfaceClass + + The referenced InterfaceClass. + + + + + Getting the name of the referenced Interface. + + The CAEX object. + A reference to a interface class in form GUID:InterfaceClass + + The name of the referenced interface class or string.empty if separator char not found in string + + + + + Gets the referenced SystemUnitClass using the . + + + + + Inserting an element of base type TypeBase to this object. The Element is inserted at the first Element + of any existing Elements of the same Type if nothing else is explicit defined. + + The CAEX object. + The element to insert. + Inserted at first element (true) or appended as last (false), + + true if inserted, false otherwise. + + + + + Adding a MappingObject element to this InternalElement. It is only allowed to add one + MappingObject node. + + The internal element. + The mapping object. + + + + Adding a MappingObject element to this Supported Role. + + The supported role element. + The mapping object. + + + + Inserting a new class instance to this object. This method can be overridden in derived classes. + The Instance is inserted as the first instance of any other element with the same type if nothing + else is explicit defined. + + The CAEX object. + The instance of a class to be inserted at this object. The instance can be of type + if true, inserted as first (default), otherwise at last + + , + + + True if insertion was successful, else false. + + + + + Inserting a RoleRequirement to this InternalElement. An exception is thrown if a + RoleRequirements is already existent. + + The internal element. + The RoleRequirement to insert + + A RoleRequirements node is already existent. It is not allowed to add more + than one RoleRequirements node to current element according to CAEX Schema + + + + + Appending the object into this object. + + The system unit class. + The inserted system unit family. + + + + + + The CAEX object. + an object to be inserted + if true, the element is inserted as the first of it's type, otherwise as the last. + + true if successfully inserted, false otherwise. + + + + + Enumeration Method for all InstanceHierarchies of the CAEXFile. + + IEnumerable<InstanceHierarchyType>. + + + + Enumeration Method for all InterfaceClass Libraries of the CAEXFile. + + IEnumerable<InterfaceClassLibType>. + + + + Enumeration Method for direct Children of Type + + IEnumerable<InternalElementType>. + + + + Determines whether the InternalElement instance is an AMLFacet. + + The internal element. + + true if the specified internal element is an AMLFacet; otherwise, false. + + + + + Determines whether the InternalElement instance is an AMLGroup. + + The internal element. + + true if the specified internal element is an AMLGroup; otherwise, false. + + + + + Determines whether the InternalElement instance is an AMLPort. + + The internal element. + + true if the specified internal element is an AMLPort; otherwise, false. + + + + + Adding a new RoleRequirements element to this InternalElement. It is only allowed to add + one RoleRequirements node in CAEX 2.15. + + The new RoleRequirements element + + + + Adding a new RoleRequirements element to this InternalElement using the defined roleClassPath. + It is only allowed to add + one RoleRequirements node in CAEX 2.15. + + The internal element. + The role class path. + + RoleRequirementsType. + + + + + Adds a new required value to the NominalScaledType Constraint. + + Type of the nominal scaled. + The value. + + + + Adding a new RequiredMaxValue to this ordinal scaled constraint + + Type of the ordinal scaled. + The value. + + + + Adding a new RequiredMinValue to this ordinal scaled constraint + + Type of the ordinal scaled. + The value. + + + + Adding a new OldVersion node to this revision. + + The revision. + The value. + + + + Adding a new NewVersion node to this revision. + + The revision. + The value. + + + + Adding a new Comment node to this revision. + + The revision. + The value. + + + + Adding a new RequiredValue to this ordinal scaled constraint + + + + + Enumeration Method for all RoleClass Libraries of the CAEXFile. + + IEnumerable<RoleClassLibType>. + + + + Gets all Children Objects of this SystemUnitClass. + + IEnumerable<SystemUnitFamilyType>. + + + + Enumeration Method for all SystemUnitClass Libraries of the CAEXFile. + + IEnumerable<SystemUnitClassLibType>. + + + + This class can be used to access InternalLink data. + + + + + Initializes a new instance of the class. + + The internal link. + + + + Returns a that represents this instance. + + A that represents this instance. + + + + Gets or sets the Internal Link. + + The Internal Link. + + + + Gets the reference partner side A Internal Element. + + The reference partner side a element. + + + + Gets or sets the reference partner side A External Interface. + + The reference partner side a external interface. + + + + Gets or sets the reference partner side b Internal Element. + + The reference partner side b element. + + + + Gets or sets the reference partner side B External Interface. + + The reference partner side b external interface. + + + + Class AutomationMLContainer provides methods to save an AutomationML document and + related documents which are needed for the interpretation or representation of + AutomationML data into a single packed and zipped file. The various parts are + assembled into this AutomationMLContainer. The Class provides methods to retrieve + parts from a loaded container or for the assembly of parts into one single + container. A Utility, to build a self containing container from a loaded + CAEXDocument and the external referenced files, retrieved from the external + references and ExternalInterface classes is defined in a special service. + + + + + + The AutomationML MIME type + + + + + The disposed flag + + + + + Releases unmanaged and - optionally - managed resources. All streams, used to + save the packages, are closed. + + + true to release both managed and unmanaged resources; false to + release only unmanaged resources. + + + + + Class RelationshipType describes the distinguished package part relationship + types. This class cannot be inherited. + + + + + Initializes a new instance of the class + with the specified name and the specified mime type. + + + The name. + + + The mime type. + + + + + relationship type for package to part or root part to part relations to any content. + + + + + relationship type for package to part relation to the CAEX schema part. + + + + + relationship type for package to part or root part to part relations to a COLLADA part. + + + + + relationship type for package to part relation to the COLLADA schema. + + + + + relationship type for package to part or root part to part relations to a part, containing an AutomationML library. + + + + + relationship type for package to part or root part to part relations to a PLCopenXml part. + + + + + relationship type for package to part relation to the PLCopenXml schema. + + + + + relationship type for the package to part relation to the part containing the root document. + + + + + Gets the mime type of the relationship + + + The mime type. + + + + + Gets the name of the relationship. + + + The name. + + + + + Creates a RelationshipType for any content. If no mime type is defined, + the relationship type is used. + + + The mime type. + + + RelationshipType. + + + + + Compares the current instance's name to another object's name of the same type and + returns an integer indicating whether the current instance's name occurs + in the sort order before or after the other object or at the same position. + + An object to compare with this instance. + + A value indicating the relative order of the objects being compared. The return value has the following meaning: + Less than zero: This instance is in the sort order before . + Zero: This instance occurs in the sort order at the same position as . + Greater than zero: This instance follows in the sort order. + + + + + Returns the as the string representation of this instance. + + + A that represents this instance. + + + + + Initializes a new instance of the class + using the specified container file to load or save the package. + + + The file path of the container file. The file should have the extension .amlx. + + + + + Initializes a new instance of the class + using the specified container file to load or save the package. + + + The file path of the container file. + + + The file mode for the package file. + + + + + Initializes a new instance of the class + using the specified container file to load or save the package. + + + The file path of the container file. + + + The file mode for the package file. + + + The file access mode for the package file. + + + + + Initializes a new instance of the class + using the specified container file to load or save the package. + + + The file path of the container file. + + + The file mode for the package file. + + + The file access mode for the package file. + + + The file share access mode for the package file, which controls access of + other file streams to the same file. + + + + + Initializes a new instance of the class + using the specified stream resource. + + + The stream resource for the package. + + + + + Initializes a new instance of the class + using the specified stream resource. + + + The stream resource for the package. + + + The package mode. + + + + + Initializes a new instance of the class + using the specified stream resource. + + + The stream resource for the package. + + + The package mode. + + + The package access. + + + + + Gets or sets the compression mode which is + + by default. + + + The compression mode. + + + + + Gets the full path of the used container file. + + + The filename. + + + + + Gets the full path of the directory, used for extraction. + + + + + Gets the underlying package of this instance. + + + The package. + + + + + Adds any content to the package creating relationships to the package and to + the part, containing the root document using the relationship type . + + + package part, containing the parent root document + + + full name of the file which should be added + + + package internal name of the part + + + optional mime type, the default mime type for the relationship is used if empty + + + PackagePart. + + + + + Adds any content from the specified stream resource to the package creating + relationships to the package and to the part, containing the root document + using the relationship type . + + + package part, containing the parent root document + + + any content stream + + + package internal name of the part + + + optional mime type, the default mime type for the relationship is used if empty + + + PackagePart. + + + + + Adds a CAEX schema file to the package and creates a package - part + relationship to the package using the relationship type + + + full name of the file which should be added + + + package internal name of the part + + + added part + + + + + Adds a CAEX schema part retrieved from a stream resource to the package and + creates a package - part relationship to the package using the relationship + type . + + + collard stream + + + package internal name of the part + + + added part + + + + + Adds a COLLADA file to the package and creates relationships to the package + and to the root document using the . + + + package part, containing the parent root document + + + full name of the file which should be added + + + package internal name of the part + + + added part + + + + + Adds a COLLADA part read from the specified stream resource to the package and + creates relationships to the package and to the root document using the . + + + package part, containing the parent root document + + + COLLADA file stream + + + package internal name of the part + + + added part + + + + + Adds a COLLADA schema file to the package and creates a package - part + relationship to the package using . + + + full name of the file which should be added + + + package internal name of the part + + + added part + + + + + Adds a COLLADA schema part from the stream resource to the package and creates + a package - part relationship to the package using . + + + COLLADA stream + + + package internal name of the part + + + added part + + + + + Adds a library file to the package and creates relationships to the package + and to the package containing the root document using the . + + + package part, containing the parent root document + + + full name of the file which should be added + + + package internal name of the part + + + added part + + + + + Adds a library file to the package and creates a package - part relationship + of type . + + + full name of the file which should be added + + + package internal name of the part + + + added part + + + + + Adds a library stream to the package and creates a package - part relationship + of type . + + + library stream + + + package internal name of the part + + + added part + + + + + Adds a library from a stream resource to the package and creates relationships + to the package and to the part containing the root document using the + relationship type . + + + package part, containing the parent root document + + + library stream + + + package internal name of the part + + + added part + + + + + Adds a PLCopenXml file to the package and creates relationships to the package + and to the package part containing the root document using the relationship + type . + + + package part, containing the parent root document + + + full name of the file which should be added + + + package internal name of the part + + + added part + + + + + Adds a PLCopenXml part read from a stream resource to the package and creates + relationships to the package and to the package part containing the root + document using the relationship type . + + + package part, containing the parent root document + + + PLCopenXml stream + + + package internal name of the part + + + added part + + + + + Adds a PLCopenXml schema file to the package and creates a package - part + relationship of type to the package. + + + full name of the file which should be added + + + package internal name of the part + + + added part + + + + + Adds a PLCopenXml schema part from a stream resource to the package and + creates a package - part relationship of type . + + + COLLADA file stream + + + package internal name of the part + + + added part + + + + + Adds a root AML file to the package and creates a package - part relationship + of type . + + + full name of the file which should be added + + + package internal name of the part + + + added part + + + + + Adds a root AML file from a stream resource to the package and creates a + package - part relationship of type . + + + root document stream + + + package internal name of the part + + + added part + + + + + Saves and closes the package and all part streams. + + + + + Performs application-defined tasks associated with the release, return or + resetting of unmanaged resources. + + + + + Extracts all parts in the package to the specified directory + + + directory info defining the target directory for extraction + + + + + Extracts the specified part in the package to the specified directory. + + + directory info defining the target directory for extraction. + + + The part to extract to the specified folder. + + + + + Extracts all parts in the package to the specified directory + + + Full path to the target directory. + + + + + Saves the contents of all parts and relationships, contained in the package. + + + + + Returns the part with the given URI. + + + The part URI. + + + PackagePart. + + + + + Returns an enumeration of all parts inside the package. + + + IEnumerable<PackagePart>. + + + + + Returns an enumeration of all parts with the given relationship type from the package. + + + The relationship type. + + + IEnumerable<PackagePart>. + + + + + Gets the related part by URI. + + + The reference URI. + + + The relationship type. + + + PackagePart. + + + + + Returns an enumeration of all related parts for the given part. + + + The part. + + + IEnumerable<PackagePart>. + + + + + Returns an enumeration of the related parts for the specified part and + relationship type. + + + The part. + + + The relationship type. + + + IEnumerable<PackagePart>. + + + + + Returns an enumeration of the related parts for the specified part and + relationship type. + + + The part. + + + The relationship type. + + + IEnumerable<PackagePart>. + + + + + Returns an enumeration of all contained relationships of this instance. + + + IEnumerable<PackageRelationship>. + + + + + Returns an enumeration of all relationships with the given relationship type. + + + Type of the relation. + + + IEnumerable<PackageRelationship>. + + + + + Determines, if a part with the specified part URI exists. + + + The part URI. + + + true if the part exists, false otherwise. + + + + + Determines, if the specified relationship type exists. + + + Type of the relation. + + + true if relationship type exists, false otherwise. + + + + + Gets the file path to the first root AML document when the container is already + extracted. If the container is created + from a stream source or no root document is found, the return value is string.Empty. + + + The directory which was used for extraction. + + + System.String. + + + + + Gets the stream of the first root AML document. If no root document is found, the return value is null. + + + System.String. + + + + + Saves the package and all part streams, the package is still open. + + + + + To get the file path from a relative Uri, the unescaped data string without + the start '/' is needed + + + The URI. + + + System.String. + + + + + Adds the package part. + + + The full path. + + + The part URI. + + + Type of the relation ship. + + + if set to true [create package relation]. + + + The part. + + + PackagePart. + + + + + Adds the package part. + + + The stream. + + + The part URI. + + + Type of the relation ship. + + + if set to true [create package relation]. + + + The part. + + + PackagePart. + + + Part with Uri + partUri + not found + + + + + Changes the uri of a package part. The part is removed and readded with the provided + . All relationships of the part are updated. + + + + true if a part with the provided exists; otherwise false + + + + An AMLFile is a CAEXFile, containing information about the AutomationML version and the WriterHeader (if CAEX 2.15 + is used) or + the SourceDocumentInformation (CAEX 3.0 and later versions). + + + + + + Initializes a new instance of the class. + + The node. + + + + Gets or sets the AutomationML version. It is not allowed to set an AMLVersion which is higher than the + . If this is tried, the maximal known version is used for this document. + + + + + Gets the collection of defined document version information of the AMLFile + + + The collection of document version information. + + + + + Gets the AdditionalInformation values contained in this instance which are neither DocumentVersion or WriterHeader. + DocumentVersion and WriterHeader objects are realized using AdditionalInformation objects, too. But these elements + define a specific syntax to be recognized as specific AdditionalInformation objects. + + + + + Determines whether the specified XML element represents an AdditionalInformation object, using the specific + DocumentVersion syntax. + + The element. + + true if the specified element is a DocumentVersion element; otherwise, false. + + + + + Determines whether the specified XML element represents an AdditionalInformation object, representing the + AutomationMLVersion. + + The element. + + true if the specified element is the AutomationML version element; otherwise, false. + + + + + Determines whether the specified XML element represents an AdditionalInformation object, using the specific + WriterHeader syntax. + + The element. + + true if the specified element is a WriterHeader element; otherwise, false. + + + + + Determines whether the specified XML element represents an AdditionalInformation object, not using any specific + syntax as the + or elements. + + The element. + + true if the specified element is a generic AdditionalInformation element; otherwise, false. + + + + + Gets the maximal AutomationML version, which can be associated with this AMLFile. The maximal AutomationML version + depends on the used CAEX version. For CAEX 2.15 the maximal AutomationML version is 2.0. For CAEX 3.0 the maximal + version is 2.10. + + + + + Gets the collection of defined writer headers of the AMLFile + + + The collection writer header. + + + valid only for AutomationML Version 2.0 using CAEX 2.15 + + + + + Removes all "Writer Header" specific meta information out of this CAEX file. + + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + This function deletes any existing meta information corresponding to the writerID. + + Writer ID + + true if delete succeeded, false if writerID has not been found + + writerID + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + This methods returns an Enumeration of all "WriterHeader" meta information out of an + existing AutomationML file. + + + Enumerable with element containing all meta information, or null if no meta information + is existing + + + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. + + + + + This function returns the MetaInformation corresponding to the writerID, otherwise null. + + the writerID + + This function returns the MetaInformation corresponding to the writerID, otherwise null. + + writerID + + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed from a . + + + + + Determines whether the specified AML version is a valid version string for this AMLFile + + The version string. + + true if specified AML version is a valid version string for this AMLFile; otherwise, false. + + + + + This function replaces any existing meta information corresponding to the identical + oldWriterID with the new meta information defined in the new Meta information + + writerID of the old meta information + substitute for the old version of meta information + + true if succeeded, false if meta information about the oldWriterID is not found + + oldWriterID + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + This function sets the meta information required from AutomationML standard. If meta + information about the same writerID already exists, this meta information is replaced. + These information comprise source information about the AutomationML file. + + the name of the writing tool + an ID of the writing tool + the tool vendors name + the tools vendors URL + the version of the writing tool + the release number of the writing tool + the date of the last writing time + the title of the written project + an ID of the written project + writerID + + Extension Method for AutomationML Versions based on CAEX 2.15. If this method is called for a CAEX 3.0 or later + Version, the call + is redirected to the . + + + + + This method is a short version of the setMetaInformation. Meta data with identical + WriterID is replaced. + + the structure MetaInformation + + metaInformation + + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + This method labels this CAEX file as a standard AutomationML library coming from the + AutomationML e.V. It removes all other meta information and should only be used from + authorized persons in agreement with the AutomationML e.V. + + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + This function sets the meta information required from AutomationML standard. If meta + information about the same writerID already exists, this meta information is replaced. + These information comprise source information about the AutomationML file. + + the name of the writing tool + an ID of the writing tool + the tool vendors name + the tools vendors URL + the version of the writing tool + the release number of the writing tool + the date of the last writing time + the title of the written project + an ID of the written project + originID + + Extension Method for AutomationML Versions based on CAEX 3.0. If this method is called for an CAEX 2.15 Version, + the call + is redirected to the + . + + + + + A Facet is an AML object providing a sub-view on attributes or interfaces of the parent AML object. + This concept serves for the storage of different configuration settings such as HMI or PLC related data + and allows the automation of several control engineering steps. + For this, this part of IEC 62714 defines the AML RoleClass “Facet” (see6.4.4).“ [IEC 62714-1:2014 8.3 (p.43)] + + + + + + The Facet name + + + + + Initializes a new instance of the class. + + An 'InternalElement' XML node. + + + + Gets the collection of Attribute objects for this instance. + + + + + Gets a collection of ExternalInterface objects contained in this instance. + + + + + Gets the collection of Attribute objects for this instance. + + + + + Gets a collection of ExternalInterface objects contained in this instance. + + + + + The collection of InternalElement objects for an AMLFacet is always null. + + + + + Gets a value indicating whether this instance is an AMLFacet + + + + + Creates an AMLFacet AML object with this name, using the provided document. + + The CAEX document. + The name of the new AMLFacet. + The created AMLFacet. + + + + Conversion to get access to specific AutomationML defined Attributes + + The 'AMLFacet' CAEX object. + + The AMLFacet object, converted to an type, which provides access to + specific AML defined attributes. + + attributeType + + + + Get the original parent attributes which are already assigned with the AMLFacet + + A collection of already assigned Attribute objects of the parent. + + + + Get the original parent interfaces which are already assigned with the AMLFacet + + A collection of already assigned ExternalInterface objects of the parent. + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Determines whether the AMLFacet contains this attribute of the parent AML object. + + An attribute of the parent. + true if this attribute of the parent is assigned to the AMLFacet; + otherwise, false. + + + In CAEX 3.0 the Attribute of the AMLFacet has to be a Mirror Attribute. + CAEX 2.15 identifies Attributes with identical names. + + + + + Determines whether the AMLFacet contains this interface of the parent AML object. + + The external interface. + true if this interface of the parent is assigned to the AMLFacet; + otherwise, false. + + In CAEX 3.0 the Interface of the AMLFacet has to be a Mirror Interface. + CAEX 2.15 identifies Interfaces with identical names. + + + + + Inserts the specified CAEX object in it's associated container. AMLFacet objects are not allowed + to contain child InternalElement objects. If an InternalElement is tried to insert, the result is false. + + The CAEX object. + if set to true the element is inserted at the first position in it's container. + + true, if the provided CAEX object is inserted; If a copy of the CAEX object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + caexObject + + + + Get the parent attributes which are yet not assigned with the AMLFacet + + A collection of not assigned Attribute objects. + + + + Get the parent interfaces which are yet not assigned with the AMLFacet + + A collection of not assigned ExternalInterface objects. + + + + Gets the original Attribute from the which is related to this Facet + Attribute. + + The facet attribute. + An Attribute from the parent with the same name. + + In CAEX 3.0 the Source Attribute is the Master Attribute of the . + CAEX 2.15 the Source Attribute is the first identified Attribute of the parent with an identical name. + + + + + Gets the original ExternalInterface from the which is related to this Facet + Interface. + + The facet ExternalInterface. + An ExternalInterface from the parent with the same name. + + In CAEX 3.0 the Source Interface is the Master Interface of the . + CAEX 2.15 the Source Interface is the first identified Interface of the parent with an identical name. + + + + + The AML Group concept allows separating structure information from instance information. + An informative overview about the Group concept including examples is + provided in A.2.4.” [IEC 62714-1:2014 8.4 (p.43)]. An AML Group object shall be described by a + CAEX InternalElement with an association to the RoleClass “Group” which is defined in 6.4.3. [IEC 62714-1:2014 8.4 + (p.43)] + + + + + + The Group name + + + + + Initializes a new instance of the class. + + An InternalElement node + + + + Gets a collection of InternalElement objects contained in this instance. + + + + + Gets or sets the associated facet for the AMLGroup object + + + + + Gets the collection of InternalElement objects for this instance. + + + + + Gets a value indicating whether the defining InternalElement instance is an AMLGroup + + + + + Creates an AMLGroup AML object with this name, using the provided document. + + The CAEX document. + The name of the new AMLGroup object. + The new AMLGroup object. + + + + Returns the names of the facets, defined in the master InternalElements of all mirrors in this group. + + Enumeration of distinct names of facets. + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Inserts the specified CAEX object in it's associated container. An AMLGroup object shall only contain + InternalElements which are + AMLMirrorObjects and/or further AMLGroup objects. If other InternalElements are tried to insert, the result is + false. + + The CAEX object. + if set to true the element is inserted at the first position in it's container. + + true, if the provided CAEX object is inserted; If a copy of the CAEX object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + caexObject + + + + This class is a generic type definition for CAEX libraries, which are defined by AutomationML and contain + standardized classes. + + Type of the library items. + + + + + Initializes a new instance of the class. + + A CAEX library XML node. + + + + Gets the AutomationML class from this library, which can be identified by the provided CAEX path. + + The CAEX path. + The CAEX class from this library, which was identified by the CAEX path. + + + + Loads an AutomationML library from an external source. + + The document. + Name of the resource. + The import library. + The imported library. + + The current document and the imported library use different + CAEX Versions; To do a schema transformation the service needs to be registered + + + + + An AML Port is an AML object that groups a number of interfaces. An informative overview about the Port + concept including examples is provided in A.2.2. [IEC 62714-1:2014 8.2 (p.42) + + The AML Port object has been replaced in AutomationML version 2.10 with an Interface only + + + + + The Port name + + + + + Initializes a new instance of the class. + + An InternalElement node + + + + The collection of InternalElement objects for an AMLPort is always null. + + + + + Gets a value indicating whether the defining InternalElement instance is an AMLGroup + + + + + Creates an AMLPort AML object with this name, using the provided document. + + The CAEX document. + The name of the new AMLPort object. + The created AMLPort object. + + + + Inserts the specified CAEX object in it's associated container. AMLPort objects are not allowed + to contain child InternalElement objects. If an InternalElement is tried to insert, the result is false. + + The CAEX object. + if set to true the element is inserted at the first position in it's container. + + true, if the provided CAEX object is inserted; If a copy of the CAEX object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + caexObject + + + + An AMLSystemUnitClass is a SystemUnitClass which can contain AML objects. + + + + + + + Initializes a new instance of the class. + + A SystemUnitClass node + + + + + Initializes a new instance of the class. + + The system unit class. + + + + Gets the Collection of AMLFacet objects. + + + + + Gets the Collection of AMLGroup objects. + + + + + Gets the Collection of AMLPort objects. + + + + + Adds an AMLFacet object to the AMLSystemUnitClass with the provided name. + + The name of the new AMLFacet. + The added new AMLFacet. + + + + Adds an AMLGroup object to the AMLSystemUnitClass with the provided name. + + The name of the new AMLGroup. + The added new AMLGroup. + + + + Adds an AMLPort object to the AMLSystemUnitClass with the provided name. + + The name of the new AMLPort. + The added new AMLPort- + + + + Contains definitions and access methods of standard base AttributeType objects. + + Not available for CAEX version 2.15 + + + + The 'AssociatedExternalValue' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'AssociatedFacet' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'AutomationMLBaseAttributeTypeLib' library name + + Not available for CAEX version 2.15 + + + + The 'Cardinality' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'Category' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'Direction' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'DocLang' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'Category' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'ListType' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'LocalizedAttribute' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'MIMEType' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'OrderedListType' AttributeType path + + Not available for CAEX version 2.15 + + + + The 'RefURI' AttributeType path + + Not available for CAEX version 2.15 + + + + Determines whether the specified attribute reference defines an inheritance relation from the + AssociatedExternalValue AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + AssociatedFacet AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + Cardinality AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + Category AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + Direction AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + DocLang AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + Frame AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + ListType AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + LocalizedAttribute AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + MIMEType AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + OrderedListType AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified attribute reference defines an inheritance relation from the + RefURI AttributeType + + The attribute. + true if an inheritance relation is resolved; otherwise, false. + + + + This Class is a wrapper for the AutomationML standard 'AutomationMLBaseAttributeTypeLib' which is the + container for a hierarchy of standard AttributeType definitions. + + + Not available for CAEX version 2.15 + + + + Initializes a new instance of the class. + + The attribute type library. + + + + Gets the AssociatedExternalValue Attribute Type. + + + + + Gets the AssociatedFacet. + + + + + Gets the Cardinality attribute type. + + + + + Gets the Category Attribute Type + + + + + Gets the Direction Attribute Type. + + + + + Gets the ListType Attribute type + + + + + Gets the LocalizedAttribute attribute type. + + + + + Gets the MIMEType attribute type. + + + + + Gets the OrderedListType attribute type. + + + + + Gets the RefURI attribute Type. + + + + + Gets the AutomationMLBaseAttributeTypeLib from the provided document. If the document doesn't contain + the required library it will be automatically imported from an external resource. + + The CAEX document. + The AutomationMLBaseAttributeTypeLib + Not available for CAEX version 2.15 + + + + Determines if the AutomationMLBaseAttributeTypeLib exists in the document. + + The document. + + true if the AutomationMLBaseAttributeTypeLib is loaded; otherwise, false. + + + + + Contains definitions and access methods of standard base InterfaceClass objects. + + + + + The AttachmentInterface class path (a Part 3 Interface) + + + + + The AutomationML base interface class path (a Part 1 Interface) + + + + + The AutomationML base interface class library name + + + + + The behaviour logic interface class path (a Part 4 Interface) + + + + + The COLLADA interface class path (a Part 1 Interface) + + + + + The communication interface class path (a Part 1 Interface) + + + + + The external data connector (a Part 1 Interface) + + + + + The interlocking connector interface class path (a Part 1 Interface) + + + + + The interlocking logic interface class path (a Part 4 Interface) + + + + + The interlocking variable interface class path (a Part 4 Interface) + + + + + The logic element interface class path (a Part 4 Interface) + + + + + The logic interface class path (a Part 4 Interface) + + + + + The order interface class path (a Part 1 Interface) + + + + + The PLCopenXML interface class path (a Part 1 Interface) + + + + + The port connector interface class path (a Part 1 Interface) + + + + + The PPR connector interface class path (a Part 1 Interface) + + + + + The sequencing behaviour logic interface class path (a Part 4 Interface) + + + + + The sequencing logic interface class path (a Part 4 Interface) + + + + + The signal interface class path (a Part 1 Interface) + + + + + The variable interface class path (a Part 4 Interface) + + + + + Determines whether the specified interface class is derived from the + AutomationMLBase interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + BehaviourLogicInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + COLLADAInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + Communication interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + ExternalDataConnector interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + InterlockingConnector interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + InterlockingLogicInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + InterlockingVariableInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + LogicElementInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + LogicInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + Order interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + PLCopenXMLInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + PortConnector interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + PPRConnector interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + SequencingBehaviourLogicInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + SequencingLogicInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + SignalInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Determines whether the specified interface class is derived from the + VariableInterface interface class. The method can resolve alias references anywhere + in the inheritance hierarchy. + + The interface class. + + true if an inheritance relation could be resolved; + otherwise, false. + + + + + Makes the AutomationML base interface. + + The interface class. + + + + Makes the COLLADA interface. + + The interface class. + + + + Makes the communication interface. + + The interface class. + + + + Makes the external data connector. + + The interface class. + + + + Makes the interlocking connector. + + The interface class. + + + + Makes the order interface. + + The interface class. + + + + Makes the PLCopen XML interface. + + The interface class. + + + + Makes the port connector. + + The interface class. + + + + Makes the PPR connector. + + The interface class. + + + + Makes the signal interface. + + The interface class. + + + + This Class is a wrapper for the AutomationML standard 'AutomationMLInterfaceClassLib' which is the + container for a hierarchy of standard InterfaceClass definitions. + + + + + + Initializes a new instance of the class. + + The role class library. + + + + Gets the standard AutomationMLInterfaceClassLib from the provided document. If the document doesn't contain + the required library it will be automatically imported from an external resource. + + The CAEX document. + The AutomationMLBaseRoleClassLib + + + + Determines if the AutomationMLInterfaceClassLib exists in the document. + + The document. + + true if the AutomationMLInterfaceClassLib is loaded; otherwise, false. + + + + + This Class is a wrapper for the AutomationML standard 'AutomationMLBaseRoleClassLib' which is the + container for a hierarchy of standard RoleClass definitions. + + + + + + Initializes a new instance of the class. + + The role class library. + + + + Gets the automation ml base role. + + + The automation ml base role. + + + + + Gets the facet. + + + The facet. + + + + + Gets the frame. + + + The frame. + + + + + Gets the group. + + + The group. + + + + + Gets the interlocking source group. + + + The interlocking source group. + + + + + Gets the interlocking target group. + + + The interlocking target group. + + + + + Gets the logic object. + + + The logic object. + + + + + Gets the port. + + + The port. + + + + + Gets the process. + + + The process. + + + + + Gets the process structure. + + + The process structure. + + + + + Gets the product. + + + The product. + + + + + Gets the product structure. + + + The product structure. + + + + + Gets the property set. + + + The property set. + + + + + Gets the resource. + + + The resource. + + + + + Gets the resource structure. + + + The resource structure. + + + + + Gets the structure. + + + The structure. + + + + + Determines if the AutomationMLBaseRoleClassLib exists in the document. + + The document. + + true if the AutomationMLBaseRoleClassLib is loaded; otherwise, false. + + + + + Gets the AutomationMLBaseRoleClassLib from the provided document. If the document doesn't contain + the required library it will be automatically imported from an external resource. + + The CAEX document. + The AutomationMLBaseRoleClassLib + + + + Contains definitions and access methods of standard base RoleClass objects. + + + + + The 'AutomationMLBaseRole' RoleClass path + + + + + The 'AutomationMLBaseRoleClassLib' library name + + + + + The 'Facet' RoleClass path + + + + + The 'Frame' RoleClass path + + + + + The 'Group' RoleClass path + + + + + The 'InterlockingSourceGroup' RoleClass path + + + + + The 'InterlockingTargetGroup' RoleClass path + + + + + The 'LogicObject' RoleClass path + + + + + The 'Port' RoleClass path + + + + + The 'Process' RoleClass path + + + + + The 'ProcessStructure' RoleClass path + + + + + The 'Product' RoleClass path + + + + + The 'ProductStructure' RoleClass path + + + + + The 'PropertySet' RoleClass path + + + + + The 'Resource' RoleClass path + + + + + The 'ResourceStructure' RoleClass path + + + + + The 'Structure' RoleClass path + + + + + Determines whether the specified role reference defines an inheritance relation from the + AutomationMLBaseRole RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + Facet RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + Frame RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + Group RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + InterlockingSourceGroup RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + InterlockingTargetGroup RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + LogicObject RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + Port RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + Process RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + ProcessStructure RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + Product RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + ProductStructure RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + PropertySet RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + Resource RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + ResourceStructure RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the + Structure RoleClass + + The role. + true if an inheritance relation is resolved; otherwise, false. + + + + Makes the AutomationML base role. + + The used role. + + + + Makes the facet. + + The used role. + + + + Makes the group. + + The used role. + + + + Makes the port. + + The used role. + + + + Makes the process. + + The used role. + + + + Makes the process structure. + + The used role. + + + + Makes the Product. + + The used role. + + + + Makes the product structure. + + The used role. + + + + Makes the property set. + + The used role. + + + + Makes the resource. + + The used role. + + + + Makes the resource structure. + + The used role. + + + + Makes the structure. + + The used role. + + + + The Class DocumentVersions defines extension methods for the to retrieve + and manipulate document versions attached to a CAEXFile. The DocumentVersion feature is + described in the AutomationML BPR 06 "Naming of related documents and their versions" + . + + + + + The document element name + + + + + The document identifier attribute name used in the Document element + + + + + The document versions attribute name + + + + + The document versions attribute value + + + + + The version attribute name used in the document element + + + + + This function sets the DocumentVersion information for a referenced document. + If DocumentVersion information about the same document Identifier already + exists, this DocumentVersion information is replaced. + + + the CAEXFile of the AutomationML document + + + The "DocumentIdentifier" shall define the name of the referenced document. + + + The "Version" shall define the version range of the referenced document. The + version number shall have three numbers separated by ".". + + + Out parameter with error information if provided values are not valid or null. + Possibles errors are: + + + No Document Identifier defined + + + DocumentVersion to be parsed is null + + + Negative value in version string + + + Bad number of components in version string + + + Non-integer value in version string + + + Number out of range in version string + + + + + true, if information is added, false otherwise. + + + + + Appends the provided document version information to the AutomationML document + + + The CAEX file of the AutomationML document. + + + The version information. + + + Out parameter containing error information if the method returns false. + Possibles errors are: + + + No Document Identifier defined + + + DocumentVersion to be parsed is null + + + Negative value in version string + + + Bad number of components in version string + + + Non-integer value in version string + + + Number out of range in version string + + + + + true if the version information could be added, false otherwise. + + + + + Creates the additional information representing a document versions header and + appends it to the AutomationML document. + + + The CAEX file of the AutomationML document. + + + XElement. + + + + + This function deletes all existing DocumentVersion information from the + AutomationML document corresponding to the documentID. + + + this CAEX file of the AutomationML document + + + Document Identifier of the document version information, which should be deleted + + + true if delete succeeded, false if documentID has not been found + + + + + Get the Additional Information XML-Node from the CAEXFile, which represents + the Document Versions node. + + + The CAEX file. + + + If the Document Version Node exists, the XElement is returned, otherwise null. + + + + + This methods returns an Enumeration of all Information related to document + versions defined in the "DocumentVersions" information of an AutomationML document. + + + the CAEX file of the AutomationML document. + + + Enumerable containing all Documents in the DocumentVersion information, or + null if no DocumentVersion information exists. + + + + + This function returns the DocumentVersion Information from the AutomationML + document with the specified document Identifier, otherwise null. + + + this CAEX file of the AutomationML document. + + + the Document Identifier + + + This function returns the DocumentVersion - Information corresponding to the + document Identifier, otherwise null. + + + + + This function replaces any existing DocumentVersion information corresponding + to the identical oldDocumentID with the provided new DocumentVersion information. + + + The CAEX file of the AutomationML document. + + + Document identifier of the old DocumentVersion information + + + substitute for the old version of DocumentVersion information + + + error information if provided values are invalid + + + true if succeeded, false if DocumentVersion information corresponding to the + oldDocumentID is not found + + + + + This Class is defined for the modeling of document version information as defined in the AutomationML BPR + 06 "Naming of related documents and their versions". are stored + as attached to the CAEXFile Node of the AMLDocument. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + using the provided XML node (this should be an + ), containing document content. + + The element. + + + + The document attribute "DocumentIdentifier" shall define the name of the + referenced document. + + + The "DocumentIdentifier" of the document should not be changed. + + + + + The document attribute "Version" shall define the version range of the + referenced document. + + + The version number shall have three numbers separated by ".". The three + numbers define "main version", "minor version" and "revision". + + + + + This class provides extensions methods for the identification of properties of AML objects, using CAEX objects. + + + + + Conversion of any object which has an attribute collection to get access + to specific AutomationML defined attributes. + + The CAEX object, providing the attribute collection. + The ObjectWithAMLAttributes which provides accessors for AutomationML defined attributes. + caexObject + + + + Converts an InternalElementType to an AMLFacet. + + The InternalElement object. + An AMLFacet object. + + The conversion doesn't create the AMLFacet. + Use method to create a Facet. + + + + + Converts a CAEX file to an AML file. + + The CAEX file object. + An AMLFile object. + + + + Converts an InternalElementType to an AMLGroup. + + The InternalElement object. + An AMLGroup object. + + The conversion doesn't create the AMLGroup if the internalElement is not an AMLGroup + Use method to create a Group. + + + + + Converts an InternalElementType to an AMLPort. + + The InternalElement object. + An AMLPort object. + + The conversion doesn't create the AMLPort. + Use method to create a Port. + + + + + Converts an SystemUnitClassType to an AMLSystemUnitClass. + + The SystemUnitClass object. + An AMLSystemUnitClass object. + + + + Gets the AutomationML version for this CAEXFile object. + + The CAEX file. + The AutomationML version assigned to the CAEXFile. + caexFile + + + + Removes all "Writer Header" specific meta information out of this CAEX file. + + the CAEXFile + caexFile + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + This function deletes any existing meta information corresponding to the writerID. + + this CAEX file + Writer ID + + true if delete succeeded, false if writerID has not been found + + caexFile + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + Gets a defined FrameAttribute from the + collection of the . + If no such attribute exists, null is returned. + + The CAEX object. + The FrameAttribute. + caexObject + + + + This methods returns an Enumeration of all "WriterHeader" meta information out of an + existing AutomationML file. + + the CAEX file + + Enumerable with element containing all meta information, or null if no meta information + is existing + + caexFile + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed from a . + + + + + This function returns the MetaInformation corresponding to the writerID, otherwise null. + + this CAEX file + the writerID + + This function returns the MetaInformation corresponding to the writerID, otherwise null. + + caexFile + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed from a . + + + + + Determines whether the InternalElement instance is an AMLFacet. + + The internal element. + + true if the specified internal element is an AMLFacet; otherwise, false. + + + + + Determines whether the InternalElement instance is an AMLGroup. + + The internal element. + + true if the specified internal element is an AMLGroup; otherwise, false. + + + + + Determines whether the CAEX object is an AutomationML object. If the CAEX object is a SystemUnitClass or + InternalElement, + it is checked, if there exists a role reference to the AutomationMLBaseRole. If the CAEX object is an + ExternalInterface, + it is checked, if there exists an InterfaceClass reference to an AutomationMLBase Interface. + + The CAEX object. + + true if the CAEX object is an AutomationML object; otherwise, false. + + + + + Determines whether the InternalElement instance is an AMLPort. + + The internal element. + + true if the specified internal element is an AMLPort; otherwise, false. + + + + + Determines, if the attribute is an attribute of an AMLFacet. + + The facet attribute. + + true, if the Attribute belongs to an AMLFacet. + + facetAttribute + + + + Determines, if the ExternalInterface object is an ExternalInterface of an AMLFacet. + + The facet Interface. + + true, if the ExternalInterface belongs to an AMLFacet. + + facetInterface + + + + Gets a value indicating whether this instance is a RefType attribute. + + + true if this instance is a RefType attribute; otherwise, false. + + + + + Gets a value indicating whether this instance is a RefURI attribute. + + + true if this instance is a RefURI attribute; otherwise, false. + + + + + Creates a new Frame attribute for the if no Frame + attribute exists. + The provided values are used to initialize the Frame attribute values. + + The CAEX object. + The frame values. + + the new FrameAttributeType. + + caexObject + caexObject + + + + Gets the RefTypeAttribute from the if one exists. + + The object with attributes. + + + + + Gets the RefURIAttribute from the if one exists. + + The object with attributes. + + + + + This function replaces any existing meta information corresponding to the identical + oldWriterID with the new meta information defined in the newMetainformation + + My CAEX file. + writerID of the old meta information + substitute for the old version of meta information + + true if succeeded, false if meta information about the oldWriterID is not found + + caexFile + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + Sets the properties for the specified SourceDocumentInformation object using the provided MetaInformation + + The source document information. + The meta information. + + sourceDocumentInformation + or + metaInformation + + + + + This function sets the meta information required from AutomationML standard. If meta + information about the same writerID already exists, this meta information is replaced. + These information comprise source information about the AutomationML file. + + the CAEXFile + the name of the writing tool + an ID of the writing tool + the tool vendors name + the tools vendors URL + the version of the writing tool + the release number of the writing tool + the date of the last writing time + the title of the written project + an ID of the written project + caexFile + + Extension Method for AutomationML Versions based on CAEX 2.15. If this method is called for a CAEX 3.0 or later + Version, the call + is redirected to the . + + + + + This method is a short version of the setMetaInformation. Meta data with identical + WriterID is replaced. + + the CAEXFile + the structure MetaInformation + caexFile + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + This method labels this CAEX file as a standard AutomationML library coming from the + AutomationML e.V. It removes all other meta information and should only be used from + authorized persons in agreement with the AutomationML e.V. + + the CAEXFile + caexFile + + Extension Method originally designed for AutomationML Versions based on CAEX 2.15. If this method is applied to + a CAEX 3.0 document, the information is transformed to a . + + + + + This function sets the meta information required from AutomationML standard. If meta + information about the same writerID already exists, this meta information is replaced. + These information comprise source information about the AutomationML file. + + the CAEXFile + the name of the writing tool + an ID of the writing tool + the tool vendors name + the tools vendors URL + the version of the writing tool + the release number of the writing tool + the date of the last writing time + the title of the written project + an ID of the written project + caexFile + + Extension Method for AutomationML Versions based on CAEX 3.0. If this method is called for an CAEX 2.15 Version, + the call + is redirected to the + + . + + + + + Converts an AttributeType to a RefTypeAttribute. + + The AttributeType object. + An RefTypeAttributeType object. + + The conversion doesn't create the RefTypeAttributeType. + Use method to create a RefTypeAttributeType. + + + + + Converts an AttributeType to a RefUriAttribute. + + The AttributeType object. + An RefURIAttributeType object. + + The conversion doesn't create the RefURIAttributeType. + Use method to create a RefURIAttributeType. + + + + + This class provides methods to create and retrieve external data references as it is defined in the BPR document + "ExternalDataReference" Version 1.0.0 from July 2016. + + + + + The name of the library containing interface classes specified in BPR documents + + + + + The name of the library containing role classes specified in BPR documents + + + + + The name for the ExternalDataReference interface class + + + + + The class path for the ExternalDataReference interface class + + + + + The name for the ExternalData role class + + + + + The class path for the ExternalData role class + + + + + The language attribute name + + + + + Adds the AutomationMLBPRInterfaceClassLib containing all interface classes + used to model external document references to the AMLDocument. + + The CAEX file of the AMLDocument. + + Different CAEX Versions used; + register the SchemaTransform service to import the AutomationMLBPRInterfaceClassLib in your current document. + + + + + Adds the AutomationMLBPRRoleClassLib containing all role classes used to model + external document references to the AMLDocument. + + The CAEX file of the AMLDocument. + caexFile + + Different CAEX Version used; + register the SchemaTransform service to import the AutomationMLBPRRoleClassLib in your current document. + + + + + Adds a document element to the defined internalElement. A Document Element is semantically described + with an attached role defined with the base role class or a + derived role class. If no role class path is given as a parameter the default is used. If the specified + role class path can not be identified as a derived role from the + no document element is added (returns null). + + + The internalElement. + + + The name of the document element. + + + The Role class path to a role class, derived from the ExternalData Role Class + + + + created InternalElementType document element or null if the role class is invalid + + + + + Add a role reference to a external data role class or derived role class defined with the + given role class path as a supported role class to the internal element. If the specified + role class path can not be identified as a derived role from the + no role reference is added (returns false). + + The internalElement. + path to the role class + + true, if a supported role class with the defined path is added false if the role class is invalid + + InternalElement not contained in CAEXDocument + + + + Adds a document with the specified external reference interface to the document element. If the given internal + element + is not a document element or the defined class path to the external reference interface is not derived from + the standard base class no interface is added. + + The document element. + The name for the referencing interface. + The external data reference interface class path. + + The InterfaceClass which is created as a reference to the external data. + + Element is not contained in a CAEXDocument + + + + Adds the external data reference libraries used to model external document + references. It is checked, if the needed role- and interface libraries are + contained in the AMLDocument. If this libs are missing, they are imported from + an embedded resource stream. The current Version of the embedded libs is + version 1.0.0. + + The CAEX file of the AMLDocument. + caexFile + + + + Adds a language attribute to the internal element. If this is the first language attribute, a simple attribute is + added. + If this is not the first, a language attribute list is used. A former created simple attribute is transferred to a + list item. + + The internal element. + The language specification. + internalElement + + + + Gets the AutomationMLBPRInterfaceClassLib containing all interface classes + used to model external document references to the AMLDocument. + + The CAEX file of the AMLDocument. + The AutomationMLBPRInterfaceClassLib + caexFile + + + + Gets the AutomationMLBPRRoleClassLib containing all role classes used to model + external document references to the AMLDocument. + + The CAEX file of the AMLDocument. + The AutomationMLBPRRoleClassLib. + caexFile + + + + Gets all Internal Element Children from the specified internal element which + are document elements. + + The internal element. + + Enumeration of InternalElement objects, which are document elements. + + internalElement + + + + Gets the ExternalDataReference InterfaceClass from the AutomationMLBPRInterfaceClassLib. + + The AutomationMLBPRInterfaceClassLib. + The 'ExternalDataReference' InterfaceClass. + automationMLBPRInterfaceClassLib + + Couldn't locate the ExternalDataReference InterfaceClass + or Couldn't locate the CAEX file of the InterfaceClass. + + + + + Gets the 'ExternalDataReference' InterfaceClass from the AML document. + + The CAEX file of the AML document. + The 'ExternalDataReference' InterfaceClass. + + + + Gets the 'ExternalData' RoleClass from the AutomationMLBPRRoleClassLib. + + The AutomationMLBPRRoleClassLib. + The ExternalData RoleClass. + Couldn't locate the ExternalData role class + + + + Gets the ExternalData RoleClass from the AML document. + + The CAEX file of the AML document. + The ExternalData RoleClass + caexFile + + + + Gets the languages, defined for the document element. If the given internal element is not + a document element, the collection is empty. + + The document element. + + IEnumerable<System.String>. + + documentElement + + + + Determines whether the specified internal element is a document element. + + The internal element. + true if [is document element] [the specified internal element]; otherwise, false. + + + + This class defines a sequence of Attributes which belong to an . A Facet attribute shall be + related + to an existing attribute of the parent AML object, the identifier is the same name. Facet attributes which are not + part of + the parent object are not permitted. [IEC 62714-1:2014 8.3 (p.43)] + + + + + + Initializes a new instance of the class. + + The owner. + The constructor function to create an Attribute wrapper. + + + + This method is not applicable if the owner is an . + + + The created and appended CAEX object if the owner is not an . + + + + + Appends a new Attribute with the provided name to the sequence of Attributes, if the conditions for Facet + Attributes are fulfilled. + Facet Attributes are a subset of Attributes which are defined for the Parent object of an . + An Attribute + with the specified name can only be added as a Facet Attribute, if the Facets parent has an identical Attribute + with that name and the Attribute has not been associated to the Facet before. + + The name of the Attribute. + The created and appended Attribute, if the conditions were fulfilled; otherwise null. + + + + Inserts the specified attribute into this sequence. Before the attribute is inserted, it is checked, + if it is a valid Facet attribute. + + The Attribute. + + optional parameter, if set to true (default) the element is prepended to already existing ones, + otherwise it is appended. + + + + + This method is not applicable for Facet attributes. + + The created and prepended Attribute, if the owner is not an . + + + + This class defines a sequence of ExternalInterfaces which belong to an . A Facet interface + shall be related + to an existing interface of the parent object, the identifier is the same name. + Facet interfaces which are not part of the parent object are not permitted. [IEC 62714-1:2014 8.3 (p.43)] + + + + + + Initializes a new instance of the class. + + The owner. + The constructor function to create an ExternalInterface object. + + + + This method is not applicable for ExternalInterfaces, if the owner is an AMLFacet. + + + The created ExternalInterface object, if the method is applied. + + + + + Appends a new element with the provided name to this sequence. Before the ExternalInterface is appended, it is + checked, + if the ExternalInterface name is already used for any ExternalInterface of the AMLFacet parent. + + The name of the new ExternalInterface object. + The appended ExternalInterface. + + + + Inserts the specified ExternalInterface into this sequence. Before the ExternalInterface is inserted, it is + checked, + if it is a valid Facet-ExternalInterface. + + The ExternalInterface. + + optional parameter, if set to true (default) the element is prepended to already existing ones, + otherwise it is appended. + + + + + This method is not applicable for ExternalInterfaces, if the owner is an AMLFacet. + + The prepended ExternalInterface. + + + + This class is a wrapper for the AutomationML Attribute 'Frame'. To get access + to instances of this type, use the implicit + type conversion operator, defined for all CAEX objects which are allowed to + contain Attribute objects. + + + + + + The frame name + + + + + The rx name + + + + + The ry name + + + + + The rz name + + + + + The x name + + + + + The y name + + + + + The z name + + + + + The format information for the Frame attribute + (don't use this, because all frame values have to be saved as xs:double with standard format) + If you want to save values with specific number format, do the string conversion + + + + + Creates a wrapper for the specified Frame Attribute. It is not checked, if the provided attribute Node + represents a valid Frame attribute. + + An 'Attribute' XML node. + + + + Initializes a new instance of the class. It is not checked, if the provided + attribute Node + represents a valid Frame attribute. If Frame attributes exist, they are initialized using the specified frame + values. + + The initialize. + The frame values. + + + + Gets and sets the frame values for this FrameAttribute + + The frame. + + + + The Rx-attribute + + + + + The Ry-attribute + + + + + The Rz-attribute + + + + + The X-attribute + + + + + The Y-attribute + + + + + The Z-attribute + + + + + Creates a new FrameAttribute using the specified document. + + The document. + The Frame attribute + + + + Determines whether the specified node models an AutomationML Frame-Attribute. + + The node. + true if the specified node is frame; otherwise, false. + + + + Gets a value indicating whether the attribute is a Frame attribute. + + + true if the attribute is a frame attribute; otherwise, false. + + + + + Validates and repairs the frame data types if the data type is not defined or not of type 'xs:double' + + The node. + true if XXXX, false otherwise. + + + + Creates a new (sub-)attribute for each frame value if not already existing + + + + + Event handler for the PropertyChanged event when an attribute value of the frame has been updated + + The FrameValues object + The name of the property that changed + + + + A frame holds position information of an object. The object position is defined by values for x, y and z axis as + well as rotation values rx,ry and rz in degree, for + the x, y and z axis. + + + + + occurs, when a property changed + + + + + Notifies the property changed. + + The information. + + + + Rotation around x-axis + + + + + Rotation around y-axis + + + + + Rotation around z-axis + + + + + X position + + + + + Y position + + + + + Z position + + + + + Creating a new FrameValues object with initially all values set to 0.0 + + + + + Creating a new FrameValues object with the given frame values + + The x value + The y value + The z value + The rx value + The ry value + The rz value + + + + Gets or sets the rx. + + The rx. + + + + Gets or sets the ry. + + The ry. + + + + Gets or sets the rz. + + The rz. + + + + Gets or sets the x. + + The x. + + + + Gets or sets the y. + + The y. + + + + Gets or sets the z. + + The z. + + + + Class ListAttribute supports List Attributes as it is defined in the + BPR 'Modelling of List Attributes in AutomationML' from January 2016 Version 1.0.0 + + + + + The list type name used as a semantic ref type for unordered list attributes + + + + + The list type name used as a semantic ref type for ordered list attributes + + + + + Adds an additional list item attribute to the list attribute. If the List attribute already contains some items, + the new item will have the same item type as the already existing items. If this is the first item, the + specified itemType is used as the attribute data type. If no itemType is defined, the default data type for + the list item is "xs:string". The Item name is automatically set to the Index if the List attribute is an ordered + list, otherwise the defined itemName is used. + + The List attribute. + Type of the new item (ignored for a list attribute containing items) + Name of the item (ignored for an ordered list attribute). + the added list item Attribute. + + + + Changes the semantic of the specified attribute and converts to a list attribute. A first item is + added to the List attribute which is initialized with valued from the converted attribute. If the Attribute + is already a list attribute or the attribute contains child attributes it will not be converted. + + The attribute. + The name of the converted item + true, if the conversion was done, otherwise false. + + + + Creates a new list attribute for an element which can have attributes. + + The element. + Name of the new list attribute. + The items count for initialization of the containing attribute items. + Type of the item (unique for all items). + + Name of the item (ignored if an ordered list is created). When an item attribute + is created, the item Name gets the item index added to this name. + + if set to true the list is an ordered list. + The list AttributeType. + + + + Determines whether the specified attribute is a list attribute. This can be ordered or unordered. + + The attribute. + true if [is list attribute] [the specified attribute]; otherwise, false. + + + + Determines whether the specified attribute is an ordered list attribute. + + The attribute. + true if [is list attribute] [the specified attribute]; otherwise, false. + + + + Determines whether the specified attribute is an unordered list attribute. + + The attribute. + true if [is list attribute] [the specified attribute]; otherwise, false. + + + + Gets the values of all items in the list attribute + + The attribute. + Enumeration of the list items. + + + + Gets the values of all items in the list attribute + + The attribute. + Enumeration of the values of the list items. + + + + Changes the semantic of the specified attribute and converts it to a list attribute. If the Attribute + is already a list attribute or the attribute contains child attributes it will not be converted. + + The attribute. + If set to true the attribute is converted to an ordered list attribute + true, if the conversion was done, otherwise false. + + + + Class for modelling meta information as defined in the AutomationML standard. This class was originally designed + for AML Versions based on CAEX 2.15. For later versions you can switch to the + . + It is possible to set SourceDocumentInformation in a CAEX 3.0 document using this class. If this is applied, the + MetaInformation + is automatically transformed to SourceDocumentInformation. The transformation works in both directions. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class, using a WriterHeader node + to populate the properties. + + The writer header. + + + + Initializes a new instance of the class using the information + provided from the specified SourceDocumentInformation + + The SourceDocumentInformation object. + + + + time stamp of the AutomationML export + + + The last writing date time. + + + + + the ID of the writer tool, maybe identical to the tools name if it is not subject of change + + + The writer identifier. + + + + + the name of the writer tool (e.g. CoDeSys) + + + The name of the writer. + + + + + ID of the project that contains the source engineering data + + + The writer project identifier. + + + + + name of the project that contains the source engineering data + + + The writer project title. + + + + + release information about the writer tool, e.g. "beta12" + + + The writer release. + + + + + the vendor of the writer tool, e.g. "3S" + + + The writer vendor. + + + + + the web URL of the vendor - helps to get in contact to the vendor + + + The writer vendor URL. + + + + + version of the writer tool, e.g. "3.4" + + + The writer version. + + + + + This class is used to support the AMLGroup concept. An AMLGroup object shall only contain InternalElements which + are + AMLMirrorObjects and/or further AMLGroup objects. + + + + + + Initializes a new instance of the class. + + The owner. + Function to create an . + + + + Inserts the specified InternalElement into this sequence. Before the InternalElement is inserted, it is checked, + if it is a valid Group-InternalElement. + + The InternalElement. + + optional parameter, if set to true (default) the element is prepended to already existing ones, + otherwise it is appended. + + + + + Gets the MIME. + + The file extension. + List<System.String>Mime List. + + + + Gets the extension. + + Type of the MIME. + List<System.String>file extension. + + + + Gets the known extensions. + + Type of the MIME. + IEnumerable<System.String> All known file extensions. + + + + The Aml.Engine.AmlObjects Namespace contains classes that support the generation and analysis of AutomationML + features which are + specified in the AutomationML standard, white-papers, best practice recommendation or application recommendations. + These + features are not covered with the classes in the Aml.Engine.CAEX namespace, which only supports the CAEX standard. + Classes in + the Aml.Engine.AmlObjects namespace may be derived from the CAEX classes. + + + + + This class defines specific AutomationML defined attributes to be associated to any AutomationML object, + which is allowed to contain attributes. Instances of this class can be constructed with an + implicit type conversion operator, defined in the wrapper classes, which implement the + interface. + + + + + + + Creates a wrapper to access specific AML Attributes for the provides object with attributes + + The CAEX object. + + + + Get the collection of all attributes of this object. Inherited Attributes are not included. + + + + + The CAEXWrapper of the base CAEXObject which contains the here defined AML attributes + + + + + Gets the attributes and all nested attributes. + + + + + Gets a defined FrameAttribute from the collection of the + . + If no such attribute exists, null is returned. + + + The frame attribute. + + + + + Gets a defined RefTypeAttribute from the collection of the + . + If no such attribute exists, null is returned. + + + + + Gets a defined RefURIAttribute from the collection of the + . + If no such attribute exists, null is returned. + + + + + Creates a new Frame attribute for the if no Frame + attribute exists. + The provided values are used to initialize the Frame attribute values. + + The frame values for initialization. + the new FrameAttributeType. + + AutomationML defines, that only one Frame attribute can be assigned to an object. If a + Frame attribute exists, the frame values are set to the existing attribute. + + + + + Creates a new RefURI attribute for the object if none exists. + The RefURI attribute value is set to the provided Uri. + + The Uri string. + the RefURIAttributeType. + + AutomationML defines, that only one RefUri attribute can be assigned to an object. If a + RefUri attribute exists, the provided Uri is set to the existing attribute. + + + + + + RefType attribute is an Attribute of a ColladaInterface + + + + + The ref type attribute + + + + + Initializes a new instance of the class. + + The initialize. + + + + Gets a value indicating whether this instance is a RefURI attribute. + + + true if this instance is a RefURI attribute; otherwise, false. + + + + + The explicit ref type + + + + + The implicit ref type + + + + + Creates a new RefURIAttribute using the specified document. + + The document. + The RefTypeAttributeType attribute + + + + Determines whether this is an 'explicit' RefType + + true if this instance is explicit; otherwise, false. + + + + Determines whether this is an 'implicit' RefType + + true if this instance is implicit; otherwise, false. + + + + This class is a wrapper for the AutomationML defined Attribute 'RefURI'. To get access + to instances of this type, use the implicit + type conversion operator, defined for all CAEX objects which are allowed to + contain Attribute objects. + + + + + + The ref Uri attribute + + + + + Initializes a new instance of the class. + + An 'Attribute' XML node + + + + Gets the pure file path of this external reference attribute without the identifier. + + The file path. + + + + Determines, ob the refUri is equal to the attributes value + + + + + + + Gets a value indicating whether this instance is a RefURI attribute. + + + true if this instance is a RefURI attribute; otherwise, false. + + + + + Gets the referenced node. + + The referenced node. + + + + Gets or sets the URI. + + The URI. + + + + Creates a new RefURIAttribute using the specified document. + + The document. + The RefURIAttribute attribute + + + + Determines whether [is absolute URI]. + + true if [is absolute URI]; otherwise, false. + + + + Determines whether this instance is file. + + true if this instance is file; otherwise, false. + + + + The CAEX exception class. + + + + + + Initializes a new instance of the class. + + + The , which contains the serialized + object data for the thrown exception. + + + The , containing context + information about the source or destination. + + + + + Initializes a new instance of the class. + + The message describing the error. + + + + Initializes a new instance of the class. + + The error message explaining the cause of the exception. + + The exception that caused the current exception, or a null reference ( + in Visual Basic) if no inner exception is specified. + + + + + This class implements methods to work with a sequence of CAEX objects. The class will wrap all + elements with the same CAEX element name of an owner element to + the denoted wrapper type which is given as the type-argument. + + this is any CAEX object type + + + + + + Creates a new XML node and assigns the provided name to the CAEX 'Name' attribute. + + The owner. + The created XML node. + owner + + + + Initializes a new instance of the class. + + The owner. + The CAEX element name. + The constructor function to create a wrapper. + + + + Initializes a new instance of the class with condition. + + + + + + + + + Gets the first CAEX object with this name from the sequence of elements. + + the name of the CAEX object. + + a CAEX object + + + + + Gets the CAEX object which can be identified with a CAEX path, where the path parts are defined + in the provided array of names. + + The names extracted from a CAEX path. + + + + + Creates a new CAEX object with the specified name and appends it to the sequence. + + the name of the CAEX object. If a + service + is registered, the name may be altered to be unique in this sequence. + the created CAEX object. + + + + Inserts the specified element into this sequence. If nothing is specified the element is added. + If the asFirst is set to true, the element is prepended to already existing ones. If a UniqueNameService + can be located, the name of the inserted element is changed to be unique. + + The CAEX object. + + optional parameter, if set to true (default) the element is prepended to already existing ones, + otherwise it is appended. + + + The inserted CAEX object. If the provided CAEX object already belongs to a sequence, a copy of the CAEX object is + inserted and + returned as the result. + + + If the provided CAEX object already has an associated parent, a deep + copy of the CAEX object and not the original provided CAEX Object is inserted. Please keep in mind, that the copied + object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + caexObject + + + + Creates a new CAEX object with the specified name and prepends it to the sequence. + + the name of the CAEX object. If a + service + is registered, the name may be altered to be unique in this sequence. + the created CAEX object. + + + + This class can be used for a type based access to the value attributes of a CAEX element. It is required, that the + is set according to the XSD Schema types. + If the AttributeDataType is not defined, the type xs:string is assumed and the value is not encoded/decoded. + CAEX Elements, which use this feature are , + + and and their derivations. + The interface is implemented by these classes. The type based conversion is + implemented, using XML specific decoding and encoding methods, + defined in the .NET class . The decoded/encoded value for an attribute can be accessed via + the property. + + + + + prevents public instantiation + + + + + Gets a default decoded value according to the defined AttributeDataType + + + + + Gets a friendly string of the Attribute value. This string is not in any case equal to the attribute value string, + which is always an encoded string, according to the AttributeDataType. The conversion format used to convert the + value + to its string representation is fix and cannot be changed. + + + The friendly string. + + + + + Gets the Attribute, which defines the AttributeDataType. + + + + + Gets the .NET Type code which is converted from the XSD Schema attribute defined in the + . + + + + + Gets and sets the value attribute using the type specific XML conversion method. If no AttributeDataType is + defined, + the value is encoded / decoded as it is. + + + + + Gets the Element, which contains the Attribute value. + + + + + Gets the Name of the defining value attribute. + + + + + Translates an XSd schema type to an XmlTypeCode. + + + + + + + Type based comparison of attribute values. + + + + + + + Determines whether the specified , is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines if the type code derived from the Attribute datatype is a date time type. + The following type codes are recognized as date time types: + + + + + + + + + + + + + + + + + + + + The AttributeDataType 'duration' is not marked as a DateTime Type, because it should be transformed into + a CLR type. + + true, if the type code is a date time type; false otherwise. + + + + Determines if the type code derived from the Attribute datatype is a numeric or boolean type. + For a lit of numeric types . + + true, if the type code is a numeric or boolean type; false otherwise. + + + + Determines if the type code derived from the Attribute datatype is a numeric type. + The following type codes are recognized as numeric types: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true, if the type code is a numeric type; false otherwise. + + + + Determines if the type code derived from the Attribute datatype defined a part of a date. + The datatype ushort is used for a date part. + The following type codes are recognized as date parts: + + + + + + + + + + + + + true, if the type code is a date part; false otherwise. + + + + Determines if the type code derived from the Attribute datatype is a string type. + The following type codes are recognized as string types: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true, if the type code is a string type; false otherwise. + + + + Determines if the type code derived from the Attribute datatype is a binary type. + + + + + + Checks for all string data types, if the provided string is valid according to the defined data type + . + The supported types are : + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the Decoded Value of the Attribute. This may be null, if no attribute value is defined. + + + + + + Gets the encoded value which can be used to set the attribute value in an XML encoded way. + + the type based value + + + + Writes the encoded value into the CAEX document. If no AttributeDataType is set, the value is encoded as a string. + + the type based value + + + + Extension methods for class . + + + + + Appends a new RefSemantic object with the defined semantics to the specified CAEX object. + + The CAEX object + A string, defining some external defined semantic source. + The new RefSemantic object + + + + Determines whether the specified Attribute is referenced by other Attribute + objects called 'Mirrors'. + + The element. + + true if the specified element is a 'Master'-Attribute; otherwise, false. + + + + + This class provides extension methods for all types of CAEX objects. + + + + + Gets the associated CAEX schema manager of the CAEX object. + + The CAEX object. + + The SchemaManager associated to the CAEX object. + + caexObject + + + + Finds the ancestors of the provided CAEX object which have the given type. + + CAEX element type of the ancestors. + The CAEX object. + + + The ancestors of the CAEX object which are of the given type. + + caexObject + + + + Gets the CAEX document which contains this CAEX object. + + The CAEX object. + + The CAEX document, containing the CAEX object. + + caexObject + + + + Gets the CAEX file which contains this CAEX object. + + The CAEX object. + + The CAEX file, containing the CAEX object. + + caexObject + + + + Gets the associated CAEX schema of the CAEX object. + + The CAEX object. + + The Schema associated to the CAEX object. + + caexObject + + + + Creates a CAEX object of the given type from the specified XML element. + + CAEX element type. + The XML node. + CAEX object in the given type. + + + + Finds the descendants of the provided CAEX object which are of the given type. + + CAEX element type of the descendants. + The CAEX object. + + The descendants of the CAEX object which are of the given type. + + caexObject + + + + Finds the descendants of the provided CAEX object which are of the given type. + . + The CAEX object. + CAEX element type of the descendants. + + The descendants of the CAEX object which are of the given type. + + caexObject + + + + Finds the descendants of the provided CAEX object which are of the given type. + + CAEX element type of the descendants. + The CAEX object. + if true, the provided caex object is included in the enumeration. + + The descendants of the CAEX object which are of the given type. + + caexObject + + + + Finds the CAEX object with the specified id and the specified Type. + + CAEX element type of the searched CAEX object. + CAEX object, used to identify the document for the search. + Id of the CAEX object. + + CAEX object with the given id or null, if not found. + + caexObject + + + + Finds the CAEX object with the specified CAEX path and the specified Type. + + CAEX element type of the searched CAEX object. + CAEX object, used to identify the document for the search. + The CAEX path of the searched CAEX object. + + CAEX object with the given path or null, if not found. + + caexObject + + + + Finds the first ancestor of the specified CAEX object in the given Type. + + CAEX element type of the ancestor. + The CAEX object. + + First ancestor of the specified CAEX object or null, if no ancestor + with this Type exists. + + caexObject + + + + Finds the first ancestor of the specified CAEX object with the given Tag name + + The CAEX object. + Name of the tag. + + First ancestor of the specified CAEX object or null, if no ancestor + with this Tag name exists. + + caexObject + + + + Finds the first ancestor of the specified CAEX object which fulfils the specified predicate + + The CAEX object. + The condition for the ancestor object. + + First ancestor of the specified CAEX object or null, if no ancestor + meeting the condition exists. + + caexObject + + + + Tries to get a CAEX parent with the specified Type of the provided caexObject. If the parent is + not assignable to the provided type, the result is null. + + The expected type of the parent. + The CAEX object. + + The parent with the specified Type or null. + + caexObject + + + + Gets the Library which contains this CAEX object. + + The CAEX object. + + The containing Library. + + caexObject + + + + Gets a names for the specified caex wrapper object. If the specified object is + a , the Name is returned; otherwise the TagName of the + CAEX item. + + The caex object. + + + + + Adds an new Copyright node to this object if it doesn't exists. + + The CAEX object. + + A new Copyright node + + + + + Adds an new Description node to this object if it doesn't exists. + + The CAEX object. + + A new Description node + + + + + Adds an new Version node to this object if it doesn't exists. + + The CAEX object. + + A new Version node + + + + + This class defines extension methods for the class. + + + + + Tries to locate a CAEX object from the specified ID. + If the ID uses an alias reference and an can be located, + it is tried to resolve the external reference and to get the object from the external source. + + The document. + The identifier. + + if set to true tries to resolve an alias reference with an ExternalReferenceResolver + service. + + + The CAEXObject if it is found; otherwise null. + + + + + Tries to locates a CAEX object from the specified CAEX path. + If the path uses an alias reference and an can be located, + it is tried to resolve the external reference and to get the object from the external source. + + The document. + The CAEX path. + + if set to true tries to resolve an alias reference with an ExternalReferenceResolver + service. + + The CAEXObject if it is found; otherwise null. + + + + Extension methods for the CAEX element "ExternalInterface" + + + + + Determines whether the specified ExternalInterface is referenced by other ExternalInterface + objects called 'Mirrors'. + + The ExternalInterface CAEX element. + + true if the specified element is a 'Master'-ExternalInterface; otherwise, false. + + + + + Determines whether the specified ExternalInterface is related to other ExternalInterfaces using InternalLinks. + + The external interface. + + true if the specified external interface is related; otherwise, false. + + + + + Gets all ExternalInterface objects from the specified , which are + derived from an + InterfaceClass, identified with the given . + + The object with external interface. + The interface class path. + An enumeration of selected ExternalInterfaces of the given object. + + + + Gets the related external interfaces of the specified ExternalInterface connected with InternalLinks. + Either the or the of the + InternalLink is equal to the specified ExternalInterface. + + The ExternalInterface CAEX element. + An enumeration of related ExternalInterface elements + + + + Gets the related instances (SystemUnitClass or InternalElement) of the specified ExternalInterface connected with + InternalLinks. + Either the or the of the + InternalLink is equal to the specified ExternalInterface. + + The ExternalInterface CAEX element. + An enumeration of related Instances + + + + Gets the related InternalElements of the specified ExternalInterface connected with InternalLinks, which have a + role reference to the provided + . Inheritance is considered here. + Either the or the of the + InternalLink is equal to the specified ExternalInterface. + + The ExternalInterface CAEX element. + The role class path. + + An enumeration of selected related InternalElements. + + + + + Extension methods for all objects with ExternalInterface collections. + + + + + Determines whether an object with ExternalInterfaces has an associated reference to + the specified InterfaceClass. If inheritance relations between InterfaceClasses should be regarded, the + optional parameter 'regardInheritance' should be set. In this case the specified InterfaceClass is either identical + to a referenced InterfaceClass or a referenced InterfaceClass is derived from the specified InterfaceClass. + + + The InterfaceClass object. + + if set to true inheritance relations + are regarded (default is false). + + + true if this CAEX Element object has an associated reference to + the specified InterfaceClass; otherwise, false. + + InterfaceClass + + This sample shows how to call the method using + a standard base InterfaceClass from the + + + var amlInterfaceClassLib = AutomationMLInterfaceClassLibType.InterfaceClassLib (myDocument); + InternalElementType internalElement; + ... + internalElement.HasInterfaceClassReference (amlInterfaceClassLib.COLLADAInterface); + + + + + + Determines whether this Object with ExternalInterfaces has an associated InterfaceClass reference + with the specified CAEX path interface reference. If inheritance relations between interface classes should be regarded, the + optional parameter 'regardInheritance' should be set. In this case the specified InterfaceClass is either identical + to a referenced InterfaceClass or a referenced InterfaceClass is derived from the specified InterfaceClass. + + + The interface reference. + + if set to true inheritance relations + are regarded (default is false). + + + true if this object has an associated InterfaceClass reference + with the specified CAEX path interface reference; otherwise, false. + + interfaceReference + + This sample shows how to call the method using + a standard base InterfaceClass path from the + + + InternalElementType internalElement; + ... + internalElement.HasInterfaceClassReference (AutomationMLInterfaceClassLib.COLLADA); + + + + + + All external Interfaces of this Object with ExternalInterfaces with an associated InterfaceClass reference + with the specified CAEX path interface reference. If inheritance relations between interface classes should be regarded, the + optional parameter 'regardInheritance' should be set. In this case the specified InterfaceClass is either identical + to a referenced InterfaceClass or a referenced InterfaceClass is derived from the specified InterfaceClass. + + + The interface reference. + + if set to true inheritance relations + are regarded (default is false). + + + All external interfaces with an associated InterfaceClass reference + with the specified CAEX path interface reference. + + interfaceReference + + + + Extension methods for the SystemUnitClass element and its defining class + + + + + Gets the supported Roles and the inherited roles from base classes. + + List<SupportedRoleClassType>. + + + + Inserts the provided SystemUnitClass object as a subordinate child into this SystemUnitClass + + The SystemUnitClass ancestor. + The SystemUnitClass + + + + Adding a new SystemUnitClass to this SystemUnitFamily. + + The SystemUnitFamily object + Name of the SystemUnitClass element. + A new SystemUnitClass + + + + Gets all descendant Objects in the SystemUnitClass. + SystemUnitClasses on all levels are returned. + + The SystemUnitClass. + + An enumeration of all descendant SystemUnitClass objects. + + + + + Extension methods for the SystemUnitClassLib element and its defining class + + + + + Inserts the provided SystemUnitClass into this SystemUnitClass library. + + The system unit class library. + The system unit class. + + + + Adding a new SystemUnitClass to this SystemUnitClassLib. + + The SystemUnitClassLib object + Name of the SystemUnitClass element. + A new SystemUnitClass + + + + Gets all descendant Objects in the SystemUnitClassLib. + SystemUnitClasss on all levels are returned. + + The SystemUnitClassLib. + + IEnumerable<SystemUnitFamilyType>. + + + + + Extension methods for the RoleClassLib element and its defining class + + + + + Inserts the provided RoleClass into this RoleClass library. + + The role class library. + The role class. + + + + Adding a new RoleClass to this RoleClassLib. + + The RoleClassLib object + Name of the RoleClass element. + A new RoleClass + + + + Gets all descendant Objects in the RoleClassLib. + RoleClasss on all levels are returned. + + The RoleClassLib. + + Enumeration of the RoleClass descendants. + + + + + Extension methods for an InterfaceClassLib element and its defining class . + + + + + Inserting an InterfaceClass element to the InterfaceClassLib object. + + The InterfaceClassLib object + The InterfaceClass object to insert + + + + Gets all descendant Objects in the InterfaceClass Library. + InterfaceClasses on all levels are returned. + + The InterfaceClassLib object + IEnumerable<InterfaceFamilyType>. + + + + A new InterfaceClass is added to the specified InterfaceClassLib object. + + The InterfaceClassLib object + The name of the InterfaceClass to add + The new InterfaceClass element + + + + Extension methods for an InterfaceClass element and its defining class . + + + + + Create an InterfaceClass from this interface (e.g. ExternalInterface). An + InterfaceClass is of type InterfaceFamilyType and may contain + InterfaceFamilyTypes as child elements. + + InterfaceFamilyType. + + + + Inserting the new InterfaceClass element to the provided InterfaceClass object. + + The InterfaceClass object + The InterfaceClass object to insert + + + + Gets all descendant Objects of the InterfaceClass. + InterfaceClasses on all levels are returned. + + The InterfaceClass object + IEnumerable<InterfaceFamilyType>. + + + + A new InterfaceClass is added to the specified InterfaceClass object. + + The InterfaceClass object + The name of the InterfaceClass to add + The new InterfaceClass element + + + + Extension methods for an Mapping element and its defining class . + + + + + Appends the AttributeNameMapping object to the defined Mapping object + + The Mapping object + The AttributeNameMapping. + + + + Appends the InterfaceNameMapping object to the defined Mapping object + + The Mapping object + The interface name mapping. + Use of this method is restricted to CAEX Version 2.15. + + + + Adding a new AttributeNameMapping to the defined Mapping object. + An AttributeNameMapping allows the definition of the mapping between attribute names of corresponding RoleClasses + and SystemUnitClasses. + + The Mapping object + The attribute name of the SystemUnitClass + The attribute name of the RoleClass + The new AttributeNameMapping element + + + + Adding a new InterfaceIDMapping to the defined Mapping object. + An InterfaceIDMapping allows the definition of the mapping between Interfaces of corresponding RoleClasses and + SystemUnitClasses. + + The Mapping object + The ID of the interface in the SystemUnitClass + The ID of the interface in the RoleClass + The new InterfaceIDMapping element + Use of this method is restricted to CAEX Version 3.0 and above. + + + + Adding a new InterfaceIDMapping to the defined Mapping object. + An InterfaceIDMapping allows the definition of the mapping between Interfaces of corresponding RoleClasses and + SystemUnitClasses. + + The Mapping object + The interface in the SystemUnitClass + The interface in the RoleClass + The new InterfaceIDMapping element + Use of this method is restricted to CAEX Version 3.0 and above. + + + + Adding a new InterfaceNameMapping to the defined Mapping object. + An InterfaceNameMapping allows the definition of the mapping between Interface names of corresponding RoleClasses + and SystemUnitClasses. + + The Mapping object + The name of the interface in the SystemUnitClass + The name of the interface in the RoleClass + The new InterfaceNameMapping element + Use of this method is restricted to CAEX Version 2.15. + + + + Extension methods for the RoleClass element and its defining class . + + + + + Inserts the provided RoleClass as a subordinate child to this RoleClass. + + The role class ancestor. + The role class to be inserted. + + + + Adding a new RoleClass to this RoleClassFamily. + + The RoleClass object + Name of the RoleClass. + A new RoleClass + + + + Gets all descendant Objects in the RoleClass. + RoleClasses on all levels are returned. + + The RoleClass object. + + Enumeration of all descendant RoleClass objects. + + + + + The Aml.Engine.CAEX.Extensions Namespace contains extension methods for most of the + specific CAEXObject classes. The most of these extension methods are methods which + are obsolete and only kept to be downward compatible to AMLEngine the versions prior to + v5.0.0. For most of these methods, better alternatives are provided either via a specific + service or are available in the + namespace. + + + + + Extension methods for all objects with Attribute collections. + + + + + Copies all attribute of the source object with attributes to the target object including + children + + the target object + the source object + + true if the copy process should include the attribute values, + not recommended for classes + + nothing + + + + Gets the first attribute with the specified name from the attribute collection of the CAEX object. + + The CAEX object. + The attribute name. + Gets the Attribute with the provided name. + + + + Appends a new Attribute object with the defined name to the specified CAEX object. + + The CAEX object + the name of the new Attribute object + The new Attribute + + + + Sets the value for the attribute with the specified name from the attribute collection of the CAEX object. + If no attribute with that name exists, it is created. + + the CAEX object with an Attribute collection. + The attribute name + The attribute value + The modified attribute. + + + + Modifies the attribute with the specified name from the attribute collection of the CAEX object, using + the provided values. If no attribute with that name exists, it is created. + + parent object + attribute name + attribute value + attribute unit + attribute data type + The modified attribute. + + + + Modifies the attribute with the specified name from the attribute collection of the CAEX object, using + the provided values. If no attribute with that name exists, it is created. + + parent object + attribute name + attribute value + attribute defaultValue + attribute description + attribute unit + attribute data type + The modified attribute + + + + Modifies the attribute with the specified name from the attribute collection of the CAEX object, using + the provided values. If no attribute with that name exists, it is created. + Sets the AttributeDataType to xs:double + + parent object + attribute name + attribute value of type double + The modified attribute + + + + Modifies the attribute with the specified name from the attribute collection of the CAEX object, using + the provided values. If no attribute with that name exists, it is created. Sets the AttributeDataType to xs:double + + parent object + attribute name + attribute value of type double + attribute defaultValue + attribute description + attribute unit + The modified attribute + + + + Extensions for all classes which implement the interface. + + + + + Deletes the inherited element. According to CAEX [DIN EN 62424:2008-08 A.2.4.1 (pp.48-49)], + deleting of inherited properties is possible by redefinition of the corresponding data again in the child object + with the ChangeMode attribute set to "deleted". + + The class with base class. + Name of the element which should be deleted. + Type of the element which should be deleted. + true, if an inherited property was found and could be deleted; otherwise false. + + + + Gets a list of Attribute objects that are inherited from base classes. + The List will also contain the elements own Attribute objects, if the parameter is set (default). + If an Attribute is overwritten, only the last defined is contained. + + The class with a possible base class reference for inheritance. + if set to true includes the elements own ExternalInterface objects; otherwise not + + A list of Attribute objects + + + + + Gets a list of Attribute objects that are inherited from base classes. + The List will also contain the elements own Attribute objects, if the parameter is set (default). + If an Attribute is overwritten, only the last defined is contained. + + The class with a possible base class reference for inheritance. + if set to true includes the elements own ExternalInterface objects; otherwise not + + A list of Attribute objects + + + + + Gets a list of ExternalInterface objects that are inherited from base classes. + The List will also contain the elements own ExternalInterface objects, if the parameter is set (default). + If an ExternalInterface is overwritten, only the last defined is contained. + + The class with a possible base class reference for inheritance. + if set to true includes the elements own ExternalInterface objects; otherwise not + + A list of ExternalInterface objects + + + + + Gets a list of ExternalInterface objects that are inherited from base classes. + The List will also contain the elements own ExternalInterface objects, if the parameter is set (default). + If an ExternalInterface is overridden, only the last defined is contained. The result also contains the nested + interface descendants of an external interface. + + The class with a possible base class reference for inheritance. + if set to true includes the elements own ExternalInterface objects; otherwise not + + A list of ExternalInterface objects + + + + + Gets a collection of Attribute objects that are inherited from base classes. The own attributes are included in the + enumeration. + + The class with a possible base class reference for inheritance. + if set to true includes the own attributes. + + A collection of Attribute objects + + + + + Gets a collection of InternalElement objects that are inherited from base classes. + As default, the own InternalElements are included in the enumeration. + + The class with a possible base class reference for inheritance. + if set to true includes the own Internal Elements. + + A collection of InternalElement objects + + + + + Gets a collection of ExternalInterface objects that are inherited from base classes. + + The class with a possible base class reference for inheritance. + if set to true includes the own interfaces. + + A collection of ExternalInterface objects + + + + + Gets a collection of objects of the defined InheritedElement-Type that are inherited from base classes. + + The type of the inherited element. + the base class containing the element + if set to true the own elements are included. + + An enumeration of all inherited elements. + + + + + Determines, if the specified element is an inherited element. To be an inherited element, it has to be an + AttributeType, ExternalInterfaceType or InternalElementType element. + + the class providing the inheritance relation + the element to test + true, if a base class contains the element + + + + Determines, if an element of a class with an inheritance relation to a base class is an overridden element, what + means + a base class contains an element which is considered as equal to the provided element. In most cases, equality is + defined by equality of the element names. + + the base class containing the element + the element to test + true, if an element of a class with an inheritance relation to a base class is an overridden element + + true if the specified element is overridden; otherwise, false. + + + + + Determines, if an element of a class with an inheritance relation to a base class has an overridden element with + the specified name and type, what means a base class contains an element which name is equal to the provided + elementName. + + the base class containing the element + Name of the element. + Type of the element. + The overridden element if it exists; otherwise null. + + + + Name of the referenced Class without path information. + + Any object with a class reference. + Name of the referenced Class, if exists; otherwise string.Empty + + + + Name of the referenced SystemUnitClass without path information. + + The internal element. + Name of the referenced Class, if exists; otherwise string.Empty + + + + Name of the referenced InterfaceClass without path information. + + The interface Class. + Name of the referenced Class, if exists; otherwise string.Empty + + + + Deletes the inherited element. According to CAEX [DIN EN 62424:2008-08 A.2.4.1 (pp.48-49)], + deleting of inherited properties is possible by redefinition of the corresponding data again in the child object + with the ChangeMode attribute set to "deleted". + + + The class with base class. + Name of the element which should be deleted. + Type of the element which should be deleted. + true, if an inherited property was found and could be deleted; otherwise false. + + + + Gets a list of Attribute objects that are inherited from base classes. + The List will also contain the elements own Attribute objects, if the parameter is set (default). + If an Attribute is overwritten, only the last defined is contained. + + The type of the CAEX class. + The class with a possible base class reference for inheritance. + if set to true includes the elements own ExternalInterface objects; otherwise not + + A list of Attribute objects + + + + + Gets a list of ExternalInterface objects that are inherited from base classes. + The List will also contain the elements own ExternalInterface objects, if the parameter is set (default). + If an ExternalInterface is overwritten, only the last defined is contained. + + The type of the CAEX class. + The class with a possible base class reference for inheritance. + if set to true includes the elements own ExternalInterface objects; otherwise not + + A list of ExternalInterface objects + + + + + Gets a collection of Attribute objects that are inherited from base classes. The own attributes are included in the + enumeration. + + The type of the CAEX class. + The class with a possible base class reference for inheritance. + if set to true [include own]. + + A collection of Attribute objects + + + + + Gets a collection of InternalElement objects that are inherited from a base class. The own InternalElements are included in the + enumeration. + + The type of the CAEX class. + The class with a possible base class reference for inheritance. + if set to true [include own]. + + A collection of InternalElement objects + + + + + Gets a collection of ExternalInterface objects that are inherited from base classes. + + Type of the CAEX class. + The class with a possible base class reference for inheritance. + if set to true the interfaces of the provided class are included. + + A collection of ExternalInterface objects + + + + + Gets a collection of objects of the defined InheritedElement-Type that are inherited from base classes. + + The type of the inherited element. + The type of the class. + the base class containing the element + if set to true own elements are included. + + An enumeration of all inherited elements. + + + + + Determines, if an element of a class with an inheritance relation to a base class is an overridden element, what + means + a base class contains an element which is considered as equal to the provided element. In most cases, equality is + defined by equality of the element names. + + + the base class containing the element + the element to test + true, if an element of a class with an inheritance relation to a base class is an overridden element + + + + Determines, if an element of a class with an inheritance relation to a base class has an overridden element with + the specified name and type, what means a base class contains an element which name is equal to the provided + elementName. + + + the base class containing the element + Name of the element. + Type of the element. + The overridden element if it exists; otherwise null. + + + + Factory to create CAEX-Elements according to a provided Type. + + + + + Factory method to create a new CAEX object in the provided CAEX document. + The CAEX element is derived from the specified CAEX object Type. To insert + the new CAEX object into the document an appropriate insertion method has + to be used. + + The CAEX object Type. + The CAEX document. + The created CAEX object. + + document + + + + Factory method to create a new CAEX object in the provided CAEX document. + The CAEX element is derived from the specified CAEX object Type. To insert + the new CAEX object into the document an appropriate insertion method has + to be used. + + The CAEX document. + Name of the CAEX tag. + + The created CAEX object. + + + document + + + + This class defines extension methods for the CAEXFile Element + + + + + Imports the provided library as a new library to this caexFile. If the library contains external references which + are not + resolvable in the target document, the needed external references are copied from the source document also. + + + the CAEXFile + the library which should be imported + the imported library. + Importing elements with different schema's is not supported + + + + Performs a document wide fast search and returns a CAEXObject given by its + ID. + + the CAEXFile + the ID ob the object which is subject of the search + + Optional parameter to enable this methods (default=false), + to search in referenced documents also. + Referenced Documents can only be considered, if they are loaded via the ExternalReference. + + the found CAEXObject or null if not found + + External references are resolved in the search if a service + is registered. + + + + + Performs a document wide fast search and returns an object of type 'T' given by its + ID. + + Type of the expected CAEX object. + the CAEX file + the ID ob the object which is subject of the search + + Optional parameter to enable this methods (default=false), + to search in referenced documents also. + Referenced Documents can only be considered, if they are loaded via the ExternalReference. + + + the found CAEXObject or null if not found + + + External references are resolved in the search if a service + is registered. + + + + + Performs a document wide fast search and returns a CAEXObject given by its + Path, e.g. "plant/unit" or -in case the document is based on CAEX 2.15 - + "GUID:Interface". + + the CAEXFile + the path of the object which is subject of the search + + new optional parameter to enable this method (default=false), + to search in referenced documents also. + + + the found CAEXObject or null if not found + + + External references are resolved in the search if a service + is registered. + + + + + Performs a document wide fast search and returns an object of type 'T' given by its + Path, e.g. "plant/unit" or -in case the document is based on CAEX 2.15 - + "GUID:Interface". + + Type of the expected CAEX object. + the CAEX file + the path of the object which is subject of the search + + new optional parameter to enable this method (default=false), + to search in referenced documents also. + + + the found CAEXObject or null if not found + + + External references are resolved in the search if a service + is registered. + + + + + Imports the provided library into the AttributeTypeLib collection of this CAEX file. + + the CAEX file. + The source AttributeTypeLib object. + + The imported AttributeTypeLib. + + + + + Imports the provided source instance hierarchy into the InstanceHierarchy collection of this CAEX file. + + the CAEX file. + The source InstanceHierarchy object. + + The imported InstanceHierarchy. + + + + + Imports the provided library into the InterfaceClassLib collection of this CAEX file. + + the CAEX file. + The source InterfaceClassLib. + The imported InterfaceClassLib. + + + + Imports the provided library into the RoleClassLib collection of this CAEX file. + + the CAEX file. + The source RoleClassLib. + The imported RoleClassLib. + + + + Imports the provided library into the SystemUnitClassLib collection of this CAEX file. + + the CAEX file + The source SystemUnitClassLib. + The imported SystemUnitClassLib. + + + + Inserts the ExternalReference into the CAEX file. + + The CAEX file. + The ExternalReference object. + + + + Insert an existing InstanceHierarchy to this CAEX file as the last InstanceHierarchy. + + The InstanceHierarchy to insert. + The CAEX file. + + + + Insert an existing InterfaceClassLib to this CAEX file as the last InterfaceClassLib. + + The CAEX file. + The InterfaceClassLib to insert. + + + + Insert a RoleClassLib to this CAEX file as the last RoleClassLib. + + The CAEX file. + The RoleClassLib to insert. + + + + Append a SystemUnitClassLib to this CAEX file as the last SystemUnitClassLib. + + The CAEX file. + The SystemUnitClassLib to insert. + + + + A new ExternalReference node is added to the CAEX file. + + the CAEX file. + The path value of this external reference. + The alias value of this external reference. + A new ExternalReference + + + + Adding a new InstanceHierarchy with the given name to this CAEX file. + The Instance Hierarchy is always added as the + last Instance Hierarchy. + + the CAEX file. + The name of the new InstanceHierarchy. + A new InstanceHierarchy + + + + Adding a new InterfaceClassLib to this CAEX file. + + the CAEX file + The name of the new InterfaceClassLib. + A new InterfaceClassLib + + + + Adding a new RoleClassLib to this CAEX file. + + the CAEX file. + The name of the RoleClassLib. + A new RoleClassLib + + + + Adding a new SystemUnitClassLib to this CAEX file. + + the CAEX file + The name of the new SystemUnitClassLib. + The new SystemUnitClassLib. + + + + Traversal method for a hierarchical tree, with identical childSelector for + all tree nodes. The method uses a pre-order algorithm without recursion for + the deep traversal of the complete tree. + + the CAEXFile + The source. + The child selector. + IEnumerable. + + + + This class defines extension methods for the CAEXObject Element + + + + + This method sets a description. If no description exists, it is created. + + the CAEX object + the description + + + + Gets the full node path of the provided CAEX object, which includes the object names of all + ancestor hierarchy levels and the name of the object itself. + + The CAEX object. + + Please note that this method returns a different result than the method, which + returns + the CAEX path used for referencing objects. + + The path to the XML node. + + + + Method to add a new element 'AdditionalInformation' to a CAEXObject + + The CAEX Object + Insertion position + the new element + + + + Generic method to add a new element with the provided name of a specific Type to a CAEXSequence. + + The type of the added object + The CAEX Sequence + The name of the new element + Insertion position + the wrapper of type T containing the new element + + + + Static class supporting the generation and analysis of CAEXPath's + + + + + The alias separator used after Alias + + + + + The attribute separator used before attribute hierarchies. + + + CAEX 3.0 doesn't define a special attribute separator character any more + + + + + The interface separator used before an interface + + + CAEX 3.0 doesn't define a special interface separator character any more + + + + + The object separator used between object hierarchies + + + + + The begin of a path part, used if the object name contains a Path Separator + + + + + The escaped , used in an object name, if it + contains this character + + + + + The end of a path part, used if the object name contains a Path Separator + + + + + The escaped , used in an object name, if it contains + this character + + + + + The end of a path part, used if the object name contains a Path Separator + + + + + Gets the alias name from a reference. If the reference is not a reference with + an alias, the return value is string.Empty. + + The class reference. + The CAEX schema version. + + The Alias Name without the Ending AliasSeparator or string.empty + + + + + Builds the Reference-Path which includes all Names of CAEXObjects in the given list of CAEX objects. + + The CAEX objects. + + The CAEX Path, build from the object list. + + + + + Builds the Reference-Path which includes all Names of CAEXObjects in the given list of elements. + + The XML nodes of the CAEX objects. + + The CAEX Path, build from the element XML nodes. + + + + + Builds the Reference-Path which includes all names of CAEX objects in the given name array. + + The names, which build the path parts. + The CAEX schema version. + + The CAEX path created from the names array. + + + + + Determines whether the specified path can be normalized because it contains path part delimiters + + The path. + + true if this instance can normalize the specified path; otherwise, false. + + + + + Determines whether the specified name contains path separator chars. + + The name. + The document. + + true if the specified name contains path separator chars; otherwise, false. + + + + + Gets the ID of the master parent instance from a reference defined in an Attribute mirror object in the specified + CAEX document. + + The reference from the Attribute mirror object. + The document. + if set to true, if the reference is an Attribute reference in a mirror. + + The master parent ID + + + Only valid since CAEX Version 3.0 + + + + + Gets the InternalElement ID from a reference defined in an InternalLink object. + + The reference from the InternalLink object. + if set to true [is interface reference]. + + The InternalElement ID + + + Only valid for CAEX Version 2.15 + + + + + Check, if the provided reference is a reference to an attribute of an ExternalInterface, using the ID of an + ExternalInterface. + + The reference. + The CAEX document. + if set to true a valid ID is used to reference an ExternalInterface. + This method only recognizes GUIDs in a reference. + the normalized ID if the reference contains an ID + + + + Builds the reference Path for an Interface-Reference in an InternalLink + + + The system unit class. + + + The interface class. + + + System.String. + + + + + gets the reference path for an Interface-Reference in an InternalLink + + + The interface Parent (SystemUnitClass or InternalElement) + + + The external Interface. + + + System.String. + + + + + Determines whether the specified part of a path is an alias. + + The path part. + + true if the specified path part is an alias; otherwise, false. + + + + + Determines, if the path is an Attribute reference. This method is able to distinguish + if an UUID is combined with a CAEX path + + The document, where the reference is tested. + The attribute reference. + + true, if the provided reference is an attribute reference. + + + This method should only be used for CAEXDocuments based at least on CAEX Version 3.0 + + + + + Determines whether the specified object reference is an alias reference to an ID in the specified document + + The object reference. + The document. + + Optional parameter to specify the type of the reference. If not set, all possible types are + checked + + + true if the specified object reference is an alias reference to an ID; otherwise, false. + + + + + enumeration type specifying possible ID Reference types + + + + + ID reference to an attribute + + + + + ID reference to an interface + + + + + ID reference to an internal element + + + + + all possible references + + + + + Determines, if the path is build using an interface separator. This method is able to distinguish + if an interface separator char is used in an interface name and is escaped + + + This method should only be used for CAEXDocuments based on CAEX Version 2.15 + + The class reference. + true, if the provided class reference is an interface reference. + + + + Determines whether the specified classReference is an alias reference to the provided AutomationML class path. + + The class reference. + The automation ml class path. + The CAEX schema version. + + true if [is object reference with alias] [the specified class + reference]; otherwise, false. + + + + + Determines whether the specified reference is defined with an alias separator. + + The class reference string. + The CAEX schema version. + + true if the reference is a reference with an alias; otherwise, false. + + + + + Determines whether the ID is valid to be used in an attribute mirror reference. + + The identifier string. + The document. + + true if the ID is valid to be used in an attribute mirror reference; otherwise, false. + + + + + Determines whether the specified string can represent an ID + + The identifier string. + + + true if the specified identifier string can be used as an identifier; otherwise, false. + + + This method should only be used for testing strings which are retrieved from an attribute where an ID is a valid + value. + It is not possible to distinguish a Name from an ID, because it exists neither a defined syntax for object names + nor + for object IDs. Only if the UUID format is used to represent an ID the ID format is recognized. + + + + + Normalization of a CAEXPath. A normalized path is freed of all path part delimiters '[' and ']' + in case that there is no path part name containing a path separator character like '/'. + + The path. + if set to true [is normalized]. + A CAEX schema version. + + the normalized path + + + Since CAEX Version 3.0 a '.' and ':' is no longer used as a path separator. Names, containing + such a character will be normalized in Version 3.0 also. + + + + + Returns the Path Part object names of a CAEX Path. If any object name contains + a path separator character the path part is enclosed in square brackets '[', + ']'. The square brackets are removed from the object name in the returned + result (default behaviour). If keepPathPartBrackets is set to true, square + brackets are not removed. + + The full CAEX path. + The CAEX schema version. + + false (default); if true, object names may be enclosed in square + brackets + + + Array of path part names + + + + + Returns the Path Part object names of a CAEX Path with the Separator Char at + the Names End as an array of strings. + + The full CAEX path. + The CAEX schema version. + optional parameter, specifying that only the alias char should be kept. + + Array of path part names. + + + + + Returns the Path Part object names of a CAEX Path with the Separator Char at + the Names End as an array of strings. + + The full CAEX path. + The CAEX schema version. + optional parameter, specifying that only the alias char should be kept. + + Array of path part names. + + + + + Builds the Path Part for any CAEXObject, which may be part of a CAEX Path. The + Path Part is build from the object Names and the Part - Syntax, according to + chapter 2.8 of the CAEX guide: If defined separators are potentially a valid + part of object names, the following syntax shall be + used: all path elements shall be separated by square brackets “[“ name “]”. + This allows for using the original names and the defined separators at + the same time. If the conflict case arises that the described brackets + are part of object names, the brackets in the object name shall be + escaped by means of common XML escape-sequences. If a name contains any + Path part - Separator like '[' or ]' this character will be escaped with '\'. + + + The CAEX element which should be part of the Path. + + + if true, the path part is build with the ID-Attribute + + + The Element Representation in the CAEX Path + + + + + transforms the name of the defined element to a path Part (special characters + are escaped). + + + The element. + + + if set to true use the Elements ID, otherwise use its name. + + + System.String. + + + + + Transforms a name to a path Part (special characters are escaped). + + + Since CAEX Version 3.0 the Path separator characters '.' and ':' are eliminated. + + + The name. + + This method has different implementations according to the used CAEX Version + + The transformed name that can be used as a path part. + + + + + Returns the Path Part object names of a CAEX Path. If any object name contains + a path separator character the path part is enclosed in square brackets '[', + ']'. The square brackets are removed from the object name in the returned + result (default behaviour). If keepPathPartBrackets is set to true, square + brackets are not removed. + + The full CAEX path. + The CAEX schema version. + + false (default); if true, object names may be enclosed in square + brackets + + + IEnumerable<System.String>. + + + + + Returns the Path Part object names of a CAEX Path with the Separator Char at + the Names End + + The full CAEX path. + The CAEX schema version. + optional parameter, specifying that only the alias char should be kept. + + IEnumerable<System.String>. + + + + + Returns the Path part separator for an element, which should be put before that + element in a Path + + + Since CAEX Version 3.0 the PathPartSeparator is element independent and always the . + + + The CAEX-Element. + + + The Path Separation character for the given element + + + + + Returns the Path part separator for an element, which should be put before that + element in a Path + + + The Xml-Node of the CAEX-Element. + + + The Path Separation character for the given element + + + + + Removes the alias from the provided path if the path is + . + + The path. + + The path without the alias part. + + + + + Gets the defined Separator characters according to the provided schema version. + + The schema. + The defined separator characters, which can be used in a CAEX path. + + + + Gets the Attribute Path from a reference defined in an mirror Attribute object in the specified CAEX document. + + The reference from the Attribute object. + The document. + if set to true if the reference is an Attribute reference in a mirror. + + Attribute Path + + + Only valid since CAEX Version 3.0 + + + + + Gets the ExternalInterface Name from a reference defined in an InternalLink object. + + The reference from the InternalLink object. + if set to true [is interface reference]. + + ExternalInterface Name + + + Only valid for CAEX Version 2.15 + + + + + Determines whether the specified part character is separator. + + + The part character. + + + true if the specified part character is separator; otherwise, false. + + + + + Determines whether the specified part character is separator. + + + The part character. + + + true if the specified part character is separator; otherwise, false. + + + + + returns all path - parts build from the element names of the specified + elements in the collection. + + + The elements. + + + List<System.String>. + + + + + returns all path - parts build from the element names of the specified + elements in the collection. + + + The elements. + + + List<System.String>. + + + + + Extension class for collections to be used in LINQ-Expressions + + + + + Wraps this object instance into an IEnumerable<T> + consisting of a single item. + + Type of the object. + The instance that will be wrapped. + An IEnumerable<T> consisting of a single item. + + + + Extension methods to navigate the inheritance relations + + + + + Gets the dictionary of derived classes. The dictionary has to be filled manually + . + + + + + This class can be used to improve the performance of the + + method. If your class library in the AML document is stable, it is possible to add the base classes, which are of + interest, + into the dictionary. After a class is registered, all derived classes of this class are fast accessible. If not + longer + needed or if the class library needs an update, the dictionary entries should be updated or removed. + + + + + Adds the class derivations for the specified class path to the dictionary. + + The document. + The class path. + Element name of the class. + + + + Determines, if the specified class is directly or indirectly (across multiple generations) + a descendant of the class or identical to it, which is uniquely identified with the specified baseClass path. + The base class path or the referenced class path may contain alias identifiers. If alias + identifiers are present, the method tries to load the external referenced document. + + The type of the CAEX class. + The class with reference. + The base class path. + + true if the class is derived, false if it is not. If no value is + returned, some references could not be resolved to get the answer. + + + + + Determines, if the class, specified with the given class path is directly or indirectly (across multiple + generations) + a descendant of the class or identical to it, which is uniquely identified with the specified baseClass path. + The base class path or the referenced class path may contain alias identifiers. If alias + identifiers are present, the method tries to load the externally referenced document. + + The type of the CAEX class. + The document where the classes are searched + The class path of the tested class. + The base class path. + + true if the class is derived, false if it is not. If no value is + returned, some references could not be resolved to get the answer. + + + + + Determines, if the specified class is directly or indirectly (across multiple generations) + a descendant of the specified base class or identical to it. This method can be used, if the classes are + distributed over different CAEX documents, the documents should be referenced by external + references and alias references. + + The type of the CAEX class. + The class with reference. + The base class. + + true if the class is derived, false if it is not. If no value is + returned, some references could not be resolved to get the answer. + + + + + Determines whether the specified attribute defines an inheritance relation from the attribute, + uniquely identifiable by the given attribute type path. The attribute type path may contain an alias. + + The attribute, containing a reference - this is either an Attribute or an AttributeType. + + A class path of a base attribute type, which is tested for a possible inheritance relation to + the specified attribute. + + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified interface class has an inheritance relation from the interface class, + uniquely identifiable by the given interface class path. The interface class path may contain an alias. + + The interface class. + + Class path of a base interface class which is tested for a + inheritance relation to the specified interface class, which is the more specific class + in this relation. + + true if an inheritance relation is resolved; otherwise, false. + + + + Determines whether the specified role reference defines an inheritance relation from the role, + uniquely identifiable by the given role class path. The role class path may contain an alias. + + The role reference - this is a supported role class or a role requirement. + + A class path of a base role, which is tested for a possible inheritance relation to + the specified role reference. + + true if an inheritance relation is resolved; otherwise, false. + + + + Extension methods for an InstanceHierarchy element + + + + + Gets all descendant Objects in the InstanceHierarchy. + InternalElements on all levels are returned. + + The InstanceHierarchy. + + Enumeration of the InternalElement objects. + + + + + Extension methods for the CAEX element "InternalElement" + + + + + Determines whether the specified InternalElement is referenced by other InternalElement + objects called 'Mirrors'. + + The element. + + true if the specified element is a 'Master'-InternalElement; otherwise, false. + + + + + Extension methods for string type CAEX attributes (i.e. GUID, Path, etc.) + + + + + string extension method to check if it as GUID + + The stringGuid. + true if the specified expression is unique identifier; otherwise, false. + + + + String extension method to normalize a GUID. If the string cannot be identified as a GUID the original string is + returned + + The stringGuid. + The normalized GUID if the provided string is a GUID; otherwise the original string is returned. + + + + Determines whether the specified path is an interface path. + + + can only be used in a context with CAEX 2.15 + + The path. + true if [is interface path] [the specified path]; otherwise, false. + + + + Determines whether the specified attribute is an attribute, containing a class reference. + + The name of the attribute. + true if the specified attribute name is a class reference; otherwise, false. + + + + Determines whether the specified path is an interface path containing an ID + + + Since CAEX Version 3.0 IDs cannot be part of a CAEXPath anymore + + The path. + The identifier. + The CAEX Version + true if the specified path is an interface path with identifier; otherwise, false. + + + + Determines whether the specified path is an interface path with this interface name. + + The path. + Name of the interface. + A CAEX schema version. + + true if the specified path is an interface path with this interface name; otherwise, false. + + + Since CAEX Version 3.0 Names cannot be part of an interface path anymore. + + + + + Extension methods for the . + + + + + Inserts a new class instance to the InternalElement collection of the parentInternalElement. If there are existing + instances of the same Type, the Element is inserted after the last Element of that Type. + Before Insertion, the Uniqueness of the Name among the siblings of that Type is checked. + + + The Parent-InternalElement + + + The instance of a class to be inserted at the parentInternalElement. The instance can be + of type InternalElementType or InterfaceClassType + + + True if insertion was successful, otherwise false (name is not unique or wrong type of newInstanceObject) + + + + + Creates a new InternalElement and inserts it after the last InternalElement of the + parent if the elementName is unique among the child's. The ChangeMode is set to the Value 'Create' + + + Parent of the new InternalElement + + + Name of the new InternalElement + + + the new InternalElement or null, if the elementName is not unique + + + + + Returns all SystemUnit Classes which are ancestors of this. This SystemUnit Class is + included in the enumeration as the first Element, The farthest is the last Element in + the enumeration. + + The SystemUnitClass. + + Enumeration of all SystemUnitClass ancestors. + + + + + Inserts the InternalElement object after the defined Predecessor in the InternalElement + collection of the SystemUnitClass. If the Predecessor is null, + the InternalElement object is inserted at the first position of the InternalElement collection. + + The SystemUnitClass object + The internal element. + The internal element predecessor. + + + + Inserts an Attribute object in the Attribute collection of the . + + Any object with an Attribute collection. + The Attribute object to insert + + + + Inserting an ExternalInterface to the ExternalInterface-Collection of the + . + The Element is inserted at the first Element + of any existing ExternalInterfaces if no other position is defined. + + Any object with an ExternalInterface collection. + The ExternalInterface object. + Explicit definition of the position asFirst (true) or asLast (false) + + + + Inserting an InternalElement to the InternalElement-Collection of the + . + + Any object with an InternalElement collection. + The InternalElement to insert. + Insert as first if set to true (default), otherwise append as last + + + + + + + Inserts the specified InternalLink as the first InternalLink if nothing else if explicit defined. + + The SystemUnitClass object + The internal link element. + Inserted at first position if set to true, otherwise appended at last position + + + + Inserts the SupportedRoleClass as the first SupportedRoleClass if nothing else if explicit defined. + + The SystemUnitClass object + The supported role class element. + Inserted at first position if set to true, otherwise appended at last position + + + + Adding a new ExternalInterface instance to the ExternalInterface-Collection of the + . + The New ExternalInterface is inserted as the + first ExternalInterface of any existing Interfaces if nothing else is explicit defined. + + Any object with an ExternalInterface collection. + The name of the new ExternalInterface + If set to true, the interface is insert at first, otherwise at last Interface. + The new ExternalInterface + + + + Adding a new ExternalInterface instance to the ExternalInterface-Collection of the + referencing a specific InterfaceClass. + The New ExternalInterface is inserted as the + first ExternalInterface of any existing Interfaces if nothing else is explicit defined. + The provided is set as the RefBaseClassPath value. + + Any object with an ExternalInterface collection. + The name of the new ExternalInterface + The CAEX Path of the InterfaceClass which should be referenced. + If set to true, the interface is insert at first, otherwise at last Interface. + The new ExternalInterface + + + + Adding a new InternalElement instance to the InternalElement-Collection of the + . + The New InternalElement is inserted as the + first InternalElement of any existing InternalElement objects if nothing else is explicit defined. + + Any object with an InternalElement collection. + Name of the InternalElement + If set to true, the InternalElement is insert at first, otherwise at last. + The new InternalElement + + + + Inserts a new InternalLink as the first InternalLink if nothing else if explicit defined. + + The SystemUnitClass object + The name of the InternalLink + if true insert at first InternalLink, otherwise at last InternalLink + The new InternalLink element + + + + Inserts a new SupportedRoleClass as the first SupportedRoleClass if nothing else if explicit defined. + + The SystemUnitClass object + The path to the role class that is referenced + Inserted at first position if set to true, otherwise appended at last position + The new SupportedRoleClass + + + + This enum defines possible changes of a CAEX object. The changes are notified in a or + a . + + + + + empty mode + + + + + A CAEX object has been added. + + + + + A CAEX object will be deleted. + + + + + A CAEX object has got a changed ID attribute. + + + + + A CAEX object will get a changed ID. + + + + + A CAEX object has got a changed ID reference. + + + + + A CAEX object will get a changed ID reference. + + + + + A CAEX object has been renamed. + + + + + A CAEX object will be renamed. + + + + + A CAEX object has got a changed name reference. + + + + + A CAEX object will get a changed name reference. + + + + + A CAEX object has got a changed path reference. + + + + + A CAEX object will get a changed path reference. + + + + + A CAEX object has been deleted, the element in the change notification is the former parent of the deleted element. + . + + + + + A CAEX object's value has been changed. + + + + + A CAEX object's value will change. + + + + + A CAEX object is moving to a new position in its collection. + + + + + A CAEX object has been moved to a new position in its collection. + + + + + Combination of all defined changed mode events + + + + + Combination of all defined modes for changing events + + + + + Event arguments for a and + a + + + + + Constructs arguments for an element changing event + + The CAEX element. + The CAEX parent. + The document. + The change mode. + + + + Constructs arguments for an element's attribute changing event + + The CAEX element. + The CAEX parent. + The document. + The attribute. + Name of the attribute. + The old value. + The new value. + The change mode. + + + + The changed CAEXAttribute + + + + + Gets the name of the CAEX attribute. + + + + + Gets the CAEX document. + + + + + The changed CAEXElement + + + + + The changed CAEXElement's parent. This Property should be used, to detect a former parent of a CAEXElement, + when the CAEXElement has been deleted and has no associated parent. + + + + + The change mode + + + + + The new value + + + + + The old value + + + + + Initializes a new instance of the class. + + The moved element. + The sibling. + if set to true [after sibling]. + + + + Moves the element before the specified sibling. + + the moved element + the new sibling of the element + if set to true the element is moved after the sibling. + + + + Command Execution method + + + + + Command reverse execution method + + + + + The Aml.Engine.CAEX.Commands Namespace contains different commands that are provided to + add, delete or change elements in a CAEX document. The classes support the implementation + of Undo Redo using the command pattern with methods for command execution and reverse execution. + If an Undo Redo service is registered, it will be located by the commands and used to push + commands on the Undo Redo stack. + + + + + + Command to change the content nodes of an XElement which enables undo and redo of the changes + + + + + Create a new instance of the command + + The Element, which value should change + The new content element + + + + Change the value of an element using a command, if the UndoRedoService is registered. + If the service is null, the changes are made without using a command. + + + + + + + The changed element + + + + + The new value which is set when the command is executed + + + + + The old value of the element before the change was made + + + + + Command Execution Method (enables redo) + + + + + Command reverse execution Method (enables undo) + + + + + This Class defines a WeakEventSource, used to define Events, raised in the AML Engine. + + The type of the event arguments. + + + + Initializes a new instance of the class. + + + + + Raises an event, defined with this instance + + The sender. + The event argument instance containing the event data. + + + + Subscribes the specified handler with this event source. + + The handler. + + + + Unsubscribes the specified handler with this event source. + + The handler. + + + + This is the abstract base class for all CAEX commands, applicable to CAEX elements + + + + + This event is raised after a CAEXElement has been changed. + + + + + This event is raised before a CAEXElement will be changed. + + + + + Gets the CAEX document processing the command + + + + + Gets the display name of the command + + + + + Gets the XML document processing the command + + + + + Raises the for the provided document. + + The document. + The instance containing the event data. + + + + Raises the for the provided document. + + The document. + The instance containing the event data. + + + + Command Execution method + + + + + Command reverse execution method + + + + + Command to add a new Element to an existing sibling which enables undo and redo of the changes + + + + + Create a new instance of the command + + The sibling of the element + The element + Determines the position + + + + Adds a Sibling to the specified sibling using a command. + + the sibling + the added element + if true element is added after the sibling; otherwise before + + + + + The added Element + + + + + Command execution method (enables redo) + + + + + Command reverse execution Method (enables undo) + + + + + Command to insert a new Element to an existing parent which enables undo and redo of the changes + + + + + Create a new instance of the command + + The designated owner of the element + The element + + + + Inserts the Element using a command, if the UndoRedoService is registered. + If no service is registered, the changes are made without using a command. + + + + + + + The New added Element + + + + + The Owner of the Element + + + + + Command execution method (enables redo) + + + + + Command reverse execution Method (enables undo) + + + + + Command to insert a new Element to an existing parent which enables undo and redo of the changes + + + + + Create a new instance of the command + + The designated owner of the new element + The XName of the new element + + + + Inserts a new Element using a command, if the UndoRedoService is registered. + If the service is null, the changes are made without using a command. + + + + + + + + The New added Element + + + + + The XName of the Element + + + + + The Owner of the Element + + + + + Command execution method (enables redo) + + + + + Command reverse execution Method (enables undo) + + + + + Command to remove an Element which enables undo and redo of the changes + + + + + Create a new instance of the command + + The element + + + + Removes the Element using a command, if the UndoRedoService is registered. + If the service is null, the changes are made without using a command. + + the removed element + + + + + The New added Element + + + + + The Owner of the Element + + + + + Command execution method (enables redo) + + + + + Command reverse execution Method (enables undo) + + + + + Command to add a new Element to an existing parent which enables undo and redo of the changes + + + + + Create a new instance of the command + + The designated owner of the new element or sibling + The XName of the new element + The content for the new element + If set to true the provided element is the sibling, otherwise the parent + + + + Command execution method (enables redo) + + + + + Adds a new Element using a command. + + The designated owner or the sibling of the new element + The XName of the new element + The content for the new element + If set to true the provided element is the sibling, otherwise the parent + + + + + The content of the Element + + + + + The XName of the Element + + + + + The Owner of the Element + + + + + Command to change the value of an Attribute of an XElement which enables undo and redo of the changes + + + + + Create a new instance of the command + + The Element, which owns the attribute. + The name of the attribute. + The new value. + + + + Change the value of an attribute using a command, if the UndoRedoService is registered. + If the service is null, the changes are made without using a command. + + The Element + Name of the attribute + Attribute value + + + + The Name of the Attribute + + + + + The New value for the attribute + + + + + The Old Value of the attribute or null if no attribute existed before + + + + + The Owner of the attribute + + + + + Command Execution Method (enables redo) + + + + + Command reverse execution Method (enables undo) + + + + + Command to change the value of an XElement which enables undo and redo of the changes + + + + + Create a new instance of the command + + The Element, which value should change + The new value + + + + Change the value of an element using a command, if the UndoRedoService is registered. + If the service is null, the changes are made without using a command. + + + + + + + The changed element + + + + + The new value which is set when the command is executed + + + + + The old value of the element before the change was made + + + + + Command Execution Method (enables redo) + + + + + Command reverse execution Method (enables undo) + + + + + Interface for CAEXCommands. If Commands implement this interface, they can use + a to enable undo and redo. + + + + + Gets the CAEX document. + + + + + Gets the display name. + + + + + Command Execution Method (enables redo) + + + + + Command reverse execution Method (enables undo) + + + + + This class is a wrapper for the CAEX element 'Copyright'. + + + + + Initializes a new instance of the class. + + The XML node. + + + + This class is a wrapper for the CAEX element 'Description'. + + + + + Initializes a new instance of the class. + + The XML node. + + + + This Interface is implemented by CAEX elements which contain Value properties. With the specified properties + and methods it is possible to convert attribute values according to an existing attribute data type into a type + based object. + The type conversion is supported by a new class . + + + + + + Gets all the CAEXValue objects for the defined value attributes of this instance. + + + + + Gets and sets the attribute value for the named attribute using the decoding and encoding methods of + . + + + + + + Gets the Attribute datatype which is valid for all attribute values of this element + + + + + Gets the attribute, which specifies the attribute data type for the attribute values. + + + + + Gets the CAEXValue for the named value attribute which + allows type-coded access to the value property using appropriate encoding and decoding methods. + + + + + + Interface class implemented by which comprises a basic set of attributes and header + information which exist for all CAEX elements. + + + + + + Gets the collection of AdditionalInformation values contained in this instance. + + + + + Gets and sets the change mode for a CAEX element (Optional in CAEX). + + + + + Gets and sets the Copyright for this object. + + + For CAEX 2.15 documents the content of the Copyright object is transformed to a string. + + + + + Gets the wrapper for the Copyright element. + + + + + Gets and sets the Description for this object. + + + For CAEX 2.15 documents the content of the Description object is transformed to a string. + + + + + Gets the wrapper for the Description element. + + + + + Gets the collection of Revision objects contained in this instance. + + + + + Gets the collection of SourceObjectInformation objects contained in this instance. + + + + + Gets and sets the Version for this object. + + + For CAEX 2.15 documents the content of the Version object is transformed to a string. + + + + + Gets the wrapper for the Version element. + + + + + Gets the CAEXSequence owned by this instance, which contains the specified CAEX object. + For example, if the specified object is a revision object, + the sequence of the revision objects is returned. + + The CAEX object, contained in a sequence, owned by this CAEX object. + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + Gets the CAEXSequence for elements of type T, which is owned by this CAEX object. + + + The CAEX container + + + + Inserts the specified CAEX object in it's associated sequence. The CAEXBasicObject + defines the and sequences. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the CAEX object + has been inserted into this sequence. + + + + + Inserts the specified CAEX object in it's associated sequence at the defined position. The CAEXBasicObject + defines the and sequences. + + The position + The CAEX object. + + true, if a sequence could be identified and the CAEX object + has been inserted into this sequence. + + + + + Creates a new Revision object and inserts it to the collection of Revision objects + either at the beginning or at the end of the sequence, according to the specified optional value. The Revision + object is initialized with the provided values. + + The date. + The author. + if set to true the created Revision is prepended, otherwise appended. + A Revision object. + + + + This interface class is implemented by all CAEXObject classes and defines accessors for the attributes of a CAEX + object. + + + + + Gets or sets the identifier. + + + + + Gets or sets the name. + + + + + Gets the CAEX path for this object. A path can be used to uniquely reference an object, + for example in inheritances and instances. The path syntax for an object is defined + differently in CAEX 2.15 and CAEX 3.0. The engine uses the to generate + the CAEX path of an object according to the documents CAEX version. + + + Paths require the definition of separators between different path elements. CAEX 2.15 distinguishes + between 4 separator types: + Alias separator, object separator, interface separator and attribute separator. + In CAEX 3.0 only the separator types Alias separator and object separator are used. + + Please note that this method returns a different result than the + method, which always returns + the path including the object names of all ancestor hierarchy levels. + + + + The CAEX path. + + + + + This interface defines a sequence of CAEX elements. + + + + + Gets a wrapper for the first CAEX element in this sequence, if the sequence contains no elements null is + returned. + + + + + Gets a wrapper for the last CAEX element in this sequence, if the sequence contains no elements null is + returned. + + + + + Gets the first CAEX object with a specific attribute value from the sequence of elements + + Pair of attribute name and attribute value + the first CAEX object, which matches this condition. + + + + Gets a wrapper for the CAEX element in this sequence at the given position + + index position of the element + The created CAEX wrapper. + + + + Creates a new CAEX object and appends it to already existing elements in this sequence. + + the created CAEX object + raised, when this parent child relation violates the CAEX schema. + + + + Creates a new CAEX object and appends it to already existing elements. The content of the + new element can be optionally defined using an array of tuples defining attribute names and their values. + + The attribute value tuples. + + the created CAEX object. + + + This sample shows how to apply this method: + + var doc = CAEXDocument.New(); + var at = doc.CAEXFile.AttributeTypeLib.Append (new Tuple <string,object>[] { Tuple.Create<string,object>("Name", "ALIB") }); + + + + + + Gets the CAEX object at the specified index. + + The index. + the CAEX object from the given index, or null. + + + + Gets the enumerator for this sequence. + + The enumerator + + + + Gets the Index of the specified CAEX object in this sequence of elements. + + the CAEX object + the Index of the specified CAEX object. + + + + Inserts the specified CAEX object into this sequence. If no position is specified the element is appended. + If 'asFirst' is set to true, the element is prepended to already existing ones. + + the CAEX object + + optional parameter, if set to true (default) the object is prepended to already existing ones, + otherwise it is appended. + + + + + Inserts the specified CAEX object into this sequence at the defined index. + + The Position of the element + The CAEX object + + + + Moves the CAEX object at the specified index to a new location in the collection. + + The zero-based index specifying the location of the CAEX object to be moved. + The zero-based index specifying the new location of the CAEX object. + + + + Creates a new CAEX object and prepends it to already existing elements. + + The created CAEX object. + + + + Creates a new CAEX object and prepends it to already existing elements. The content of the + new element can be defined using an array of tuples defining attribute names and their values. + + The attribute value tuples. + The created CAEX object. + + + + Removes the provided CAEX object from this sequence. + + The CAEX object. + + + + This interface is defined for CAEXObjects, which may contain different types of CAEX objects like + the . The defined methods allow the selection of the associated + container for a specific type and the insertion of a CAEX object to its associated container. + + + + + + Inserts the specified CAEX object in its associated container. + + The CAEX object. + if set to true insert it at the first position. + true, if inserted; otherwise false. + + + + Since CAEX 3.0 a new definition has been added to model Interface mappings using the ID of the mapped ExternalInterface. This Interface has been designed, to + support InterfaceMapping access to the CAEX documents, defined using prior schema versions. + + + + + + Gets and sets the mapped ExternalInterface of the role reference + + + + + Gets and sets the mapped ExternalInterface of the SystemUnitClass + + + + + This interface is implemented by the CAEX elements, which are possible children of the . + + + + + + Gets the mapping object which contains this Mapping Element. + + + + + Interface class, implemented by any CAEX object, which can be mirrored + + + + + + Creates a mirror. + + + + + Gets a value indicating whether this instance is a master. + + + + + Gets a value indicating whether this instance is mirror. + + + + + Gets the master. + + + + + Gets the master identifier. + + + + + This interface class is used to define generic methods for CAEX objects which + can have multiple occurrences below its parent element. The methods defined in + this interface class affect the relation to the sibling elements of a CAEX object + with the same type. + + + + + + + Inserts the provided CAEX object as a new sibling after this CAEX object, if both are of the same type. + + The CAEX object to be inserted. + + + + Inserts the provided CAEX object as a new sibling before this CAEX object, if both are of the same type. + + The CAEX object to be inserted + + + + This Class is a wrapper for the CAEX element 'Attribute' which defines base structures for attribute definitions. + Attributes can be associated to each object which implements the interface. + An associated collection of Attributes is wrapped in an . + + + Since CAEX Version 3.0 an Attribute element can be instantiated from an AttributeType element + . + The Attribute element and the AttributeType element share the same base class . + + + + + + + Initializes a new instance of the class. + + An 'AttributeType' XML node + + + + The constructor function for the . + + + + + Gets and sets the AttributeType of an Attribute object, defining a new instance to class relation, using the CAEX + attribute + . + + + + + + Gets a value indicating whether this instance is a master attribute referenced by mirror attributes. + + + + + + Gets a value indicating whether this instance is a mirror of another Attribute object. + + + + + Gets the master Attribute object if this is a mirror and the master can be found in this CAEX document. + + + + + + Gets the owner of the Attribute Tree. This is the first ancestor, which is not an AttributeType object. + + + The TreeOwner + + + + + + Gets the master, if this is a mirror attribute + + + + + + Gets the identifier of the master Attribute if this is a Mirror. The identifier contains the ID of the attribute + owner followed by the Attribute path. + + + + + Gets the ID of the master attributes parent instance, if this is a mirror Attribute object. If it is not a mirror, + null is returned. + + + + + Creates an AttriuteType from this Attribute instance. + + + + + + Creates a new mirror element from this AttributeType + + + + + returns the attribute path, which is equal to the attribute name for any attribute, which is not a nested attribute + or a concatenation + of attribute names separated by the attribute path delimiter for nested attributes. + + + + + + Replaces the content of this Attribute object with the specified attribute type. + This Attribute object is changed to an instance of the provided Attribute Type. + + Type of the attribute. + + + + Equality comparer for values of Attributes of XML-Elements + + + + + + Creates a new instance of an AttributeValueComparer for the provided Attribute name + + The name of the attribute. + + + + Compares the values of the provided attributes + + The first object which should be compared. + The second object which should be compared. + + true, if values are equal + + + + + Returns a hash code for this instance. + + The object. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + This class is a generic base class for CAEX elements with simple values. + This class is used by the CAEX adapter only. + + The type of the element data type. + + + + + Initializes a new instance of the class. + + The XML node. + + + + Optionally describes the change state of a CAEX object. If used, the ChangeMode shall have the following value + range: + state, create, delete and change. This information should be used for further change management applications. + + + + + Class CAEXTypeDictionary is a Dictionary of all CAEX - WrapperClass Types, defined in Aml.Engine.CAEX. + The TypeName is used as a key. This class is a singleton. + + + + + + The singleton instance of the CAEXType Dictionary + + + + + A dictionary, containing creation methods for CAEX elements, the type name is used as a dictionary key + + + + + Initialization of the Type Dictionary + + + + + Prevents a default instance of the class from being created. + + + + + Gets or sets the data type associated with the specified key. + + + The key. The caexTagName is concatenated + with the "Type" extension, to match a Type name of a CAEX wrapper class. + + Type. + + + + The Key for Dictionary access + + Name of the CAEX tag. + System.String. + + + + Determines whether this dictionary's key collection contains the specified CAEX Tag name as a key. + + The CAEX Tag name, which is used to construct the dictionary key. + true if the dictionary contains an element with the specified key; otherwise, false. + + + + Tries to get the constructor function which can be used to create a CAEX wrapper + for an CAEX element with the provided element name. + + The local name of the CAEX element. + The function to create the CAEX wrapper. + if a function exists. + + + + Tries to get the value. + + Name of the CAEX tag. + The type. + true if type is registered, false otherwise. + + + + This class is a wrapper for the CAEX element 'AttributeType' which defines base structures for attribute type + definitions. + The AttributeType allows the creation of AttributeType trees. AttributeTypes are organized in AttributeType + libraries, + which can be processed with the . This class supports direct enumeration of the + AttributeType's + children in the AttributeType tree. + + + + + + + + This class was introduced with CAEX Version 3.0 and can only be used with CAEX documents, based on Version + 3.0. + + + + + Creates a wrapper for the specified XElement which is an AttributeType + + An AttributeType XML node. + + + + The constructor function for the . + + + + + Gets and set the AttributeDataType. If the AttributeDataType is not defined + for this AttributeType but a exists, the + AttributeDataType of the BaseClass is returned. If this optional attribute is not defined, + the data type is assumed to be "xs:string", according to CAEX (DIN EN 62424:2008-08) + + + + + + Gets a collection of the subordinate AttributeTypes (the direct children) in the AttributeType tree of this + AttributeType. + + + + + Gets and sets the base class for this AttributeType. Setting a base class creates a class to class inheritance + relation. Base classes are defined using the CAEX-Attribute + which is set to the CAEX-path of the base class. According to CAEX, a class shall not inherit from itself or + from a derivative of itself, therefore any cyclic reference is denied. + + + + + Gets and set the DefaultValue. If the DefaultValue is not defined + for this AttributeType but a exists, the DefaultValue + of the BaseClass is returned. + + + + + + Gets all attributes, including the inherited attributes of the base classes in the inheritance tree. + + + + + + Gets all constraints, including the inherited constraints of the base classes in the inheritance tree. + + + + + + Gets and sets the RefAttributeType CAEX attribute of the Attribute object. + This property is used to create class to class relations between AttributeType objects (classes). + According to CAEX, a class shall not inherit from itself or + from a derivative of itself, therefore any cyclic reference is denied. + + + + + + + Gets the reference base class path. + + + The reference base class path. + + + + + Gets the name (not the full path) of the referenced base class. + + The name of the referenced class. + + + + Gets and set the Unit. If the Unit is not defined + for this AttributeType but a exists, + the Unit of the BaseClass is returned. + + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + + + + Creates a class instance for this AttributeType object. All inherited base classes are resolved in the resulting + Attribute. + The Attribute collection of the new Attribute instance contains all inherited attributes from base classes."/> + + The created Attribute object. + + + + + Creates a class instance for this AttributeType object. All inherited base classes are resolved in the resulting + Attribute. + + A CAEXWrapper of the created Attribute object. + + + + + Gets the Enumerator for the enumeration of the field. + + + An enumerator that can be used to iterate through the collection. + + + + + Gets the Enumerator for the enumeration of the field. + + + An -object, that can be used to iterate through the collection.. + + + + + Gets the reference (inheritance) hierarchy. The reference hierarchy includes this instance and the reference + hierarchy of + an associated defining a class to class relation. + + Collection, containing this instance and the reference hierarchy of a base class. + + + + Gets the reference (inheritance) hierarchy. The reference hierarchy includes this instance and the reference + hierarchy of + an associated defining a class to class relation. + + Type of the CAEX class. + + Queue, containing this instance at the first element, followed by the reference hierarchy of a base class. + + + + + Inserts the specified CAEX object in it's associated sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the given index. + + + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This class is a wrapper for the CAEX element 'AttributeNameMapping' which defines mappings + between attributes of an AML object and any associated role class. + + + + + + The constructor + + + + + Initializes the class. + + + + + Creates a wrapper for the specified XElement which is an AttributeNameMapping Element + + An AttributeNameMapping XML node. + + + + Gets the collection of possible mapping identifiers for this AttributeNameMappingType for elements of + the mapped SystemUnitClass. The Collection contains all attributes (including inherited attributes) of the + SystemUnitClass and also the attributes of the ExternalInterfaces (including inherited external interfaces) of + the SystemUnitClass. The Attribute Identifiers are the unique CAEXPath's of the attributes relative to the + SystemUnitClass. + + + The possible mapping identifiers to map Attributes of the SystemUnitClass and its ExternalInterface objects. + + + + + Gets the collection of possible mapping identifiers for this AttributeNameMappingType for elements of + the mapped RoleClass. The Collection contains all attributes (including inherited attributes) of the + RoleClass and also the attributes of the ExternalInterfaces (including inherited external interfaces) of + the RoleClass. The Attribute Identifiers are the unique CAEXPath's of the attributes relative to the + RoleClass. + + + The MultipleRole Concept in AutomationML 2.0 based on CAEX 2.15 allows the definition of Mappings to SupportedRoleClass + objects. These Elements are only included in this collection, if a qualified element has been already assigned to + the RoleRequirements object. To get the possible qualified RoleClass Attributes, which are not already + assigned to the RoleRequirements object, the method + can be used. + + If an instance supports multiple roles and the requirements to the different roles shall be stored at the instance, + this shall be done using the CAEX element "RoleRequirements" whereas the corresponding attributes or interfaces are + directly assigned including the role name, a separator string "." and the attribute or interface name. + + + + The possible mapping identifiers to map Attributes of the RoleClass and its ExternalInterface objects. + + + + + Gets the RoleClass element which can be identified with the or sets + the retrieved from the provided value. + + + If the identifies a RoleRequirements Attribute and a RoleClass Attribute + as well, the RoleClass Attribute is returned by the Getter. + + + The role attribute. + + + + + Gets and Sets the 'RoleAttributeName' for this instance + + + + + Gets or sets the system unit attribute which is defined using the CAEX attribute + . + + + The system unit attribute. + + + + + Gets and sets the identifier for the mapped RoleClass element. + + + The role class element identifier. + + + + + Gets or sets the identifier for the mapped SystemUnitClass element. + + + The system unit class element identifier. + + + + + Gets and Sets the 'SystemUnitAttributeName' for this instance + + + + + This Class is the generic base class for 'Attribute' and 'AttributeType' elements and defines base structures for + Attribute- + and AttributeType definitions. + + + + + + + + + Initializes a new instance of the class. + + An 'AttributeType' XML node. + + + + Gets the type-decoded value and sets the type-encoded value for the value attribute with the defined name. The + allowed Names as and + . + + + + + + + The XSD data types which are supported. + + + + + Gets a collection of Attributes contained in this instance. + + + + + Gets the attributes and all nested attributes. + + + + + Gets and sets the AttributeDataType attribute of this Attribute object. + If the referenced attribute type does not base on an XML standard base type, the AttributeDataType may remain empty + or not present. + + + + + Gets the Attribute datatype which is valid for values of all of this element. + For this class, it is the instance itself. + + + + + Gets the collection of AttributeValueRequirement objects contained in this instance. + + + + + Gets and sets the DefaultValue element of this Attribute object. Use the + property , to get or set the type encoded + default value according to the Attribute Data Type. + + + + + Gets and sets the RefAttributeType CAEX attribute of the Attribute object. + This property is used to create instance to class relations between Attributes (instances) + and AttributeType objects (classes). + + + + + + + Gets the collection of RefSemantic objects contained in this instance + + + + + Gets and sets the Unit attribute for this Attribute object. + + + + + Gets and sets the Value for this Attribute object. + The correct XML-String representation for the defined + has to be ensured by the caller. + + + It is possible to use the Indexer to set a type based value which + is correctly encoded/decoded according to the specified or use the + property , which provides the same value access. + + + This sample shows how to use this property: + + // setting a value if the AttributeDataType is defined as 'xs:Duration'. + TimeSpan processingTime = new TimeSpan(days: 0, hours: 0, minutes: 0, seconds: 5); + + AttributeType at = ReadMyAttribute (); + at["Value"] = processingTime; + at["DefaultValue"] = new TimeSpan(0); + + // checking the appropriate type setting: + if (at.ValueAttributes[0].TypeCodeOfAttribute == System.Xml.Schema.XmlTypeCode.Duration) + { + } + + + + + + Gets all the CAEXValue objects for the defined value attributes of this instance. Recognized value attributes are + and . + + + + + Gets and set the encoded/decoded attribute value according to the defined AttributeDataType. + + + + + Gets and set the encoded/decoded default attribute value according to the defined AttributeDataType. + + + + + Gets the xmlType type for the specified CLR type. The Mapping is done + according to + Mapping XML Data Types to CLR Types. + This reverse mapping is not unambiguous. If more than one mapping is possible, the most common used description is + generated. + If No mapping is defined the 'xs:string' is used. + + + You can use the encoding and decoding methods of the object, to receive a type conform + result for the + attribute value elements. + + .Net data Type. + + the name of the XML type + + clrType + + + + Conversion to get access to specific AutomationML defined Attributes + + The 'AttributeType' CAEX object. + + The AttributeType object, converted to an type, which provides access to + specific AML defined attributes. + + attributeType + + + + Gets the CLR type for the specified xmlType. The Mapping is done + according to + Mapping XML Data Types to CLR Types. + + The name of the XML type + + a .NET data Type + + xmlType + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + + + + Gets the for the value attribute with the defined attribute name. The allowed Names as + and + . + + + + + + + Parse the Attribute Value string as dateTime. If the string can not be parsed, a format exception is returned. + This method uses the XmlConvert + method. + + The date time option. + DateTime. + + + + + Parse the Attribute Value string as double. If the string can not be parsed, a format exception is returned. + This method uses the XmlConvert method and a fall back conversion, if the first + conversion + fails. + + Double. + + + + + Inserts the specified CAEX object in it's associated sequence. The AttributeType + defines additional sequences for , + + and . + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the defined position. The AttributeType + defines additional sequences for , + + and . + + the position + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the provided CAEX object as a new sibling after this CAEX object. + + The CAEX object to be inserted. + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Inserts the provided CAEX object as a new sibling before this CAEX object. + + The CAEX object to be inserted + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Sets the specified dateTime value as the attribute value. The AttributeDataType is set to xs:dateTime + + The value. + The serialization mode, use UTC + + + + Sets the specified double value as the attribute value. The AttributeDataType is set to xs:double + + The value. + + + + Tries to parse the Attribute Value string as dateTime. + This method uses the XmlConvert + method. + + The DateTime value. + The date time option. + true if success, false otherwise. + + + + Tries to parse the Attribute Value string as double. + This method uses the XmlConvert method and a fall back conversion, if the first + conversion + fails. + + The double value. + true if success, false otherwise. + + + + This Class is a wrapper for the CAEX element 'AttributeTypeLib' which is a container + for a hierarchy of AttributeType elements. CAEX supports multiple AttributeType libraries + associated to a CAEXFile (). + + + + This class was introduced with CAEX Version 3.0 and can only be used with CAEX documents, based on Version + 3.0. + + + + + Gets the collection of AttributeType objects contained in this AttributeTypeLib element. + + + + + Initializes the class. + + + + + Initializes a new instance of the class. + + An 'AttributeTypeLib' XML node + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Inserts the specified CAEX object in it's associated sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the given index. + + The insertion index + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This class is a wrapper for the CAEX-Element 'AttributeValueRequirement' which allows the specification + of one value constraint for an attribute. There is a choice of different types defined for the type of the + condition. + + + + + + + + + + + + + + + + + The constructor + + + + + Initializes the class. + + + + + Initializes a new instance of the class. + + A 'Constraint' XML node. + + + + Gets and sets the name of the attribute value constraint. + + + + + Gets the 'NominalScaledType' constraint. + + + + + Gets the 'OrdinalScaledType' constraint. + + + + + Gets the 'UnknownType' constraint. + + + + + Inserts the specified CAEX object in it's associated sequence. The AttributeValueRequirementType + defines the , the and the + as possible child elements. Only one of these types + is allowed as a child. + + The CAEX object. + ignored for this type. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the defined position. The + AttributeValueRequirementType + defines the , the and the + as possible child elements. Only one of these types + is allowed as a child. + + The position. + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + A new 'NominalScaledType' constraint is defined if no constraint has been defined before. + + The new 'NominalScaledType' constraint. + + + + A new 'OrdinalScaledType' constraint is added if no constraint has been defined before. + + + The new 'OrdinalScaledType' constraint. + + + + + A new 'UnknownType' constraint is added if no constraint has been defined before. + + + The new 'UnknownType' constraint. + + + + + This class implements a specific enumeration type which wraps an XElement with a CAEXWrapper + during enumeration. The enumerator for this class is + + Type of the CAEX wrapper + + + + + Creates a new instance for a CAEXEnumerable with an associated CAEXSequence. + + + The CAEXSequence containing the Xml-Element collection. + If null, the specified Xml-Element collection is not associated with a + CAEXSequence. + + + The Xml-Element collection. If not associated to a CAEXSequence the + specified sequence should be set to null. + + + + + Creates a new instance for the CAEX enumerable without an associated CAEXSequence. + + The Xml-Element collection. + + + + Gets the CAEXSequenceEnumerator + + + An enumerator that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + A object that can be used to iterate through the collection. + + + + + Base class for all CAEX objects which may define a class to class relation referencing some base class. + + Type parameter, specifying the CAEX class type. + + + + + + Initializes a new instance of the class. + + Any CAEX class XML node. + Name of the CAEX attribute, used to store a class to class reference. + + + + Gets the Name of the attribute of the wrapped Xml-Element, which is used to define the reference to the base class. + + + + + Inserts the provided CAEX object as a new sibling after this CAEX object. + + The CAEX object to be inserted. + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Inserts the provided CAEX object as a new sibling before this CAEX object. + + The CAEX object to be inserted + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + This class implements the CAEX sequence enumerator which creates a CAEXWrapper for each enumerated + XML-Element. + + + + + + + Initializes a new instance of the class. + + The CAEXSequence, defining the sequence of XML elements. + The collection of XML elements of the CAEX sequence. + + + + Gets the item in the collection at the current position of the enumerator. + + + + + Gets the item in the collection at the current position of the enumerator. + + + + + Dispose this instance. + + + + + Sets the enumerator to the next item in the collection. + + + , if the enumerator was successfully set to the next element, + , if the enumerator has exceeded the end of the collection. + + + + + Resets the enumerator. + + + + + User defined exception that is thrown when an error occurs during instantiation of a class. + + + + + + Initializes a new instance of the class with serialized data. + + object containing the serialize data. + context information about source or target. + + + + Standard constructor + + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + The message. + The inner Message. + + + + This interface class is implemented by all CAEX - object classes and defines accessors to the wrapped XML node. + + + + + Gets the CAEXParent of this CAEX object + + + + + Gets the first child of this CAEX object with the defined CAEX tag name. + + The CAEX tag name of the child. + The child, if it exists; otherwise null. + + + + Gets all children of this CAEX object with the defined CAEX tag name. + + The CAEX tag name of the child. + The children, if existing; otherwise Enumerable.Empty. + + + + Removes this object + + + + + Interface class that defines methods and properties that apply to all classes which can be part of a class to class + relation. + A class to class relation is also referred to as an inheritance relation. + + + + + + + Gets the reference (inheritance relations) hierarchy including the actual class as a queue. + + The type of the CAEX class. + A Queue of the base classes including the actual class. + + + + Gets the reference base class path. + + + The reference base class path. + + + + + Gets the name (not the full path) of the referenced base class. + + The name of the referenced class. + + + + This interface class is derived from and defines a generic + interface using a type parameter to specify the type of + the class to class relation. A class to class relation is also referred to as an inheritance relation. + + Type of the class with a base class relation. + + + + + Gets and sets the base class to define a class to class relation. + + + The base class. + + + + + Gets the reference hierarchy for all class to class relations, starting with this class. + + A collection, containing this class and the reference hierarchy of the base class, if existing. + + + + Interface IInstantiable is implemented by all CAEX classes. + + + + + + Creates the class instance. + + The CAEX object. + + + + Generic interface IInstantiable defining the instantiation method and the instance type. + + The type of the created instance. + + + + + Creates the class instance. + + an instance of this class, which is of the defined type. + + + + This class is a wrapper for the CAEXElement 'InterfaceNameMapping' which is used to map an Interface of a referenced role + to an interface of a SystemUnitClass which contains the role reference. The Name of the interfaces is used for identification. + + + + + + This class is defined for CAEX 2.15 only and is replaced since CAEX 3.0 with the . + + + + + Initializes a new instance of the class. + + An 'InterfaceNameMapping' XML node. + + + + Gets the collection of possible mapping identifiers for this InterfaceNameMappingType for elements of + the mapped SystemUnitClass. The Collection contains all ExternalInterfaces (including inherited) of the + SystemUnitClass. The ExternalInterface Name is used as the Mapping identifier. + + + The possible mapping identifiers to map ExternalInterfaces of the SystemUnitClass. + + + + + Gets the collection of possible mapping identifiers for this InterfaceNameMappingType for elements of + the mapped RoleClass. The Collection contains all ExternalInterfaces (including inherited) of the + RoleClass. The ExternalInterface Name is used as the Mapping identifier. + + + The MultipleRole Concept in AutomationML 2.0 based on CAEX 2.15 allows the definition of Mappings to SupportedRoleClass + objects. These Elements are only included in this collection, if a qualified element has been already assigned to + the RoleRequirements object. To get the possible qualified RoleClass ExternalInterfaces, which are not already + assigned to the RoleRequirements object, the method + can be used. + + If an instance supports multiple roles and the requirements to the different roles shall be stored at the instance, + this shall be done using the CAEX element "RoleRequirements" whereas the corresponding attributes or interfaces are + directly assigned including the role name, a separator string "." and the attribute or interface name. + + + + The possible mapping identifiers to map ExternalInterfaces of the RoleClass. + + + + + Gets and sets the mapped ExternalInterface of the role reference + + + + + Gets and sets the Name of the mapped ExternalInterface of the role reference + + + + + Gets and sets the mapped ExternalInterface of the SystemUnitClass + + + + + Gets and sets the identifier for the mapped RoleClass element. + + + The role class element identifier. + + + + + Gets or sets the identifier for the mapped SystemUnitClass element. + + + The system unit class element identifier. + + + + + Gets and sets the Name of the mapped ExternalInterface of the SystemUnitClass + + + + + This class is a wrapper for the CAEXElement 'InterfaceIDMapping' which is used to map an Interface of a referenced + role + to an interface of a SystemUnitClass which contains the role reference. The ID of the interfaces is used for + identification. + + + + + + This class is defined since CAEX 3.0 and is a replacement for the . + + + + + Initializes a new instance of the class. + + An 'InterfaceIDMapping' XML node. + + + + Gets and sets the mapped ExternalInterface of the role reference + + + + + Gets and sets the ID of the mapped ExternalInterface of the role reference + + + + + Gets the collection of possible mapping identifiers for this InterfaceIDMappingType for elements of + the mapped SystemUnitClass. The Collection contains all ExternalInterfaces (including inherited and descendants) of + the + SystemUnitClass. The ExternalInterface ID is used as the Mapping identifier. + + + The possible mapping identifiers to map ExternalInterfaces of the SystemUnitClass. + + + + + Gets the collection of possible mapping identifiers for this InterfaceIDMappingType for elements of + the mapped RoleClass. The Collection contains all ExternalInterfaces (including inherited and descendants) of the + RoleClass. The ExternalInterface ID is used as the Mapping identifier. + + + The possible mapping identifiers to map ExternalInterfaces of the RoleClass. + + + + + Gets and sets the mapped ExternalInterface of the SystemUnitClass + + + + + Gets and sets the ID of the mapped ExternalInterface of the SystemUnitClass + + + + + Gets and sets the identifier for the mapped RoleClass element. + + + The role class element identifier. + + + + + Gets or sets the identifier for the mapped SystemUnitClass element. + + + The system unit class element identifier. + + + + + This class defines a sequence of CAEX 'Attribute' elements. A sequence of Attribute's can be associated + with each class which implements the interface. + + + + + + Initializes a new instance of the class. + + The owner. + The constructor function to create an Attribute wrapper. + + + + Gets the CAEX attribute with the provided attribute path from the Attribute sequence. + This method can be used to direct access a nested attribute using the complete attribute path. + The Path root should be the top level attribute. + + The attribute path. + + + + + Gets the CAEX attribute with the provided attribute name array from the Attribute sequence. + This method can be used to direct access a nested attribute using the complete attribute path splittet + into a part name array. + The Path root should be the top level attribute. + + The part names. + + + + + Creates the 'AttributeType' CAEX wrapper for the XML node. + + The node. + The AttributeType + + + + Creates a new CAEX Attribute XML element. + + The owner. + The XML node. + + + + This class defines a sequence of CAEX 'ExternalInterface' elements. A sequence of ExternalInterfaces can be + associated + to each class, which implements the interface. + + + + + + Initializes a new instance of the class. + + The owner. + The constructor function to create an ExternalInterface object. + + + + Gets all external interfaces and the external interface descendants (The external interface tree). + + + an enumeration of all ExternalInterface object of this instance and their nested + ExternalInterface objects. + + available since CAEX Version 3.0. + + + + This class defines a sequence of CAEX 'InternalElement' elements. A sequence of InternalElements can be associated + with each class which implements the interface. + + + + + + Initializes a new instance of the class. + + The owner. + Function to create an . + + + + Adds a new mirror InternalElement to this sequence. + + The master internal element. + + The newly created Mirror + + masterInternalElement + + + + Gets all InternalElements and the InternalElement descendants (the InternalElement tree) + + + a collection of all InternalElement objects of this instance and their nested + InternalElement objects. + + + + + Function to create an + + The 'InternalElemen' XML node. + an InternalElementType + + + + Creates a new 'InternalElement' XML node. + + The owner. + The created XML node. + + + + Equality comparer for Xml-Elements that are InternalLink objects. + + + + + Determines if two InternalLink objects are equal. Equal InternalLink objects have reference + the same ExternalInterfaces. The order of the references doesn't matter. + + The first internal link. + The second internal link. + true, if both InternalLink objects are equal. + + + + Returns a hash code for this instance. + + The object. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + This Class is a wrapper for the CAEXElement 'InternalLink' that defines instance to instance relations + using ExternalInterfaces to relate InternalElement- and SystemUnitClass-Objects. + + + + + + + Initializes a new instance of the class. + + An 'InternalLink' XML node. + + + + Constructs the path to an interface according to the used schema + + The ExternalInterface + + + + + Determines, if this InternalLink Instance has defined Interfaces. + + + + + definition of the separator used for qualifying an interface of an internal element via syntax GUID:Interface + + + Valid for CAEX 2.15 only. In CAEX 3.0 there exists no separator char in internal link attributes. + + + + + Gets and sets the AInterface of the InternalLink by reading or setting the + Attribute. A read access to this property updates the . + + + + + Gets the related objects for the InternalLink. This property allows to access the listed related objects without + recalculation. + + + + + + + + + + + + + + + A direct access to one of the listed properties results in a recalculation of the accessed property. + + + The related objects. + + + + + This class allows accessing the related objects of an InternalLink without recalculation which improves the + performance for consecutive + access of the related objects. + + + + + Gets the A-Interface of the InternalLink by interpretation of the + Attribute on first access. + Consecutive reads will return the at first calculated value. A Reinterpretation is performed, when the respective + InternalLink + property is read or set. + + + + + Gets the B-Interface of the InternalLink by interpretation of the + Attribute on first access. + Consecutive reads will return the at first calculated value. A Reinterpretation is performed, when the respective + InternalLink + property is read or set. + + + + + Gets the A-SystemUnitClass using the preserved value . If this value has not been + calculated, a recalculation is performed. + + + + + Gets the B-SystemUnitClass using the preserved value . If this value has not been + calculated, a recalculation is performed. + + + + + Gets the SystemUnitClass associated to the . + + + + + Gets and sets the BInterface of the InternalLink by reading or setting the + Attribute. A read access to this property updates the . + + + + + Gets the SystemUnitClass associated to the . + + + + + Gets and sets the Path to an ExternalInterface, defining the A-Side of the relation. + + + Please notice, that the Path-Syntax has changed with CAEX 3.0 + + + + + Gets and sets the Path to an ExternalInterface, defining the B-Side of the relation. + + + Please notice, that the Path-Syntax has changed with CAEX 3.0 + + + + + Creates a new InternalLink object and append it to the lowest common parent of the SystemUnitClass objects, + associated with the provided ExternalInterface objects. If no common parent exists, the InternalLink will be + associated with the owner of the . + + The ExternalInterface object, representing the A-Side of the relation. + The ExternalInterface object, representing the B-Side of the relation. + The name for the InternalLink + The newly created InternalLink object. + + If AInterface or BInterface is null + + + One of the provided ExternalInterface objects is not associated to a SystemUnitClass. + + + It is not allowed to link an ExternalInterface to itself. + + + + + Inserts the provided CAEX object as a new sibling after this CAEX object. + + The CAEX object to be inserted. + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Inserts the provided CAEX object as a new sibling before this CAEX object. + + The CAEX object to be inserted + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Gets the Interface from the provided InternalLink Attribute value, which is from or + from the attribute. + + The value of the InternalLink attribute, defining the Interface reference. + the external interface + + + + Interface that defines methods and properties that apply to all classes that are able to contain ExternalInterface + objects. + + + + + + This Interface is implemented by and . + + + + + + Gets and sets the referenced role class + + + + + Gets and sets the role reference attribute + + + + + Extensions defined for ExternalInterface Sequence and RoleRequirements sequence + + + + + Gets all ExternalInterfaces from the specified sequence, which are instances of a specific InterfaceClass + + The Sequence of External Interfaces + The required Interface Class + External Interfaces which are instances of the defined class. + + + + Gets all RoleRequirements from the specified sequence, which are instances of a specific RoleClass + + The Sequence of Role Requirements + The required Role Class + RoleRequirements which are instances of the defined class. + + + + Gets all SupportedRoleClasses from the specified sequence, which are instances of a specific RoleClass + + The Sequence of SupportedRoleClasses + The required Role Class + SupportedRoleClasses which are instances of the defined class. + + + + Interface implemented by Mapping elements , + , and . + + + + + + Gets and sets the identifier for the mapped RoleClass element. + + + + + Gets or sets the identifier for the mapped SystemUnitClass element. + + + + + Gets the SystemUnitClass, which is either an or a , which provides the mapping elements. + + + + + Gets the RoleClass, which provides the mapping elements. + + + + + This class is the base class for Mapping element types which are , + , and . + + + + + + + Initializes a new instance of the class. + + An 'MappingElementType' XML node. + + + + Gets and sets the identifier for the mapped RoleClass element. + + + The role class element identifier. + + + + + Gets or sets the identifier for the mapped SystemUnitClass element. + + + The system unit class element identifier. + + + + + Gets the mapping object which contains this Mapping Element. + + + + + This method is an extension to the setter in case of MultipleRole assignments in AutomationML 2.0 based on CAEX 2.15. + The method can assign a qualified RoleClassElement as a mapping element and will eventually create a missing RoleRequirement element for the qualified element. + For Documents, based on CAEX 3.0 the behaviour of this method is identical to the setter. + + The element. + + + + Gets the RoleClass element which can be identified with the or sets + the extracted from the provided CAEXObject which shall be an AttributeType for + an attribute mapping or an ExternalInterfaceType for an interface mapping. If the provided CAEXobject is not applicable for + the Mapping, the is not changed. + + + + + Gets the SystemUnitClass element which can be identified with the or sets + the defined by the provided value. + + + + + Gets the collection of all possible elements and their mapping + identifiers of the mapped SystemUnitClass and its ancestors in the inheritance tree + for this mapping element. + The mapping identifier uniquely identifies the mapped CAEX object. + The syntax of the identifier is defined by the derived mapping element types and + is build from the CAEX path of the object. + + + The possible mapping elements and their identifiers of the mapped SystemUnitClass. + + + + + Gets the collection of all possible elements and their mapping + identifiers of the mapped RoleClass and its ancestors in the inheritance tree + for this mapping element. + The mapping identifier uniquely identifies the mapped CAEX object. + The syntax of the identifier is defined by the derived mapping element types and + is build from the CAEX path of the object. + + + The possible mapping elements and their identifiers of the mapped RoleClass. + + + + + Gets the SystemUnitClass, which provides the . + + + + + Gets the RoleClass, which provides the . + + + + + Gets the Role reference, which can provide additional . + + + + + This class is a wrapper for the CAEX element 'Version'. + + + + + Initializes a new instance of the class. + + The XML node. + + + + The Aml.Engine.CAEX Namespace contains classes that support the generation, retrieval and analysis of CAEX + Documents according + to the CAEX standard. The classes currently support the CAEX Versions - CAEX 2.15 and CAEX 3.0. Classes and methods + are designed + to create schema conform documents. The basic XDocument is wrapped with the . Direct + access to the XDocument + and direct manipulations of XElements by an application are not monitored by the AMLEngine. Schema conformance is + only guaranteed if + the API methods are used. + + + + + This class is a wrapper for the CAEXElement 'NominalScaledType" which defined a list of + required values for an attribute constraint. + + + + + + Initializes a new instance of the class. + + A 'NominalScaledType' XML node. + + + + Gets the type-decoded value and sets the type-encoded value for the nominal value attribute with the defined value. + + + This indexer should only be used, if the list of nominal values contains distinct values only. + + + + + + + Gets the for the for the nominal value attribute with the defined value. + + + + + + + Gets the AttributeDataType of the defining attribute. The AttributeDataType can be used + to interpret the defined nominal values of this instance. + + + + + Gets the AttributeType object, defining this instance. + + + + + Gets the collection of the 'RequiredValue' elements for this nominal scaled attribute constraint. + + + + + Gets a list of corresponding to the associated nominal values of this instance. + + + + + This class is a wrapper for the CAEXElement 'OrdinalScaledType" which defined a value range + for an attribute constraint. + + + + + + + Initializes a new instance of the class. + + An 'OrdinalScaledType' XML node. + + + + Gets the type-decoded value and sets the type-encoded value for the value attribute with the defined name. The + allowed Names are and + and . + + + A type based object + + + + Gets the for the value attribute with the defined attribute name. are + and + and . + + + The CAEXValue for the named attribute. + + + + Gets the Attribute datatype which is valid for values of all of this element. + + + + + Gets the attribute, which specifies the attribute data type for the value elements of this instance. + + + + + Gets and sets the required maximal value for this ordinal scaled attribute constraint. + + + + + Gets and sets the required minimal value for this ordinal scaled attribute constraint. + + + + + Gets and sets the required value for this ordinal scaled attribute constraint. + + + + + Gets all the CAEXValue objects for the defined value attributes of this instance. Recognized value attributes are + and + and + . + + + + + This class is a CAEXWrapper for the CAEX-Element 'RoleRequirements'. + + + + + + + + + Initializes a new instance of the class. + + A 'RoleRequirements' XML node. + + + + Gets a collection of Attribute objects contained in this instance. + + + + + Gets the attributes and all nested attributes. + + + + + Gets the collection of ExternalInterface objects including all nested descendant interfaces + + + + + Gets a collection of ExternalInterface objects contained in this instance. + + + + + Gets the MappingObject of this RoleRequirements object. Please note, if no MappingObject exists, an empty Wrapper + is returned. + Use the method to create one. + + + This Property is only defined since CAEX 3.0. + + + + + Gets and sets the RefBaseRoleClassPath attribute of this RoleRequirements object. + The property is equivalent to this. For direct RoleClass assignments + use . + + + + + Gets and sets the referenced RoleClass using the + + + + + Gets or sets the role reference. The property is equivalent to this. + + The role reference. + + + + Gets the collection of CAEX attributes from the which are qualified with the name of a + SupportedRoleClass. + This method is valid for documents based on CAEX 2.15 only. The qualification of attributes is a feature to assign + multiple roles + to an InternalElement. + + + + + This property supports the Multiple Roles concept in AutomationML 2.0, based on CAEX 2.15. The property is not + applicable for documents, + based on CAEX 3.0 and later. It gets the role class interfaces of supported role class objects which are not + assigned to this RoleRequirements + instance. The returned ExternalInterfaces are created with a qualified Name, including the supported role class + name, a separator string "." and + the interface name. + + + + + This property supports the Multiple Roles concept in AutomationML 2.0, based on CAEX 2.15. The property is not + applicable for documents, + based on CAEX 3.0 and later. It gets the role class attributes of supported role class objects which are not + assigned to this RoleRequirements + instance. The returned Attributes are created with a qualified Name, including the supported role class name, a + separator string "." and + the attribute name. + + + + + This method supports the Multiple Roles concept in AutomationML 2.0, based on CAEX 2.15. The method is not + applicable for documents, + based on CAEX 3.0 and later. It tests, if the provided attribute is a role class attributes of a supported role + class object which can be used + in a Multiple role mapping and is assignable to this RoleRequirements instance + + The tested attribute. + + true if the attribute is an assignable role class attribute; otherwise, false. + + + + + This method supports the Multiple Roles concept in AutomationML 2.0, based on CAEX 2.15. The method is not + applicable for documents, + based on CAEX 3.0 and later. It tests, if the provided Attribute object is a role class attribute of a supported + role class object which can be used + in a Multiple role mapping and assigns it to this RoleRequirements instance. + + The tested attribute. + + the newly created and assigned Attribute, if the Attribute object is assigned to the role class interface; + otherwise, null. + + + + + This method supports the Multiple Roles concept in AutomationML 2.0, based on CAEX 2.15. The method is not + applicable for documents, + based on CAEX 3.0 and later. It tests, if the provided ExternalInterface object is a role class interface of a + supported role class object which can be used + in a Multiple role mapping and is assignable to this RoleRequirements instance + + The tested external interface. + + true if the ExternalInterface object is an assignable role class interface; otherwise, false. + + + + + This method supports the Multiple Roles concept in AutomationML 2.0, based on CAEX 2.15. The method is not + applicable for documents, + based on CAEX 3.0 and later. It tests, if the provided ExternalInterface object is a role class interface of a + supported role class object which can be used + in a Multiple role mapping and assigns it to this RoleRequirements instance. + + The tested external interface. + + the newly created and assigned ExternalInterface, if the ExternalInterface object is assigned to the role class + interface; otherwise, null. + + + + + Gets the collection of CAEX External Interfaces from the which are qualified with + the name of a SupportedRoleClass. + This method is valid for documents based on CAEX 2.15 only. The qualification of ExternalInterfaces is a feature to + assign multiple roles + to an InternalElement and apply a mapping to the Interface objects. + + + + + Retrieves the and gets the according original RoleClass Attribute of each + qualified Attribute. + This method is valid for documents based on CAEX 2.15 only. The qualification of attributes is a feature to assign + multiple roles + to an InternalElement. + + + + + Retrieves the and gets the according original RoleClass Interfaces of + each qualified ExternalInterface. + This method is valid for documents based on CAEX 2.15 only. The qualification of attributes is a feature to assign + multiple roles + to an InternalElement. + + + + + Conversion to get access to specific AutomationML defined Attributes from the RoleRequirements object. + + The RoleRequirements object + + The result of the conversion. + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Inserts the specified CAEX object in it's associated sequence. The RoleRequirementsType + defines the and sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence. The RoleRequirementsType + defines the and sequence. + + + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Adding a new MappingObject element to this RoleRequirements object. + + + The new MappingObject element if not existing, otherwise the existing. + + A RoleRequirements object doesn't exist! + If the Document Schema Version is prior to Version 3.0. + + Applicable since CAEX Version 3.0 + + + + + Determines whether this RoleRequirements object has an associated reference to + the provided RoleClass. If inheritance relations between RoleClasses should be regarded, the + optional parameter 'regardInheritance' should be set. In this case the specified RoleClass is either identical + to the referenced RoleClass or the referenced RoleClass is derived from the provided RoleClass. + + The RoleClass object. + + if set to true inheritance relations + are regarded (default is false). + + + true if this RoleRequirement object has an associated reference to + the specified RoleClass; otherwise, false. + + roleClass + + + + Exception for violations of the CAEX Schema. An example for a violation is the insertion of more than one + RoleRequirement object into an InternalElement. + + + + + + Initializes a new instance of the class with serialized data. + + serialize object information. + context information. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the -class with the defined error message. + + message containing error information. + + + + Initializes a new instance of the class. + + The message. + The inner. + + + + This class is a wrapper for the CAEXElement 'SupportedRoleClass' assignable to + a SystemUnitClass. Associated supported roles of a SystemUnitClass are used to specify some + semantic meanings like features or functions for the associated object. + + + + + + + Initializes a new instance of the class. + + A 'SupportedRoleClass' XML node. + + + + Gets the MappingObject associated with a SupportedRoleClass. Mapping objects are used to + define mappings between properties of the associated object and the role class itself. + + + + + Gets and sets the Attribute of this SupportedRoleClass object. + + + + + Gets and sets the RoleClass, referenced from this SupportedRoleClass object using the + . + + + + + Gets or sets the role reference. This property is equivalent to . + + The role reference. + + + + Gets the associated SystemUnitClass for this SupportedRoleClass object. + + + + + Inserts the specified CAEX object in it's associated sequence. The SupportedRoleClassType + defines the + + The CAEX object + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence. The SupportedRoleClassType + defines the + + + The CAEX object + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Adding a new MappingObject element to this SupportedRoleClass. + + + The new MappingObject element if not existing, otherwise the existing. + + A SupportedRoleClass object doesn't exist! + + + + This class is a CAEXWrapper for the 'UnknownType' Element which is a choice for an + + + + + + + Gets and sets the value of the Requirements element + + + + + Initializes a new instance of the class. + + An 'UnknownType' XML node. + + + + A Sequence of XML elements related to a specific element name. + An XML element may contain different NamedElementSequences with different names. + + + + + The element selection condition used to select elements to create the sequence. + + + + + Gets or sets the value at the specified index. + + The index of the element in the collection. + + + + + Creates a new instance of the XElementSequence for the specified owner and the specified name which has to be a + valid name for + child elements, which can be filtered out from the owner by this name. + + The owner. + The name. + + + + Initializes a new instance of the class. + + The owner. + Name of the element. + The condition. + + + + Gets the CAEX owner of this sequence + + + + + Gets the number of elements in this sequence + + + + + Gets the name of the elements in this sequence + + + + + Gets a list of unwrapped CAEX elements (XElements) of this sequence + + + + + Determines, if the sequence contains any element + + + + + Gets the owner of this sequence + + + + + Gets the first element in this sequence. + + + + + Gets the last element in this sequence + + + + + Determines, if the local names are equal. + + + + + Determines, if the local names are equal. + + + + + Returns an enumerator that iterates through the collection. + + + An enumerator that can be used to iterate through the collection. + + + + + Removes all CAEX objects from this sequence. + + + + + Removes the element at the given index. + + The index. + + true, if element at index exists and is removed. + + + + + Gets the Index of the specified element in the sequence of elements with the same name + + The element. + The index of the element. + + + + Removes the XML node. + + The XML node. + + + + This class implements methods to work with a sequence of CAEX elements and indexed access to their values. + + The Value type + + + + + Gets the value of the CAEX object in this sequence at the given position + + index position of the element + The value. + + + + The value converter + + + + + Gets the Index of the specified element in the sequence of elements with the same name + + The element. + + The index of the element. + + + + + Creates a new instance of the ValueSequence for the specified owner and the specified name which has to be a valid + name for + child elements, which can be filtered out from the owner by this name. + + The owner. + The element name. + + + + Creates a new instance of the ValueSequence for the specified owner and the specified name which has to be a valid + name for + child elements, which can be filtered out from the owner by this name. The specified condition is used as an + additional + filter criteria. + + The owner. + The element name. + Filter criteria. + + + + Gets the collection of Xml-Elements and their associated Values in this ValueSequence. + + + + + Gets a collection of values of the CAEX elements of this sequence + + + + + Creates a new CAEX object and appends it to the value sequence. The value of the appended + object is set to the provided value. + + The value. + The created XML node. + The element could not be appended. + + + + Gets the value from the element at the specified index. + + The index. + The value. + + + + Gets the enumerator for this sequence which enumerates the . + + An enumerator that can be used to iterate through the collection. + + + + Creates a new CAEX object with the provided value and prepends it to already existing elements. + + The value. + The XML node of the created CAEX object. + Could not add + + + + class defining an Xml-Element and its associated Value + + + + + Creates the ElementValue structure for the defined Element and Value + + The element + The value + + + + The Xml-Element + + + + + The Value of the Xml-Element transformed to the DataType + + + + + + The type of the data type. + + + + Function to convert data from the XML-representation to the defined DataType + + + + + Function to convert data to an XML-representation + + + + + Initializes a new instance of the ElementValueConverter class. + + + + + Sets custom value converters to support conversion from objects to user defined types. + + The convert from. + The convert to. + + + + Sets the element value. + + The element. + The value. + + + + Gets the element value. + + The element. + + + + + This class implements methods to work with any sequence of CAEX elements. The class will wrap all elements + of a filtered sequence of an owner element to + the denoted wrapper type which is given as the type-argument. + + this is any CAEXWrapper type + + + + + Creates a new instance of the CAEXSequencce for the specified owner and the specified name which has to be a valid + name for + child elements, which can be filtered out from the owner by this name. + + The owner + CAEX-Name of the items in this sequence + The constructor function + + + + Gets a wrapper for the first CAEX element in this sequence, if the sequence contains no elements null is + returned. + + + + + Gets a wrapper for the last CAEX element in this sequence, if the sequence contains no elements null is + returned. + + + + + Gets a collection of all CAEX descendants of this sequence in document order + + + + + Gets a wrapper for the CAEX element in this sequence at the given position + + index position of the element + The created CAEX wrapper. + + + + Gets the first CAEX object with a specific attribute value from the sequence of elements + + Pair of attribute name and attribute value + the first CAEX object, which matches this condition. + + + + Moves the CAEX object at the specified index to a new location in the collection. + + The zero-based index specifying the location of the CAEX object to be moved. + The zero-based index specifying the new location of the CAEX object. + + + + Creates a new CAEX object and appends it to already existing elements in this sequence. + + the created CAEX object + raised, when this parent child relation violates the CAEX schema. + + + + Creates a new CAEX object and appends it to already existing elements. The content of the + new element can be optionally defined using an array of tuples defining attribute names and their values. + + The attribute value tuples. + + the created CAEX object. + + + This sample shows how to apply this method: + + var doc = CAEXDocument.New(); + var at = doc.CAEXFile.AttributeTypeLib.Append (new Tuple <string,object>[] { Tuple.Create<string,object>("Name", "ALIB") }); + + + + + + Gets the CAEX object at the specified index. + + The index. + the CAEX object from the given index, or null. + + + + Gets the enumerator for this sequence. + + The enumerator + + + + Gets the Index of the specified CAEX object in this sequence of elements. + + the CAEX object + the Index of the specified CAEX object. + + + + Inserts the specified CAEX object into this sequence. If no position is specified the element is appended. + If 'asFirst' is set to true, the element is prepended to already existing ones. + + the CAEX object + + optional parameter, if set to true (default) the object is prepended to already existing ones, + otherwise it is appended. + + + The inserted CAEX object. If the provided CAEX object already belongs to a sequence, a copy of the CAEX object is + inserted and + returned as the result. + + + If the provided CAEX object already has an associated parent, a deep + copy of the CAEX object and not the original provided CAEX Object is inserted. Please keep in mind, that the copied + object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object into this sequence at the defined index. + + The Position of the element + The CAEX object + + The inserted CAEX object. If the provided CAEX object already belongs to a sequence, a copy of the CAEX object is + inserted and + returned as the result. + + + If the provided CAEX object already has an associated parent, a deep + copy of the CAEX object and not the original provided CAEX Object is inserted. Please keep in mind, that the copied + object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Creates a new CAEX object and prepends it to already existing elements. + + The created CAEX object. + + + + Creates a new CAEX object and prepends it to already existing elements. The content of the + new element can be defined using an array of tuples defining attribute names and their values. + + The attribute value tuples. + The created CAEX object. + + + + Removes the provided CAEX object from this sequence. + + The CAEX object. + + + + This method creates a CAEXWrapper for the provided node by invoking the constructor delegate. + This method can be overridden if a direct constructor can be called which can be + faster. + + the wrapped XML node + The CAEXWrapper for the provided node. + + + + This method uses the Schema manager to create a new sequence member. This Method can be overridden if a faster + method is provided without using the schema manager (if the requirements to create a schema conform element + are known). + + The sequence owner. + The new XML element which can be added to this sequence. + + + + Generic base class for all library objects of CAEX, which are: + + + , + + + , + + + , + + + , + + + . + + + + + + + + + + + + + + + + + + Initializes a new instance of the class. + + Any CAEX library XML node. + + + + Gets or sets the constructor function to create the element sequence. + + + + + Gets the collection of LibraryElements contained in this instance. + + + + + Gets the enumerator to iterate through the collection of library objects. + + + An enumerator that can be used to iterate through the collection of library objects. + + + + + Gets the enumerator to iterate through the collection of library objects. + + An enumerator that can be used to iterate through the collection of library objects. + + + + Inserts the provided CAEX object as a new sibling after this CAEX object. + + The CAEX object to be inserted. + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Inserts the provided CAEX object as a new sibling before this CAEX object. + + The CAEX object to be inserted + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + This Class is a wrapper for the CAEXElement 'ExternalInterface' + + + + + + Initializes a new instance of the class. + + An 'ExternalInterface' XML node. + + + + The constructor function for the . + + + + + Determines, if this external interface is associated to a SystemUnitClass, InternalElement, + InterfaceClass, RoleClass or + RoleRequirement and returns the Wrapper for this associated object. + Also works for nested Interfaces. + + + The associated object. + + + + + Gets a value indicating whether this instance is a master. + + + + + Determines, if this instance is a Mirror + + + + + Gets and sets the Master. A Master is only defined, if this instance is a . Setting a master + will transform this + instance into a mirror. + + + The master. + + + + + Gets the master, if this is a mirror object. + + + + + Gets the master identifier, if this ExternalInterface is a mirror . + + + + + Conversion to get access to specific AutomationML defined Attributes, assigned to the specified External Interface + object. + + The CAEX External Interface object. + + The InterfaceClass object, converted to an type, which provides access to + specific AML defined attributes. + + interfaceClass + + + + Creates a new Mirror of this ExternalInterface, using this instance as the new master of the created mirror. + + The created mirror ExternalInterface. + + + + Removes this ExternalInterface. After that it is no longer assigned to a document and has no owner anymore. + If this ExternalInterfaces has InternalLink relations, the InternalLink relations are removed too. + + + + + Gets or sets the references interface class. + + + + + Determines whether this ExternalInterface object has an associated reference to + the specified InterfaceClass. If inheritance relations between InterfaceClasses should be regarded, the + optional parameter 'regardInheritance' should be set. In this case the specified InterfaceClass is either identical + to a referenced InterfaceClass or a referenced InterfaceClass is derived from the specified InterfaceClass. + + The InterfaceClass object. + + if set to true inheritance relations + are regarded (default is false). + + + true if this ExternalInterface object has an associated reference to + the specified InterfaceClass; otherwise, false. + + interfaceClass + + + + This Class is a wrapper for the CAEXElement 'ExternalReference' which is a container element + for the alias definition of external CAEX files. + + + + + + + Initializes a new instance of the class. + + The 'ExternalReference' XML node. + + + + Gets and sets the alias name of an external CAEX file to enable referencing elements of the external CAEX file from + other + elements + + + + + Gets and sets the path of the external CAEX file. According to CAEX absolute and relative paths are allowed. + + + + + Inserts the provided CAEX object as a new sibling after this CAEX object. + + The CAEX object to be inserted. + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Inserts the provided CAEX object as a new sibling before this CAEX object. + + The CAEX object to be inserted. + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Interface to define elements which contain a collection of internal elements + + + + + + + Gets the collection of InternalElement objects contained in this instance. + + + + + This Class is a wrapper for the CAEXElement 'InterfaceClassLib' + + + + + + Initializes a new instance of the class. + + An 'InterfaceClassLib' XML node. + + + + Gets a collection of the InterfaceClass objects contained in this InterfaceClass Library. + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Inserts the specified CAEX object in it's associated sequence. The InterfaceClassLib + defines the sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the given position. The InterfaceClassLib + defines the sequence. + + The position + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Interface that defines methods and properties that apply to all classes that are able to contain attributes. + + + + + + Get the collection of all attributes of this object. Inherited Attributes are not included. + + + + + Gets the attributes and all nested attributes. + + + + + Interface that defines methods and properties that apply to all classes that are able to contain ExternalInterface + objects. + + + + + + Gets the collection of ExternalInterface objects + + + + + Gets the collection of ExternalInterface objects including all nested descendant interfaces + + + + + This class is a CAEXWrapper for the CAEX element 'RefSemantic' used in an . + + + + + + Initializes a new instance of the class. + + A 'RefSemantic' XML node. + + + + Gets and sets the Attribute 'CorrespondingAttributePath' of the RefSemantic object. + + + + + This Class is a wrapper for the CAEXElement 'RoleClassLib' which is a Container element + for a hierarchy of Role class definitions wrapped into . + CAEX supports multiple role class libraries. + + + + + + Initializes a new instance of the class. + + The 'RoleClassLib' XML node. + + + + Gets the collection of RoleClass objects contained in this library. + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Inserts the specified CAEX object in it's associated sequence. The RoleClassLibType + defines the sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the given position. The RoleClassLibType + defines the sequence. + + The position + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This Class is a wrapper for the CAEXElement 'SourceDocumentInformation' which a structure to + model information about the data source of the present CAEX document. + + + + + + Initializes a new instance of the class. + + A 'SourceDocumentInformation' XML node. + + + + gets and sets the Date and time of the creation of the CAEX document. + + + + + Gets and sets an identifier of the origin of the CAEX document, e.g. a unique identifier of a source engineering + tool or an exporter software. + The ID shall not change even if the origin gets renamed + + + + + Gets and sets the Name of the origin of the CAEX document, e.g. the source engineering tool or an exporter software + + + + + Gets and sets a unique identifier of the corresponding source project (optional in CAEX) + + + + + Gets and sets the title of the corresponding source project (optional in CAEX) + + + + + Gets and sets the release information of the origin of the CAEX document, e.g. the version + of the source engineering tool or the exporter software (optional in CAEX) + + + + + Gets and sets the vendor of the data source of the CAEX document (optional in CAEX) + + + + + Gets and sets the vendors URL of the data source of the CAEX document (optional in CAEX) + + + + + Gets and sets the Version of the origin of the CAEX document, e.g. the version of the source engineering tool or + the exporter software. + + + + + This class is a wrapper for the CAEX element 'SourceObjectInformation'. This element can be assigned to a + to store a mapping between the ID of a CAEXObject and the ID of the same object, as + it is defined in the object source. + + + + + + Initializes a new instance of the class. + + A 'SourceObjectInformation' XML node. + + + + Gets and sets a value for the OriginID attribute of a SourceObjectInformation object. + + + + + Gets and sets a value for the SourceObjID attribute of a SourceObjectInformation object. + + + + + This class is the base CAEXWrapper class, defined for all CAEX objects. The CAEXWrapper class supports + notifications of changes. + + + + + + + A new CAEXWrapper instance is constructed to wrap the provided XML element. + + The XML element. + + + + The Change event raised when any property is modified. + + + + + Gets the CAEX document of this CAEX object. If the CAEX object has not been inserted + into a document or has been removed from the document, the value is null. + + + + + Gets the CAEXParent of this instance if it exists. + + + + + Gets the CAEXSequence containing this CAEX object + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + Gets the XDocument of the wrapped XML-Element + + + + + Determines if this is a wrapper around an existing XML-Element + + + + + Gets the wrapped XML-Element + + + + + Gets the wrapped Xml-Element's parent + + + + + Gets the name of the CAEX tag for this CAEX object. + + + + + operator overload (compares the wrapped nodes) + + The obj1. + The obj2. + + The result of the operator. + + + + + operator overload (compares the wrapped nodes) + + The obj1. + The obj2. + + The result of the operator. + + + + + Gets the first child of this CAEX object with the defined CAEX tag name. + + The CAEX tag name of the child. + The child, if it exists; otherwise null. + + + + Gets all children of this CAEX object with the defined CAEX tag name. + + The CAEX tag name of the child. + The children, if existing; otherwise Enumerable.Empty. + + + + Creates a deep copy of this CAEX object + + + if set to true a deep copy is created; otherwise only the attributes are included in the + copy. + + + if set to true all IDs, defined in the Node and the descendants get new IDs. + + + if set to true sub classes of SystemUnitClasses, InterfacesClasses, RoleClasses and AttributeTypes + are included in the copy. The default value is false. + + + The copied CAEX object. + + + + + Equality of CAEX wrapper instances is defined on the equality of the wrapped XML elements. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Gets the Hash code for this instance, using the wrapped XML element. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Gets the value of the Xml-Attribute with the specified attribute name of the wrapped Xml-Element. + + The name of the attribute. + The attribute value if the attribute is defined, otherwise null. + + + + This method can be used to create an XML node, if this CAEX wrapper was instantiated without an XML node. + This method can only be applied, if an is defined. The new created CAEX object is + inserted as a new child of the owner. + + + true, if the XML node could be created and inserted as a new child of the owner. + + + + + Removes this element. After that it is no longer assigned to a document and has no owner anymore. + + + + + Sets the value of an attribute, adds an attribute, or removes an attribute (if the value is null). + + The name of the attribute + The attribute value. + + + + This methods creates the delegate for the constructor of the wrapped items. + + + + + + + Gets the first child of the wrapped XML element with the defined element name. + + The element name (Tag name). + The child, if it exists; otherwise null. + + + + Gets the list of all child's of the wrapped XML element with the defined element name. + + The element name (Tag name). + An enumeration of all child's with the defined element name. + + + + Gets the XName for the provided tagName suitable to this Nodes Namespace + + + + + + + Raise the event for the property with the defined name. + + + + + + Tries to extract a class qualifier from a path + + Collection of available class names + The path. + + + + + A CAEXWrapper for any Element, which is defined as a simple type. The DataType of the simple type is used + as the generic type parameter. + + The type of the data type. + + + + + + Initializes a new instance of the class. + + The XML node. + XML node - Tried to create a Wrapper without an XML node. + + + + Gets the wrapped XML node. + + + + + Gets and sets the value of the wrapped XML node, according to the defined DataType. If the element doesn't exists, + it is created and inserted into the document as a child of the defined owner. + + + The value. + + + + + The class CAEXBasicObject comprises a basic set of attributes and header information which exist for all CAEX + elements. + + + + + + Initializes a new instance of the class. + + Any CAEX BasicObject XML node. + + + + Gets the collection of AdditionalInformation values contained in this instance. + + + + + Gets and sets the change mode for a CAEX element (Optional in CAEX). + + + + + Gets and sets the Copyright for this object. + + + For CAEX 2.15 documents the content of the Copyright object is transformed to a string. + + + + + Gets the wrapper for the Copyright element. + + + + + Gets and sets the Description for this object. + + + For CAEX 2.15 documents the content of the Description object is transformed to a string. + + + + + Gets the wrapper for the Description element. + + + + + Gets the collection of Revision objects contained in this instance. + + + + + Gets the collection of SourceObjectInformation objects contained in this instance. + + + + + Gets and sets the Version for this object. + + + For CAEX 2.15 documents the content of the Version object is transformed to a string. + + + + + Gets the wrapper for the Version element. + + + + + Gets the CAEXSequence owned by this instance, which contains the specified CAEX object. + For example, if the specified object is a revision object, + the sequence of the revision objects is returned. + + The CAEX object, contained in a sequence, owned by this CAEX object. + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + Gets the CAEX Container for elements of type T, which is owned by this CAEX object + + + The CAEX container + + + + Inserts the specified CAEX object in it's associated sequence. The CAEXBasicObject + defines the and sequences. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the CAEX object + has been inserted into this sequence. + + + + + Inserts the specified CAEX object in it's associated sequence at the defined position. The CAEXBasicObject + defines the and sequences. + + The position + The CAEX object. + + true, if a sequence could be identified and the CAEX object + has been inserted into this sequence. + + + + + Creates a new Revision object and inserts it to the collection of Revision objects + either at the beginning or at the end of the sequence, according to the specified optional value. The Revision + object is initialized with the provided values. + + The date. + The author. + if set to true the created Revision is prepended, otherwise appended. + A Revision object. + + + + This class is a wrapper for the XDocument defining a CAEXDocument. Each CAEXDocument is associated to a specific + CAEX-Schema. + The Default Schema for newly created documents is always the most recently defined + CAEX-Schema (currently Version 3.0). The Schema for existing documents loaded from files or other sources is set to + the schema version defined in the document source. + Transformations of CAEXDocuments from lower schema versions to higher schema versions is possible. + Transformations from higher to lower schema versions + can also be done but may result in documents containing not all the information. Schema transformations can be done + with + a registered schema transformation service which implements the interface. + Creation of new documents with lower schema versions + is possible, but in this case, the schema version has to be defined explicitly. + + + + + Enumeration type defining existing and supported CAEX Versions + + + + + CAEX Schema Version 2.15 + + + + + CAEX Schema Version 3.0 + + + + + This value is used, if the CAEX document couldn't be associated to a specific schema version + + + + + private constructor setting the schema + + The CAEX schema version. + + + + The Commanding class, which provides events for changes of CAEX objects + + + + + This event is raised after a CAEXElement has been changed. + + + + + This event is raised before a CAEXElement will be changed. + + + + + The Default schema for new CAEX documents + + + + + Gets the CAEXFile which is the wrapper for the root element in the CAEX document + + + + + Gets the command instance for this document, which enables registration of change events + + + + + Gets the Schema of the CAEXDocument + + + + + Gets the schema manager for this document + + + + + Gets the schema version string for the assigned schema + + + + + Gets a value indicating whether this instance has an active schema transformation. + + + true if this instance is transformation active; otherwise, false. + + + + + Gets the schema manager for the CAEX document which contains the provided XML node. + + The XML node. + The AML schema manager. + + + + Gets the schema manager for the CAEX document which contains the provided CAEX object. + + The CAEX object. + The AML schema manager. + + + + Gets the CAEX document which contains the specified CAEX object. If the CAEX object has not been inserted into a + CAEX document, + no CAEX document is returned. + + The CAEX object. + The CAEX document. + + + + Gets the CAEX document which contains the specified XML node. + + The CAEXDocument, containing the XML node. + + + + + Loading a CAEX file from the specified Byte-Array. + + The CAEX file to load + + A CAEXDocument containing the CAEX-Nodes + + + + + Create a CAEX document with content, loaded from a file. The schema version of the CAEX document is set accordingly + to the + SchemaVersion-Attribute of the CAEXFile object. + + The file path. + + The created CAEX document. + + filePath + + + + Create a CAEX document with content, loaded from a stream. The schema version of the CAEX document is set + accordingly to the SchemaVersion-Attribute of the CAEXFile object. + + The content stream. + + The CAEX document. + + inStream + + + + Creates a new empty CAEX document containing only the CAEXFile Element as the root element. The CAEX document is + created, + using the default schema version . + + The created CAEX document containing the CAEXFile root element. + + + + Creates a new empty CAEX document containing only the CAEXFile element as the root element. The CAEX document is + created using the + specified schema version. The specified schema version defines the applicable editing methods. + + The schema version which defines the CAEX document. + + The created CAEX document containing the CAEXFile root element. + + + + + Saves the CAEX document to the specified file path. + + The file path to save the document to. + Set to true, if pretty printing is desired. + filename + + + + Saves the CAEX document to the specified file path. + + Set to true, if pretty printing is desired + The stream, containing the CAEX document content. + + + + Checks if the document is schema compliant. + + Log of schema violations. + true, if the CAEX document is schema compliant; otherwise false. + + + + Gets the correct XName for the provided CAEX element name (Tag name).The XName contains a namespace, + if the assigned schema requires a namespace. If no namespace is defined for the assigned schema (as + in CAEX 2.15), no namespace is added to the XName. The XName has to be used for all Xml.Linq queries, + used to access objects with the CAEX element name. + + A CAEX Tag name which should be transformed to a XName. + The generated XName. + tag name + + + + This method is called when a transformation service notifies the end of a schema transformation. The finalization + performs a final scan and deletes elements and attributes which are not schema conform and adds required attributes + and elements which are missing. + + + + + This method is called when a transformation service notifies the start of a schema transformation. + The transformation is initialized with a new schema conform CAEX document, containing the content + of the source document. + + The target schema (needs to be different to the actual schema). + the prepared document, returned to the transformation service for further processing. + + + + This class is a wrapper for the CAEX element 'CAEXFile' which is the root-element of any CAEX document. + + + + + + Initializes the class. + + + + + Initializes a new CAEXWrapper of the 'CAEXFile' element. + + The CAEXFile XML node. + + + + Gets the collection of AttributeTypeLib objects contained in the CAEXFile. + + + + + Gets the collection of ExternalReference objects contained in the CAEXFile. + + + + + Gets and sets the FileName attribute of the CAEXFile + + + + + Gets the collection of InstanceHierarchy objects contained in the CAEXFile. + + + + + Gets the collection of InterfaceClassLib objects contained in the CAEXFile. + + + + + Gets a value indicating whether this instance is empty. + + + + + Gets the collection of RoleClassLib objects contained in the CAEXFile. + + + + + Gets and sets the SchemaLocation attribute of the CAEXFile. + + + + + Gets and sets the SchemaVersion attribute of the CAEXFile. + + + + + Gets the collection of SourceDocumentInformation objects contained in the CAEXFile. + + + + + Gets the collection of SuperiorStandardVersion objects contained in the CAEXFile. + The value of the SuperiorStandardVersion object is defined as a string. + + + + + Gets the collection of SystemUnitClassLib objects contained in the CAEXFile. + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Gets an enumerator that enables enumeration of all libraries in the CAEX file. + + Libraries enumerator of the CAEX file + + + + Retrieves the file name including full path out of the CAEX document. + + the file name including full path of the CAEX document + copied from externalization extensions + + + + Inserts the specified CAEX object in it's associated sequence. The CAEXFile + defines the , , + , , + and sequences. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the given position. The CAEXFile + defines the , , + , , + and sequences. + + the position + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + The class CAEXObject is derived from CAEXBasicObject, augmented by the CAEX Attributes Name(required) and + ID(optional). + + + + + + Specifies the format used for GUIDs. Format "D" is NOT adding {} around the GUID + + + + + Initializes a new instance of the class. + + Any CAEX object XML node. + + + + Gets and sets a unique identifier of the CAEX object (optional in CAEX). AutomationML requires IDs for some + Elements. + These IDs are automatically set when such elements are created. + + + + + Gets and sets the name of the CAEX object (required in CAEX). + + + + + Assigns the new unique identifier as a new ID to this CAEX object. + + + + + Gets the CAEX path for this object. A path can be used to uniquely reference an object, + for example in inheritances and instances. The path syntax for an object is defined + differently in CAEX 2.15 and CAEX 3.0. The engine uses the to generate + the CAEX path of an object according to the documents CAEX version. + + + Paths require the definition of separators between different path elements. CAEX 2.15 distinguishes + between 4 separator types: + Alias separator, object separator, interface separator and attribute separator. + In CAEX 3.0 only the separator types Alias separator and object separator are used. + + Please note that this method returns a different result than the + method, which always returns + the path including the object names of all ancestor hierarchy levels. + + + + The CAEX path. + + + + + Gets a new unique identifier. + + + + + Creates a deep copy of this CAEX object, containing all child elements. + The created copy will have replaced unique IDs and updated references, if + the is set to true (default). + When a CAEX class is copied, the nested classes that can exist for AttributeType, + RoleClass, SystemUnitClass, and InterfaceClass are + not included in the created copy. + + + if set to true a deep copy is created; otherwise only the attributes are included in the + copy. The default value is true. + + + if set to true all elements with IDs get unique + IDs and the ID references will be updated. The default value is true. + + + if set to true sub classes of SystemUnitClasses, InterfacesClasses, RoleClasses and AttributeTypes + are included in the copy. The default value is false. + + + A copy of this CAEX object with unique IDs. + + + + + Returns the value of the 'Name' attribute of this CAEX object as the string representation of the object. + + A that represents this instance. + + + + Class CAEX_CLASSModel_TagNames. + + + + + gets the CAEX-Tag name for the CAEX-wrapper type. + + Type of the CAEX wrapper. + + System.String. + + caexWrapperType + + + + The Name of the CAEX-Element 'AdditionalInformation'. This Element has no special CAEX-Wrapper. + + + + + The Name of the CAEX-Attribute 'Alias'. This is a Property in the CAEX-Wrapper + + + + + The Name of the CAEX-Element 'NominalScaledType'. CAEX-Wrapper is + + + + + The Name of the CAEX-Attribute 'RequiredValue'. This is a Property in the CAEX-Wrapper + + + + + + The Name of the CAEX-Attribute 'RequiredMaxValue'. This is a Property in the CAEX-Wrapper + + + + + + The Name of the CAEX-Attribute 'RequiredMinValue'. This is a Property in the CAEX-Wrapper + + + + + + The Name of the CAEX-Element 'OrdinalScaledType'. CAEX-Wrapper is + + + + + The Name of the CAEX-Attribute 'RequiredValue'. This is a Property in the CAEX-Wrapper + + + + + + The Name of the CAEX-Element 'Constraint'. The CAEX-Wrapper is + + + + + The Name of the CAEX-Element 'Requirements'. This is a Child of the CAEX-Wrapper + + + + + The Name of the CAEX-Element 'UnknownType'. The CAEX-Wrapper is + + + + + The Name of the CAEX-Element 'AttributeDataType' contained in the + + + + + The Name of the CAEX-Attribute 'DefaultValue'. This is a Property in the CAEX-Wrapper + + + + + + The Name of the Attribute 'CorrespondingAttributePath' of the CAEX-Element + + + + + The Name of the Attribute 'FileName' of the CAEX-Element + + + + + The Name of the CAEX-Attribute 'RefPartnerSideA'. This is a Property in the CAEX-Wrapper + + + + + + The Name of the CAEX-Attribute 'RefPartnerSideB'. This is a Property in the CAEX-Wrapper + + + + + + The Name of the CAEX-Attribute 'RefAttributeType'. This is a Property in the CAEX-Wrapper + + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'RefBaseClassPath'. This is a Property in all Classes that implement + + + + + + The Name of the CAEX-Attribute 'RefBaseRoleClassPath'. This is a Property in + + + + + The Name of the CAEX-Attribute 'RefBaseSystemUnitPath'. This is a Property in + + + + + The Name of the CAEX-Attribute 'RefRoleClassPath'. This is a Property in + + + + + The Name of the Xml-Schema Location Attribute 'xsi:noNamespaceSchemaLocation' + + + + + The Name of the Xml-Schema Version Attribute 'SchemaVersion' of the CAEX-Element + + + + + The Name of the CAEX-Attribute 'RefSemantic'. A Property in . + + + + + The Name of the CAEX-Attribute 'RoleAttributeName' in an AttributeNameMapping. The CAEX-Wrapper is + . + + + + + The Name of the CAEX-Attribute 'RoleInterfaceID' in an InterfaceIDMapping. The CAEX-Wrapper is + . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'RoleInterfaceName' in an InterfaceNameMapping. The CAEX-Wrapper is + . + + + Changed to in CAEX 3.0 + + + + + The Name of the CAEX-Element 'Attribute'. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Attribute 'SystemUnitAttributeName' in an AttributeNameMapping. The CAEX-Wrapper is + . + + + + + The Name of the CAEX-Attribute 'SystemUnitInterfaceID' in an InterfaceIDMapping. The CAEX-Wrapper is + . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'SystemUnitInterfaceName' in an InterfaceNameMapping. The CAEX-Wrapper is + . + + + Changed to in CAEX 3.0 + + + + + The Name of the CAEX-Attribute 'Unit' of the CAEX-Element + + + + + The Name of the CAEX-Element 'AttributeValueRequirement'. This is a Property in the CAEX-Wrapper + + + + + + The Name of the CAEX-Attribute 'Value'. A Property in the CAEX-Wrapper . + + + + + The TypeName of the CAEX-Element 'AttributeType'. The CAEX-Wrapper is for the + Type. + + + Applicable since CAEX-Version 3.0 + + + + + The TypeName of the CAEX-Element 'AttributeType'. The CAEX-Wrappers are . + + + Applicable since CAEX-Version 3.0 + + + + + The TypeName of the CAEX-Element 'AttributeTypeLib'. The CAEX-Wrappers are . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Element 'CAEXFile'. The CAEX-Wrapper is . + + + + + The Type Name of any CAEXBasicObject. The CAEX-Wrapper is . + + + + + The Type Name of any CAEXObject. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Attribute 'ChangeMode'. This is an attribute of any . + + + + + The Name of the CAEX-Element 'Copyright'. This is an element in any Header . + + + + + The Name of the CAEX-Element 'Copyright'. This is an element in any Header . + + + + + The Name of the CAEX-Element 'ExternalInterface'. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Element 'ExternalReference'. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Attribute 'ID'. This is defined for every . + + + + + The Name of the CAEX-Element 'InstanceHierarchy'. CAEX-Wrapper is . + + + + + The Name of the CAEX-Element 'InterfaceClass'. The CAEX-Wrappers are and + + + + + + The Name of the CAEX-Element 'InterfaceClassLib'. The CAEX-Wrapper is . + + + + + The TypeName of the CAEX-Element 'InterfaceClass'. The CAEX-Wrappers are and + for the Type. + + + + + The Name of the CAEX-Element 'InternalElement'. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Element 'InternalLink'. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Attribute 'LastWritingDateTime' defined in + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Element 'AttributeNameMapping'. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Element 'InterfaceIDMapping'. The CAEX-Wrapper is . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Element 'InterfaceNameMapping'. The CAEX-Wrapper is . + + + Changed to since CAEX-Version 3.0 + + + + + The Name of the CAEX-Element 'MappingObject'. The CAEX-Wrapper is . + + + + + The Name of the Type of the CAEX-Element 'MappingObject'. The CAEX-Wrapper is . + + + + + The Name of the additional AutomationML-CaexFile-Attribute 'AutomationMLVersion'. + + + Deprecated since CAEX-Version 3.0 + + + + + The meta attribute name document identifier is used to identify . + + + + + The meta attribute name document version is used to identify defined + in the of a . + + + + + The Name of the additional AutomationML-CaexFile-Element 'WriterHeader'. + + + Deprecated since CAEX-Version 3.0 + + + + + The meta WriterID string + + + + + The meta WriterName string + + + + + The meta WriterProjectID string + + + + + The meta WriterProjectTitle string + + + + + The meta WriterRelease string + + + + + The meta WriterVendor string + + + + + The meta WriterVendorURL string + + + + + The meta WriterVersion string + + + + + The Name of the CAEX-Attribute 'Name'. This is an Element in every . + + + + + The Name of the CAEX-Attribute 'OriginID'. This is an Element in every + . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'OriginName'. This is an Element in every + . + + + + + The Name of the CAEX-Attribute 'OriginProjectID'. This is an Element in every + . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'OriginProjectTitle'. This is an Element in every + . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'OriginRelease'. This is an Element in every + . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'OriginVendor'. This is an Element in every + . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'OriginVendorURL'. This is an Element in every + . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'OriginVersion'. This is an Element in every + . + + + + + The Name of the CAEX-Attribute 'Path'. This is defined in + + + + + The Name of the CAEX-Element 'RefSemantic'. This is a CAEX-Element with the CAEX-Wrapper + + + + + + The Name of the CAEX-Element 'AuthorName'. This is an element in . + + + + + The Name of the CAEX-Element 'Comment'. This is an element in . + + + + + The Name of the CAEX-Element 'RevisionDate'. This is an element in . + + + + + The Name of the CAEX-Element 'NewVersion'. This is an element in . + + + + + The Name of the CAEX-Element 'OldVersion'. This is an element in . + + + + + The Name of the CAEX-Element 'Revision'. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Element 'RoleClass'. The CAEX-Wrappers are and + . + + + + + The Name of the CAEX-Element 'RoleClassLib'. The CAEX-Wrapper is . + + + + + The TypeName of the CAEX-Element 'RoleClass'. The CAEX-Wrappers are and + for the Type. + + + + + The Name of the CAEX-Element 'RoleRequirements'. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Element 'SourceDocumentInformation'. CAEX-Wrapper is + . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Element 'SourceObjectInformation'. CAEX-Wrapper is . + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Attribute 'SourceObjID'. This Attribute is defined in + . + + + Applicable since CAEX-Version 3.0 + + + + + The TypeName of the CAEX-Element 'SuperiorStandardVersion'. + + + Applicable since CAEX-Version 3.0 + + + + + The Name of the CAEX-Element 'SupportedRoleClass'. The CAEX-Wrapper is . + + + + + The Name of the CAEX-Element 'SystemUnitClass'. The CAEX-Wrappers are and + . + + + + + The Name of the CAEX-Element 'SystemUnitClassLib'. The CAEX-Wrapper is . + + + + + The TypeName of the CAEX-Element 'SystemUnitClass'. The CAEX-Wrappers are and + for the Type. + + + + + The Name of the CAEX-Element 'Version'. This may be defined in every . + + + + + The CAEXNamespace of a CAEX Document + + + Applicable since CAEX-Version 3.0 + + + + + Enumeration defining possible ChangeMode values of the ChangeMode Attribute + + + + + corresponds to attribute value 'state' + + + + + corresponds to attribute value 'create' + + + + + corresponds to attribute value 'delete' + + + + + corresponds to attribute value 'change' + + + + + corresponds to a null attribute value + + + + + This Class is a wrapper for the CAEXElement 'InstanceHierarchy' which is a Container element + for a hierarchy of InternalElements. + + + + + + + Initializes a new instance of the class. + + An 'nstanceHierarchy' XML node. + + + + The constructor function for the . + + + + + Gets the List of wrappers for the InternalElements of the top level of the InstanceHierarchy. + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Inserts the specified CAEX object in it's associated sequence. The InstanceHierarchy + defines the sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the given position. The InstanceHierarchy + defines the sequence. + + + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This Class is a wrapper for the CAEXElement 'InterfaceClass' + + + + + + + + Creates a Wrapper for the specified XElement, if it is a CAEX InterfaceClass. + + An 'InterfaceClass' or 'ExternalInterface' XML node. + + + + Gets the collection of Attributes for this Instance + + + + + Gets the attributes and all nested attributes. + + + + + Gets the collection of ExternalInterface objects including all nested descendant interfaces + + + + + Gets and sets the ReferencedBaseClass for this instance. + + + + + Gets the collection of ExternalInterfaces for this Instance. + + + Nested Interfaces are allowed only in AMLDocuments based on CAEX Version 3.0 and later. + + + + + Gets and sets the path which references a base class + + + + + Conversion to get access to specific AutomationML defined Attributes, assigned to the specified InterfaceClass + object. + + The CAEX InterfaceClass object. + + The InterfaceClass object, converted to an type, which provides access to + specific AML defined attributes. + + interfaceClass + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + + + + Inserts the specified CAEX object in it's associated sequence. The InterfaceClass + defines the and sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the given position. The InterfaceClass + defines the and sequence. + + + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This Class is a wrapper for the CAEXElement 'InterfaceFamilyType' + + + + + + + + + Initializes a new instance of the class. + + An 'InterfaceClass' XML node. + + + + The constructor function for the . + + + + + Gets and sets the ReferencedBaseClass for this instance. + + + + + Gets the collection of InterfaceClass objects contained in this instance. + + + + + Gets and sets the path which references a base class. + This property is used to create class to class relations between InterfaceClass objects. + According to CAEX, a class shall not inherit from itself or + from a derivative of itself, therefore any cyclic reference is denied. + + + + + Gets the name (not the full path) of the referenced base class. + + The name of the referenced class. + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + + + + Creates an ExternalInterface object as an instance of this InterfaceClass object. All Base-Class references + are resolved to create the instance - copying the Attribute and ExternalInterface objects to the + created ExternalInterface object. The IDs of the ExternalInterface objects are made unique. + + The ExternalInterface object + + + + Creates a ExternalInterface object as an instance of this InterfaceClass object. + All Base-Classes are resolved to create the instance. + + The CAEXWrapper for the ExternalInterface + + + + Gets the Enumerator for the enumeration of the field. + + Enumerator for InterfaceClass + + + + Gets the Enumerator for the enumeration of the field. + + Enumerator for InterfaceClass + + + + Gets the reference (Inheritance) hierarchy including this instance in an ordered sequence of ancestors. + + Collection of base classes + + + + Gets the reference (Inheritance) hierarchy including this instance in an ordered sequence of ancestors. + + Type of the CAEX class in the hierarchy. + a queue of ancestors. this instance is first in the queue + + + + Inserts the specified CAEX object in it's associated sequence. The InterfaceFamilyType + defines the sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence. The InterfaceFamilyType + defines the sequence. + + The position + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This Class is a wrapper for the CAEXElement 'InternalElement'. + + + + + + + Initializes a new instance of the class. + + An 'InternalElement' XML node. + + + + The constructor function for the . + + + + + Gets a value indicating whether this instance is a master. + + + + + Determines, if this instance is a Mirror + + + + + Gets the MappingObject of an InternalElement + + + Only valid for CAEX 2.15. Don't use this property for later versions of CAEX. + + + + + Gets and sets the Master. A Master is only defined, if this instance is a . Setting a master + will transform this + instance into a mirror. + + + + + Gets the master. + + + + + Gets the master identifier, if this InternalElement is a mirror . + + + + + Gets and sets the RefBaseSystemUnitPath Attribute of an InternalElement. + For Class assignments the property is appropriate. + + + + + Gets all role references for the InternalElement. The collection includes all + RoleRequirement objects and SupportedRoleClass objects. + + + + + Gets the collection of RoleRequirements objects contained in this instance. + + + + + Gets and sets the referenced SystemUnitClass using the + + + + + Adds a RoleClass reference to this InternalElement object using the provided + RoleClass object. The RoleClass reference is added as + a object. For CAEX documents which are + based on CAEX version 2.15, only one RoleRequirement is allowed for an InternalElement. + Additional RoleClass references are automatically added as SupportedRoleClass objects. + + The RoleClass to be assigned to the InternalElement. + if set to true [add supported role class]. + + if set to true, the RoleClass reference is not added, if a reference to the + provided RoleClass already exists. + + + if set to true, the reference is created as am instance of the RoleClass, + containig all ExternalInterfaces and Attributes of the RoleClass. + + The new added RoleClass reference, which is either a RoleRequirement + or a SupportedRoleClass. + + roleClass + + The default behaviour is, that only a reference to the role class is added and no instance of + the class containing all Attributes and ExternalInterface objects. If an instance is required, + set the optional parameter 'addInstance' to true or + use the + and the methods. + + + This sample shows how to call the method using + a standard base RoleClass from the + + + var amlBaseRoleClassLib = AutomationMLBaseRoleClassLibType.RoleClassLib (myDocument); + var myIH = myDocument.CAEXFile.InstanceHierarchy.Append ("myIH"); + var myIE = myIH.InternalElement.Append("myIH"); + myIE.AddRoleClassReference (amlBaseRoleClassLib.AutomationMLBaseRole); + + + + + + Adds a RoleClass reference to this InternalElement object using the provided + CAEX path, referencing a RoleClass object. The RoleClass reference is added as + a object. For CAEX documents which are + based on CAEX version 2.15, only one RoleRequirement is allowed for an InternalElement. + Additional RoleClass references are added as SupportedRoleClass objects. + + + The CAEX path referencing a RoleClass to be assigned + to the InternalElement. + + + if set to true the reference is not added, if the + same reference already exists. + + + if set to true, the reference is created as an instance of the RoleClass, + identified by the provided roleClassReference, + containig all ExternalInterfaces and Attributes of the RoleClass. + + The new added RoleClass reference, which is either a RoleRequirement + or a SupportedRoleClass. + + roleClassReference + + The default behaviour is, that only a reference to the role class is added + and no instance of the class containing all Attributes and ExternalInterface objects. + If an instance is required, set the optional parameter 'addInstance' to true + or use the and + the methods, + + + This sample shows how to call the method using + a standard RoleClass path defined in the + + var myIH = myDocument.CAEXFile.InstanceHierarchy.Append ("myIH"); + var myIE = myIH.InternalElement.Append("myIH"); + myIE.AddRoleClassReference (AutomationMLBaseRoleClassLib.AutomationMLBaseRole); + + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Creates a new mirror element from this InternalElement + + + + + Creates a system unit class from this InternalElement instance. RoleRequirements are transformed to + SupportedRoleClasses. + Attributes and ExternalInterfaces of RoleRequirements are removed. + + + + + + Determines whether this InternalElement object has an associated reference to + a RoleClass which is a generalization of the specified which means, that the + specified RoleClass + is more specific than any already associated RoleClass of this InternalElement. + + The RoleClass object. + + true if this InternalElement object has an associated RoleClass, + which is a generalization of the specified RoleClass; otherwise, false. + + roleClass + + + + Determines whether this InternalElement object has an associated RoleClass reference + which is a generalization of the specified CAEX path role reference. + + The role reference. + + true if this InternalElement object has an associated RoleClass reference + which is a generalization of the specified CAEX path role reference; otherwise, false. + + roleReference + + + + Determines whether this InternalElement object has an associated reference to + the specified RoleClass. If inheritance relations between role classes should be regarded, the + optional parameter 'regardInheritance' should be set. In this case the specified RoleClass is either identical + to a referenced RoleClass or a referenced RoleClass is derived from the specified RoleClass. + + The RoleClass object. + + if set to true inheritance relations + are regarded (default is false). + + + true if this InternalElement object has an associated reference to + the specified RoleClass; otherwise, false. + + roleClass + + This sample shows how to call the method using + a standard base RoleClass from the + + + var amlBaseRoleClassLib = AutomationMLBaseRoleClassLibType.RoleClassLib (myDocument); + InternalElementType internalElement; + ... + internalElement.HasRoleClassReference (amlBaseRoleClassLib.AutomationMLBaseRole); + + + + + + Determines whether this InternalElement object has an associated reference to + the specified SystemUnitClass. If inheritance relations between systemUnitClasses should be regarded, the + optional parameter 'regardInheritance' should be set. In this case the specified SystemUnitClass is either + identical + to a referenced SystemUnitClass or a referenced SystemUnitClass is derived from the specified SystemUnitClass. + + The SystemUnitClass object. + + if set to true inheritance relations + are regarded (default is false). + + + true if this InternalElement object has an associated reference to + the specified SystemUnitClass; otherwise, false. + + roleClass + + + + Determines whether this InternalElement object has an associated RoleClass reference + with the specified CAEX path role reference. If inheritance relations between role classes should be regarded, the + optional parameter 'regardInheritance' should be set. In this case the specified RoleClass is either identical + to a referenced RoleClass or a referenced RoleClass is derived from the specified RoleClass. + + The role reference. + + if set to true inheritance relations + are regarded (default is false). + + + true if this InternalElement object has an associated RoleClass reference + with the specified CAEX path role reference; otherwise, false. + + roleReference + + This sample shows how to call the method using + a standard base RoleClass path from the + + + InternalElementType internalElement; + ... + internalElement.HasRoleClassReference (AutomationMLBaseRoleClassLib.AutomationMLBaseRole); + + + + + + Inserts the specified CAEX object in it's associated sequence. The InternalElement + defines the sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the given position. The InternalElement + defines the sequence. + + The position. + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Adding a new MappingObject element to this InternalElement. + + + The new MappingObject element if not existing, otherwise the existing. + + An InternalElement object doesn't exist! + Raised if applied to CAEX 3.0 and later versions. + + Only valid for CAEX 2.15. Don't use this method for later versions of CAEX. If used for later versions, a + SchemaConformanceException is raised. + + + + + Replaces an existing role class reference to the provided role or any generic base role of the provided role + by a new instance of the role class. + + The role class. + if set to true a supported role class is created. + + roleClass + roleClass + + + + This Class is a wrapper for the CAEXElement 'MappingObject' + + + + + + Initializes a new instance of the class. + + A 'MappingObject' XML node. + + + + Gets the Role reference, which can provide additional RoleClass Mapping elements/>. + + + + + Gets the collection of AttributeNameMapping objects contained in this instance. + + + + + Gets the collection of InterfaceIDMapping objects contained in this instance. + + + InterfaceIDMapping Elements are only defined since CAEX Version 3.0. + + + + + Gets the collection of InterfaceNameMapping objects contained in this instance. + + + InterfaceNameMapping Elements are only defined in CAEX Version 2.15. + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Inserts the specified CAEX object in it's associated sequence. The MappingType + defines the , and + sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence at the given position. The MappingType + defines the , and + sequence. + + The position + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This Class is a wrapper for the CAEXElement 'Revision' which contains organizational information about the state of + the revision of a CAEX object + + + + + + Initializes a new instance of the class. + + The 'Revision' XML node. + + + + Gets or sets the name of the author. + + + The name of the author. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the new version. + + + The new version. + + + + + Gets and sets the provided CAEX object as the new version. + + + + + Gets or sets the old version. + + + The old version. + + + + + Gets and sets the provided CAEX object as the old version. + + + + + Gets or sets the revision date. + + + The revision date. + + + + + This Class is a wrapper for the CAEXElement 'RoleClass' + + + + + + + + Initializes a new instance of the class. + + A 'RoleClass' XML node. + + + + Gets the collection of Attribute objects contained in this instance. + + + + + Gets the attributes and all nested attributes. + + + + + Gets the collection of ExternalInterface objects including all nested descendant interfaces + + + + + Gets the collection of ExternalInterface objects contained in this instance. + + + + + Conversion to get access to specific AutomationML defined Attributes + + The CAEX object. + + The result of the conversion. + + caexObject + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Gets the CAEX Container for elements of type T, which is owned by this CAEX object + + + + The CAEX container + + + + + Inserts the specified CAEX object in it's associated sequence. The RoleClass + defines the and sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence. The RoleClass + defines the and sequence. + + + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This Class is a wrapper for the CAEXElement 'RoleFamilyType' which defines base structures for role class + definitions. + The RoleFamilyType Type allows the creation of role class trees + + + + + + + + + Initializes a new instance of the class. + + A 'RoleClass' XML node. + + + + The constructor function for the . + + + + + Gets and sets the BaseClass for this instance. According to CAEX, a class shall not inherit from itself or + from a derivative of itself, therefore any cyclic reference is denied. + + + + + Gets and sets the path which references a base class. According to CAEX, a class shall not inherit from itself or + from a derivative of itself, therefore any cyclic reference is denied. + + + + + Gets the name (not the full path) of the referenced base class. + + The name of the referenced class. + + + + Gets the collection of RoleClass objects contained in this instance. + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + + + + Creates a RoleRequirements object as an instance of this RoleClass object. All Base-Class references + are resolved to create the instance - copying the Attribute and ExternalInterface objects to the + created RoleRequirements object. The IDs of the ExternalInterface objects are made unique. + + The RoleRequirements object + + + + Creates a RoleRequirement as an instance of this RoleClass object. All Base-Class references + are resolved to create the instance. + + The CAEXWrapper as a RoleRequirement + + + + Creates a SupportedRoleClass object from this RoleClass. + + The created SupportedRoleClass + + + + Gets the Enumerator for the enumeration of the field. + + + An enumerator that can be used to iterate through the collection. + + + + + Gets the Enumerator for the enumeration of the field. + + + An enumerator that can be used to iterate through the collection. + + + + + Gets the reference (Inheritance) hierarchy including this instance in an ordered sequence of ancestors. + + Enumerator of base classes. + + + + Gets the reference (Inheritance) hierarchy including this instance in an ordered sequence of ancestors. + + The class type. + A queue of ancestors. this instance is first in the queue + + + + Inserts the specified CAEX object in it's associated sequence. The RoleFamilyType + defines the sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence. The RoleFamilyType + defines the sequence. + + + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This Class is a wrapper for the CAEXElement 'SystemUnitClassLib'. + + + + + + Gets a collection of SystemUnitClass objects contained in this instance. + + + + + Initializes the class. + + + + + Initializes a new instance of the class. + + A 'SystemUnitClassLib' XML node. + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + Inserts the specified CAEX object in it's associated sequence. The SystemUnitClassLibType + defines the sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence. The SystemUnitClassLibType + defines the sequence. + + + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + This Class is a wrapper for the CAEXElement 'SystemUnitClass' that allows definition of child SystemUnitClasses + within the class hierarchy. + The parent child relation between two SystemUnitClasses has no semantic. + + + + + + + + + + Initializes a new instance of the class. + + A 'SystemUnitClass' or 'InternalElement' XML node. + + + + Gets the collection of Attribute objects for this instance. + + + + + Gets the attributes and all nested attributes. + + + + + Gets the collection of ExternalInterface objects including all nested descendant interfaces + + + + + Gets a collection of ExternalInterface objects contained in this instance. + + + + + Gets the collection of InternalElement objects for this instance. + + + + + Gets the collection of InternalLink objects contained in this instance. + + + + + Gets all role references for the SystemUnitClass. The collection includes all + RoleRequirement objects and SupportedRoleClass objects. + + + + + Gets the collection of SupportedRoleClass objects contained in this instance. + + + + + Get the RoleClass from the sequence of with the provided + . + + Name of the role class. + The supported RoleClass object with the provided name if existent, otherwise null. + + + + Conversion to get access to specific AutomationML defined Attributes + + The CAEX object. + + The result of the conversion. + + caexObject + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + The CAEX object, contained in a sequence, owned by this CAEX object. + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + + + + Enumeration of contained InternalElement objects + + + An enumerator that can be used to iterate through the collection. + + + + + Enumeration of contained InternalElement objects + + An enumerator that can be used to iterate through the collection. + + + + Inserts the specified CAEX object in it's associated sequence. The SystemUnitClass + defines the , , + , , and + sequence. + + The CAEX object. + + if set to true it is inserted as the + first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence. The SystemUnitClass + defines the , , + , , and + sequence. + + + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; If a copy of the CAEX + object has been inserted + or the provided CAEX object doesn't represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object and not the original + provided CAEX Object is inserted. + Please keep in mind, that the copied object + contains identical attributes and elements. It might not represent a valid AutomationML object, because IDs and + references are + not automatically modified. + + + + + Inserts the provided CAEX object as a new sibling after this CAEX object. + + The CAEX object to be inserted. + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Inserts the provided CAEX object as a new sibling before this CAEX object. + + The CAEX object to be inserted + caexObject + The provided object is not allowed to be a sibling of this instance. + + + + Gets the Lowest common parent to this SystemUnitClass and the provided SystemUnitClass. The common parent is used + to + store an InternalLink relating this two SystemUnitClass objects. An InternalLink is not allowed to leave the + boundary of + a SystemUnitClass which means, that no common parent is defined for two different SystemUnitClass objects. If one + Element + is a SystemUnitClass the other one should be an InternalElement descendant of the SystemUnitClass. + + The system unit class. + the SystemUnitClass object which is the lowest common parent + systemUnitClass + + + + Determines whether this CAEX Element has an associated reference to + the specified InterfaceClass. If inheritance relations between InterfaceClasses should be regarded, the + optional parameter 'regardInheritance' should be set. In this case the specified InterfaceClass is either identical + to a referenced InterfaceClass or a referenced InterfaceClass is derived from the specified InterfaceClass. + + The InterfaceClass object. + + if set to true inheritance relations + are regarded (default is false). + + + true if this CAEX Element object has an associated reference to + the specified InterfaceClass; otherwise, false. + + roleClass + + This sample shows how to call the method using + a standard base InterfaceClass from the + + + var amlInterfaceClassLib = AutomationMLInterfaceClassLibType.InterfaceClassLib (myDocument); + InternalElementType internalElement; + ... + internalElement.HasInterfaceClassReference (amlInterfaceClassLib.COLLADAInterface); + + + + + + Adds an InterfaceClass reference to this SystemUnitClass object using the provided + InterfaceClass object. The InterfaceClass reference is added as + a object. + + The InterfaceClass to be assigned to the SystemUnitClass. + + if set to true, the InterfaceClass reference is not added, if a reference to the + provided InterfaceClass already exists. + + + if set to true, the reference is created as am instance of the InterfaceClass, + containig all ExternalInterfaces and Attributes of the InterfaceClass. + + The new added InterfaceClass reference. + + interfaceClass + + The default behaviour is, that only a reference to the interface class is added and no instance of + the class containing all Attributes and ExternalInterface objects. If an instance is required, + set the optional parameter 'addInstance' to true or + use the + and the methods. + + + This sample shows how to call the method using + a standard base InterfaceClass from the + + + var amlInterfaceClassLib = AutomationMLInterfaceClassLibType.InterfaceClassLib (myDocument); + var myIH = myDocument.CAEXFile.InstanceHierarchy.Append ("myIH"); + var myIE = myIH.InternalElement.Append("myIH"); + myIE.AddInterfaceClassReference (amlInterfaceClassLib.AutomationMLBaseInterface); + + + + + + Adds an InterfaceClass reference to this SystemUnitClass object using the provided + CAEX path, referencing an InterfaceClass object. The InterfaceClass reference is added as + a object. + + + The CAEX path referencing a InterfaceClass to be assigned + to the SystemUnitClass. + + + if set to true the reference is not added, if the + same reference already exists. + + + if set to true, the reference is created as an instance of the InterfaceClass, + identified by the provided interfaceClassReference, + containig all ExternalInterfaces and Attributes of the InterfaceClass. + + The new added InterfaceClass reference. + + interfaceClassReference + + The default behaviour is, that only a reference to the interface class is added + and no instance of the class containing all Attributes and ExternalInterface objects. + If an instance is required, set the optional parameter 'addInstance' to true + or use the and + the methods, + + + This sample shows how to call the method using + a standard InterfaceClass path defined in the + + var myIH = myDocument.CAEXFile.InstanceHierarchy.Append ("myIH"); + var myIE = myIH.InternalElement.Append("myIH"); + myIE.AddInterfaceClassReference (AutomationMLInterfaceClassLib.AutomationMLBaseInterface); + + + + + + This Class is a wrapper for the CAEXElement 'SystemUnitFamilyType' which defines base + structures for a hierarchical SystemUnitClass tree. The hierarchical structure has + organizational character only. The class supports direct enumeration of the Tree. + + + + + + + + + Initializes a new instance of the class. + + A 'SystemUnitClass' XML node. + + + + Gets and sets the BaseClass for this instance. According to CAEX, a class shall not + inherit from itself or from a derivative of itself, therefore any cyclic reference is denied. + + + + + Gets and sets the path which references a base class. According to CAEX, a class shall + not inherit from itself or from a derivative of itself, therefore any cyclic reference + is denied. + + + + + Gets the name (not the full path) of the referenced base class. + + The name of the referenced class. + + + + Gets a collection of SystemUnitClass objects of this instance. + + + + + The constructor function for the . + + + + + Adds a RoleClass reference to this SystemUnitClass object using the provided RoleClass + object. The RoleClass reference is added as a object. + + The RoleClass to be assigned to the SystemUnitClass. + + if set to true, the RoleClass reference is not added, if a reference to the + provided RoleClass already exists. + + The new added RoleClass reference. + roleClass + + This sample shows how to call the method using a standard base RoleClass from the + + var amlBaseRoleClassLib = AutomationMLBaseRoleClassLibType.RoleClassLib (myDocument); + var mySlib = myDocument.CAEXFile.SystemUnitClassLib.Append ("mySlib"); + var mySuc = mySlib.SystemUnitClass.Append("mySuc"); + mySuc.AddRoleClassReference (amlBaseRoleClassLib.AutomationMLBaseRole); + + + + + + Adds a RoleClass reference to this SystemUnitClass object using the provided CAEX path, + referencing a RoleClass object. The RoleClass reference is added as a object. + + + The CAEX path referencing a RoleClass to be assigned to the SystemUnitClass. + + + if set to true the reference is not added, if the same reference already exists. + + The new added RoleClass reference, which is a SupportedRoleClass. + roleClassReference + + This sample shows how to call the + method using a standard RoleClass path defined in the + + var mySlib = myDocument.CAEXFile.SystemUnitClassLib.Append ("mySlib"); + var mySuc = mySlib.SystemUnitClass.Append("mySuc"); + mySuc.AddRoleClassReference (AutomationMLBaseRoleClassLib.AutomationMLBaseRole); + + + + + + Gets the CAEXSequence owned by this CAEX object, which contains the specified CAEX object. + + + The CAEX object, contained in a sequence, owned by this CAEX object. + + + The CAEX sequence or null, if no sequence exists, containing the specified CAEX object. + + + + + + + + Creates an InternalElement as an instance of this class. All References to Base classes + are resolved. + + + If the document is based on CAEX 2.15 and the SystemUnitClass provides only one + Supported role class, the created Internal Element will contain a role requirement + object, representing the role. + + The InternalElement + + + + Creates an InternalElement as an instance of this class. All References to Base classes + are resolved. + + CAEXWrapper for the InternalElement + + + + Gets the Enumerator for the enumeration of the field. + + An enumerator that can be used to iterate through the collection. + + + + Gets the Enumerator for the enumeration of the field. + + An enumerator that can be used to iterate through the collection. + + + + Gets a collection of SupportedRoleClasses objects of this SystemUnitClass and of all + inherited BaseClasses. Duplicates are removed from the result. + + A collection of SupportedRoleClass objects for this instance and its BaseClasses. + + + + Getting a referenced SystemUnitClass. + + Full path to a SystemUnitClass + The referenced SystemUnitClass + systemUnitClassReference + + + + Gets the reference (Inheritance) hierarchy including this instance in an ordered + sequence of ancestors. + + Collection of base classes + + + + Gets the reference (Inheritance) hierarchy including this instance in an ordered + sequence of ancestors. + + Type of the CAEX class in the hierarchy. + a queue of ancestors. this instance is first in the queue + + + + Determines whether the specified RoleClass is more specific than any already associated + RoleClass of this SystemUnitClass. This method doesn't check inherited RoleClass + references from ancestors. If an assigned RoleClass is identical to the specified + RoleClass, the result is false. + + The RoleClass object. + + true if this SystemUnitFamilyType object has an associated RoleClass reference + which is a generalization of the specified RoleClass (the RoleClass is more specific); + otherwise, false. + + roleClass + + + + Determines whether the specified roleReference is more specific than any already + associated SupportedRoleClass of this SystemUnitClass. This method doesn't check + inherited RoleClass references from ancestors. If an assigned RoleClass is identical to + the specified RoleClass, the result is false. + + The RoleReference object. + + true if this SystemUnitFamilyType object has an associated SupportedRoleClass + reference which is a generalization of the specified RoleClass (the RoleClass is more + specific); otherwise, false. + + roleClass + + + + Determines whether this SystemUnitClass object has a SupportedRoleClass with a reference + to the specified RoleClass. If inheritance relations between role classes should be + regarded, the optional parameter 'regardInheritance' should be set. In this case the + specified RoleClass is either identical to a referenced RoleClass or a referenced + RoleClass is derived from the specified RoleClass. Independently of the value, always the Role assignments to this + SystemUnitClass and any ancestors of this SystemUnitClass are checked, using the method. + + The RoleClass object. + + if set to true inheritance relations are regarded (default is false). + + + true if this SystemUnitClass object has a SupportedRoleClass with a reference to + the specified RoleClass; otherwise, false. + + roleClass + + This sample shows how to call the method using a standard base RoleClass from the + + var amlBaseRoleClassLib = AutomationMLBaseRoleClassLibType.RoleClassLib (myDocument); + SystemUnitFamilyType systemUnitClass; + ... + systemUnitClass.HasRoleClassReference (amlBaseRoleClassLib.AutomationMLBaseRole); + + + + + + Determines whether this SystemUnitClass object has a SupportedRoleClass with the + specified CAEX path reference. If inheritance relation should be regarded, the optional + parameter 'regardInheritance' should be set. + + The CAEX path to a RoleClass object. + + if set to true inheritance relations are regarded (default is false). + + + true if this SystemUnitClass object has a SupportedRoleClass with the specified + CAEX path reference. + + roleClass + + This sample shows how to call the + method using a standard base RoleClass path from the + + SystemUnitFamilyType systemUnitClass; + ... + systemUnitClass.HasRoleReference (AutomationMLBaseRoleClassLib.AutomationMLBaseRole); + + + + + + Inserts the specified CAEX object in it's associated sequence. The SystemUnitFamilyType + defines the sequence. + + The CAEX object. + + if set to true it is inserted as the first item in its associated sequence. + + + true, if a sequence could be identified and the provided CAEX object is inserted; + If a copy of the CAEX object has been inserted or the provided CAEX object doesn't + represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object + and not the original provided CAEX Object is inserted. Please keep in mind, that the + copied object contains identical attributes and elements. It might not represent a valid + AutomationML object, because IDs and references are not automatically modified. + + + + + Inserts the specified CAEX object in it's associated sequence. The SystemUnitFamilyType + defines the sequence. + + + The CAEX object. + + true, if a sequence could be identified and the provided CAEX object is inserted; + If a copy of the CAEX object has been inserted or the provided CAEX object doesn't + represent a valid member of any sequence the result is false. + + + If the provided CAEX object already has an associated parent, a copy of the CAEX object + and not the original provided CAEX Object is inserted. Please keep in mind, that the + copied object contains identical attributes and elements. It might not represent a valid + AutomationML object, because IDs and references are not automatically modified. + + + + + Replaces an existing role class reference to the provided role or a generic base role of + the provided role by a new instance of the role class. + + The role class. + + roleClass + + + + The Aml.Engine.Resources Namespace gives public access to the XSD Datatype resource strings. + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:anyURI ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:base64Binary ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:boolean ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:byte ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:dateTime ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:date ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:decimal ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:double ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:duration ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:ENTITIES ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:ENTITY ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:float ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:gDay ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:gMonthDay ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:gMonth ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:gYearMonth ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:gYear ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:hexBinary ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:IDREFS ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:IDREF ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:ID ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:integer ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:int ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:language ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:long ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:Name ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:NCName ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:negativeInteger ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:NMTOKENS ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:NMTOKEN ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:nonNegativeInteger ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:nonPositiveInteger ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:normalizedString ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:positiveInteger ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:QName ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:short ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:string ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:time ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:token ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:unsignedByte ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:unsignedInt ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:unsignedLong ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die xs:unsignedShort ähnelt. + + + + + Extension class which provides an empty lookup table + + The type of the key. + The type of the element. + + + + Gets the empty lookup table instance. + + + + + This interface is defined for all CAEXObjects to which a split point can be assigned. SplitPoints are + allowed on and . + + + + + + This is the basic interface for an AML service. This interface has to be implemented + by any AML service + + + + + This is a special interface for an AML service, which uses a registry to store data about an XML Document. + + + + + Removes the document from the internal registry of the service. + + The XML document. + + + + Interface defined for services, which support automatic updates of cross references between AutomationML objects. + Updates are executed, when a referenced object changes its identification (its Name or its ID). + + + + + Gets or sets a value indicating whether this instance will automatically update + cross references between AutomationML objects. + + + true if the automatic update is enabled; otherwise, false. + + + + + Occurs when any reference has been updated. + + + + + Event arguments used to inform about update events in the service. + + + + + + Initializes a new instance of the class. + + The referenced element. + The reference. + + + + Initializes a new instance of the class. + + The referenced element. + The reference. + The updated new value for the reference + + + + Gets the updated reference. + + + + + Gets the updated new value (used in changing event notifications, if the reference has not updated). + + + + + Gets the referenced element which is triggered by the update + + + + + This interface is used to query references to CAEXObjects like references using the ID + of objects or references using the CAEXPath of objects like RoleClass or InterfaceClass + objects. + + + + + Gets the CAEX object which owns the reference. + + + + + Gets the name of the reference attribute which contains the value of the reference. + To get or set the attribute value the + an methods can be used. + + + + + Gets the reference attribute value. + + + + + This service interface defines methods to resolve external references of an AutomationML document. + If references are resolved, queries will be able to find referenced objects. Be aware, that + the resolved documents will not be merged and the references, containing an alias will not be changed. + + + + + + Loads the external reference in a new CAEXDocument. The new CAEXDocument is a separate document and no libraries + are merged to the current document. + This Method doesn't change any references, which use the alias of this + external reference. Use the service to achieve this. + + the external reference + + If the ExternalReference doesn't have an alias, the document is not loaded. If a referenced document for the alias + already exists, + the existing document is returned. + + + + + Determines, if the provided path contains an alias and gets the resolved document + for that alias if it is already resolved. If the reference has not been resolved + it is resolved. + + The CAEX document. + The path. + + the resolved document for the alias, extracted from the path. + + + + + Gets all already resolved externals for the provided CAEXDocument containing ExternalReference objects + + The CAEX document containing ExternalRefrence objects. + + An enumeration of all resolved documents. + + + + + The Query service provides methods to query relations modeled in an AutomationML document. The AMLEngine provides + a default query service based on Linq (System.Xml.Linq). To get a better performance for queries, users can + register a Lookup service which also implements this query interface but uses dictionary based queries. + If ExternalReferences should be queried too, a service should be + registered. + + + + + + Gets all classes which have references to the provided class path. Use this method to get all classes which have + a class to class relation to the class, identified by the provided classPath. If the + is + set, only classes with the defined element name are considered. + + The CAEX document which is searched through. + The class path. + + Name of the element. Valid values are 'RoleClass', 'SystemUnitClass', 'InterfaceClass' and + 'AttributeType'. + + An enumeration of all classes which use the identified class as a base class. + + + + Gets all classes which have references to the provided CAEX object. Use this method to get all classes which have + a class to class relation to the provided CAEX object. + + The CAEX object. + An enumeration of all classes which use the provided CAEX object as a base class. + + + + Gets all classes which have references to the provided CAEX object and their referencing classes (recursive). + This method extends the and gets not only the directly + derived classes of a base class but also the derived classes of these classes and further on. + + The CAEX object. + The derived classes tree for the specified base class. + + + + Gets all classes which have references to the provided CAEX object and their referencing classes (recursive). + This method extends the and gets not only the + directly + derived classes of a base class but also the derived classes of these classes and further on. If the + is + set, only classes with the defined element name are considered. + + The CAEX document which is searched through. + The class path. + + Name of the element. Valid values are 'RoleClass', 'SystemUnitClass', 'InterfaceClass' and + 'AttributeType'. + + + + + + Gets all the elements which are descendants of the provided CAEX object and are identifiable by a CAEX path. + Elements having the same path are grouped together. + Use this method to validate the existence of ambiguous CAEXPaths. + + The CAEX object. + + Lookup table of elements which are identifiable by a CAEX path. + + + + + Gets all the elements which are descendants of the provided CAEX object and use an alias reference. + Elements referencing the same Alias are grouped together. + Use this method to validate the existence of referenced externals. If the is + set, only elements with the defined element name are considered. + + The CAEX object. + If parameter is set, only elements with the given element Name are considered. + Lookup table of elements with Alias references. The Alias part of the CAEXPath is used as a dictionary key. + + + + Gets all the elements which are descendants of the provided CAEX object and use a path reference. + Elements referencing the same path are grouped together. + Use this method to validate the existence of referenced classes. If the is + set, only elements with the defined element name are considered. + + The CAEX object. + If parameter is set, only elements with the given element Name are considered. + + Lookup table of elements with path references. The CAEXPath is used as a grouping key. + + + + + Gets all the elements which are descendants of the provided CAEX object which use identifier references. + Elements referencing the same ID are grouped together. + Use this method to validate the existence of referenced IDs. If the is + set, only elements with the defined element name are considered. + + The CAEX object. + If parameter is set, only elements with the given element Name are considered. + Lookup table of elements with ID references. The ID is used as a dictionary key. + + + + Gets all the elements which are descendants of the provided CAEX object with IDs. + Elements using the same ID are grouped together. + Use this method to validate the uniqueness of IDs. + + The CAEX object. + If an ID is specified, only elements with the defined ID are searched. + + Lookup table of elements with IDs. The ID is used as a dictionary key. + + + + + Returns all Elements which are descendants of the provided CAEX object with InternalLinks. + These elements are the owners of the InternalLink objects. + The returned collection may contain InternalElements and SystemUnitClasses as well. + + The CAEX object. + + A collection of all objects with associated InternalLinks. + + + Note the difference to the method which doesn't return the + owners of an InternalLink but the related elements. + + + + + Gets all the elements which are descendants of the provided CAEX object and use a name reference. + Elements referencing the same name are grouped together. + Use this method to validate the existence of referenced elements. + + The CAEX object. + + Lookup table of elements with name references. The name is used as a grouping key. + + + + Returns all ExternalInterfaces in the provided document or optionally + in the caexObject and descendants, which are + instances of the standard Interface class + . + + The document. + Optional parameter, defining a possible start object for the query. + + A collection of all ExternalInterface which are instances of the + standard Interface class . + + + + + Returns all ExternalInterfaces in the provided document or optionally + in the caexObject and descendants, which are + instances of the Interface class defined by the provided . + + The document. + The CAEX ClassPath of the InterfaceClassType + Optional parameter, defining a possible start object for the query. + + A collection of all ExternalInterface which are + instances of the Interface class defined by the provided . + + + + + Returns all InternalElements which are descendants of the provided CAEX object with InternalLinks. + These elements are the owners of the InternalLink objects. + + The CAEX object. + + A collection of all objects with associated InternalLinks. + + + Note the difference to the method which doesn't return the + owners of an InternalLink but the related elements. + + + + + Returns all Mirrors of the specified Attribute + + The master. + + An enumeration of mirror Attribute objects + + + + + Gets alls the elements which are descendants of the provided CAEX object + which use the provided Alias in a reference. The elements in the result collection are + references, which define the CAEX object and the attribute, containing the reference + . + If the is + set, only elements with the defined element name are considered. + + The CAEX object. + The Alias. + If parameter is set, only elements with the given element Name are considered. + a collection of element references which use the provided Alias in a reference + + + + Gets alls the elements which are descendants of the provided CAEX object + which have a reference to the provided CAEXPath. The elements in the result collection are + references, which define the CAEX object and the attribute, containing the reference + . + If the is set, only elements with the defined element name are considered. + + The CAEX object. + The path. + If parameter is set, only elements with the given element Name are considered. + a collection of element references which have a reference to the provided Path^. + + + + Gets alls the elements from the document which have a reference to the provided ID. The elements in the result + collection are + references, which define the CAEX object and the attribute, containing the reference + . + If the is + set, only elements with the defined element name are considered. + + The CAEX object. + The identifier. + If parameter is set, only elements with the given element Name are considered. + a collection of element references which have a reference to the provided ID + + + + Returns all InternalElements and SystemUnitClasses which are descendants of the provided CAEX object, + which are related to others via InternalLinks. + + The CAEX object. + A collection of related SystemUnitClass objects + + Note the difference to the method which doesn't return the + related elements but the InternalLink owners. + + + + + Returns all Mirrors of the specified ExternalInterface + + The master. + + An enumeration of mirror ExternalInterface objects + + + + + Tries to locate a CAEX object from the specified ID. + If the ID uses an alias reference and an can be located, + it is tried to resolve the external reference and to get the object from the external source. + + The document. + The identifier. + + if set to true tries to resolve an alias reference with an ExternalReferenceResolver + service. + + + The CAEX object if it is found; otherwise null. + + + + + Tries to locates a CAEX object from the specified CAEX - Path. + If the path uses an alias reference and an can be located, + it is tried to resolve the external reference and to get the object from the external source. + + The document. + The path. + + if set to true tries to resolve an alias reference with an ExternalReferenceResolver + service. + + The CAEXObject if it is found; otherwise null. + + + + Returns all ExternalInterface objects which are descendants of the provided CAEX object + and are used in relations (InternalLinks). + + The CAEX object. + A collection of related ExternalInterface objects + + + + Returns all Mirrors of the specified InternalElement + + The master. + + An enumeration of mirror InternalElements. + + + + + Gets all InternalLinks that reference the specified InternalElement or SystemUnitClass. + + The InternalElement or SystemUnitClass. + a collection of InternalLinks. + + + + Gets all InternalLinks that reference the specified ExternalInterface. + + The ExternalInterface. + a collection of InternalLinks. + + + + Determines whether the specified InternalElement is referenced by other InternalElement + objects called 'Mirrors'. + + The element. + + true if the specified element is a 'Master'-InternalElement; otherwise, false. + + + + + Determines whether the specified ExternalInterface is referenced by other ExternalInterface + objects called 'Mirrors'. + + The element. + + true if the specified element is a 'Master'-ExternalInterface; otherwise, false. + + + + + Determines whether the specified AttributeType is referenced by other AttributeType + objects called 'Mirrors'. + + The attribute type + + true if the specified element is a 'Master'-Attribute; otherwise, false. + + + + + Determines whether the specified CAEX object is referenced. + + The CAEX object. + + true if the specified CAEX object is referenced; otherwise, false. + + + + + This service interface is used to get statistic data from a CAEX document. + + + + + + Counts all objects (sum of all others with specific counts) and returns the result. + + The CAEX file. + Total number of all countable objects. + + + + Counts all Attribute objects and returns the result. + + The CAEX file. + Total number of all attributes. + + + + Counts all AttributeType objects and returns the result. + + The CAEX file. + Total number of all AttributeTypes + + + + Counts all AttributeType reference objects and returns the result. + + The CAEX file. + Total number of all AttributeTypes + + + + Counts all InterfaceClass objects and returns the result. + + The CAEX file. + Total number of all InterfaceClasses + + + + Counts all ExternalInterface objects and returns the result. + + The CAEX file. + Total number of all ExternalInterfaces + + + + Counts all InternalElement objects and returns the result. + + The CAEX file. + Total number of all InternalElements + + + + Counts all InternalLink objects and returns the result. + + The CAEX file. + Total number of all InternalLinks + + + + Counts all RoleClass objects and returns the result. + + The CAEX file. + Total number of all RoleClasses + + + + Counts all RoleClass reference objects and returns the result. + + The CAEX file. + Total number of all RoleClasses + + + + Counts all SystemUnitClass objects and returns the result. + + The CAEX file. + Total number of all SystemUnitClasses + + + + Counts all SystemUnitClass reference objects and returns the result. + + The CAEX file. + Total number of all SystemUnitClasses + + + + This interface defines methods for a unique name service. The names of CAEX objects in a sequence of + elements should all be unique. If a unique name service is registered, the AML Engine will + automatically call this service for a unique name generation whenever a new element is added + to the sequence which requires a unique name for its members. + + + + + + Determines whether the specified element has a unique CAEX name in the sequence of equal elements + of its parent. + + The element. + + true if the elements name is unique, otherwise false. + + + + + Registers a new default name for the generation of unique names for the specified element. + + The CAEX Tag name defining the elements which should get the default. + The default name + + + + Resumes activities of the unique name service. + + + + + Suspends activities of the unique name service. + + + + + Creates a unique CAEX Name for a child with the specified elementTagName in the specified sequence + + The sequence of elements. + Name of the element tag. + + a unique name using the registered default extended with an added number, representing the maximal number + + + + + Creates a unique CAEX Name for a child with the specified elementTagName in the specified sequence using the + specified + defaultName + + The sequence. + Name of the element tag. + The default name. + + a unique name using the registered default extended with an added number, representing the maximal number + + + + + This interface defines properties for a validation result, generated for a single XML element. + The validation results for XML elements of a CAEX document are generated by the + service. + + + + + Gets the element which has been validated. + + + + + Gets information about the result of a repair operation for one element. + + + + + Gets information about the validation of one element. + + + + + This service interface is defined for the validation of an AML document. Additionally the + service can also be used to repair specific invalid properties in a document and to automatically + updated references to objects if the source changes. + + + + + + Validates a name of a CAEX object. Names of CAEX classes or types (RoleClasses, InterfaceClasses, + SystemUnitClasses and AttributeTypes), Attributes, + Libraries and CAEX InstanceHierarchies shall be unique across its siblings or across all child elements of the same + CAEX parent element over its life time. + This shall assure that referencing a library, a class, a type or an attribute by its path delivers a unique result. + + The CAEX object. + The name, which should be assigned to the object. + A value tuple, returning the validation result and a message + + + + Validates the ID of a CAEX object. IDs of CAEX objects shall be unique. + + The CAEX object. + + The ID, which should be assigned to the object. If no ID is defined, the uniqueness of the already + assigned ID is evaluated. + + A value tuple, returning the validation result and a message + + + + This service interface is defined for the validation of an AML document. The type parameter + of this generic interface defined the validation result type. + + The type of the validation result + + + + + + Repairs the specified validated element. + + + The validated element. + + + true if the element has been repaired, false otherwise. + + + + + Get Validation Information for all elements in the specified document, which have validation issues. The + provides detailed information about available Repair + Options and an additional Information Text. + + The CAEX document. + if set to true generate long description for each validation issue. + + A collection of validation information for CAEX objects. One CAEX object may have multiple + occurrences with different validation issues in this collection. + + + + + Get Validation Information for all elements in the specified document, which have validation issues. The + provides detailed information about available Repair + Options and an additional Information Text. This method should be used, if the Document is loaded from an + AutomationML container. The Validation service will check validity of external references which are packed + parts of the container. + + The CAEX document. + The AutomationML container, containing the document source. + if set to true generate long description for each validation issue. + + A collection of validation information for CAEX objects. One CAEX object may have multiple + occurrences with different validation issues in this collection. + + + + + Validates the alias references and returns the validation result describing possible repair options. The + provides detailed information about available Repair + Options and an additional Information Text. + + The CAEX document. + if set to true generate long description for each validation issue. + + + + + This interface defines methods for a merge service. A merge service can merge + ExternalReferences into an AML document. + + + + + + Merges the defined ExternalReference into the provided CAEXDocument. The source is loaded from the file path in the + external reference. + + The document. + The external reference. + The merge protocol. + if set to true the service performs a schema transformation if necessary. + + true, if merge was successful + + + + + Merges the defined ExternalReference into the provided CAEXDocument. The source is loaded from the provided + external source stream. + + The document. + The external reference. + The external source stream. + The merge protocol. + if set to true the service performs a schema transformation if necessary. + + true, if merge was successful + + + + + This interface defines the service interface for a split service. A split service + is able to split one into multiple files using split points. + + + + + + Removes the split point for the provided CAEX object. + + The CAEX object. + + + + Sets the split point for the provided CAEX object. If the actual list of split points for + the same document already contains a split point which is a child of the provided CAEX object, + this existing split point is removed from the list. + + The CAEX object. + + + + Splits the specified document on all currently defined split points. The + created libraries are saved in an AutomationML document and an ExternalReference + is created, using the specified alias. All remaining references to the + external source are renamed using the provided alias. After splitting, + the document doesn't contain any SplitPoints any more. + + The document. + The alias name used to define the ExternalReference. + The file path to the saved Split parts. + The CAEX document containing the split parts. + + + + Splits the specified document on only the specified split point. The + created library is saved in an AutomationML document and an ExternalReference + is created, using the specified alias. All remaining references to the + external source are renamed using the provided alias. After splitting, + the document doesn't contain this SplitPoints any more. + + The document. + The split point defining the split content. + The alias name used to define the ExternalReference. + The file path to the saved Split parts. + The CAEX document containing the splitted part. + + + + Gets a collection of all split points for the provided document. + + The document. + all split points for this document. + + + + This interface class defines a service interface for a schema transformation service + + + + + + Method to do a schema transformation for the provided document to the defined schema. + This method can be used for upward and downward transformations. + + the document to be transformed + the target schema + the transformed document + + + + Raised from the ShemaTransform service when a transformation has ended. + + + + + Raised from the ShemaTransform service when a transformation has started. + + + + + Event arguments for schema transformation events + + + + + + Initializes a new instance of the class. + + The source document. + The target schema. + + + + Gets the source document. + + + + + Gets or sets the target document. + + + + + Gets the target schema. + + + + + The UndoRedo service supports undo and redo of all changes made to a CAEXDocument. + + + + + + Begins a new transaction. All changes, made to a CAEXDocument inside a transaction are treated as a single + operation. + + The CAEX document to which the transaction should be associated. + A friendly name for this transaction. + If the transaction started + + + + Determines, if the service can redo a command + + The document. + + true if this instance can redo the specified document; otherwise, false. + + + + + Determines, if the service can undo a command + + The document. + + true if this instance can undo the specified document; otherwise, false. + + + + + Clears the undo and redo stacks. + + The document. + + + + Ends the current transaction. + + The document. + If the transaction ended + + + + Gets the date of the most recently executed command for the specified document. + + The document. + + if set to true the date of the last undo operation is returned; + otherwise the date of the last redo operation. + + + + + + Request to not record changes of the specified document. If the recording of document changes is + paused the and methods can not be applied. + + The document. + + + + A new command is pushed on the undo stack of this service. + + The command. + + + + Redo the most recently operation, which was undone + + The document. + + + + Gets all command names of the actions in the redo stack for the provided CAEX document. + + The document. + List of command names + + + + Request to resume recording changes of the specified document. + + The document. + + + + Undo of the last operation + + The document. + + + + Gets all command names of the actions in the undo stack for the provided CAEX document. + + The document. + List of command names + + + + This class is used in queries to provide information about objects, which contain references to other objects. + + + + + + Initializes a new instance of the class. + + The element. + Name of the reference attribute. + + + + Gets the CAEX object which contains the reference. + + + + + Gets the XML element, which contains the reference. + + + + + Gets the name of the reference attribute which contains the value of the reference. + To get or set the attribute value for the attribute with this name + the + and methods can be used. + + + + + Gets the reference attribute value. + + + + + This class supports the interpretation of the queryResult table which is the result of some queries, defined in + + + + + + Gets the CAEX objects from the query result. + + The queryResult. + An enumeration of all CAEX objects in the query result. + + + + Gets all the elements which are identifiable by a CAEX path. Elements having the same path are grouped together. + Use this method to validate the existence of not unique CAEXPaths. + + The document. + + Groups of elements which are identifiable by a CAEX path. + + + + + Gets all the elements with an alias reference. Elements referencing the same Alias are grouped together. + Use this method to validate the existence of referenced externals. + + The document. + group of elements with Alias references. The Alias part of the CAEXPath is used as a group key. + + + + Gets all the elements with a path reference. Elements referencing the same path are grouped together. + Use this method to validate the existence of referenced classes. + + The document. + group of elements with path references. The CAEXPath is used as a group key. + + + + Gets all the elements with identifier references. Elements referencing the same ID are grouped together. + Use this method to validate the existence of referenced IDs. + + The document. + group of elements with ID references. The ID is used as a group key. + + + + Gets all the elements with IDs. Elements using the same ID are grouped together. + Use this method to validate the uniqueness of IDs. + + The document. + group of elements with IDs. The ID is used as a group key. + + + + Gets all the elements with a name reference. Elements referencing the same name are grouped together. + Use this method to validate the existence of referenced elements. + + The document. + group of elements with path references. The CAEXPath is used as a group key. + + + + Gets all InternalElement objects from the document which are masters. + + The document. + An enumeration of all InternalElement objects which are InternalElement master objects. + + + + Gets all InternalElement objects from the document which are mirrors. + + The document. + An enumeration of all InternalElement mirror objects. + + + + Gets the CAEX objects of the specified type from the query result. + + Type of the required CAEX object. + The queryResult. + + An enumeration of all CAEX objects of the specified type in the query result. + + + + + Gets alls the elements from the document which use the provided Alias in a reference + + The document. + The Alias. + + A collection of elements which use the provided Alias in a reference + + + + + Gets alls the elements from the document which have a reference to the provided Path. + + The document. + The path. + + a collection of elements which have a reference to the provided Path + + + + + Gets alls the elements from the document which have a reference to the provided ID. + + The document. + The identifier. + + a collection of elements which have a reference to the provided ID + + + + + Returns all InternalElements and SystemUnitClasses in the defined Document, which are related to others + via InternalLinks. + + the Document + A collection of related SystemUnitClass objects + + + + Gets the ExternalInterface objects from the query result. + + The queryResult. + An enumeration of all ExternalInterface objects in the query result. + + + + Returns all Mirrors of the specified InternalElement. + + The master. + + An enumeration of mirror InternalElements. + + + + + Gets the InternalElement objects from the query result. + + The queryResult. + An enumeration of all InternalElement objects in the query result. + + + + Gets the InternalLink objects from the query result. + + The queryResult. + An enumeration of all InternalLink objects in the query result. + + + + Gets all InternalLink referencing the provided SystemUnitClass object. + + The SystemUnitClass object. + + An enumeration of all InternalLink objects referencing the provided SystemUnitClass. + + + + + Gets all InternalLinks that reference the specified ExternalInterface. + + The ExternalInterface. + a collection of InternalLinks. + + + + Gets all the references with the provided name from the query result. + + The queryResult. + The name. + An enumeration of all references with the provided name in the query result. + + + + This class defines the default query service for a . + The query methods of this service are based on System.Xml.Linq and System.Xml.XPath. + + + + + + Gets all classes which have references to the provided class path. Use this method to get all classes which have + a class to class relation to the class, identified by the provided classPath. If the + is + set, only classes with the defined element name are considered. + + The CAEX document which is searched through. + The class path. + + Name of the element. Valid values are 'RoleClass', 'SystemUnitClass', 'InterfaceClass' and + 'AttributeType'. + + + An enumeration of all classes which use the identified class as a base class. + + + + + Gets all classes which have references to the provided CAEX object. + + The CAEX object. + + + + + Gets all classes which have references to the provided CAEX object and their referencing classes (recursive) + + The CAEX object. + + + + + Gets all classes which have references to the provided CAEX object and their referencing classes (recursive). + This method extends the and gets not only the + directly + derived classes of a base class but also the derived classes of these classes and further on. If the + is + set, only classes with the defined element name are considered. + + The CAEX document which is searched through. + The class path. + Name of the element. Valid values are 'RoleClass', 'SystemUnitClass', 'InterfaceClass' and + 'AttributeType'. + + + + + Gets all the elements which are descendants of the provided CAEX object and are identifiable by a CAEX path. + Elements having the same path are grouped together. + Use this method to validate the existence of ambiguous CAEXPaths. + + The CAEX object. + + Groups of elements which are identifiable by a CAEX path. + + + + + Gets all the elements which are descendants of the provided CAEX object and use an alias reference. + Elements referencing the same Alias are grouped together. + Use this method to validate the existence of referenced externals. + + The CAEX object. + If parameter is set, only elements with the given element Name are considered. + + group of elements with Alias references. The Alias part of the CAEXPath is used as a group key. + + + + + Gets all the elements which are descendants of the provided CAEX object and use a path reference. + Elements referencing the same path are grouped together. + Use this method to validate the existence of referenced classes. If the is + set, only elements with the defined element name are considered. + + The CAEX object. + If parameter is set, only elements with the given element Name are considered. + + Lookup table of elements with path references. The CAEXPath is used as a grouping key. + + + + + Gets all the elements which are descendants of the provided CAEX object which use identifier references. + Elements referencing the same ID are grouped together. + Use this method to validate the existence of referenced IDs. If the is + set, only elements with the defined element name are considered. + + The CAEX object. + If parameter is set, only elements with the given element Name are considered. + + Lookup table of elements with ID references. The ID is used as a dictionary key. + + + + + Gets all the elements which are descendants of the provided CAEX object with IDs. + Elements using the same ID are grouped together. + Use this method to validate the uniqueness of IDs. + + The CAEX object. + If an ID is specified, only elements with the defined ID are searched. + + Lookup table of elements with IDs. The ID is used as a group key. + + + + + Returns all Elements which are descendants of the provided CAEX object with InternalLinks. + These elements are the owners of the InternalLink objects. + The returned collection may contain InternalElements and SystemUnitClasses as well. + + The CAEX object + + A collection of all objects with associated InternalLinks. + + + Note the difference to the method which doesn't return the + owners of an InternalLink but the related elements. + + + + + Gets all the elements which are descendants of the provided CAEX object and use a name reference. + Elements referencing the same name are grouped together. + Use this method to validate the existence of referenced elements. + + The CAEX object. + + + Lookup table of elements with name references. The name is used as a grouping key. + + + + + Returns all ExternalInterfaces in the provided document or optionally + in the caexObject and descendants, which are + instances of the standard Interface class + . + + The document. + Optional parameter, defining a possible start object for the query. + + A collection of all ExternalInterface which are instances of the + standard Interface class . + + + + + Returns all ExternalInterfaces which are + instances of the Interface class defined by the provided . + + The document. + The CAEX ClassPath of the InterfaceClassType + Optional parameter. If set only descendants of this object are searched. + + A collection of all ExternalInterface which are + instances of the Interface class defined by the provided . + + + + + Returns all InternalElements which are descendants of the provided CAEX object with InternalLinks. + These elements are the owners of the InternalLink objects. + + The CAEX object. + + A collection of all objects with associated InternalLinks. + + + Note the difference to the method which doesn't return the + owners of an InternalLink but the related elements. + + + + + Returns all Mirrors of the specified Attribute + + The master. + + An enumeration of mirror Attribute objects + + + + + Gets alls the elements which are descendants of the provided CAEX object + which use the provided Alias in a reference. The elements in the result collection are + references, which define the CAEX object and the attribute, containing the reference + . + If the is + set, only elements with the defined element name are considered. + + The CAEX object. + The Alias. + If parameter is set, only elements with the given element Name are considered. + + a collection of element references which use the provided Alias in a reference + + + + + Gets alls the elements which are descendants of the provided CAEX object + which have a reference to the provided CAEXPath. + + The CAEX object. + The path. + If parameter is set, only elements with the given element Name are considered. + + a collection of elements which have a reference to the provided Path + + + + + Gets alls the elements from the document which have a reference to the provided ID. The elements in the result + collection are + references, which define the CAEX object and the attribute, containing the reference + . + If the is + set, only elements with the defined element name are considered. + + The CAEX object. + The identifier. + If parameter is set, only elements with the given element Name are considered. + + a collection of element references which have a reference to the provided ID + + + + + Returns all InternalElements and SystemUnitClasses which are descendants of the provided CAEX object, + which are related to others via InternalLinks. + + The CAEX object. + + A collection of related SystemUnitClass objects + + + Note the difference to the method which doesn't return the + related elements but the InternalLink owners. + + + + + Returns all Mirrors of the specified ExternalInterface + + The master. + + An enumeration of mirror ExternalInterface objects + + + + + + Finds the first element in the defined document, which ID is equal to the provided ID. + + The XDocument + The ID to look at + + if set to true tries to resolve an alias reference with an ExternalReferenceResolver + service. + + + the CAEXObject or null, if no element with the specified ID could be found. + + doc + + + + This method tries to find the first element in the defined document, which CAEXPath is equal to the provided path. + If the path uses an alias to reference + an object in a external document it is tried to locate an service. If + such a service + is registered, the CAEXObject is tried to be found in the resolved document. + + The XDocument + The CAEXPath to look at + if set to true [resolve alias]. + + the CAEXObject or null, if no element with the specified path could be found. + + caexDocument + + + + Returns all ExternalInterface objects which are descendants of the provided CAEX object + and are used in relations (InternalLinks). + + The CAEX object. + + A collection of related ExternalInterface objects + + + + + Returns all Mirrors of the specified InternalElement + + The master. + + An enumeration of mirror InternalElements + + + + + + Gets all InternalLink objects referencing the provided SystemUnitClass object via an external interface attached to + the SystemUnitClass. + + The SystemUnitClass object + An enumeration of InternalLinks. + + + + Gets all InternalLinks that reference the specified ExternalInterface. + + The ExternalInterface. + a collection of InternalLinks. + + + + Determines whether the specified InternalElement is referenced by other InternalElement + objects called 'Mirrors'. + + The element. + + true if the specified element is a 'Master'-InternalElement; otherwise, false. + + + + + Determines whether the specified ExternalInterface is referenced by other ExternalInterface + objects called 'Mirrors'. + + The element. + + true if the specified element is a 'Master'-ExternalInterface; otherwise, false. + + + + + Determines whether the specified attribute is a master attribute. + + The attribute. + + true if the specified attribute is master; otherwise, false. + + + + + Determines whether the specified CAEX object is referenced. + + The CAEX object. + + true if the specified CAEX object is referenced; otherwise, false. + + + + + This class provides methods to register and locate services which can support the processing + of AML documents. There can always exist only one service of the same type at one time. The + available service types are recognized to be assignable to the interface. + + + + + Initializes the class and registers the default service. + + + + + Gets the registered Query-Service. If no Query-Service is registered, a default Query-Service - which is based on + LinqToXml + - is returned. As an alternative, a Query-Service based on Dictionaries for keyed access is available. + The dictionary based service has to be registered to be used. If no such service has been registered, the default + query + service is returned. The actual registered Query-Service is located by the engine and used for all queries. + + + + + Gets the registered UndoRedo-Service. The actual registered UndoRedo-Service is located by the engine + and used to push executed commands on the undo stack. If no UndoRedo-Service is registered executed + commands are not pushed and cannot be undone. + + + + + Gets the registered UniqueName-Service.The actual registered UniqueName-Service is located by the engine + to automatically assign unique names to CAEXObjects if they are inserted into a sequence. If no + UniqueName-Service is registered no names are generated. + + + + + Gets the automatic update service. + + + + + Gets a service for the provided service interface + + + The located service. + + + + Registers a service which will be locatable + + The service type. + The service. + + + + Unregisters a service of this type which will afterwards no more locatable + + + + + + Class AMLSchemaManager extends the XMLSchemaManager. Methods which create + new objects are overridden to add required properties and values to some + objects which is not defined in the underlying CAEX schema but in the + AML standard. + + + + + Defines the resource path of the assembly + + + + + + Constructor for schema manager + + Schema stream + Namespace path + + + + The specified node is checked, and made to an AML object, if additional + properties and values are defined for this node. + + The XML node. + + + + The node gets a UUID + + + + + + Method overrides the . + The created node is made to an AML node. + + Name of the child's parent + Name of the child + + optional parameter to define, that not only required attributes, but all + possible attributes should be created. + + + The created XML node. + + + + + Sets the schema version. + + The node. + + + + Singleton Class: Schema manager for CAEX-Schema Version 2.15 used in AutomationML + + + + + Singleton private constructor reads the schema from an embedded resource stream + + + + + + + Sets the schema version. + + The node. + + + + Called for newly creates XML-Elements to make it an AutomationML object. Here you can add required properties + and dependencies which are not defined in the CAEX-Schema + + + + + + creates the singleton instance of the Schema manager + + Instance of AMLSchemaManager2_15 + + + + Gets the static default SchemaManager Instance for the CAEX-Schema Version 2.15 used in AutomationML + + + + + + SchemaLocation attribute defining noNamespaceSchemaLocation + + + + + This method will adjust the provided CAEXFile element to this schema instance. + The method can be used in a schema transformation. + + + + + + Adjusts the name of the provided XML element and the names of the elements attributes to schema. + + The element. + + + + Extracts the schema from the embedded resource and writes it to a file in the specified folder + + The folder path. + Returns the name of the created file or null, + if user has no access rights to the folder. + + + + If no schema location is set in the specified root, a new schema location with a relative path + to a schema file is defined. The schema file is extracted from an embedded resource an copied + to the specified folderPath. + + The Document root + Folder Path for schema extraction + + + + Singleton Class: Schema manager for CAEX-Schema Version 3.0 used in AutomationML + + + + + Singleton private constructor reads the schema from an embedded resource stream + + + + + + Sets the schema version. + + The node. + + + + Called for newly creates XML-Elements to make it an AutomationML object. Here you can add required properties + and dependencies which are not defined in the CAEX-Schema + + + + + + Gets the Namespace defined for CAEX Version 3.0. The Namespace name is + http://www.dke.de/CAEX. + + + + + Gets the static default SchemaManager Instance for the CAEX-Schema Version 3.0 used in AutomationML + + + + + Gets the SchemaLocation attribute + + + + + This method will adjust the provided CAEXFile element to this schema instance. + The method can be used in a schema transformation. + + + + + + This method will adjust the name of the provided element to this schema instance. + The method can be used in a schema transformation to add the + to the element's name. + + The XML element. + + + + Extracts the schema from the embedded resource and writes it to a file in the specified folder + + + Returns the name of the created file or null, if user has no access rights to the folder. + + + + If no schema location is set in the specified root, a new schema location with a relative path + to a schema file is defined. The schema file is extracted from an embedded resource an copied + to the specified folderPath. + + The Document root + Folder Path for schema extraction + + + + The Aml.Engine.Schema Namespace contains a schema parser which is used to parse the document assigned CAEX schema. + All changes made + to a document with API methods are supported by a schema specific schema manager which assures, that all insertions + and changes are + schema conform. Currently schema managers exist for CAEX version 2.15, which is + and + CAEX version 3.0, which is . The schema managers are made public to supply + methods for schema conform + CAEX document processing capabilities to users who don't like to use the API wrapper-classes and methods. + + + + + This class defined methods and properties to access schema information for a schema element. + + + + + creates an instance for the defines schema element + + The schema element. + + + + Gets the schema elements for all attributes of this instance + + + + + Gets the names for all choices defined for this instance. + + + + + Gets the maximum occurrence. + + + + + Gets the names for all optional elements defined for this instance. + + + + + Gets the names for all required elements defined for this instance. + + + + + Gets the names for all required attributes defined for this instance. + + + + + Gets the defining schema element for this instance + + + + + Gets the names of all elements in this instance which don't provide choices + + + + + Sets the schema information for this instance and the provided namespace + + + + + + Class supports the creation of schema conform xml documents for a given schema. It + can be used to create elements with all required attributes and child elements and + default values associated. Insertion of new child elements for a given parent at a + schema is supported, guaranteeing schema conform sequences and occurrences of all children. + + + + + The Dictionary of Schema Elements contains all schema elements of child's in a + parent child relationship. The Dictionary Key contains the name of the parent + (fist) and the name of the child (second) + + + + + Create an instance of the schema manager for the given schema. The Schema + is compiled and parsed + + + + + the parsed Xml-Schema + + + + + Registered schema information about an element + + The p. + The c. + The information. + + + + + Gets the Schema Namespace + + + + + Gets the SchemaLocation string + + + + + Gets the actual XSD schema set + + + + + Determines if the schema element accepts values of any type. + + The schema element. + true, if any types are accepted as values. + + + + Creates a new Xml-Element with the provided content and inserts it to the provided parent according to + this schema instance. + + The parent XML element. + The name of the child element. + Initial content of the child. + The created XML element. + + + + Creates a new Xml-Element with the provided content and inserts it behind the provided sibling according to + this schema instance. + + the sibling of the new added element. + the name of the new added element. + the content of the new added element. + The created XML element. + + + + Gets the Attribute names of the specified child element of the specified parent element. + + name of the child's parent + name of the child + optional parameter, defining of only required attributes + Enumeration of attribute names + + + + Gets the Schema Elements for all attributes of the specified child element of + the specified parent element, if the defined parent child relation exists in + the xml schema. If required is set to true, only the required + attributes are returned. The default behaviour is, that all attributes - + optional and required attributes - are returned. + + + name of the child's parent + + + name of the child + + + optional parameter, defining of only required attributes are returned, or all attributes. + + + Enumeration of attribute definitions + + + + + Gets the List of Attribute value restrictions for the attribute with the + defined name. The Attribute should be an attribute of a child defined by + the given name, which exists in the defined parent child relation defined by + the parent name. + + The name of the child's parent + the name of the child (owner of the attribute) + Name of the attribute. + + list of restrictions for an attribute value - object type has to be + interpreted by the caller + + + + + Gets the Attribute value types for the attribute with the defined name of a + child element which belongs to the given parent. If XmlTypeCode.Item is + returned, the value type is equal to the schema internal any type. + + Name of the parent. + Name of the child. + Name of the attribute. + + The type code defined for the value. + + + + + Gets the type code for the schema attribute. + + The schema attribute. + The XML type code. + + + + Determines, if a child with the specified name can be added to the parent + node. The method checks the specified minimal and maximal occurrences, defined for + this relation in the xml schema. + + The parent node + name of the child + + true, if a child with that name can be added; false otherwise + + + + + Gets the Names for all elements, which can be added to the child which is + defined with the name of it's parent and the name of itself. + + Name of the child's parent. + Name of the child + if set to true [include choice]. + Enumeration of all names of possible child elements. + + + + Gets the SchemaDefinition for all elements, which can be added to the child which is + defined with the name of it's parent and the name of itself. + + Name of the child's parent. + Name of the child + if set to true [include choice]. + Enumeration of all SchemaDefinitions of possible child elements. + + + + Gets the names of all alternative child nodes, which can be added to a parent + node with the given name. The specified child itself is included. Choices only + exists, if returns true for the defined + child name. + + Name of the child's parent + Name of the child + + Enumeration of names, representing the possible alternatives for child elements. + + + + + Creates the attribute with the provided name if this attribute is defined in this schema instance. + + The element. + Name of the attribute. + The created XML attribute. + + + + Creates a new node with the specified child name in the given xmlDocument. The + node is created with all required attributes and elements but is not inserted + in the document tree at this point. Use + for insertion or for a combined + creation and insertion. + + Name of the child's parent + Name of the child + + Optional parameter to define, that not only required attributes, but all + possible attributes should be created. + + + The created XML element. + + + The Method can be overridden by specific schema managers, to add additional + properties to the created node, which can not be derived directly from the schema. + + + + + Gets the annotation from the schema element. + + The schema element. + The annotation of the schema element, as it is defined in the schema. + + + + Gets the annotation from the schema attribute element. + + The schema attribute. + + The annotation of the schema attribute, as it is defined in the schema. + + + + + Gets the annotation from the annotated schema element. + + The schema element. + The annotation. + + + + Determines, whether the schema element representing the parent - child relation + has a content, which is restricted to a choice of elements. If onlyOne is set + to true, there can not be more than one element added to the element + + Name of the parent. + Name of the child. + if set to true [only one]. + + true if the specified parent to child relation is restricted to a choice of elements; otherwise, + false. + + + + + Determines, if the schema defines a sequence of simple elements for the provided parent child combination. + + Name of the parent. + Name of the child. + if set to true [only one]. + + true if the provided parent child combination consists of a sequence of simple elements; otherwise, + false. + + + + + Inserts an existing child node into the collection of child nodes of the + specified parent node. + + The parent node + The child node + + true, if the node has been inserted; false otherwise. + + + + + Creates a new node with the defined child name and inserts the newly created + child into the child nodes collection of the specified parent. Optional, it + can be specified, if the new node should get all attributes, which are defined + in the schema, or only those attributes which are required (default behaviour). + The Method can be overridden by specific schema managers, to add additional + properties to the created node, which can not be derived directly from the schema. + + The parent node for insertion. + Name of the child + + optional parameter to specify, that all attributes should be added + automatically to the created node. + + + the created and inserted node. + + + + + Determines, whether the occurrence of a child with that name under a parent + with that name is part of a choice (means that there are other exclusive + alternatives for child nodes). If not, the child is defined in a sequence. For + choices, the names of alternatives are available with . + + Name of the child's parent + Name of the child + + true if the defining collection is a choice; otherwise the collection + of child's is defined as a sequence. + + + + + Determines if the schema defines a choice of only one element for the provided schema element. + + The schema element. + + true if the specified schema element defines a choice of only one element; otherwise, false. + + + + + Determines, if the Attribute with the provided is defined for this element + + Name of the parent. + Name of the child. + Name of the attribute. + + true if the attribute name is an allowed attribute for the child; otherwise, false. + + + + + Determines, if the parent is allowed to contain a child with the provided name according to this schema instance. + + The parent. + Name of the child. + + true if the parent can contain a child element with that name; otherwise, false. + + + + + Determines, if the Attribute with the provided name is a required attribute when added to the parent child + combination. + + Name of the parent. + Name of the child. + Name of the attribute. + + true if the attribute is a required attribute in this parent child combination; otherwise, false. + + + + + Returned the maximal occurrence for child nodes with the specified name under a + parent node with the specified name. For unbounded occurrences, the returned + value is . If the occurrence is 0, the + existence of a child with that name under a parent with that name is not allowed. + + Name of the child's parent + Name of the child + The maximal occurrence of children with the defined name. + + + + The minimal occurrence for child node with the defined name under a parent node + with the defined name. If 0 is returned, the existence of a child node with + that node is optional. If 1 is returned, the existence is mandatory. + + Name of the child's parent + Name of the child + + 0 for optional occurrence or 1 for mandatory occurrence. A value + of -1 indicates that no occurrences are allowed at all. + + + + + Gets the schema information for the provided parent child combination. + + name of the parent element + name of the child element + returns null, if no schema information exists for the parent child combination. + + + + This method is a utility method for insert operations. The method will return + the node which should be used as the sibling before a newly added child with + the defined name. The Insertion has to be done after the returned node or + prepended to the parent itself, if no node null is returned. + + The parent node + Name of the child. + + The child node of the parent, which should be the sibling before a newly added + node, or null, if no node exists. + + + + + Validates a document if it is conform to this schema instance. + + The source. + The messages. + true, if the validation was without errors; false, otherwise. + + + + Returns the type code for a value that may be associated with the defined child. + + Name of the parent + Name of the child + the XML type code. + + + + If no schema location is set in the specified root, a new schema location with a relative path + to a schema file is defined. The schema file is extracted from an embedded resource an copied + to the specified folderPath. + + The Document root + Folder Path for schema extraction + + + + Parsing the schema to populate the elements dictionary. + + + + + + + + + This static class provides extension methods for the interpretation of . + + + + + Gets the CLR-Type for the provided typeCode + + Source + CLR-Type + + + + Gets the from the W3C XSD schema type string. + + W3C XSD schema type, defined as xs:..., like xs:double and others. + + the XmlTypeCode. If the schemaType is not recognized, + is returned. + + + + + Returns the default value for an XmlTypeCode. The data type of the returned object is the associated CLR type + of the provided type code. The CLR type is available with the method. + + the type code + The default CLR type value, according to the provided type code. + + + + Returns the default value for XmlTypeCode + + Source + The default value, according to the provided type code. + + + + Converts the default value for the specified typeCode to a valid XML value string + + The + The default XML value, according to the provided type code. + + + + + Interface for a XDocument Wrapper + + + + + Gets the XDocument. + + + + + Saves the document to stream. + + if set to true pretty print for the document is enabled. + The document stream. + + + + XML related properties of a wrapped instance + + + + + Gets the XDocument containing the XML node of this object. + If the object has not been inserted into a document, the XDocument is null. + Direct manipulations of the XML document are not monitored by the AML engine. + + + + + Determines, if this instance is wrapped around an existing XML node + + + + + Get the XML node of this instance. Direct manipulations of the XML node are not monitored by the AML engine. + + + + + Gets the XML parent node of this instance. Direct manipulations of the XML node are not monitored by the AML + engine. + + + + + Gets the Schema Tag name of this instance. + + + + + This class is an abstract base class for the wrapping of an XDocument, to provide additional schema specific + document processing utilities. This class is used by the AMLEngine to provide a CAEXDocument. Other XML Engines, + supporting different schemas (PLCopen, COLLADA) could also use this base class. + + + + + + Initializes a new instance of the class. + + The x document. + + + + Gets the underlying XDocument + + + + + Gets the XDocument wrapper which contains the specified XML node. If the node is not contained in an XML document, + no document is returned. + + The XML node. + The XDocument wrapper, containing the XML node. + XML node is null. + + + + Gets the XDocument wrapper which contains the specified object. If the object has not been inserted into a + document, + no document is returned. + + The XNodeWrapper object. + The XDocument wrapper . + + + + Saves the document to the specified file path. + + The file path to save the document to. + Set to true, if pretty printing is desired. + filename + + + + Saves the document to the specified file path. + + Set to true, if pretty printing is desired + The stream, containing the document content. + + + + Gets the correct XName for the provided element name (Tag name).The XName contains a namespace, + if the assigned schema requires a namespace. If no namespace is defined for the assigned schema, + no namespace is added to the XName. The XName has to be used for all Xml.Linq queries, + used to access objects with the element name. + + A Tag name which should be transformed to an XName. + The generated XName. + tag name + + + + Unloads this document instance. + + + This method can be used to unload this instance of the CAEXDocument and remove + it from all current tables of all registered services. The AMLEngine manages weak + references to each created CAEXDocument instance, so explicit unload is + normally not required. + + + + + Returns the CAEX ID of a the XElement if such an Attribute exists. + + The XElement. + The Name or string.empty if the ID-Attribute is missing + + + + Returns the CAEX Name of a the XElement if such an Attribute exists. + + The XElement. + The Name or string.empty if the Name-Attribute is missing + + + + Returns the CAEX Name of a parent XElement if such an Attribute exists. + + The XElement. + + The Name or string.empty if the Parent or the Name-Attribute is missing + + + + + Returns the CAEX path of this object. Examples: "plant/unit/tank" or GUID:interface. If + the full hierarchical Path is required, use the method HierarchyPath + instead which delivers the full node path. + + The element. + + For classes, it returns the XML full Node Path. For Interface Instances, it + returns GUID:InterfaceName if your document is based on CAEX 2.15. For CAEX 3.0 new + Path specifications exist concerning Instances (only the ID is used) and Attributes. + Attribute Path are combined using the parents CAEX Path followed by the Attribute Name. + + + + + Gets the value of the element with the defined name as a DateTime Value + + The owner. + Name of the element. + + DateTime value of the element + + owner + + + + Getting the full path from document root to the specified XmlNode to build a CAEXPath. + As name of an XmlNode is the value of the contained attribute "name" taken. + Hierarchies are separated via the path separator (slash '/'). + The name of the document root element CAEXFile is not contained in the path. + + The XmlNode to get the full path for + The full path from the document root element to the given XmlNode. + + + + Getting the full path from document root to the specified XmlNode. + As name of an XmlNode is the value of the contained attribute "name" taken. + Hierarchies are separated via the path separator (slash '/'). + The name of the document root element CAEXFile is not contained in the path. + + The XmlNode to get the full path for + The full path from the document root element to the given XmlNode. + + + + Determines whether Attribute is an inheritance attribute. + + The XML attribute. + + true if the attribute is an inheritance attribute; otherwise, false. + + + + + Getting all CAEX path parts from document root to the specified XmlNode. + As name of an XmlNode is the value of the contained attribute "name" taken. + Hierarchies are separated via the path separator (slash '/'). + The name of the document root element CAEXFile is not contained in the path. + + The XmlNode to get the full path for + if set to true separators are added to the path part names. + + The full path from the document root element to the given XmlNode stored in an array of path part names. + The path contains values of the "name" attribute of the XmlNodes. + + xmlNode + + + + Getting all CAEX path parts from document root to the specified XmlNode. + As name of an XmlNode is the value of the contained attribute "name" taken. + Hierarchies are separated via the path separator (slash '/'). + The name of the document root element CAEXFile is not contained in the path. + + The XmlNode to get the full path for + if set to true separators are added to the path part names. + + The full path from the document root element to the given XmlNode stored in an array of path part names. + The path contains values of the "name" attribute of the XmlNodes. + + xmlNode + + + + Getting the path from the defined root to the specified XmlNode. As name of an XmlNode is the value of the + contained attribute "name" taken. + Hierarchies are separated via the path separator (slash '/'). + The name of the root element is not contained in the path. + + The XmlNode to get the full path for + The root. + + The full path from the root element to the given XmlNode. The path contains of values of the "name" attribute of + the XmlNodes. If no + such attribute exists in the current node, the xml tag name is used instead. + + xmlNode + + + + Gets the XML node with the provided elementName from the specified owner and returns its value + + The owner. + Name of the element. + The node value as a string. + owner + + + + Gets the value of a CAEX 'Value' element. + + The XML node. + The value of the CAEX 'Value' element. + + + + Gets the MasterID of a potential mirror ExternalInterface + + The XML node. + The ID of the master ExternalInterface. + + + + Get the IDReferences if this is an InterfaceIDMapping object. + + The XML node. + + Enumeration of the ID-references in the InterfaceIDMapping. The returned value tuple contains the + name of the attribute and the attribute value. + + + + + Get the IDReferences if this is an InternalLink. + + The XML node. + + Enumeration of the ID-references in an InternalLink. The returned value tuple contains the + name of the attribute and the attribute value. + + + + + Gets the MasterID of a potential mirror InternalElement. + + The XML node. + + The ID of the master InternalElement. It is not checked, if this is a GUID. + + + + + Gets the InternalElementID of a potential mirror Attribute. + + The XML node. + + The ID of the master InternalElement to which the Attribute belongs. It is not checked, if this is a GUID. + + + + + Get the ID of the Master InterfaceClass if this is a Mirror. + + The element. + System.String. + + + + Get the ID of the Master InternalElement if this is a Mirror. + + The element. + System.String. + + + + Get the RoleReference if this XML node is a RoleRequirement or a SupportedRoleClass + + The XML node. + The value of the role reference attribute of the XML node + + + + Sets a date time value for a child-element with the defined name of the defined owner + + Owner of the element with the defined name + Name of the child element + DateTime value + owner + is not a valid element + + + + Sets a string value for a child-element with the defined name of the defined owner + + Owner of the element with the defined name + Name of the child element + string value + + + + Get the SystemUnitClass reference if this is an InternalElement + . + + The element. + System.String. + + + + Gets the base class for the specified CAEX class, if a class to class relation exists and can + be resolved in the current document. + + The CAEX class. + The base class for the specified CAEX class. + + + + Gets the reference (Inheritance) hierarchy including the provided CAEX class in an ordered sequence of ancestors. + + The CAEX class XML node. + + Enumeration of base classes. + + + + + Determines whether the specified elementWithDerivedAttributes has a child Element, which has the same ElementName + and AttributeValue for the named + Attribute as the specified elementWithAttribute + + The element With Attribute which is tested for derivations. + The element With Derived Attributes. + Name of the element. + Name of the attribute. + true if the specified attribute element is derived; otherwise, false. + + + + Determines whether the specified element is a descendant of the ancestor. + + The element. + The tested ancestor. + + true if the specified element is a descendant of the ancestor; otherwise, false. + + + + + Determines whether this instance is overridden. This can occur in inheritance relations and facet relations. + In a facet relation the faceted element has to be detected. In an inheritance relation, the inheritance + hierarchy has to be detected. + + The XML node. + + true if the specified node is overridden; otherwise, false. + + + + + Determines whether this XML node represents an overridden CAEX object and returns the overridden elements. + This can occur in inheritance relations and facet relations. + In a facet relation the faceted element has to be detected. In an inheritance relation, the inheritance + hierarchy has to be detected. + + The XML node. + The attribute value, used to define the overridden object. + + the collection of overridden elements if the specified node is overridden; otherwise, + Enumerable.Empty. + + + + + Gets the name of the path, defining a role reference for the defined mapping element. + + The mapping element. + The path to the RoleClass. + + This method is designed for CAEX 2.15 where no direct association between + a RoleClass and a mapping element exists. + + + + + + Gets the CAEX path of a referenced SystemUnitClass for a Mapping element + + The mapping element. + The path to the SystemUnitClass. + + + + Gets the referenced element of this mapping Attribute. The result is an Attribute for Attribute-Mappings or an + Interface for + Interface-Mappings. If no reference is found, the result is null. + + The mapping. + The referenced element. + + + + Gets the RoleRequirement element to which this mapping attribute is assigned. + + The mapping. + The RoleRequirement element or null, if it doesn't exist. + + + + Gets the RoleReference for a mapping. + + The mapping attribute. + XElement. + + + + Gets the SystemUnitClass element to which this mapping attribute is assigned. + + The mapping. + The SystemUnitClass element or null, if it doesn't exist. + + + + Gets the SystemUnitClass-Reference for a mapping. + + The mapping attribute. + XElement. + + + + Class, defining extension methods, related to the interpretation of the Schema version of a CAEX file. + + + + + Gets the correct CAEX schema version for the specified XML node + + The XML node. + The CAEX schema version. + + + + Gets the names of the Attributes of the provided node, which can contain an ID reference. + + The XML node. + Array of attribute names of the ID-reference attributes. + + + + Determines, if the XML-Element is an Additional Information element + + XML-Element from a CAEX-Document + true, if the XML-Element is an Additional Information element + + + + Determines, if the XML-Element is an Attribute + + XML-Element from a CAEX-Document + true, if the XML-Element is an Attribute + + + + Determines, if the XML-Element is an Attribute (Basic or Type) + + XML-Element from a CAEX-Document + true, if the XML-Element is an Attribute + + + + Determines whether the specified element is a mirror of an Attribute. + + The element. + + true if the specified element is a mirror of an Attribute; otherwise, false. + + + + + Determines, if the XML-Element is an AttributeNameMapping + + XML-Element from a CAEX-Document + true, if the XML-Element is an AttributeNameMapping + + + + Determines, if the XML-Element is an AttributeType + + XML-Element from a CAEX-Document + true, if the XML-Element is an AttributeType + + + + Determines whether the Element is a CAEXClass: RoleClass, SystemUnitClass + or InterfaceClass + + The element. + if library types should be handled as classes + + true if the specified element is a CAEXClass; otherwise, false. + + + + + Determines whether the XML node is an element with an ID. + + The node. + + true if the specified node is an element with identifier reference; otherwise, false. + + + + + Determines whether the XML node is an element with an ID reference. + + The node. + + true if the specified node is an element with identifier reference; otherwise, false. + + + + + Determines whether the XML node is an element with an ID reference to the provided ID + + The node. + The ID + + true if the specified node is an element with identifier reference; otherwise, false. + + + + + Determines whether the XML node is an element which references another element using the name of the element + + The node. + + true if the specified node is an element which references another element using the name of the element; + otherwise, false. + + + + + Determines whether the XML node is an element with a path reference + + The node. + + true if the specified node is an element with path reference; otherwise, false. + + + + + Determines whether the XML node is an element with a path reference to the provided path + + The node. + The Path + + true if the specified node is an element with this path reference; otherwise, false. + + + + + Determines whether the specified element is an ExternalInterface. + + The element. + + true if the specified element is an ExternalInterface; otherwise, false. + + + + + Determines whether the specified element is an ExternalReference element + + The element. + + true if the specified element is an ExternalReference; otherwise, false. + + + + + Determines whether this instance is an AMLFacet. + + The node. + + true if the specified node is a facet; otherwise, false. + + + + + Determines whether the specified element is a mirror of an ExternalInterface. + + The element. + + true if the specified element is a mirror of an ExternalInterface; otherwise, false. + + + + + Determines whether the specified element is a mirror of an InternalElement. + + The element. + + true if the specified element is a mirror of an InternalElement; otherwise, false. + + + + + Determines whether the specified element is an InterfaceClass. + + The XML node. + + true if the specified element is an InterfaceClass; otherwise, false. + + + + + Determines whether the specified element is an InterfaceClass. + + The XML node. + + true if the specified element is an InstanceHierarchy; otherwise, false. + + + + + Determines whether the specified element is an InterfaceIDMapping. + + The XML node. + + true if the specified element is an InterfaceIDMapping; otherwise, false. + + + + + Determines whether the specified element is an InterfaceNameMapping. + + The XML node. + + true if the specified element is an InterfaceNameMapping; otherwise, false. + + + + + Determines whether the specified element is an InternalElement. + + The XML node. + + true if the specified element is an InternalElement; otherwise, false. + + + + + Determines whether the specified element is an AttributeTypeLib. + + The XML node. + + true if the specified element is an AttributeTypeLibrary; otherwise, false. + + + + + Determines whether the specified element is a SystemUnitClassLib. + + The XML node. + + true if the specified element is an SystemUnitClassLib; otherwise, false. + + + + + Determines whether the specified element is a RoleClassLib. + + The XML node. + + true if the specified element is a RoleClassLib; otherwise, false. + + + + + Determines whether the specified element is a InterfaceClassLib. + + The XML node. + + true if the specified element is a InterfaceClassLib; otherwise, false. + + + + + Determines whether the specified element is an InternalLink. + + The XML node. + + true if the specified element is an InternalLink; otherwise, false. + + + + + Determines whether the specified XML object is an InternalLink attribute. + + The XML attribute object. + + true if the specified XML object is an InternalLink attribute; otherwise, false. + + + + + Determines whether the specified element is a CAEX Library. + + The XML node. + + true if the specified element is a Library; otherwise, false. + + + + + Determines whether the specified element defines a Mapping which means, the element is + either a , a or + a . + + The XML node. + + true if the specified element defines a Mapping; otherwise, false. + + + + + Determines whether the Element can define a mirror object. + + The element. + + true if whether the Element can define a mirror object; otherwise, false. + + + + + Determines whether the specified element is a RoleClass . + + The XML node. + + true if the specified element is a RoleClass; otherwise, false. + + + + + Determines whether the specified element is a RoleRequirement . + + The XML node. + + true if the specified element is a RoleRequirement; otherwise, false. + + + + + Determines whether the specified element is a SupportedRoleClass . + + The XML node. + + true if the specified element is a SupportedRoleClass; otherwise, false. + + + + + Determines whether the specified element is a SystemUnitClass . + + The XML node. + + true if the specified element is a SystemUnitClass; otherwise, false. + + + + + Gets the names of the Attributes of the provided node, which can contain an ID reference. + + The XML node. + An array of attribute names, which are used to reference objects using the objects name. + + + + Gets the name of the path reference attribute of the specified element. + + The XML node. + + For an the result is . + For all other classes, the result is . + + + + + Gets the names of the Attributes of the provided XML node, which can contain a path reference. + + The XML node. + An array of attribute names, which can contain a path reference. + + + + Gets the element which is referenced by the specified attribute. + + The attribute, defining the reference. + The referenced element + + + + Gets the schema manager, used to manage any modifications of the provided XML node. + + The XML node. + The schema manager, used to manage any modifications of the provided XML node. + + + + Gets the correct XName for the provided CAEX Tag name. The XName may contain a namespace, according to + the default namespace of the provided node. + + A Node used to get the namespace information + A CAEX Tag name which should be transformed to an XName. + The XName build from the provided tag name. + + + + This class defines extension methods for XElements. These methods are useful, if any XElement should be queried + for some CAEX properties without using a CAEXWrapper for this element. + + + + + Wraps the provided Xml-Element into an element specific CAEXWrapper object. + + the Xml-Element + The specific CAEXWrapper object if the element is a CAEX element; otherwise null + + + + Gets the elements with the specified CAEX element name (Tag-name) from the provided caexClass and all its + base classes in the inheritance tree. + If the EqualityComparer is specified, only those elements of a base class are added which are unequal to any + element in the derived class. The returned collection contains also those inherited elements, which are + marked as deleted. Deletion is possible, when an element is overridden. + + + a derived class + The CAEX element name (Tag-name) + Equality comparer to exclude equal elements of a base class + All inherited elements including those, which are marked as deleted. + + + + Gets the elements with the specified CAEX element name (Tag-name) from the provided caexClass and all its + base classes in the inheritance tree. + If the EqualityComparer is specified, only those elements of a base class are added which are unequal to any + element in the derived class. The returned collection contains only inherited elements, which are + not marked as deleted. Deletion is possible, when an element is overridden. + + + a derived class + The CAEX element name (Tag-name) + Equality comparer to exclude equal elements of a base class + All inherited elements not including those, which are marked as deleted. + + + + Gets the first element of the provided parent + + The parent. + + First element if one exists; otherwise null. + + + + + Gets the first element of the provided parent with the provided local name + + The parent. + The local name of the child element. + + First element if one exists; otherwise null. + + + + + Tries to get the element from the owner with the specified element name. If no such element + could be found it is appended as a new child with the provided content. + + The owner of the element. + The element name. + Some content, which is added to the element, if it is created. + if true, element has been deleted when content is null and element is not required. + + the element + + owner + + + + Gets the Interface from the provided InternalLink Attribute value. + + The internal link attribute. + + The XML node of the ExternalInterface. + + internalLinkAttribute + + + + Gets the Master Attribute from the provided RefAttributeType value. + + The attribute reference. + + The XML node of the Attribute. + + refAttribute + + + + Gets the last child element of the defined parent + + The parent. + + the last child or null, if no child exists. + + + + + Gets the last child element of the defined parent with the defined local name + + The parent. + the name of the child node to look at. + + the last child or null, if no child exists with this name. + + + + diff --git a/SOURCE/Application/Plugins/ModellingWizard/Gsd2Aml.Lib.dll b/SOURCE/Application/Plugins/ModellingWizard/Gsd2Aml.Lib.dll new file mode 100644 index 0000000000000000000000000000000000000000..9417f8d005c8abad13f9437ce3dba507c53ffb6e GIT binary patch literal 321024 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 literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/Gsd2Aml.Lib.xml b/SOURCE/Application/Plugins/ModellingWizard/Gsd2Aml.Lib.xml new file mode 100644 index 0000000..7b943b9 --- /dev/null +++ b/SOURCE/Application/Plugins/ModellingWizard/Gsd2Aml.Lib.xml @@ -0,0 +1,3717 @@ + + + + Gsd2Aml.Lib + + + + + Interface to provide logging information of the conversion process. + + + + + Log method which puts a message with the specific log level into the log file. + + The level of the log message. + The message of the log. + + + + Enum which contains all possible log levels. + + + + + Sets the log level to info. + + + + + Sets the log level to warning. + + + + + Sets the log level to error. + + + + + Sets the log level to trace. + + + + + Sets the log level to debug. + + + + + Sets the log level to fatal. + + + + + Sets the log level to off. + + + + + The converter class which contains the logic to convert a GSD formatted file to an AML file. + + + + + Converts a GSDML input file and returns the resulting AML file as a string. + + The path to the input file. + A flag which indicates if the GSD should be checked for correctness. + The AML object serialized to a XML string. + + + + Converts a GSDML input file and creates the .amlx package. + + The path to the input file. + The path to the output file. + A flag which indicates if the file should be overwritten if it exists. + A flag which indicates if the GSD should be checked for correctness. + + + + Deserializes the translation table and the input file. Then it checks the input file for validity. + After that it starts the conversion process. + + The path to the input file. + The path to the output file. + A flag which indicates if the GSDML should be checked for correctness. + + + + Starts the real conversion process. + It iterates over the GSDML properties and translates it to AML. + Then it recursively starts a new Handle call with the translated property. + + The type of the current AML head object. + The current AML head object. + The current GSD head object as a XmlElement. + + + + The actual translation of the GSD object to an AML object. + + The type of the AML head object. + The AML head object in which the translation object will be set. + The translation rule which will be used to translate the GSD object to an AML object. + The new AML head object. + + + + This function iterates over all sub properties of the replacement to translate these and set them into the replacementInstance. + + The replacement rule. + The replacement instance in which the sub properties will be set. + A flag which indicates whether the current instance is an array or not. + Dictionary which contains information about the references. + + + + This function handles a new Rule call in the translation table. + It takes the inner text of the rule node and translate it with the corresponding rule. + + The rule node which contains the information which rule should be applied. + The instance in which the rule instance will be set/added. + + + + Translates the sub properties of a translation rule. + + The XmlNode replacement rule. + Dictionary which contains information about the references of a rule. + The property info which describes the translationInstance and the translation instance in which the sub property instances will be set. + + + + This function sets the attributes of a replacement node to the translation instance. + This function assumes that all attributes are of type string. + If not, then please contact the developers . + + The replacement node of the translation table which will be used to set those attributes to the instance. + The instance in which the attributes will be set. + Dictionary which contains information about the references of a rule. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Compress an AML file and its resources to an .amlx package using the AML.Engine. + + + + + Creates a zip archive from a directory and the relevant GSD resources. + + The path to the AML file which will be zipped. + The directory you want to store the archive in including the name of the archive.amlx. + An array of paths to the resources to be part of the .amlx package. + A flag which indicates if the file should be overwritten if it exists. + + + + + + + Creates a zip archive from a directory. + + The directory you want to be zipped. + The directory you want to store the zip archive in. + An array of paths to the resources to be part of the .amlx package. + A flag which indicates if the file should be overwritten if it exists. + + + + + + + Creates a new directory in the temporary folder of Windows. + + The name of the folder to be created. + The path to the directory as a string. + + + + + + + + + Moves a file from one directory to another. + + The source path. + The destination path. + + + + + + + + + Deletes a folder if it exists. + + The destination path. + + + + + + + + + Creates a directory path. + + The directory path. + Path to the created directory. + + + + + + + + + Contains utility functions which provide helping functionalities for the conversion process. + + + + + Gets the property information (PropertyInfo, Type, bool isArray) of a string. + The string indicates a way through the properties. The different "stations" are separated by dots. + + The by dots separated string. + The property info, the type of the found property and if the type is an array. + + + + Recursively searches a class to find a property by string. + + The type object, which represents the currently iterated class. + The name of the property being searched for. + The PropertyInfo object if the property was found or null if it does not exist. + + + + Checks if a given type is a simple/primitive type. + + The type which should be checked. + A boolean which indicates if the given type is a simple type. + + + + This function gets the relevant information (replacement, references) from a translation rule. + + The translation rule that is parsed. + The replacement node and a list which contains all references. + + + + Parses the references given in the translation table and saves them to a dictionary. + + The references in a list of XmlNodes. + Optional parameter which is a GSD tag and will be used instead of the iterated one. + A dictionary which contains for each reference identifier the correct value. + + + + Parse real references (TextRef, GraphicRef) and find the correct value. + + Path to the real GSD element. + The reference contains the reference. + The referenceIdName contains the name of the reference id. + The realIdName contains the name of the real id. + The realElementname contains the name of the real element tag. + The realValueName contains the name of the real value attribute. + Optional parameter which is a GSD tag and will be used instead of the iterated one. + The value of the real reference. + + + + Iterates through the GSD document with the given path. + + The by dots seperated path through the GSD docment. + Optional parameter. If it is set the iteration starts from there. + The last XmlNode of the path. + + + + This method checks the GSD file against the the xsd-files and validates it. + + The path to the GSD file. + + + + This method loads an XML file to an XmlDocument and returns it. + + The file path as a string. + The XmlDocument object which contains the deserialized form of the XML file. + + + + This method loads the translation table. There are two different cases for loading the table. + The translation table is in the installation folder located and named like 'gsd2aml.xml'. + If the translation table is not in the installation folder, it will be loaded from resources. + + Returns the translation table XmlDocument object. + + + + This function generates the correct output file name for the string conversion method. + + The path to the input file. + The correctly generated output file name. + + + + This function creates the an instance out of a type and a flag whether an array needs to be created or not. + + The type object which describes the type of the instance. + Flag which indicates whether an array is needed. + An instance of the type which the propertyType parameter describes. If an array is needed, it creates a list. + + + diff --git a/SOURCE/Application/Plugins/ModellingWizard/Microsoft.CSharp.dll b/SOURCE/Application/Plugins/ModellingWizard/Microsoft.CSharp.dll new file mode 100644 index 0000000000000000000000000000000000000000..54c96cf375ff0f95329bc04fb861e8cb6867e4ca GIT binary patch literal 47792 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 z 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 fAR2u7TXKXW|DV0T9)SBbemA;Fdw*T + + + + + + + + + + + diff --git a/SOURCE/Application/Plugins/ModellingWizard/PresentationCore.dll b/SOURCE/Application/Plugins/ModellingWizard/PresentationCore.dll new file mode 100644 index 0000000000000000000000000000000000000000..e8f831f2e1afff235cdcd089b60e1d4d00fd8df2 GIT binary patch literal 1367728 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

iBtO4w|6ipYcavsdjp@A85KCdcjsLks!D)cYD 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%0DBxokc4Dj35h( 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

Upu} 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 literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/PresentationFramework.dll b/SOURCE/Application/Plugins/ModellingWizard/PresentationFramework.dll new file mode 100644 index 0000000000000000000000000000000000000000..dfd2cd30ece45ad52b72812807d1fbae199995e1 GIT binary patch literal 2093248 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 z%0D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 z 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/=2G83XofSJsKs1jf%vmvSkn8_GKl>jrDqw+xs zFq64b;%cWenIEzjwYXXACy1I0Wj4zTQ6<0}mQRRxch6z@g?M-O9996L?(W}NK_OH> zTr9u!n9mAH(N(=}0s9$pva)g;BK8YJl^cs$35Y5;{$M4Ac;&_tR!WFhN-SZeg?J^&5>`g$6P^_- z{4QZ-A=Rw>YD~3+A5kIWf`j|V{PNf z`;Z`QJ8K8oMEk?v0(P?Ykp8qkQaV7MT#>(YC+i4#oJPfTk`g{Hh0sM&rRXs>R)|;fA7|r)L}}scg0+rxFCS;)Az$em)t)3L*#t;$8cV}t{$dj$T}XJ$ zX*LN`Vy?{R44Vx3iG;_TV^biX5ObbILS7=~BAW`iQk44RDAnI=8srd3faEfZ5)z@8 z!RVtaY&xVa2`{y-uo;l#{pnj*N_CaZgp?zhBxIJ5n7AIOt8BIuJ*vKZYrDqgAV&2` zU1M`0s*UI$BT4x0y2BPjOvKz}e?TfC<}O3Ri64D?}RtfQ1;~%iqG9PUd^(4=xU;2QpfgFT9WNRU> zcZ7(TM{FI$w^PbvwqA&LJwIU^gm|llJ!Kmaqpt90Y!hPCGvztkEW{gc{DN%}6042r z8lo+vJ$%8o3W?HhoetCX(>?!^ZG$ACubHH5hwO`s*&#)1N?&%Yq?9=XStWl7i4JN_@1DHY^o5;*sB-lyJ1r!jpWGUv9i^PVvNMo-B%f$Z z=~s4Eh*z#^&N(4o*{eC{{}XdThD@{V@F+|P7kjQx=#G8j9k@Hl@&G2u!JRe1WJ{w!d}0Lil&^aHM=zW_H3LXX7LRQXP2^ ztUac!XLfW*jlN-G^@Pk$IAj9N0x_7%%*;+g$P5y`%2H-05u`oM_{X1US)9a>z9js~ zn8o=5me0w7ENe2n} zLUYE8oYM=5(bTG`d7bYes^=)5^8-Z9znb64AS70+dP&n>Qy+Z+CnI78QLjC({}gmG zLDWjq1)a=Dl`(e$?IexlDdc29j9Q`fXD2IU@lH9{YhfoFq~+RBZ4iywD&k}p63`;B zt)fm2CA98sIr?2iot%)3H0LnipW;p~h~84x@QXXSAzF?ET1G0_iaS3F@mdc`IC*4@ z9$h;`t42AOa16*5k~j1ODdCuq%a!FjbxFs9ydvS(SV_l*{7qk=^L$D<4Dy_W=TpjY zAU)E{YqhlFLdKHtd`dfhA>Lbd8RsV<-ql;i$ty)ywTm)NK8UJalyUMyRPCayQvjlB z7iFD-5LLS<=M;jd+C@3%XNam@ly?e4RPCa?Qv{-F7ZseM5LLUV;1q+X+C@dDI7HPh zDmuSFRPCaYQv#xD7nPinLc9?sm7P)$ReP`El!mA)ysA?MqV9rfPFaY$=Bqp9AQNZ= zAfJW!SEsxX@6E1;Qvq_5o-(}LsNqzE6rs|uHl6ocP9-4$?IT^!{K~BDREEr^uU{Kc zOl_x%5brG4b*jo3y)}Jz+?rzQI@N@D=e@2|U5HmE)OCIp;?+{>IyGdfxEby0IyE6` zM!ULBEg{}9tmo8*sAE{)sUyVu?G2o|5cS&|IQ1avw>NU?3km4$=qtZ&^eY-W4TN~V zqOsFZi1#ZRJB|J$jsKIXi4;Bi3+mk#IX8tABpD{88RXrC5N$L`6Q?;O(ZvvLqL3Dl zgv;c;+|+3aNl(J>!KO|tNan<{_TJ2C4RJ|$?Y)`P2GSY5UCo`gkm2a!aZ34a-qRTY z`9#96sGd#)MU3*ck^=&-cO3cp={P zGsKzjKlu!CCjL)8L!3!Myn4$JXR?s!xD^S9I8%^Hl|RFrNW`dC;(#+%NI-A%HbmP* zzarpFgY+WVAtXwQc5YgTwx49UGaaHwNr`Y~2)P-ad}XM1m|{jbGa;QwP70X?IbJ$c zJ5Ms&nGLB|Dpb27WDaBp$t@vsA$$AF6=%jcze9?gmF>@CoOzI?B>dVKZUns{u8rSO59uaG-n+|y=6~x)(eS=`^q@V*?^cF^d%{O3z*?- zgs2i=hO-HxN`M*8X5{nXf?U;lrn3bxs!W*eY=x*YVYagksb1cdE5grlwj)NB62Ch; zAgYx3-Pws$>P>u}vrCBAa=XCUEhIWfUGoc^JwgI{5LS&};OvE@#j5cOoPCf{ST%m3 zvmY`OtHv*M4oK1R4+s`3gD-NTA+<<&yUkK3Mu=CJSmwkE@y_Wo=b#YpoGxU=G84h!+l*K+3wV$}Is=^TZq^R?1B22tm0rE?tlsPnbTIe{2;zScM=A?kds zasEOob-va*rx2sg*LvqPM4hko&Kaaq=WBy=R!BfA*gsg5Et{NkkXj`C7;bUS3-Qk2 zR_B5c@2GBdE(-C^`&Q>~A>Mtl)wv|ZJI-63%TjdSKRBAkfoyfIKzRS)L?KrpNs1K%1-AtWDku? zxjCOcmFk8{<5MsQ%m-=a~?%tvl9vF2p+*vCa!2H+`#025a;&iWcj}9KD$%XaXuRNq~_1=A4rbJiTd{Tl=E8T z?Cs%c=S{q=^EZyu&RZc~4ga+BFGL;HGtN86))q9!!1qDgS?4`O%|&p|`5?r53pnq5 zlreGrDd(L}NcFs;PisPN{pX#}5H&vGg7Za4gsxVjzTkX?sMV-1I9dbRb(+^`BCWC= z$U>_^I6lZ6k})KIJ3)~9Q-ej!WhWT&l7z=xaY7)8ABBpTYfdO69SM)Q?u0>-K9eyw zodl5YNO;UGM;8*Ix62i(<)(9S#|ek@BC&-e6cW%&QF~NAlDkeK$oe@nr-6{fNOgyL zA^5ZDuJa9~=b~V35pCWZpGRV;)w00cHJtsNjGD$5VDIihv zd|E@2`%X$o?>I>Xi6Ch%Vp2o0STfZECk>b)FC^vFpE=|#e09y#eDBM|f0`5rPIF^`=eATLsfXzgh0Pn-;p6lp@VEq#=3Jw>o4mB!l}a^7%~i zf?_hdH4w9fR_Ng4qcXWQAx9yZ-C9Uh@48%RF^gMUNI<(yF?@frx^*DuuF4+yY;Ikd zk5;TusP->yD~DST@+(PDbuRTGR^m{t0zFf6x(y(c7Kds{C?==d5Hbzrd``C!B>PEO z&gXO+$CI>_Dwo?No@6JD^AB}u&FG$O)@|`-L z+Z!^Jwl$Da<#+oCiPVnLSsq1F(ESZDyJ?^Kx%k=bt5VSuO-er@UOoJ0x4#taP~%W- zD&_ODI{>nsg#U^n?m#JVHHV_^Ac(3t6m~IZ83(DiUbbtMcgI8O zbW<@CR6aCg8y{a+-kk_p5f&o8PpRNe5)z}SS#~SBlZD*#t)?d|O|hj_bf-YnjDMBf zNaQntR5Z~}Sl?X=NmfzGG8IGHdQID^ z?=FXo85XL26|zE#c8>Nix5i^u3b`4cg`Pxwf9kudAXS^nu_E=|)sX3jWSLOkT?27x zO)i;gt&oHI02-y7lMZx!cO68nI9%Ud4;hW?u)ezia%-TYziSMGBIcPnK5JoznE19uywbewEQKF{Ow*#SvALcUiv zaCbt+(pATQX#;l`@+pX`u7SH7vL!}dnGM}NkO=Di=htc@cQ0fJtpUNW!^ZAD$dZpr z_Dcyb`$^upjokx~5u@Z4)!2=Oe59QD0!NMA7|6hhDkfHn?=`(0C!_nKv3pR+y>L5$ zjA`N?g0y}ve^(RtPso-hN)AJwP^#2AeF5qoQTgb>+7CjGLXy0oxj;yoy2l_jNO(+B z_c)}%QyJ6DJpq|V!eg4bCm}y(3)OOvGT5q|Z0t!RhZxYuPW@pOo#eQxjG5E7xEq;mckNeA~P?*M;( zb$1^^YSMiX`fHHZ!+iuP)JfLRdby8<1ho9L1`U6Q?d3i}%uny=J%&>CcAr9GY5dPO zB)_@OAO*uiv{WR0-RD9gwA$1Yk)EWV`vTH^G=0ZP(%*dv`JG~NlMHZQ#S=y{(EUe9 zK>I5qSSvs>*nN!{lV(J$L^8~MBSk;;fSy7m0rxHB7G${lFXRTz^vG-GBiwh8SC9zz zy^w(ZcqFY9L+5>@`$3APMyHQ-KSEOWlr`9q?kC94FXS~g()|p{(oo44Df&M~nCQ(J z>3)TrY)k6_(G@k))f&>pr%~$)&4N{*e#J=F2dP2QR7emc8?D-0l~RpzgCY4y=reGV z5Qy)J{H3GaP)G{M7&lCcmV<;6X=B|4LL#+ibaqZrui{u&hjb)qLt7v3h70lTf=O;d zAznQy(oG~JLO*d{mi&=!VkzQI;oFLIzxj_Oi6`HSn507Fd}!Ti>r>riLcA4BqTJ*% zM&om)@t7z#g%Ga>JHt)+A4w&|+vgc>Y8j*R`*Z;1Gs8_IMcdj&mi#l^Z-vD8)SACD z-0zS|l}NMPv=B9q{VX>f5Uj1Hqq@<}7fiSgyVLSIBts;zDz#5|+t zGOz7ycYhWV9h{ZUDW5@iyIUAByxiDAsdl(Uq-f1ac&Z(4QN*lyNBzPgrWhoa~w!YjOxeV?UsP3e*E2TNu)YStNZa$lzZG#LZY;7R6f6X@6-0VrG-Rl z$4H)%?03sR7Lt6R7LRDRtdIzO*$3I08snCO>?7e%q8PV4#N01`SFBqBQjvtm#JUxQ zL}`!csmIUGLAMelcRHF;isX=6S*Fss4505F4!c!^cr6S^+^RynvHC~dYKT#74#(W; zh*4wpkGsFhnD7?!DQDW&3AYAPt(q?1fKIqIA)9G@IDZbFbZbG@(>|Z3TjejeHl#nr za5?SPfuyHr};QSi~QSd0@*|FaeTDuCATSL2npZkOKvmBe8?5I zxfD&Ue|pVr0a0UnuDdOTc;h8*xUG;+W4f1rq#ENbx3!RfHXOZ^cic9RHRzqZ=eC99 zTP(l#yzjP)CwJ(`KXBVi(N*vNL$?D&_5MF}J0ewdfgtTMrF!Icg6txBL-NG!94{uk z2DPHQUE)a^lGkom$f;=h9)eQ6bGtz9yWQgn&*!V#BcAYlg8V%p=iAV#b0lH@ zUXad>Y284Q1peNTKGl69CZWF%By(LElgR%Y?wtp;Q z>Te9w?iHjKMgKU&6tzRN`SiP7|9D7SO0|+CuYUq0J(Y)>Nb>n7LUz+EG&@Q1`zJwO zk{lo@;GYb6NA+30hXwspR6bOu9;KK<{z!;TTfazB*gqALWeAPrAt~yg2024Hza%N{ zkAmDJ;W?M^PZx4CZcI)|{|ty4lT+G16QaiCl=IJ0sW!+lITie~A!d;z{w_KCPmEK2jyG7c6E(tmI!HB`6n3iiFhmF->a8^IqA%SV)Xk#FR5;SN8vbm=VKdoxh5Ii4bp;R~7$Kq*6WmRs72! zs)e(vf4Pu=&PVuvq~l!8zXGC0c~$eT6cU|qEbX&PWnDG@Do6ur6P28nY7sQ&ek4D^&qNK)Is0r^z8C*KR|_%{mi zj(i>eCLvz^xsHGHe`L#lQf-x@S34If=Dn=r-v((w!sorL@7FV@ z?woVxOiCHaUQ((Q;HPJ@pVZ z4ng$Wv#oI$qI-I`Gmb!(ol+&n_Qp|&ew)V_#~}J`-oZF7Wv{>3Jyq7~V4RRbJ-wgP z9Hn#?9gLHZ#wV$tCe1kdg>gzsLYRI&cQQ^(8R`F&p4g&(tc!65(tsqpl(SNT{y|jd z(2aWBbv4dGrjUr|PgmnN$Yy$51!(WxjPsBqBx3K~j0;k{ywTmbD8!HSR#R<)+@DRQcY|xC_yvQTiMAAbK>)0OP)t zy{rMvj3?@d1{x2f1pRm4MX(BVod+2YrFd6$knu>0cMS&_e@cnXRravfC16Ewmgr~9clQP2p7L{w9)ctIlq zl06g?sl=~)$_0%mi0&yDG?GAcPq~qXAEJB8jWnVmBTY3MN)Q}zMIWxvc19@{Uf;FT( zHr7ZBNljxSf^-eX8tEVjh#6<3hnyo3G2@I3kRx=(%F%By-pB~K@~4(ekPg$;Je=c= z%#dv%$pV@6OwFh{-pC4xETU@p#v9onrls16#v9ooTMKE)0U3KVoHe7~hU1N#kSuTL zS@%XrE=WO=XeqfN^=Qi-={ip^@<7^!kS16!V6ssF z@&#myQ4o@%gzEM2olyvq7xKMP81f_L8;moGK=whV8bu);TKHHq`UR&M#UTA5@kVjT zD5RQhlz>cy%rHty@p?$kG)h5q56PKEX(`@Qbe2&DqRVWvjIt12W}9so5ZxPdj$uj( z`v0W*pN@3Qa}7%gdqCH)n-m)|h_2XYcYSQW;Xnd(eS|DDT*zfQ3n7aQ4p|0SY6KwT z>1y<$EiX4dlHxtbRu~^k@t!{`jB+Z*|8%x$k6U4shxq2GKK3h&Po#KPW2I36qGw}U zX;g&hC-y3%5=56b))=2c^cVeFqcUVc7WF1tXH=2ml?v7yRh1-7NApOF+V71k^ckLY#wlTja18S=By0J0YHi_s9W4f3ne2ojM*-8-9%#*mDV z%|;VQjx;J}i_sKP3bNJsT*~d}R#ffpP;cjLMl-~8At@)Nxs*hIEX^uVj-G7WjTT6i zbiJC>V7t*0sdABImocpnGm%Q>m1#RWjMj*mPf}A#8_4wq>MMJv(H8QQL_EWH8ttS| zPk1^n(eG=Q(H>Hn&O*p;BL=C&7~a8@!}k~+AQkC1FGt6-$LI*DPa?Lw$M^zbr&BQr zMkgsF{gp{XOoGuFF+GZ?m_(xsVuq54m_(y1V!G0=Q;znv*XRZrNFrkP8r`KN`r49+ zW8P==aVqb(mZ21A~Zi0vFRhDhx?l%N|0s$MxDi3BdAg_T@pTLjD+Zt@NdQ_ zh#n7n-iU>K7f{cr3&v=OE*oDo#z6F!)FopqM3<;98{;4jMsr^=#zUT7QD0kEjR{h` zFR5$BM8xQ)=rv;!M2|kZZcK*gQtl073PhKUe>c8^=z7tc#`h3iTE1n(N%2bfw~VP$ zyt<3q#xyB$H0Na!IcL#rBVJ07?H!|PMeZ8YA-^_J<;=Ur49GpaW$qd?A+5epU#xeH zSxWrPX|3MIlz;9Tv!!@r5bhdtAo|IF*O)6M-XBi$rHCj0U1OdUwQjOMf@*G!`4F*g za(a@7#sVqcbN;chP)bnN4D<}AKAOfNCG7J{K9+%6c%K@JA#JFwmOh)<-^LOp{yyk) z^2}HY89^fMuV=Ga%KF2(DM^}_f8qWfa~W2}JazF7YlDrORSPqJMT}k%KFr(%`TV+?Nh93c z4ACQPBg`!jJ<>MP+$zQUm7~mUQoMP#qs;A6y!X4`-0>gT`9It7o4cfVZ9sl=H$=Di zM4Nl0c&)cd%>=cb&D!RojVP_TDF->dDM~kYgm`sh-T-k5sp*e@A7? zhsn(YkQXE(Cb@Y~N|5EDzGLM`QkaLN+=w1Q<2Xc_KZSW1vWi5M`BRujq|j&-tRRrm zJPNr;B4SdS$B=3!=B`O)9*6A4+%>7p6G)Z6gqq_ewRsX^l8Ei3HcvtH$d@$cX^0;A zlEyp(NyODiYo3KX#MMY^o`dwMuine)%-!{hM8u>w zFGBRZjv35L5WPBE2J`Dy`o$u^EyPYD3{5+0jWM% zt++b7AdxRsZ-hMNpO99R z6UxzVk;nWC(u8ualE;ww_)YVePo#M7f;{F^h<+F3G5=PnLbbbj%x52ncw*-~M56J@ND@as+5{fBczLw&(O%ycWK*So> zqCagx^Q}t7giNARQz7$T#OPJ63!CqxsP(d^QA}a;Jw&XREu^T)TGQs3*T1E>>64Pk z^tWemGfay2j4EMQEDiMZoRo5`dk`tDJGfbhS4tc;l)F|j{W9V4BoVWyC>H~Rgt za7aqTET$N-FT+fQn2g8O-VHOglu`c2)K5>0BQwl2QoJ>}3^T2g(2R(NnNEps=%3+i zDec`f(@Rk!>(`Q4W(LSD8f7E)ZkZV&Z%M>?S!O24^pxsr!ZtHQR*{Gp+sp!aby{u5 zF|$Ilol)Cy%xsW6H1b94%Qdq@Y!a~@*USOgHc!QHGbiK>iHPB5F37jkCs1rBVCIHQ zB@r@t%_zL#9V0_&bHE)%bSIjgud}Bm_?*`^GsGSi%N-SrGHT~b5=5o zK?;(HSvM=2#iaz<)}X5MtYVgs;=SLim?i%srKEV}geqofB}|V!sbZFa=vJXBW?6_X zvsEz-CH_W()w{cjX+qkOi1%_8(}MIQNuYDDYTA(ev_gF|s$;BbIuMKGpp0=LZdvt= zs%COXRU!2Jsb&TsdT#LQ=0^}cH+XgPV~Cy`yoOm0qUQ#$VU~wn$f{NusA+xzxl1Be z8K`Mifav+dYnc@xdj9ZQW+lktcj_%%%ls5F6l33No0TDPkk8C2QoI(8I%ZWV-Zx`i zvzip|tE8@39WkN>Q@qjYnl&JL#BP1FCPaTpH85*IPSKa$Zn}sK&Ds!ML)FOq4AM83 z`ub~Z)`946y(VT|$Z)P=nws?>!)``U4`phdH0whuUI=4dNSc`qAnWO?q!&qZvmxX> zjer=@<47_%j$K?OR48$Oa&5Irw?jM-Ysjp*|;BiJ(1=j{>^`gIiw{IR>pGjAq}=emyQpHin4KX#sa{=dr;FJ|3%1k6?D~O-?Q}7_ zL9YA}$+G06mPfNYWa&*M-OV15@GTK6AI0=EdqQSXs!}Aq%r7CGW<)WYq_^1%V$z77 zN+f;E-jK>UB3Nybe&$z@YdNCW(;U=m+Ux_VU7A)Ep_n0NU&y;n5iEw}8?zszZORB1 zMKaXv52;8c8L_Y7=70~R2T9Nz2$}UGtT`Mq^151^X{QP=zVdMuJZ(Q5>g$&z9yQJA^Ht6(VPNVvM-9=r&JTo@1)#_KJ`bK?9)Ec z{2r3zmXb+k9OOqT7tg0Noor5p+=fgsr$OFQJN`0?`Ob`o#896BA>W(RrKq};$F%o2 zbB2oXt$h;CPE$<0ITO-{a@|Fe>E^5tH_~%rWPGAn!@$nhPLVb4IbGxoBMmb0K7LQ|ik`vdCNnsr3o*Gx$y6K6pCAnr zB3V<4*=YU@=@PE?^`rRnuyV=|hS%A0IW^)JR7WMa2sdhpNzSpt~QibyKr*u4< z&E1fjbY3de9!OxhD&cQ76CkfHsy5%vW+J2%y)VR5VzaqdO3+_DPQ7zCoBJT$Li^ee z$#qGmIshpugi3>(&4Wrp-@;qWLrU0lnvYua3f^KKhNPpBN}^S9t9b-c6|&ttDkYAs zq#kafzxqz|800X$W!});y~{kVg4e<_RVKt}gY?qB~`ec~VNypNH1bh@c*I zd(2ZvwJJvvmQ>1VDPCE9uX#p_Dw&H~qrK+Y4}^Bk_L=9TsPE@KdiudJm#k?gYp0yf7eLN}Vih28km`_Qrn|GA>3zedgK_oZLyO7jAs+E;; z4|0yqUCa+~)4VT5UFQ}u<^e=pXCb%Dhf=)je8+sGwj-~6M~b;?{)rfUo$r}{sTi48 zGgPBF6wJp;{4Zz?;>DCRADB-dy{Q#g$x|unc)HV;ADDkb#PJAuWImJP9nW9pbG03L zJpC!=vH1cq`goq0|EL&wJl{~v6Z55#(DA%7UqKSTjFQLm%6tvU5t28M?W0ofedPD+TMzS`8jQbF=ie>NqlA?fbw<4FSXB>_hvfCv#Uy&l^!Dct6TJK?z1vTiS=hc7QxnL3uEC{MlF5Rb3WY41Svxzz7)c( z%xXK)iG5W}gp~!7qMwS1u(Cp)U^|gkHi%29#C9UB>=3;!aFmq;qSpnEvT{Q7y1-FZ zE{I+iILgWmd4YAeqpUm-y()2(l^3#Uo?6K?%E|}%hh!{$qeWTyrFgY!Nvr}&LbYm1 ztb$S!l5VW2RI}qBpPKDvVUR{yEwz0@3x)Nv)y~J?BF*tC$q89w50@TuP9M z-)j-&@Z?qrDKwtwD;jS_lFBOif&5I8&MKwlRwUa^lEo^G?F?U`@=rFa3}Uihj$}`3 z(Ms)BSt(wPbWY2V;=R9eTBa25`JB_Tl=zol3}^dkUpXxsvV-KP6bI7wD2?4A$z{2a zo+KBgaLAjNsunc26@a8ipSRrBN09gbs+c_1$B@kLRGmy7s~lu8wv*Q?57|N@a$R2Q z6UdG2KKVtK&#C}$49e4?XLOS#>^;?2$AJja65Qs*UeMWs;IsJtO4gZ8e0nClOb^wABbQ1hwB~tj3TDB=6{$%UDgM#IZRf zV%7MvR#Pcn9hzZ%F2$=uGp%NjhF56r4LWAiY7XfDv8@&m>w=1Lt(H=}J1$_glH%3m z1gzFlymJp&ZKQa2LBMLO#J`oEprQpcV6}rBBoWs+V6~Ux9rH(43`F;?`N--ZWiJc9 zQ8hUqTOARjdq;e1eIdm=!g5w8De8EBralAZtjlLgnQil8Y385pbV0A@| zxkbfPw7Matq7aIyXmv--KlCIK<@rih55y#=FDVgI$?7S^yFQ;jM$% z)qZOAmg2SMRJOi?=+>MnRv(p$#nq2ukxi&3+3E|)dM$#bB&lxogETqiW0^>5Sp6X> zXgq#ylA6{4Dc+T@Z4HE6qmiUyt<~DrAc%fq*Rj5qk`UG&b%S-S!BS#F>x9;|hCuW> zp>?fql(3|94~n~>p7kwaF4Hqg$xz5sJhkds!=!j^QuVFjh|%kf*0)ALb|zJ8FV?q$ zI)jN^V)z zfmEQF7FI0wuHU)stkDqt&TVInf$Y7YdPKLg#zKaLWE@1l-`iQ^A^QE^&YA$}97;72 zl8wInI#NDtXHA0WvP3&;GDMdp+F4T|4MN-b4iXXC&i7IhS@^^VR+qjM+F5ZbhUpSx zj5QUaON=qrG>9%S##r$XU1E%}rbBdzF~*t!(Iv(hYbHdO7-Oti5M5%7v1UVNHBe89 z7;6q>Wk}{iQktqRCB~Wu8AanF#S=Tmnh&Y-sVZm2SPLLyrmEJi7;7Qq*mYHgjIkC$ zhN4v2!CEXul~Ni}-sos8L5y8eZMl=RREa-3N`sxOWe{De>|`y6=v8GqTR%Ybsu&uB`757#zjwEO(y1P+zAN3WpCS4#=x+T2(RV?2 z>sKl9tT|o7WK=KF-P#1HN+N11dRm(yWmD4%6!cqsX>Ea|A?ZZY+u8~#N7qNhd}VEe zeXZ?MV*OFLKK-m6Qil6;lZd*De%4OJl&3EaaS!&lb|I!YzCrq1yQRc4mqxOS zBOGAufixizXED%9z;<3^yu;U4A|wmOzkhA*g-pIoJ&@@L2V46f3n4?S{ZbOydz!0r z0L6S`9Z=%?g<`%X`PMp!7(Ey6Q0tHsuaDv|>o8(;%i1vOh?F2p^ORnLLM z>b)bZV-VdNGiV)$=y%FU>jXr91&p#zO7Z61jkQim@yaBz)@doD{C|~*V58_PVy!cf zcO>JboRt#me@Lz5-;<2C&OzRi%#iY%lz5hHKGlbljIqu`l9Q|;8E0KUs{RL6UL9{; zgiIn4zx#OW5>jm^v8hFDf^`|PjHEotB^Qd z-6Uc=-&;4NB(m5js#&5VjI(}+Ox{TKf+SO|n~=^Fvx{V!^#|lYK3X-DB;L9uCFmb@ zSCvkuTel%gNJQy$x^)MV*jdHQuj9(`iAXim zdI%|m@|5r9Q`c1<|Xt&#_)B@#~Vz9P154 zube)|dJEAjr_Zteh3J*j=UVR|dgb)F)_aIvIenhR+KTc{tY5F3KF{(&^vdb;tuTmQ zIeoqrE@fY|UO9b%6#>yJr!TM~kxKVQSYSm#bZ>+ORuYKrjj+)2Lv(M1g;q2~_cT~! zC4~$|`EZeyOs7KmaFLZ_dPwh(WPr2|Nk&NRkYs}7ClTKc%dE^we0sh0#Z-ha!B!3MPF{^gy>b#S6I2E1XO;xWsGh!qk=%yElL z39?xdUb8aMOf^<{Dc%vD zvp#|7<2h$lfQVy0%V;(mt0F`kp^yt!C5T?b@sjnal%PNFZT0@TVpUecexlL$;_kj; zRe{V6NmZmeN+P~buUOR(Bj#2WBhar{)ghvfy^yQ;-PL)C@5*Zs^<8PvHM|iLkz2}< z+zg4%EqAOMa?5Hvi|9JvwQ8z;$uHI#lPqpx>>gS5qsNwujmra9zY4=pVq z)7Q|QB4b)YHix8@lvuy6d3$WNhUl8N$5tE2+O(?A#6sq!4c=$m-Nl>`S`N&#W&XdrA69=>!?OQElhB z)fuu#2yN%N)ddoKqe@LLtgevRB;uG~Slu9FXv;%r%l}y2A+tzENa+FTe?+x}zO;Jk zR3xI@`_lRnGNffB%T6`&udH5>SdzR_dP7R!TjsU(6{H4HbnN;~=R+G9Gf6?j{v80kR?_6Qy|1gk<(4Dc&<7 znLSy`ZC~wvdOK58OlY=*WcGIuJzGLD`+F%jnRp97e@rVH*l{0-xMFGSsZzXWOImxH z6!jK%!QoliJjG+hnUACKT}Lrd%hI!EV9{5{_RVV z?Vft0d7^v5d!nCgp6HfGPjq`_NFsNl&tynah+Zf==y*I4y-*VWpNL)rq6IvA=m>9; ztfumzCzGnGm>i*)nIs~{lUVF4rx$~Lg(Px4wVR9kJ(s=Uf38n%d!ZCBkL9)(N%2~@ zbK8p{x~?*}y#%7`Ds$UQA-b+Ix4jIa>nd~G%OSe1GPnH$MAud3wpT!OU1e^2B}BJw z=eActbnA9*do@J2Zs)ewKy>SNZhI|6w{GXQ*Fkjab{=~@M7M6|wKph<)_Ehpy-`Z6 zU%&P8+doR#>(`?#3fMnE^cal-_RrXk&OZh0Um&`@yMX;GMCZDK_9lpK?=EO>hUnVD zLiQGjt}QHNZ-wZZz(V#mh^`4NWN(M)y7xl%4v4O+EM)J5==SbH_AZES?=EETmg22V zP}trhC5}~C7{Lxxo-bl2AVxoXi`$8aS+qdKl(6?o@oFJT+xw*4h<;ABE9Drq{n`5= zhnA=@ET!!ON_;bM509N0OZ}R>nS#n481Ze6VHh6Nq_F(t!Ggm94-? zYCBAS7gVwzLv#&rCHo1aCdSBrYCnbO_T0+$-;l6}j3uS#d=>i{q{4Z%T4go+IV8<( zwGw3w`-PMsyGvUZ_g5|ZA1U57tYyEH;$6d9_A4njeD+sS%!(ALUPGo9rR|W^w%;g; zezt_>yCC_@ev6nB7ntnd@|pcFq)c^s2QtR$*zX{^^|r44UW(VISPsWa z>W%CakV_=u-QCDeDJ7mwxDqMrx*OZ6AYYS+y6&cSYNVPsM$Lfnxt#`bm?RHfvCr+a z5IsJ(nVk-z$LBV)(@TkGrJhHzRMh_0+|B^WLz0E0rJWI}{-rE;DL;+7u`@xEB@1H} z=)79lnUQKMNnT3T+Rg%5OF|7+bCW6u66-P0TS_Bbhis4l^!eI!!88TW2Jl8g^_AcJ0Fd0 zq8{^h5y(#@9Z7oGMUhI63h!+fgXj^dz3t+Vi2ji*E9Ks=>=Ka7B)O%Ogsh)KGe*+Y z=wp|H>>_C)r8J}uS{3`+WgsI+L_X|mmz5GvpYkdn_OlJhQ;HGiKEO7SYRzMsJ(y&m zZ9(>tWRzkf)juRvNCw#s8_=KL2lkJ95 zyp?dL*o_cVZeb*QMKM$C#t_yvl10#1g(-Fu$e6J{mWpJW-4rq`1T5*x^Rw(`ka{$7Aq%CNV>gGyQ2l&flKFNENM4fCB#Z5qO8o3#1pA0&ncWH^Mgod4 zear0D5IrhtncW7GVZIurwajh{X`VllRg~Ll2iaXt)tD`_+e6aQx1M+}FSBDHbAM4K z;bnFQNah)8Y{fFWBg7>Ud2E^eg_Kx!oaR0f+gWaRf+Vve+1fvRB%M_%w)wuA!SV;Y z3u0Q*J4K{gVRx0{mCRSz-KBW%+!gjfl`7OK=cUWHTE}~A3zx2iEU>+GSBwmX%qw}(N-Qh$CiT4#ej98#E4 z74p%XY4!+6>W~B>n{Da~Nzb~C_DD!4x`ug4ezZqHs?xsd(DD3a$9^DIgU6;~+z6%k3%E7JIxBzkb?mvnN3G(`K7J5t4*%WN}{G z?MaaILg<*c+mj*P5VOOc0vU*y9rkw+U2@oIe-F_mhn;pDq-Iz+`;JE1?y{#sT9b68 zW8P&?gXnSDyX|<09+$n_o(|DZ>^=4jh<;-4v1dZ&j8!F>1bY@_4M`r#nF;o6NHH4e zCeA(4o&)(r2%USPJr^QsN=3|Gdmcp8l!}bU&np+LdeITtL^N! z7eVwpcfY+DqTjju?IjRh(mP-;mEwI#9k7={^b`AlyY;!rm;!8*_ca-U88Mu20xorKl&Qcpjdx zx2f%fo?|EN?JCBvN0yzmcc>V@9$9wM-ierwB~?B=W$!{vKOvOIPT9K=GYT=M?LCN@ zj+oOnW$OReetHI?TEqs?RXrCH(IPgS3yV@v&R>AxJlp z0wj0r!&)Xs$(XzL5l9S)h`Dbcl@eqvQmU2HAK1qr>({Dx+(Y}glsI-Qk;Vek-XGd0 zAS1_8OBTtW_DQ5_wpTqj9^0o7^N99!mSP^;r=@uBuP62yDL((~e^hV7C-&L@#GI4j zeOErQe^U}_5qn~vhrDk@--A9XBHI@r{>G}u!V~)6SKeaDGx}eweQ~NR`Vxbxx z^S6Bkl8HpT-~YC+LhfQ!qi6OtDRJ!R6g4a0GyA%fc(#=!;*yWOux~&XEb+0+bT$65 ze}_yVxlQuQzA43fM!mNGfan%Dy!GKu=vwV*c$ zbM8qA`j^tY`hU^hea?NzB3j$)xs(S;rR#`%&O<3)?Mj&Q2&q!hlV5y6hdF;j#G6RT zUn*7TSr_I!mJ;tjO7o_Qx$?rCCy?tQc?!|<>4iCeL-L)~sh&ZyoYL|f(kK-30`gl( z{(;=08MD>iUrO~ekgJI5Fh_1B`cm9RwTI+D<9i;IK z^_>#oyoa<#^1ekWXtSN8Ke z5fEMWi*_QVc<;ERPLvdHzNVy35{S+}$s9jKe*qvVM&!tEX`?K=zP`m^4mCNYe9a4T!W(CP+?_#`Hy&*2xU{_$|#zLvM(5 zP8LW*l3u?H$qMP7I*Qe(LM?PoHptf`b){s7WT+I*nvi60azJd7mQr#;#^by)I=LV- zab6jn+>mlnY9`)HP98{gNMq+&wfr#YR%QoQ**b2>$kO4rloa*86Au1(G56q6EUOZ%!;*E~*fl`8Zk z$>Wre63>#+Xzr+HG-Ago3CTzz=4j39l!Dx${^6pYB)?M{BHE-xJyHRu4CF`ZA1-1F zIb|WDl}f}Eb_~cF${XSyEb5q$TO{H>E#_E|vXnRa)9+Qnu_0ARhLV(Y97tEn8>3$P zSZT+F3?ms!F=ZSMDV-*YeNSRI0Z2KL*(9d(5u}LECy&Q=K8AcmB96y#%0Y%x-Vn#k zo$?UTE-WPAd;$?|$0F57P6f!Zqx3F#MPJBHMaWeWu^L)=rxK(E^&Sy16`W5YUy_KJ zicV!n5HX)RRUp$5Q`xBsc@>OcDd-oh>QsZI9jTGUUIym(q zw@Ab>cW@d=@s7Ep(@=_c#X32Sq&ff z&~7cBV(FD?$KAtCv@(eo#qhV6(wDq7E%&@*-2_pOjoC+lps4xBT^fZbaPrM z@t@qG&a|h~8uExloM}&|4N^5sOZRAI8cE@_h192hGUBTCa@t8rWV*Ghm(w1iTf2HY zF%Vs{>g{w;+wsS`s%-p~(-HCu&63fQj_@nz3n|{Hgs+@V*p4noedTmk;@i1}RuZOE zeVi_cc}nLlR!HpYbcGaMuV%sO=X8VUcB}qQcPZW*w!hOuiuarLcX~?ke$)QWmrDHk zPN)({f2S9uEQz>={hi*B<~ddU*Z}7%h;E@9;Pip$9?=7xzK}=9)ok+voqmwlkU>s= zDT%(!v@h}A`PvzP7?XZ4F-QGiXCR~!WQa2eslFuh5j!<=srqt~(-?tBZ;YuSu&h9Z@2XAC;SR16cpm&iXOo#85m=@QXMXM~g+(P>si zvV(PLW-2EL=|OT_%1Fr3Dv|6QNvtyp(yVeMyDTLZvW4V#DWf4f2S>56YE<9tjDeIp zqslg;ow1PRB;pqw?Tmvg9InbXW1R7j2%3dP#Efw!NTGgT3!_*U%7(sZ9_CCp(2KgK^*@;);Z=6l_L!07EM@*-X%#h;U-BX;I5Pf%l=gdN?v(sqKJ-W`{ zIkO@DcqMVp94T?^3H7Nsa@ohGIddVG*3g>LbcEBLc~TPPtde4O?pe-!h`vu}I}4&Qge;#d@BzOo>m=hCR<& z{((%OEiZ6>K&nm2lgRJoMa~MyULj$OEpk>u#LU~%DAi(T6{P*ha5jfziL+Wtkp0w3 z$ueh+it&ja$V({Z2WKr}=F%LSLRL8I5F_Rf7qZe>4-vhTMTvTqvjM4+G^h0fNLD)= zr6hzK)Ji2}jq@W?iJ8e)(RS84KS6Xo_B!WhY)AL~Ug!LR7%^A5IE!`8uZW4Il_-U5 za5f=E&y@b7vl;T;F)Fj2p>;HzEl9PB`k4#)#n}qER*TmCpzUmOwn@3+OG8)VFg-W6 zINKqq>6qyO$hJB=Aid~nh?s58PRR1^RC7YI-Pxridis9#*4ydqhLpu@>N}l1NEM$* zec340PA35|wdoh6>PoiDNra@MUr=m$x3gEuKA)cRJi*x~WhC_nRM$Dd*$){8NpucK z3Hr~IG`!(sd!2(2F=xJ*k8!VaNQ(C++Up#a;=PIXI!B}=gyoA<&*#0)Q7K*>$Uf(o zib;C4o!as~=Qu>yo$hl^NQq}RM@6u0bmjLsCn0}B4mhVEF_Rw2F(pcCE+8^S;+ojR98naN1bz!^CS;Qjybv@v(c(UC0}fPb$znOU^yWCEBtmRo-{* zOHrlnvb3-J&I82kxe~$ZFsg@i9zxEa4QC%y%tPmq6t9%~(D_rv$XeM-6!WL^7gB|P zqRKXpoyQP;7LT1LQsVvVqM}%JO7+-z3Ykmu8r6~VH$=>IB;={{Oo}(t(KF{cM9*vV z+<76z`z@Y3|48xX(0=Z`{6IdZEkBoE3N*)9WR`*SJ5-_iL+6#+vQJ1`ih1R{{y=(= zymj74iShU!EiSU@--yVO(JElZ(Oekwuttg#Pv%F`jb&jMLF8L-;IW3BoU<@znfHwcb%i% zWKz7}BHB$Z#d}6YyD6mX^Ixl`W(|sVQ$p^Mh&NHRn@Wn;uOO+LT1lv1K~gu36tCtj znVVKhY-okMWNtc$Ug0j8n;xQ9xJ&M4fan$OlDiqDczr=rxS1fjbehu5EG3RDq?-28 z^t-2Wvqo_nH?I`0J~N}652EWcGr9Stcw^Qwy9K1gv7vua3kw}j7Pp`j zwaQ8BYSdrdEu>Ph#$SdrA=%u*h|wj7>~0Z=C|!itq<5-Y6sd$Pq*OWFVjsvx+E-4u zI8uqy*CvwOZV4%L7SAJCJIa}P-I9nA@7&!Klh-W;5hbD{Qc6QaDdjXtKDP`+l##^o z6mZKzbSb5vYbc49tEEt?LaqrBWj3*$!mb6;rOKkN4bdyJ6m=ab!~H#}bRq7YqOL0? z(O2Y#8uwSstt@?{Rdy>u z`jX_Km@4k4kOY%zU+5RC>Q??hC=sjXR)P3es&?vXZdFL@d68`5MIWo~R{KE8(3Wes z)uoJ-t0ccnAI56AHKZi^=F&+2auid`t*K%{t(p=>Th&sLcZhgq8h4dVwR1Mt* zkl7?HNgBBgAsZjjI3Y^a#BBsQK_a%()NKqIi@em^&}}0n)_;@M3lOU(bavZHNeI)c19W!VNg2tuQ0ZMf)jPZGA%{uC zcR?371`;@`z5=?r9i+s`RP*VWd$=7TBGn3#FWoO7BGpeMU%8#6B>F_nl30nLpW9hV zEXxv%V%sTZfZGKz3G^!q8RT|_e7#hScpB_>L#lH>Gx^mv*zGQ5uW#)Vm3xP{J)|Ur z=`{|%aeG4aS_wnlFQs_zf}w6NDc-wasN4HLF<(j97n+Z8sM`mkN30BW`$F`Hm7#7w zh#s*r)a?(^BUXmG10Z_D%20P8M2}b*>JEbF5i3L8uOWKG%20POM2}b*>JEYE5i3L8 zZyZ?r_BDF)YK~5mNRt{aXaxpo$5N zY8mN{l;VwQ8R?EvsY0V#M!B&NJ*s7tI~v>3qgqC}V<37|%P4m&M2~8Tb;m*UsFqlF zJVcLb8SPGh=us`B-H8xAs%5l038F`}jCLnOber91cM3$e(2aJ#gXmE$quuWzdQ{73 zH%>}C%SB&pdnwP4ai>BmK*qV#q$K)cV#C>SikaZXEAi`R=0tb8l29MciS7)DE`dyP zmq7GAIN4n)CCJY2Q@`nV?lQ#ad+p60H`cJwoRy1Pkj$FE1s&2TqEYN1R!!`%XDi8AdBcPnJ<8C4TF)7=L7 zn?$_3XS&-VE3>J-g|plpkZmL)W|q4X@|ezDl%Hq2yCBi~RlWLbcej){f5Y98Y{6N2 zCc1m1cw>d;xCszFR%ni!s3bI2XpXyAiubgcK(5nOo#!6;bAf*!Wi+fW_LfD$bNcNhp*sty%kZmbx>^7a(CifO(6^SUbZFX-% z&em1G&Sv)xSS0;nkn7AhnVR}!&#J+`%;1|-)Qv&*z7(~;;%>7Fu9C* z2x*y|TK=Uxg6t2AWSOP>2{DIkD&Y$^vbyse4pG!$(_1jY&0F`96xi27*BuQw?JKTSy zc=zB=_oWo?9^C1^QsPfhQ1#^5>Ar?!BcY-?+v&c6rB7;0fjaD7tLw_Z-V&WUcAlvuW!dNPY=!hSa#QmBW@ z2?yK=CH@@WQjP0#A3NYis_ppo`WFY>D2QJF;((h(N*w##Pp!AKuLI(SW*^S7auA|g zlgm=f;gEHqBgY-r1( zeYqi}`Yj}4?=46!ghcQCiknPsSzW`f^=Up3H#zp6x=17|Qjhv5x+x$J3v2n`bH5(i zve=^#JQF_)sVc<82wOv70`!ttmaE@nQ_qJF`_bj*K+j#->V zkmN~7^jSQ2GsrEgYdD!=Ubq?6zWlS^sQy1M-As`9w^}komXnAcK`;MvJg-9g5?6IP zZTU?|#PQ50`8Oo`czis|2gf6FR2a{Sed!z(&j0rp)S}LP6{U(qjOq*VBT15w=zS&Q z+0>S0?%hc-$$56{s|&7kN}fXr8%3i?j!{fXo)a^WumRH97xK zOio?`F}kHDH!q18QMV)Zm4}yt=(?S}ytI^9rdy!$@iN$su30L;%R)*$j$rR;I|aC* zwi9YYEWk|_6KYE;z%9h+`kw;ahUj+20^EVwUwf)f9) zdBRz?(julJP9m*h32c=@>$uO&t0=gf4bWq57G==^N(&k!T>a~_H@ zc^!z(&lazXR60LfydGjielAR@Y+fHRIzKzS0b)dcE=4geZ-^M3pE+-Y7?GcCius5) zMvTtS<#-dsi2N+}Rh~D6==}T%|6GcfpDXZY*pAN6m3VW=B+Ad_X*-p83$>k4ey+q@ zs+drIuEbj*M(5{ByfsAU=SsW{MCa#9ye+n)^K&KM4x;n(r@TE^nBS=KeTW#K7iq}^186P0U>!th|AE+eM zUQmY*LX2)xsKdX8=$_1V`Cy2y2dKw~Nb%0AKL6%F@~srF<)}U%siIgc)5}EG* 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 z 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�ueF8Jx{dk4@Bxbo!;g#;wc(r=~^W1}YjeCe^ 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 $*d(1qqQ<<_;;b;8H>%kdCfDCdQKHiRdO9 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ʈ->c82N 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 A&;S4c literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.ComponentModel.Composition.dll b/SOURCE/Application/Plugins/ModellingWizard/System.ComponentModel.Composition.dll new file mode 100644 index 0000000000000000000000000000000000000000..ec9d63a9145b42f78c3c36dc38683e8c6106ede6 GIT binary patch literal 110832 zcmeFacX(7)_xHW_-X~!uy;lMWB=ioUmsB7SAP|D0C<(~`fsjBF5L7f6!~#f@D4-HV zM8F23fT#p%f>;nlQBaU37F4j;cdfPeoQya6d+z7Goc5wY+RXdBK$U!h+J$ zvdZ{zuK4olrSZk3@fpK%r`y`sIb20(4g@Q*%?6|>Q+G%JK?<+b0OcVeP zZT;vT498=*7OxQF;;_{9rWoEN^m7{hXkUE0#CGN14G_ft*Iy0l*l;iAJB-4ZZyj}l z`=?yMw|x=n1o*ja|2x-syXu_EfjrP7eY;B6%u3|b6R^JM^4pbHloz6r z>xOmYhEBq($4?60u6E_Fk}{0Qb;UYUAHdXW;-z^ckoEAXa{$%VPE1;Xa`@rbFS%@e~5ogod4Gbs*BG* zm(AtY`#kIDnZ~m%p7y_2>3=Ba?-Boxl4srik7oS;XZFuMz+rkKUkLEVC=BOTmKT>!sGt}f&guQ5 zX-WhV&Us zNc0Aa^;Msdjl3ZvgDf3IE9DJ~hdkBH8*;VH?C6?5`CZ@Z0?I; zL3UrDR82VTz>WzRzt0fTA;IMRqb+Gy*72+h63G(7X{(!2xV<0gO%bH!nWSwKNE5nr z9O4aIIR8g_Q%!E^NcsX>ia9)-?KgAy9@b@C=T2Ooux@$%utgkylW$%>ABcv>I(ox+ zE^7|=Kn8o0b13IkeW=`CXb*t-J|#W8p{O(2XLXOv^af`a()O(Vk}2laF3G*He>&_; z3V>#u&%M#F_wEa~wROzuT}{&h^sNN-4Gdv(-W^bUxn9G;J&{1anHZ)44G zNa4^}(l)HCqA9$c^^<5S@tsK0DQtO&a|q>Bvl>#lPsLFFDuJ{kTh4M>+ajsNb*ZFr z(Nv#@8d4h%#ga~pq_iVAPA~Qzh$2f~bV-i@$cy^DNdU}>_#MZc~&J zc*9C;FO9G_d7#m367fMWjPEqj91#RTJ+HJ5#;^llLGV=UmDWiZYK*CZAbyngB|sI% z^zNkz{g}%gZLhR$i!oa;_3NsAZNPysAA>8cv(VR*bNM!pdu1h;O!0mh4N$qO~Z|k<3nD1~dkNQw9?cg-0JI}T5ganw&hOV2M1mjwGhD$%u zLlZ8qc*j2Ppy@Kxy4IVTOcb5qPo}t5o0E8pfRu$4C8{vpPc1ez$rs6xK!X{!1#fCH8j_)zpwU{`mrC!2L?w(* z-qhqAQU^|#nW%jo*_YEvQ!-O5627t>c*vlP)A1~P?U>DfrvGtK4p^@d`m z0&LMS=ndt9=2(lKluK`z!M;Fj0};I;2!h=v-4do>OuA)U&$lsVLoDGT_Kk3CY7&OD zl6|#U&o)R;ux}Z*kLYQpgghN{3sXdh&Se*;%jLHBhW+e&3G<{9XoU!Zv{9jbsAfmG z=hIq+_5q|1xIaJZseK=cIT&-}AWbKker~MkEax&QkEjoP#lD6uG+h=VJ_rKah4yI+ zec?v|NCo{v``j-2!k?V(ZZ5qq2ub(v!M>EPFL>b)34$4z%S?>v&vZOn`y!b3wbs;_ zsZWHaM7ah>Pb!uGm`ig>^Wm=C&_1J)T5`YPLE0lEK`}Nhn3ijRFM$;@#H`Dm4 zIp#~L+IJ7v^YeZa8jptIa4)BeZccfQLZW;0Mjpi+1rM?B7?(E+RxvH&T91OKm=fc4 zx@S4vLX+-QE^j!OJ__nMW^tbhjdx?7yE*2|&2$O-+4q6T^8`~K=1HZ0#`LvQ(Sej z7jDrF&|lFA+2Fjh2bC~Z(d-|k?(8udX*~O?e8@MB2ur`5tZ53y41%*rmK+C_9CPvT zSvVUD;dVTv1;N%1nyQ%^w4Q})Rv|3rn902lB~Z+zOn>&!w1V?IoU3Uy`+n%DX)RNV zp(mJH^wPeKoNi%)rcH|W%`r$>Si)wenM^Ktfz!?9(kH-+Ofym_-2`}rshCTc0IxCK z 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 oM<&EddXVoa(XxKV2 zaZ{gFZ8vr$$GB-6+EM1U+sZj9F30BVfH}=Rqpz=+&2(Bll%jQ{^mzG|eUmQSK7&?gr(x0!Cz?EXGnJ>p1@j76ud@7b3&`FK1N zxLnW7EE~{n9A39J!hQ9o!?$v>?{ec_`k3{mTu><(acZ5P$);HUc}4Zld^Z>R&<*PSg*$E<87M>@W8+G`Av^rZwfY zsd{dGBc9C7e79s+!{qzh_y>kKGqT;SrnfzPxQyhvrmtINF+~ba+5}=Z-dg$JyFFNC zuK|1V&clC-A(~KuWsY6_^y!--rAw?;k8ZVIp5$3kbOmHYPe9TR$4hoxzCfAb8Ma1Wbzc>D*_+`MfjM8`F?8053hhPlVr|(i`Q0 z9(-A>px+!k*1bz!G7ZkKJ8tw4yVeQ~ObyRZF}jyjsR*l9Qh%r~G4HZ9QX{4<=^G#2 zETn$WWFDx0;dJNX{eG`nHlO^MYPIdla<+4u zH9KSJzA<)6>KV=xxy}a-V||0UJH#h9*|;qcoMsxZ42QO!Y^iE3!NTxM>_mcQ@fA7=KMp~(g$ASsjOvAhbuJi zVBWnZ=H0x1b`vP`f&Ij$>FNV3Cebm|4p#?U_0syznSuT2)KdGB^zPF2ob3r~>+7Aj z%q*VxWKQNuow!@7!`v-QMljA|MXg;Jkh{@}E@DOJu%gpgQMFR{pG{r3fr=Fst{MNo zQCM(&ZNC48Q&WcbZR;1()P1hjwZ4~@TiSLV`LN>PSA-HB^b9uhrj81^x+CDo%jrIi zYrh`t88~mW{(-@|$sTz=t2Ycdl|Iwpa<>^xTD$fnPBq*zeQrNZ&&BNbC53%9>qk9W z_UQGYrA0#SFZ&a+6&HF<4E zB!Sz_4pyJOXf$Jd((Ebo447{1wgZ*Rv7q_+v&rJSsLm8hSKtyVH0_S=nF{2D)6=-9Ws2{A(&(i%ca_La_SPmZox^ZdiAgV(ieyc?Q) z@*T|d!at1*T0gaEvF20z7oYdczkO`(n$5j=`j>W%KQY7U^whXR+XA9vUZVd8B(pWJ literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.Data.dll b/SOURCE/Application/Plugins/ModellingWizard/System.Data.dll new file mode 100644 index 0000000000000000000000000000000000000000..5062a83fde8aa9e8280ee46ae9e67062549519fa GIT binary patch literal 1278104 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 ZvCS{!d~bS@SEs9leF_bTmn-LB{2y}iy&V7m literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.Drawing.dll b/SOURCE/Application/Plugins/ModellingWizard/System.Drawing.dll new file mode 100644 index 0000000000000000000000000000000000000000..55964fc79fa224536e661379dc506ff032d0272c GIT binary patch literal 189608 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 N^X}~8e*faM{|9D%ZiD~; literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.IO.FileSystem.AccessControl.dll b/SOURCE/Application/Plugins/ModellingWizard/System.IO.FileSystem.AccessControl.dll new file mode 100644 index 0000000000000000000000000000000000000000..8cc5cb9cb256833a665449641db8f7af1d2fb62f GIT binary patch literal 28552 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 + + + System.IO.FileSystem.AccessControl + + + +

Provides Windows-specific static extension methods for manipulating Access Control List (ACL) security attributes for files and directories. + + + Creates a new directory, ensuring it is created with the specified directory security. If the directory already exists, nothing is done. + A directory that does not exist yet that will be created by the method. + The access control and audit security for the directory. + + or is . + Could not find a part of the path. + Access to the path is denied. + + + Creates a new file stream, ensuring it is created with the specified properties and security settings. + A file that does not exist yet that will be created by the method. + One of the enumeration values that specifies how the operating system should open a file. + One of the enumeration values that defines the access rights to use when creating access and audit rules. + One of the enumeration values for controlling the kind of access other file stream objects can have to the same file. + The number of bytes buffered for reads and writes to the file. + One of the enumeration values that describes how to create or overwrite the file. + An object that determines the access control and audit security for the file. + The and combination is invalid. + + or is . + + or are out of their legal enum range. + +-or- + + is not a positive number. + Could not find a part of the path. + An I/O error occurred. + Access to the path is denied. + A file stream for the newly created file. + + + Creates a directory and returns it, ensuring it is created with the specified directory security. If the directory already exists, the existing directory is returned. + An object that determines the access control and audit security for the directory. + The path of the directory to create. + + or is . + + is empty. + Could not find a part of the path. + Access to the path is denied. + A directory information object representing either a created directory with the provided security properties, or the existing directory. + + + Returns the security information of a directory. + The existing directory from which to obtain the security information. + The security descriptors of all the access control sections of the directory. + + + Returns the security information of a directory. + An existing directory from which to obtain the security information. + The desired access control sections to retrieve. + The security descriptors of the specified access control sections of the directory. + + + Returns the security information of a file. + The file from which to obtain the security information. + The security descriptors of all the access control sections of the file. + + + Returns the security information of a file. + An existing file from which to obtain the security information. + The desired access control sections to retrieve from the file. + The security descriptors of the specified access control sections of the file. + + + Returns the security information of a file. + An existing file from which to obtain the security information. + + is . + The file stream is closed. + The security descriptors of all the access control sections of the file. + + + Changes the security attributes of an existing directory. + An existing directory. + The security information to apply to the directory. + + is . + + + Changes the security attributes of an existing file. + An existing file. + The security information to apply to the file. + + is . + + + Changes the security attributes of an existing file. + An existing file. + The security information to apply to the file. + + or is . + The file stream is closed. + + + Provides the ability to control access to directory objects without direct manipulation of Access Control Lists (ACLs). + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with the specified security descriptor. + The security descriptor to be associated with the new object. + + + Initializes a new instance of the class with the specified values. + The identity to which the access rule applies. It must be an object that can be cast as a . + The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators. + true if this rule is inherited from a parent container. + Specifies the inheritance properties of the access rule. + Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to . + Specifies the valid access control type. + The identity of the class of objects to which the new access rule applies. + The identity of the class of child objects which can inherit the new access rule. + The object that this method creates. + + + Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this object. + The access rule to add. + + + Adds the specified audit rule to the System Access Control List (SACL) associated with this object. + The audit rule to add. + + + Initializes a new instance of the class with the specified values. + The identity to which the audit rule applies. It must be an object that can be cast as a . + The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators. + + if this rule is inherited from a parent container. + Specifies the inheritance properties of the audit rule. + Specifies whether inherited audit rules are automatically propagated. The propagation flags are ignored if is set to . + Specifies the conditions for which the rule is audited. + The identity of the class of objects to which the new audit rule applies. + The identity of the class of child objects which can inherit the new audit rule. + The object that this method creates. + + + Gets a collection of the access rules associated with the specified security identifier. + + to include access rules explicitly set for the object. + + to include inherited access rules. + The security identifier for which to retrieve access rules. This must be an object that can be cast as a object. + The collection of access rules associated with the specified object. + + + Gets a collection of the audit rules associated with the specified security identifier. + + to include audit rules explicitly set for the object. + + to include inherited audit rules. + The security identifier for which to retrieve audit rules. This must be an object that can be cast as a object. + The collection of audit rules associated with the specified object. + + + Applies the specified modification to the Discretionary Access Control List (DACL) associated with this object. + The modification to apply to the DACL. + The access rule to modify. + + if the DACL is successfully modified; otherwise, . + + if the DACL is successfully modified; otherwise, . + + + Applies the specified modification to the System Access Control List (SACL) associated with this object. + The modification to apply to the SACL. + The audit rule to modify. + + if the SACL is successfully modified; otherwise, . + + if the SACL is successfully modified; otherwise, . + + + Removes access rules that contain the same security identifier and access mask as the specified access rule from the Discretionary Access Control List (DACL) associated with this object. + The access rule to remove. + + if the access rule was successfully removed; otherwise, . + + + Removes all access rules that have the same security identifier as the specified access rule from the Discretionary Access Control List (DACL) associated with this object. + The access rule to remove. + + + Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this object. + The access rule to remove. + + + Removes audit rules that contain the same security identifier and access mask as the specified audit rule from the System Access Control List (SACL) associated with this object. + The audit rule to remove. + + if the audit rule was successfully removed; otherwise, . + + + Removes all audit rules that have the same security identifier as the specified audit rule from the System Access Control List (SACL) associated with this object. + The audit rule to remove. + + + Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this object. + The audit rule to remove. + + + Removes all access rules in the Discretionary Access Control List (DACL) associated with this object and then adds the specified access rule. + The access rule to reset. + + + Removes all access rules that contain the same security identifier and qualifier as the specified access rule in the Discretionary Access Control List (DACL) associated with this object and then adds the specified access rule. + The access rule to set. + + + Removes all audit rules that contain the same security identifier and qualifier as the specified audit rule in the System Access Control List (SACL) associated with this object and then adds the specified audit rule. + The audit rule to set. + + + Represents the access control and audit security for a directory. This class cannot be inherited. + + + Initializes a new instance of the class. + The current operating system is not Microsoft Windows 2000 or later. + + + Initializes a new instance of the class from a specified directory using the specified values of the enumeration. + The location of a directory to create a object from. + One of the values that specifies the type of access control list (ACL) information to retrieve. + The parameter is a zero-length string, contains only white space, or contains one or more invalid characters as defined by . + The parameter is . + The specified path is invalid, (for example, it is on an unmapped drive). + The file specified in the parameter was not found. + An I/O error occurred while opening the directory. + The parameter is in an invalid format. + The current operating system is not Microsoft Windows 2000 or later. + The specified path, file name, or both exceed the system-defined maximum length. + The current system account does not have administrative privileges. + The directory could not be found. + The parameter specified a directory that is read-only. + + -or- + + This operation is not supported on the current platform. + + -or- + + The caller does not have the required permission. + + + Represents the access control and audit security for a file. This class cannot be inherited. + + + Initializes a new instance of the class. + The current operating system is not Microsoft Windows 2000 or later. + + + Initializes a new instance of the class from a specified file using the specified values of the enumeration. + The location of a file to create a object from. + One of the values that specifies the type of access control list (ACL) information to retrieve. + The parameter is a zero-length string, contains only white space, or contains one or more invalid characters as defined by . + The specified path is invalid, (for example, it is on an unmapped drive). + The file specified in the parameter was not found. + An I/O error occurred while opening the file. + + is in an invalid format. + The parameter is . + The current operating system is not Microsoft Windows 2000 or later. + The specified path, file name, or both exceed the system-defined maximum length. + The current system account does not have administrative privileges. + The file could not be found. + The parameter specified a file that is read-only. + + -or- + + This operation is not supported on the current platform. + + -or- + + The parameter specified a directory. + + -or- + + The caller does not have the required permission. + + + Represents an abstraction of an access control entry (ACE) that defines an access rule for a file or directory. This class cannot be inherited. + + + Initializes a new instance of the class using a reference to a user account, a value that specifies the type of operation associated with the access rule, and a value that specifies whether to allow or deny the operation. + An object that encapsulates a reference to a user account. + One of the values that specifies the type of operation associated with the access rule. + One of the values that specifies whether to allow or deny the operation. + The parameter is not an object. + The parameter is . + An incorrect enumeration was passed to the parameter. + + + Initializes a new instance of the class using a reference to a user account, a value that specifies the type of operation associated with the access rule, a value that determines how rights are inherited, a value that determines how rights are propagated, and a value that specifies whether to allow or deny the operation. + An object that encapsulates a reference to a user account. + One of the values that specifies the type of operation associated with the access rule. + One of the values that specifies how access masks are propagated to child objects. + One of the values that specifies how Access Control Entries (ACEs) are propagated to child objects. + One of the values that specifies whether to allow or deny the operation. + The parameter is not an object. + The parameter is . + An incorrect enumeration was passed to the parameter. + + -or- + + An incorrect enumeration was passed to the parameter. + + -or- + + An incorrect enumeration was passed to the parameter. + + + Initializes a new instance of the class using the name of a user account, a value that specifies the type of operation associated with the access rule, and a value that describes whether to allow or deny the operation. + The name of a user account. + One of the values that specifies the type of operation associated with the access rule. + One of the values that specifies whether to allow or deny the operation. + The parameter is . + An incorrect enumeration was passed to the parameter. + + + Initializes a new instance of the class using the name of a user account, a value that specifies the type of operation associated with the access rule, a value that determines how rights are inherited, a value that determines how rights are propagated, and a value that specifies whether to allow or deny the operation. + The name of a user account. + One of the values that specifies the type of operation associated with the access rule. + One of the values that specifies how access masks are propagated to child objects. + One of the values that specifies how Access Control Entries (ACEs) are propagated to child objects. + One of the values that specifies whether to allow or deny the operation. + The parameter is . + An incorrect enumeration was passed to the parameter. + + -or- + + An incorrect enumeration was passed to the parameter. + + -or- + + An incorrect enumeration was passed to the parameter. + + + Gets the flags associated with the current object. + The flags associated with the current object. + + + Represents an abstraction of an access control entry (ACE) that defines an audit rule for a file or directory. This class cannot be inherited. + + + Initializes a new instance of the class using a reference to a user account, a value that specifies the type of operation associated with the audit rule, and a value that specifies when to perform auditing. + An object that encapsulates a reference to a user account. + One of the values that specifies the type of operation associated with the audit rule. + One of the values that specifies when to perform auditing. + The parameter is not an object. + The parameter is . + An incorrect enumeration was passed to the parameter. + + -or- + + The value was passed to the parameter. + + + Initializes a new instance of the class using the name of a reference to a user account, a value that specifies the type of operation associated with the audit rule, a value that determines how rights are inherited, a value that determines how rights are propagated, and a value that specifies when to perform auditing. + An object that encapsulates a reference to a user account. + One of the values that specifies the type of operation associated with the audit rule. + One of the values that specifies how access masks are propagated to child objects. + One of the values that specifies how Access Control Entries (ACEs) are propagated to child objects. + One of the values that specifies when to perform auditing. + The parameter is not an object. + The parameter is . + An incorrect enumeration was passed to the parameter. + + -or- + + The value was passed to the parameter. + + + Initializes a new instance of the class using a user account name, a value that specifies the type of operation associated with the audit rule, and a value that specifies when to perform auditing. + The name of a user account. + One of the values that specifies the type of operation associated with the audit rule. + One of the values that specifies when to perform auditing. + An incorrect enumeration was passed to the parameter. + + -or- + + The value was passed to the parameter. + + + Initializes a new instance of the class using the name of a user account, a value that specifies the type of operation associated with the audit rule, a value that determines how rights are inherited, a value that determines how rights are propagated, and a value that specifies when to perform auditing. + The name of a user account. + One of the values that specifies the type of operation associated with the audit rule. + One of the values that specifies how access masks are propagated to child objects. + One of the values that specifies how Access Control Entries (ACEs) are propagated to child objects. + One of the values that specifies when to perform auditing. + + + Gets the flags associated with the current object. + The flags associated with the current object. + + + Defines the access rights to use when creating access and audit rules. + + + Specifies the right to append data to the end of a file. + + + Specifies the right to change the security and audit rules associated with a file or folder. + + + Specifies the right to create a folder This right requires the Synchronize value. + + + Specifies the right to create a file. This right requires the Synchronize value. + + + Specifies the right to delete a folder or file. + + + Specifies the right to delete a folder and any files contained within that folder. + + + Specifies the right to run an application file. + + + Specifies the right to exert full control over a folder or file, and to modify access control and audit rules. This value represents the right to do anything with a file and is the combination of all rights in this enumeration. + + + Specifies the right to read the contents of a directory. + + + Specifies the right to read, write, list folder contents, delete folders and files, and run application files. This right includes the right, the right, and the right. + + + Specifies the right to open and copy folders or files as read-only. This right includes the right, right, right, and right. + + + Specifies the right to open and copy folders or files as read-only, and to run application files. This right includes the right and the right. + + + Specifies the right to open and copy file system attributes from a folder or file. For example, this value specifies the right to view the file creation or modified date. This does not include the right to read data, extended file system attributes, or access and audit rules. + + + Specifies the right to open and copy a file or folder. This does not include the right to read file system attributes, extended file system attributes, or access and audit rules. + + + Specifies the right to open and copy extended file system attributes from a folder or file. For example, this value specifies the right to view author and content information. This does not include the right to read data, file system attributes, or access and audit rules. + + + Specifies the right to open and copy access and audit rules from a folder or file. This does not include the right to read data, file system attributes, and extended file system attributes. + + + Specifies whether the application can wait for a file handle to synchronize with the completion of an I/O operation. This value is automatically set when allowing access and automatically excluded when denying access. + + + Specifies the right to change the owner of a folder or file. Note that owners of a resource have full access to that resource. + + + Specifies the right to list the contents of a folder and to run applications contained within that folder. + + + Specifies the right to create folders and files, and to add or remove data from files. This right includes the right, right, right, and right. + + + Specifies the right to open and write file system attributes to a folder or file. This does not include the ability to write data, extended attributes, or access and audit rules. + + + Specifies the right to open and write to a file or folder. This does not include the right to open and write file system attributes, extended file system attributes, or access and audit rules. + + + Specifies the right to open and write extended file system attributes to a folder or file. This does not include the ability to write data, attributes, or access and audit rules. + + + Represents the access control and audit security for a file or directory. + + + Initializes a new instance of the class that represents a new access control rule for the specified user, with the specified access rights, access control, and flags. + An object that represents a user account. + An integer that specifies an access type. + + if the access rule is inherited; otherwise, . + One of the values that specifies how to propagate access masks to child objects. + One of the values that specifies how to propagate Access Control Entries (ACEs) to child objects. + One of the values that specifies whether access is allowed or denied. + The , , , or parameters specify an invalid value. + The parameter is . + + -or- + + The parameter is zero. + The parameter is neither of type , nor of a type such as that can be converted to type . + A new object that represents a new access control rule for the specified user, with the specified access rights, access control, and flags. + + + Adds the specified access control list (ACL) permission to the current file or directory. + A object that represents an access control list (ACL) permission to add to a file or directory. + The parameter is . + + + Adds the specified audit rule to the current file or directory. + A object that represents an audit rule to add to a file or directory. + The parameter is . + + + Initializes a new instance of the class representing the specified audit rule for the specified user. + An object that represents a user account. + An integer that specifies an access type. + + if the access rule is inherited; otherwise, . + One of the values that specifies how to propagate access masks to child objects. + One of the values that specifies how to propagate Access Control Entries (ACEs) to child objects. + One of the values that specifies the type of auditing to perform. + The , , , or properties specify an invalid value. + The property is . + + -or- + + The property is zero. + The property is neither of type , nor of a type such as that can be converted to type . + A new object representing the specified audit rule for the specified user. + + + Removes all matching allow or deny access control list (ACL) permissions from the current file or directory. + A object that represents an access control list (ACL) permission to remove from a file or directory. + The parameter is . + + if the access rule was removed; otherwise, . + + + Removes all access control list (ACL) permissions for the specified user from the current file or directory. + A object that specifies a user whose access control list (ACL) permissions should be removed from a file or directory. + The parameter is . + + + Removes a single matching allow or deny access control list (ACL) permission from the current file or directory. + A object that specifies a user whose access control list (ACL) permissions should be removed from a file or directory. + The parameter is . + + + Removes all matching allow or deny audit rules from the current file or directory. + A object that represents an audit rule to remove from a file or directory. + The parameter is . + + if the audit rule was removed; otherwise, + + + Removes all audit rules for the specified user from the current file or directory. + A object that specifies a user whose audit rules should be removed from a file or directory. + The parameter is . + + + Removes a single matching allow or deny audit rule from the current file or directory. + A object that represents an audit rule to remove from a file or directory. + The parameter is . + + + Adds the specified access control list (ACL) permission to the current file or directory and removes all matching ACL permissions. + A object that represents an access control list (ACL) permission to add to a file or directory. + The parameter is . + + + Sets the specified access control list (ACL) permission for the current file or directory. + A object that represents an access control list (ACL) permission to set for a file or directory. + The parameter is . + + + Sets the specified audit rule for the current file or directory. + A object that represents an audit rule to set for a file or directory. + The parameter is . + + + Gets the enumeration that the class uses to represent access rights. + A object representing the enumeration. + + + Gets the enumeration that the class uses to represent access rules. + A object representing the class. + + + Gets the type that the class uses to represent audit rules. + A object representing the class. + + + \ No newline at end of file diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.IO.Packaging.dll b/SOURCE/Application/Plugins/ModellingWizard/System.IO.Packaging.dll new file mode 100644 index 0000000000000000000000000000000000000000..cfbb4ecb8e0515b9ebd1a7ec2d443662786c5e37 GIT binary patch literal 45448 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 + + + System.IO.Packaging + + + + The exception that is thrown when an input file or a data stream that is supposed to conform to a certain file format specification is malformed. + + + Creates a new instance of the class. + + + Creates a new instance of the class and initializes it with serialized data. This constructor is called during deserialization to reconstitute the exception object transmitted over a stream. + The object that holds the serialized object data. + The contextual information about the source or destination. + + + Creates a new instance of the class with a specified error message. + A value that represents the error message. + + + Creates a new instance of the class with a specified error message and exception type. + A value that represents the error message. + The value of the property, which represents the cause of the current exception. + + + Creates a new instance of the class with a source URI value. + The value of the file that caused this error. + + + Creates a new instance of the class with a source URI value and an exception type. + The value of the file that caused this error. + The value of the property, which represents the cause of the current exception. + + + Creates a new instance of the class with a source URI value and a specified error message. + The value of the file that caused this error. + A value that represents the error message. + + + Creates a new instance of the class with a source URI value, a specified error message, and an exception type. + The value of the file that caused this error. + A value that represents the error message. + The value of the property, which represents the cause of the current exception. + + + Sets the object with the file name and additional exception information. + The object that holds the serialized object data. + The contextual information about the source or destination. + + + Gets the name of a file that caused the . + A that represents the name the file that caused the exception. + + + Specifies the compression level for content that is stored in a . + + + Compression is optimized for performance. + + + Compression is optimized for size. + + + Compression is optimized for a balance between size and performance. + + + Compression is turned off. + + + Compression is optimized for high performance. + + + Specifies the encryption option for parts in a . + + + No encryption. + + + Encryption supported through rights management. + + + Represents a container that can store multiple data objects. + + + Initializes a new instance of the class that uses a given . + The file IO permissions for the package. + The value for is not valid. + + + Saves and closes the package plus all underlying part streams. + + + Creates a new uncompressed part with a given URI and content type. + The uniform resource identifier (URI) of the new part. + The content type of the data stream. + + or is . + + is not a valid URI. + A part with the specified is already present in the package. + The package is not open ( or has been called). + The package is read-only (a new part cannot be added). + The new created part. + + + Creates a new part with a given URI, content type, and compression option. + The URI of the new part. + The content type of the data stream. + The compression option for the data stream, or compression. + + or is . + + is not a valid uniform resource identifier (URI). + A part with the specified is already present in the package. + The value is not valid. + The package is not open ( or has been called). + The package is read-only (a new part cannot be added). + The new created part. + + + When overridden in a derived class, creates a new part in the package. + The uniform resource identifier (URI) for the part being created. + The content type of the data stream. + The compression option for the data stream. + The created part. + + + Creates a package-level relationship to a part with a given URI, target mode, and relationship type. + The uniform resource identifier (URI) of the target part. + Indicates if the target part is or to the package. + A URI that uniquely defines the role of the relationship. + + or is . + The part is a , or is and is an absolute URI. + The value for is not valid. + The package is not open ( or has been called). + The package is read-only. + The package-level relationship to the specified part. + + + Creates a package-level relationship to a part with a given URI, target mode, relationship type, and identifier (ID). + The uniform resource identifier (URI) of the target part. + Indicates if the target part is or to the package. + A URI that uniquely defines the role of the relationship. + A unique XML identifier. + + or is . + The part is a , or is and is an absolute URI. + The value for is not valid. + The package is not open ( or has been called). + The package is read-only. + + is not a valid XML identifier; or a part with the specified already occurs in the package. + The package-level relationship to the specified part. + + + Deletes a part with a given URI from the package. + The URI of the part to delete. + + is . + + is not a valid URI. + The package is not open ( or has been called). + The package is read-only. + + + When overridden in a derived class, deletes a part with a given URI. + The of the to delete. + + + Deletes a package-level relationship. + The of the to delete. + + is . + The package is not open ( or has been called). + The package is read-only. + + is not a valid XML identifier. + + + Flushes and saves the content of all parts and relationships, closes the package, and releases all resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Saves the contents of all parts and relationships that are contained in the package. + The package is not open ( or has been called). + The package is read-only and cannot be modified. + + + When overridden in a derived class, saves the content of all parts and relationships to the derived class store. + + + Returns the part with a given URI. + The uniform resource identifier (URI) of the part to return. + + is . + + is not a valid uniform resource identifier (URI). + A part with the specified is not in the package. + The package is not open ( or has been called). + The package is write-only. + The part with the specified . + + + When overridden in a derived class, returns the part addressed by a given URI. + The uniform resource identifier (URI) of the part to retrieve. + The requested part; or , if a part with the specified is not in the package. + + + Returns a collection of all the parts in the package. + The package is not open ( or has been called). + The package is write-only. + A collection of all the elements that are contained in the package. + + + When overridden in a derived class, returns an array of all the parts in the package. + An array of all the parts that are contained in the package. + + + Returns the package-level relationship with a given identifier. + The of the relationship to return. + + is . + + is not a valid XML identifier. + A relationship with the specified is not in the package. + The package is not open ( or has been called). + The package is write-only. + The package-level relationship with the specified . + + + Returns a collection of all the package-level relationships. + The package is not open ( or has been called). + The package is write-only. + A collection of all the package-level relationships that are contained in the package. + + + Returns a collection of all the package-level relationships that match a given . + The to match and return in the collection. + + is . + + is an empty string. + The package is not open ( or has been called). + The package is write-only. + A collection of package-level relationships that match the specified . + + + Opens a package on a given IO stream. + The IO stream on which to open the package. + + is . + The package to open requires read or read/write permission and the specified is write-only; or, the package to open requires write or read/write permission and the specified is read-only. + The opened package. + + + Opens a package with a given IO stream and file mode. + The IO stream on which to open the package. + The file mode in which to open the package. + + is . + + value is not valid. + The package to open requires read or read/write permission and the specified is write-only; or, the package to open requires write or read/write permission and the specified is read-only. + The opened package. + + + Opens a package with a given IO stream, file mode, and file access setting. + The IO stream on which to open the package. + The file mode in which to open the package. + The file access in which to open the package. + + is . + The value for or is not valid. + The package to open requires read or read/write permission and the specified is write-only; or the package to open requires write or read/write permission and the specified is read-only. + The opened package. + + + Opens a package at a given path and file name. + The path and file name of the package. + + is . + The opened package. + + + Opens a package at a given path using a given file mode. + The path and file name of the package. + The file mode in which to open the package. + + is . + Value for is not valid. + The opened package. + + + Opens a package at a given path using a given file mode and file access setting. + The path and file name of the package. + The file mode in which to open the package. + The file access in which to open the package. + + is . + Value for or is not valid. + The opened package. + + + Opens a package at a given path using a given file mode, file access, and file share setting. + The path and file name of the package. + The file mode in which to open the package. + The file access in which to open the package. + The file sharing mode in which to open the package. + + is . + The value for , , or is not valid. + The opened package. + + + Indicates whether a part with a given URI is in the package. + The of the part to check for. + + is . + + is not a valid uniform resource identifier (URI). + The package is not open ( or has been called). + The package is write-only (information cannot be read). + + if a part with the specified is in the package; otherwise, . + + + Indicates whether a package-level relationship with a given ID is contained in the package. + The of the relationship to check for. + + is . + + is not a valid XML identifier. + The package is not open ( or has been called). + The package is write-only. + + if a package-level relationship with the specified is in the package; otherwise, . + + + This member supports the Windows Presentation Foundation (WPF) infrastructure and is not intended for application use. Use the type-safe method instead. + + + Gets the file access setting for the package. + The package is not open ( or has been called). + One of the values: , , or . + + + Gets the core properties of the package. + The package is not open ( or has been called). + The core properties of the package. + + + Provides a base class for parts stored in a . This class is abstract. + + + Initializes a new instance of the class with a specified parent and part URI. + The parent of the part. + The URI of the part, relative to the parent root. + + or is . + + + Initializes a new instance of the class with a specified parent , part URI, and MIME content type. + The parent of the part. + The URI of the part, relative to the parent root. + The MIME content type of the part data stream. + + or is . + + is not a valid URI. + + + Initializes a new instance of the class with a specified parent , part URI, MIME content type, and . + The parent of the part. + The URI of the part, relative to the parent root. + The MIME content type of the part's data stream. + The compression option of the part data stream. + + or is . + + is not a valid URI. + The value is not valid. + + + Creates a part-level relationship between this to a specified target or external resource. + The URI of the target part. + One of the enumeration values. For example, if the target part is inside the ; or if the target is a resource outside the . + The role of the relationship. + The part has been deleted. + + -or- + + The is not open ( or has been called). + + or is . + The parameter is not a valid enumeration value. + The part identified by the is a relationship (the target of a relationship cannot be another relationship). + + -or- + + is specified as but is an absolute external URI. + The package is read-only (a new relationship cannot be added). + The part-level relationship between this to the target or external resource. + + + Creates a part-level relationship between this to a specified target or external resource. + The URI of the target part. + One of the enumeration values. For example, if the target part is inside the ; or if the target is a resource outside the . + The role of the relationship. + A unique ID for the relationship. + The part has been deleted. + + -or- + + The is not open ( or has been called). + + or is . + The parameter is not a valid enumeration value. + The part identified by the is a relationship (the target of a relationship cannot be another relationship). + + -or- + + is specified as but is an absolute external URI. + The package is read-only (a new relationship cannot be added). + + is not a valid XML identifier. + + -or- + + A part with the specified already exists. + The part-level relationship between this to the target or external resource. + + + Deletes a specified part-level . + The of the relationship to delete. + The part has been deleted. + + -or- + + The is not open ( or has been called). + + is . + The package is read-only (relationships cannot be deleted). + + is not a valid XML identifier. + + + When overridden in a derived class, returns the MIME type of the part content. + The derived class does not provide an override implementation required for the method. + The MIME type of the part content. + + + Returns the relationship that has a specified . + The of the relationship to return. + + is . + + is not a valid XML identifier. + + is an empty string. + The part has been deleted. + + -or- + + The is not open ( or has been called). + + -or- + + A relationship with the specified does not exist in the package. + The package is write-only (relationship information cannot be read). + The relationship that matches the specified . + + + Returns a collection of all the relationships that are owned by this part. + The part has been deleted. + + -or- + + The is not open ( or has been called). + The package is write-only (relationship information cannot be read). + A collection of all the relationships that are owned by the part. + + + Returns a collection of the relationships that match a specified . + The of the relationships to locate and return in the collection. + + is . + + is an empty string. + The part has been deleted. + + -or- + + The is not open ( or has been called). + The package is write-only (relationship information cannot be read). + A collection of the relationships that match the specified . + + + Returns the part content data stream. + The part has been deleted. + + -or- + + The is not open ( or has been called). + The stream object returned by the method of the derived subclass is . + The content data stream for the part. + + + Returns the content stream opened in a specified I/O . + The I/O mode in which to open the content stream. + The part has been deleted. + + -or- + + The is not open ( or has been called). + The parameter is not a valid enumeration value. + The parameter is not compatible with the package and part stream. + + -or- + + The stream object returned by the method of the derived subclass is . + The content stream of the part. + + + Returns the part content stream opened with a specified and . + The I/O mode in which to open the content stream. + The access permissions to use in opening the content stream. + The part has been deleted. + + -or- + + The is not open ( or has been called). + The parameter is not a valid enumeration value. + + -or- + + The parameter is not a valid enumeration value. + + or is not compatible with the package and part stream. + + -or- + + The parameter is specified as but the parameter requires write access. ( values of , , , and require or access.) + + -or- + + The stream object returned by the method of the derived subclass is . + The content stream for the part. + + + When overridden in a derived class, returns the part content stream opened with a specified and . + The I/O mode in which to open the content stream. + The access permissions to use in opening the content stream. + The content data stream of the part. + + + Returns a value that indicates whether this part owns a relationship with a specified . + The of the relationship to check for. + + is . + + is not a valid XML identifier. + The part has been deleted. + + -or- + + The is not open ( or has been called). + The package is write-only (relationship information cannot be read). + + if this part owns a relationship with the specified ; otherwise, . + + + Gets the compression option of the part content stream. + The part has been deleted. + + -or- + + The is not open ( or has been called). + The compression option of the part content stream. + + + Gets the MIME type of the content stream. + The part has been deleted. + + -or- + + The is not open ( or has been called). + + -or- + + The string returned by the derived class method is empty. + The MIME type of the content data stream for the part. + + + Gets the parent of the part. + The part has been deleted. + + -or- + + The is not open ( or has been called). + The parent package of the part. + + + Gets the URI of the part. + The part has been deleted. + + -or- + + The is not open ( or has been called). + The URI of the part relative to the package root. + + + Represents a collection of objects. + + + Returns an enumerator for iterating through the parts in the collection. + An enumerator for iterating through the elements in the collection. + + + Returns an enumerator that iterates through the collection. + An object that can be used to iterate through the collection. + + + For a description of this member, see . + An object that can be used to iterate through the collection. + + + Represents the core properties of a . + + + Initializes a new instance of the class. + + + Releases all resources used by the instance. + + + Releases the unmanaged resources used by the instance and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + When overridden in a derived class, gets or sets the category of the . + The category of the content that is contained in the . + + + When overridden in a derived class, gets or sets a value that represents the status of the . + The status of the content. + + + When overridden in a derived class, gets or sets a value that represents the type of content that is contained in the . + The type of content that is contained in the . + + + When overridden in a derived class, gets or sets the date and time the was created. + The date and time the was initially created. + + + When overridden in a derived class, gets or sets a value that identifies the individual or entity that created the and its content. + The individual or entity that created the and its content. + + + When overridden in a derived class, gets or sets a description of the content contained in the . + A description of the content contained in the . + + + When overridden in a derived class, gets or sets a value that unambiguously identifies the and its content. + A value that unambiguously identifies the and its content. + + + When overridden in a derived class, gets or sets a value that define a delimited set of keywords to support searching and indexing the and its content. + A delimited set of keywords to support searching and indexing the and content. + + + When overridden in a derived class, gets or sets a value that identifies the language of the content. + A value that identifies the content language. + + + When overridden in a derived class, gets or sets a value that identifies the user who last modified the content. + The user who last modified the content. + + + When overridden in a derived class, gets or sets the date and time the content was last printed. + The date and time the content was last printed. + + + When overridden in a derived class, gets or sets the date and time the was last changed. + The date and time the was last changed. + + + When overridden in a derived class, gets or sets the revision number of the . + The revision number of the . + + + When overridden in a derived class, gets or sets the topic of the content. + The topic of the content. + + + When overridden in a derived class, gets or sets the name given to the and its content. + The name given to the and its content. + + + When overridden in a derived class, gets or sets the version number of the . + The version number of the . + + + Represents an association between a source or , and a target object which can be a or external resource. + + + Gets a string that identifies the relationship. + A string that identifies the relationship. + + + Gets the that contains this relationship. + The package that contains this relationship. + + + Gets the qualified type name of the relationship. + The qualified type name of the relationship. + + + Gets the URI of the package or part that owns the relationship. + The URI of the or that owns the relationship. + + + Gets a value that indicates whether the target of the relationship is or to the . + An enumeration value that indicates whether references a resource or to the . + + + Gets the URI of the target resource of the relationship. + The URI of the target resource. + + + Represents a collection of elements that are owned by a given or the . + + + Returns an enumerator for iterating through the relationships in the collection. + An enumerator for iterating through the elements in the collection. + + + This type or member supports the Windows Presentation Foundation infrastructure and is not intended to be used directly from your code. + Do not use - use . + + + Defines criteria to select part-level or package-level relationships. + + + Initializes a new instance of the class. + The uniform resource identifier (URI) of the or the (SourceUri="/") that owns the relationship. + The type of the , either by relationship or relationship . + The qualification string that is used to select the relationships based on the . + + or is . + The parameter is not valid. + The parameter is but is not a valid XML Schema Definition (XSD) identifier (ID). + The is not valid for the specified . + +-or- + +The is not the root ("/") and is also not a valid URI. + + + Returns a list of objects that match the defined , , and . + The package from which to select the relationships based on the selection criteria. + + is . + A list of relationships that match the selection parameters specified to the constructor. + + + Gets the selection criteria specified to the constructor. + The selection criteria based on the of or specified to the constructor. + + + Gets the specified to the constructor. + The selector type of or specified to the constructor. + + + Gets the root package URI ("/") or part specified to the constructor as the owner of the relationship. + The root package URI ("/") or part specified to the constructor as the owner of the relationship. + + + Specifies the type of selection criteria that is used to match and return selections through a . + + + + selections are by . + + + + selections are by . + + + Provides utility methods to compose and parse pack URI objects. + + + Defines the pack URI scheme name "pack". + + + Returns a value that indicates whether two pack URIs are equivalent. + The first pack URI. + The second pack URI. + Either or is not an absolute URI. + + -or- + + Either or do not begin with a "pack://" scheme. + A signed integer indicating the relationship between and . + + Value Meaning Less than 0 is less than . 0 is equivalent to . Greater than 0 is greater than . + + + Returns a value that indicates whether two package part URIs are equivalent. + The URI of the first . + The URI of the second . + + or is not a valid part URI syntax. + A value that indicates the relationship between and . + + Value Meaning Less than 0 is less than . 0 is equivalent to . Greater than 0 is greater than . + + + Creates a new pack URI that points to a package. + The URI of the referenced . + + is . + + is not an absolute URI. + The pack URI for the referenced by the given . + + + Creates a pack URI given a URI and the URI of a part in the package. + The URI of the . + The URI of the in the package. + + is . + + is not an absolute URI. + + -or- + + is not a valid part URI syntax. + The pack URI of the given . + + + Creates a pack URI given a URI, the URI of a part in the package, and a "#" fragment to append. + The URI of the . + The URI of the in the package. + A "#" reference identifying an element within the package part. + + is . + + is not an absolute URI. + + -or- + + is not a valid part URI syntax. + + -or- + + is empty or does begin with "#". + The pack URI that identifies the specified package, package part, and fragment. + + + Creates a formatted URI. + The URI of the within the package. + + is . + + is not an absolute . + A formatted URI. + + + Returns the normalized form of a specified URI. + The URI to normalize. + + is . + + does not have a valid syntax. + The normalized form of the given . + + + Returns the inner URI that points to the entire package of a specified pack URI. + The pack URI from which to return the URI of the . + + is . + + is not an absolute . + The URI of the from the specified . + + + Returns the URI of a within a specified pack URI. + The pack URI from which to return the URI. + If the is . + If the is not an absolute . + +-or- + + does not have the "pack://" scheme. + +-or- + +The partUri extracted from does not conform to the valid partUri syntax. + The URI of the in the given , or if points to a package instead of a . + + + Returns the URI of the relationship part associated with a specified . + The of the to return the URI for the associated . + + is . + + syntax is not valid for a package part URI. + + -or- + + is an absolute URI. + + -or- + + references a relationship part. + The URI of the part associated with the identified by . + + + Returns the relative URI between two specified URIs. + The URI of the source part. + The URI of the target part. + + or is . + Either the or does not have a valid syntax. + The relative URI from to . + + + Returns the from the with a specified URI. + The URI of the relationship part to return the from. + + is . + + is an absolute URI. + + -or- + + syntax is not valid for a . + + -or- + + does not reference a relationship part. + + -or- + + The of the relationship part references another relationship part (not valid). + The of the from the relationship with the specified . + + + Returns a value that indicates whether a specified URI is the URI of a part. + The URI to check for a part. + + is . + + is an absolute URI. + + -or- + + is an invalid syntax. + + if identifies a part; otherwise, . + + + Returns a part URI given a source part URI and a URI with a relative path to a target part. + The URI of the source part, or "/" to designate the root. + The relative URI to the target part. + + or is . + + is not a valid part URI. + + -or- + + is not a valid relative URI. + The URI of the target part resolved between the specified and the parameters. + + + Specifies whether the target of a is inside or outside the . + + + The relationship references a resource that is external to the package. + + + The relationship references a part that is inside the package. + + + Implements a derived subclass of the abstract base class - the class uses a ZIP archive as the container store. This class cannot be inherited. + + + Represents a part that is stored in a . + + + \ No newline at end of file diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.Net.Http.dll b/SOURCE/Application/Plugins/ModellingWizard/System.Net.Http.dll new file mode 100644 index 0000000000000000000000000000000000000000..e665456162aadaac366c1353e56ecb5484c71a52 GIT binary patch literal 86696 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 z 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 sj(a9bwrXnirv1R2Te58)Pg>UBAE8 + + + System.Security.AccessControl + + + + Specifies the actions that are permitted for securable objects. + + + Specifies write-only access. + + + Specifies no access. + + + Specifies read-only access. + + + Specifies the type of access control modification to perform. This enumeration is used by methods of the class and its descendents. + + + Add the specified authorization rule to the access control list (ACL). + + + Remove authorization rules that contain the same security identifier (SID) and access mask as the specified authorization rule from the ACL. + + + Remove authorization rules that contain the same SID as the specified authorization rule from the ACL. + + + Remove authorization rules that exactly match the specified authorization rule from the ACL. + + + Remove authorization rules that contain the same SID as the specified authorization rule from the ACL, and then add the specified authorization rule to the ACL. + + + Remove all authorization rules from the ACL, then add the specified authorization rule to the ACL. + + + Specifies which sections of a security descriptor to save or load. + + + The discretionary access control list (DACL). + + + The entire security descriptor. + + + The system access control list (SACL). + + + The primary group. + + + No sections. + + + The owner. + + + Specifies whether an object is used to allow or deny access. These values are not flags, and they cannot be combined. + + + The object is used to allow access to a secured object. + + + The object is used to deny access to a secured object. + + + Represents a combination of a user's identity, an access mask, and an access control type (allow or deny). An object also contains information about the how the rule is inherited by child objects and how that inheritance is propagated. + + + Initializes a new instance of the class by using the specified values. + The identity to which the access rule applies. This parameter must be an object that can be cast as a . + The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators. + + if this rule is inherited from a parent container. + The inheritance properties of the access rule. + Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to . + The valid access control type. + The value of the parameter cannot be cast as a , or the parameter contains an invalid value. + The value of the parameter is zero, or the or parameters contain unrecognized flag values. + + + Gets the value associated with this object. + The value associated with this object. + + + Represents a combination of a user's identity, an access mask, and an access control type (allow or deny). An AccessRule`1 object also contains information about the how the rule is inherited by child objects and how that inheritance is propagated. + The access rights type for the access rule. + + + Initializes a new instance of the AccessRule'1 class by using the specified values. + The identity to which the access rule applies. + The rights of the access rule. + The valid access control type. + + + Initializes a new instance of the AccessRule'1 class by using the specified values. + The identity to which the access rule applies. + The rights of the access rule. + The inheritance properties of the access rule. + Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to . + The valid access control type. + + + Initializes a new instance of the AccessRule'1 class by using the specified values. + The identity to which the access rule applies. + The rights of the access rule. + The valid access control type. + + + Initializes a new instance of the AccessRule'1 class by using the specified values. + The identity to which the access rule applies. + The rights of the access rule. + The inheritance properties of the access rule. + Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to . + The valid access control type. + + + Gets the rights of the current instance. + The rights, cast as type <T>, of the current instance. + + + Provides the ability to iterate through the access control entries (ACEs) in an access control list (ACL). + + + Advances the enumerator to the next element of the collection. + The collection was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + The collection was modified after the enumerator was created. + + + Gets the current element in the collection. This property gets the type-friendly version of the object. + The current element in the collection. + + + Gets the current element in the collection. + The collection was modified after the enumerator was created. + The current element in the collection. + + + Specifies the inheritance and auditing behavior of an access control entry (ACE). + + + All access attempts are audited. + + + The access mask is propagated to child container objects. + + + Failed access attempts are audited. + + + A logical of , , , and . + + + An ACE is inherited from a parent container rather than being explicitly set for an object. + + + The access mask is propagated only to child objects. This includes both container and leaf child objects. + + + No ACE flags are set. + + + The access checks do not apply to the object; they only apply to its children. + + + The access mask is propagated onto child leaf objects. + + + Successful access attempts are audited. + + + Specifies the function of an access control entry (ACE). + + + Allow access. + + + Deny access. + + + Cause a system alarm. + + + Cause a system audit. + + + Defines the available access control entry (ACE) types. + + + Allows access to an object for a specific trustee identified by an object. + + + Allows access to an object for a specific trustee identified by an object. This ACE type may contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted. + + + Allows access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. This ACE type may contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted. + + + Defined but never used. Included here for completeness. + + + Allows access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. + + + Denies access to an object for a specific trustee identified by an object. + + + Denies access to an object for a specific trustee identified by an object. This ACE type can contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted. + + + Denies access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. This ACE type can contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted. + + + Denies access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. + + + Tracks the maximum defined ACE type in the enumeration. + + + Reserved for future use. + + + Reserved for future use. + + + Reserved for future use. + + + Reserved for future use. + + + Causes an audit message to be logged when a specified trustee attempts to gain access to an object. The trustee is identified by an object. + + + Causes an audit message to be logged when a specified trustee attempts to gain access to an object. The trustee is identified by an object. This ACE type can contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted. + + + Causes an audit message to be logged when a specified trustee attempts to gain access to an object or subobjects such as property sets or properties. The ACE contains a set of access rights, a GUID that identifies the type of object or subobject, and an object that identifies the trustee for whom the system will audit access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. This ACE type can contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted. + + + Causes an audit message to be logged when a specified trustee attempts to gain access to an object or subobjects such as property sets or properties. The ACE contains a set of access rights, a GUID that identifies the type of object or subobject, and an object that identifies the trustee for whom the system will audit access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. + + + Specifies the conditions for auditing attempts to access a securable object. + + + Failed access attempts are to be audited. + + + No access attempts are to be audited. + + + Successful access attempts are to be audited. + + + Represents a combination of a user's identity and an access mask. An object also contains information about how the rule is inherited by child objects, how that inheritance is propagated, and for what conditions it is audited. + + + Initializes a new instance of the class by using the specified values. + The identity to which the audit rule applies. It must be an object that can be cast as a . + The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators. + + to inherit this rule from a parent container. + The inheritance properties of the audit rule. + Whether inherited audit rules are automatically propagated. The propagation flags are ignored if is set to . + The conditions for which the rule is audited. + The value of the parameter cannot be cast as a , or the parameter contains an invalid value. + The value of the parameter is zero, or the or parameters contain unrecognized flag values. + + + Gets the audit flags for this audit rule. + A bitwise combination of the enumeration values. This combination specifies the audit conditions for this audit rule. + + + Represents a combination of a user's identity and an access mask. + The type of the audit rule. + + + Initializes a new instance of the class by using the specified values. + The identity to which this audit rule applies. + The rights of the audit rule. + The conditions for which the rule is audited. + + + Initializes a new instance of the class by using the specified values. + The identity to which the audit rule applies. + The rights of the audit rule. + The inheritance properties of the audit rule. + Whether inherited audit rules are automatically propagated. + The conditions for which the rule is audited. + + + Initializes a new instance of the class by using the specified values. + The identity to which the audit rule applies. + The rights of the audit rule. + The properties of the audit rule. + + + Initializes a new instance of the class by using the specified values. + The identity to which the audit rule applies. + The rights of the audit rule. + The inheritance properties of the audit rule. + Whether inherited audit rules are automatically propagated. + The conditions for which the rule is audited. + + + Gets the rights of the audit rule. + The rights of the audit rule. + + + Determines access to securable objects. The derived classes and offer specializations for access and audit functionality. + + + Initializes a new instance of the class by using the specified values. + The identity to which the access rule applies. This parameter must be an object that can be cast as a . + The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators. + + to inherit this rule from a parent container. + The inheritance properties of the access rule. + Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to . + The value of the parameter cannot be cast as a . + The value of the parameter is zero, or the or parameters contain unrecognized flag values. + + + Gets the access mask for this rule. + The access mask for this rule. + + + Gets the to which this rule applies. + The to which this rule applies. + + + Gets the value of flags that determine how this rule is inherited by child objects. + A bitwise combination of the enumeration values. + + + Gets a value indicating whether this rule is explicitly set or is inherited from a parent container object. + + if this rule is not explicitly set but is instead inherited from a parent container. + + + Gets the value of the propagation flags, which determine how inheritance of this rule is propagated to child objects. This property is significant only when the value of the enumeration is not . + A bitwise combination of the enumeration values. + + + Represents a collection of objects. + + + Initializes a new instance of the class. + + + Adds an object to the collection. + The object to add to the collection. + + + Copies the contents of the collection to an array. + An array to which to copy the contents of the collection. + The zero-based index from which to begin copying. + + + Gets the object at the specified index of the collection. + The zero-based index of the object to get. + The object at the specified index. + + + Represents an access control entry (ACE). + + + Initializes a new instance of the class. + Flags that specify information about the inheritance, inheritance propagation, and auditing conditions for the new access control entry (ACE). + The use of the new ACE. + The access mask for the ACE. + The associated with the new ACE. + + to specify that the new ACE is a callback type ACE. + Opaque data associated with the new ACE. Opaque data is allowed only for callback ACE types. The length of this array must not be greater than the return value of the method. + + + Marshals the contents of the object into the specified byte array beginning at the specified offset. + The byte array into which the contents of the object is marshaled. + The offset at which to start marshaling. + + is negative or too high to allow the entire to be copied into the array. + + + Gets the maximum allowed length of an opaque data BLOB for callback access control entries (ACEs). + + to specify that the object is a callback ACE type. + The allowed length of an opaque data BLOB. + + + Gets the length, in bytes, of the binary representation of the current object. Use this length with the method before marshaling the ACL into a binary array. + The length, in bytes, of the binary representation of the current object. + + + Represents an access control list (ACL) and is the base class for the and classes. + + + Marshals the contents of the object into the specified byte array beginning at the specified offset. + The byte array into which the contents of the is marshaled. + The offset at which to start marshaling. + + + Removes all access control entries (ACEs) contained by this object that are associated with the specified object. + The object to check for. + + + Removes all inherited access control entries (ACEs) from this object. + + + Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the access control list (ACL) into a binary array by using the method. + The length, in bytes, of the binary representation of the current object. + + + Gets the number of access control entries (ACEs) in the current object. + The number of ACEs in the current object. + + + Gets a Boolean value that specifies whether the access control entries (ACEs) in the current object are in canonical order. + + if the ACEs in the current object are in canonical order; otherwise, . + + + Sets whether the object is a container. + + if the current object is a container. + + + Sets whether the current object is a directory object access control list (ACL). + + if the current object is a directory object ACL. + + + Gets or sets the at the specified index. + The zero-based index of the to get or set. + The at the specified index. + + + Gets the revision level of the . + A byte value that specifies the revision level of the . + + + Controls access to objects without direct manipulation of access control lists (ACLs). This class is the abstract base class for the class. + + + Initializes a new instance of the class. + + if the new object is a container object. + + + Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this object. + The access rule to add. + + + Adds the specified audit rule to the System Access Control List (SACL) associated with this object. + The audit rule to add. + + + Gets a collection of the access rules associated with the specified security identifier. + + to include access rules explicitly set for the object. + + to include inherited access rules. + Specifies whether the security identifier for which to retrieve access rules is of type or type . The value of this parameter must be a type that can be translated to the type. + The collection of access rules associated with the specified object. + + + Gets a collection of the audit rules associated with the specified security identifier. + + to include audit rules explicitly set for the object. + + to include inherited audit rules. + The security identifier for which to retrieve audit rules. This must be an object that can be cast as a object. + The collection of audit rules associated with the specified object. + + + Applies the specified modification to the Discretionary Access Control List (DACL) associated with this object. + The modification to apply to the DACL. + The access rule to modify. + + if the DACL is successfully modified; otherwise, . + + if the DACL is successfully modified; otherwise, . + + + Applies the specified modification to the System Access Control List (SACL) associated with this object. + The modification to apply to the SACL. + The audit rule to modify. + + if the SACL is successfully modified; otherwise, . + + if the SACL is successfully modified; otherwise, . + + + Removes access rules that contain the same security identifier and access mask as the specified access rule from the Discretionary Access Control List (DACL) associated with this object. + The access rule to remove. + + if the access rule was successfully removed; otherwise, . + + + Removes all access rules that have the same security identifier as the specified access rule from the Discretionary Access Control List (DACL) associated with this object. + The access rule to remove. + + + Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this object. + The access rule to remove. + + + Removes audit rules that contain the same security identifier and access mask as the specified audit rule from the System Access Control List (SACL) associated with this object. + The audit rule to remove. + + if the audit rule was successfully removed; otherwise, . + + + Removes all audit rules that have the same security identifier as the specified audit rule from the System Access Control List (SACL) associated with this object. + The audit rule to remove. + + + Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this object. + The audit rule to remove. + + + Removes all access rules in the Discretionary Access Control List (DACL) associated with this object and then adds the specified access rule. + The access rule to reset. + + + Removes all access rules that contain the same security identifier and qualifier as the specified access rule in the Discretionary Access Control List (DACL) associated with this object and then adds the specified access rule. + The access rule to set. + + + Removes all audit rules that contain the same security identifier and qualifier as the specified audit rule in the System Access Control List (SACL) associated with this object and then adds the specified audit rule. + The audit rule to set. + + + Represents a security descriptor. A security descriptor includes an owner, a primary group, a Discretionary Access Control List (DACL), and a System Access Control List (SACL). + + + Initializes a new instance of the class from the specified array of byte values. + + if the new security descriptor is associated with a container object. + + if the new security descriptor is associated with a directory object. + The array of byte values from which to create the new object. + The offset in the array at which to begin copying. + + + Initializes a new instance of the class from the specified information. + + if the new security descriptor is associated with a container object. + + if the new security descriptor is associated with a directory object. + Flags that specify behavior of the new object. + The owner for the new object. + The primary group for the new object. + The System Access Control List (SACL) for the new object. + The Discretionary Access Control List (DACL) for the new object. + + + Initializes a new instance of the class from the specified object. + + if the new security descriptor is associated with a container object. + + if the new security descriptor is associated with a directory object. + The object from which to create the new object. + + + Initializes a new instance of the class from the specified Security Descriptor Definition Language (SDDL) string. + + if the new security descriptor is associated with a container object. + + if the new security descriptor is associated with a directory object. + The SDDL string from which to create the new object. + + + Sets the property for this instance and sets the flag. + The revision level of the new object. + The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint. + + + Sets the property for this instance and sets the flag. + The revision level of the new object. + The number of Access Control Entries (ACEs) this object can contain. This number should only be used as a hint. + + + Removes all access rules for the specified security identifier from the Discretionary Access Control List (DACL) associated with this object. + The security identifier for which to remove access rules. + + + Removes all audit rules for the specified security identifier from the System Access Control List (SACL) associated with this object. + The security identifier for which to remove audit rules. + + + Sets the inheritance protection for the Discretionary Access Control List (DACL) associated with this object. DACLs that are protected do not inherit access rules from parent containers. + + to protect the DACL from inheritance. + + to keep inherited access rules in the DACL; to remove inherited access rules from the DACL. + + + Sets the inheritance protection for the System Access Control List (SACL) associated with this object. SACLs that are protected do not inherit audit rules from parent containers. + + to protect the SACL from inheritance. + + to keep inherited audit rules in the SACL; to remove inherited audit rules from the SACL. + + + Gets values that specify behavior of the object. + One or more values of the enumeration combined with a logical OR operation. + + + Gets or sets the discretionary access control list (DACL) for this object. The DACL contains access rules. + The DACL for this object. + + + Gets or sets the primary group for this object. + The primary group for this object. + + + Gets a Boolean value that specifies whether the object associated with this object is a container object. + + if the object associated with this object is a container object; otherwise, . + + + Gets a Boolean value that specifies whether the Discretionary Access Control List (DACL) associated with this object is in canonical order. + + if the DACL associated with this object is in canonical order; otherwise, . + + + Gets a Boolean value that specifies whether the object associated with this object is a directory object. + + if the object associated with this object is a directory object; otherwise, . + + + Gets a Boolean value that specifies whether the System Access Control List (SACL) associated with this object is in canonical order. + + if the SACL associated with this object is in canonical order; otherwise, . + + + Gets or sets the owner of the object associated with this object. + The owner of the object associated with this object. + + + Gets or sets the System Access Control List (SACL) for this object. The SACL contains audit rules. + The SACL for this object. + + + Represents a compound Access Control Entry (ACE). + + + Initializes a new instance of the class. + Contains flags that specify information about the inheritance, inheritance propagation, and auditing conditions for the new Access Control Entry (ACE). + The access mask for the ACE. + A value from the enumeration. + The associated with the new ACE. + + + Marshals the contents of the object into the specified byte array beginning at the specified offset. + The byte array into which the contents of the is marshaled. + The offset at which to start marshaling. + + is negative or too high to allow the entire to be copied into . + + + Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method. + The length, in bytes, of the binary representation of the current object. + + + Gets or sets the type of this object. + The type of this object. + + + Specifies the type of a object. + + + The object is used for impersonation. + + + These flags affect the security descriptor behavior. + + + Specifies that the Discretionary Access Control List (DACL) has been automatically inherited from the parent. Set by resource managers only. + + + Ignored. + + + Specifies that the DACL was obtained by a defaulting mechanism. Set by resource managers only. + + + Specifies that the DACL is not . Set by resource managers or users. + + + Specifies that the resource manager prevents auto-inheritance. Set by resource managers or users. + + + Ignored. + + + Specifies that the group was obtained by a defaulting mechanism. Set by resource managers only; should not be set by callers. + + + No control flags. + + + Specifies that the owner was obtained by a defaulting mechanism. Set by resource managers only; should not be set by callers. + + + Specifies that the contents of the Reserved field are valid. + + + Specifies that the security descriptor binary representation is in the self-relative format. This flag is always set. + + + Ignored. + + + Specifies that the System Access Control List (SACL) has been automatically inherited from the parent. Set by resource managers only. + + + Ignored. + + + Specifies that the SACL was obtained by a defaulting mechanism. Set by resource managers only. + + + Specifies that the SACL is not . Set by resource managers or users. + + + Specifies that the resource manager prevents auto-inheritance. Set by resource managers or users. + + + Represents an Access Control Entry (ACE) that is not defined by one of the members of the enumeration. + + + Returns the maximum allowed length of an opaque data blob for this object. + + + Initializes a new instance of the class. + Type of the new Access Control Entry (ACE). This value must be greater than . + Flags that specify information about the inheritance, inheritance propagation, and auditing conditions for the new ACE. + An array of byte values that contains the data for the new ACE. This value can be . The length of this array must not be greater than the value of the field, and must be a multiple of four. + The value of the parameter is not greater than or the length of the array is either greater than the value of the field or not a multiple of four. + + + Marshals the contents of the object into the specified byte array beginning at the specified offset. + The byte array into which the contents of the is marshaled. + The offset at which to start marshaling. + + is negative or too high to allow the entire to be copied into . + + + Returns the opaque data associated with this object. + An array of byte values that represents the opaque data associated with this object. + + + Sets the opaque callback data associated with this object. + An array of byte values that represents the opaque callback data for this object. + + + Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method. + The length, in bytes, of the binary representation of the current object. + + + Gets the length of the opaque data associated with this object. + The length of the opaque callback data. + + + Represents a Discretionary Access Control List (DACL). + + + Initializes a new instance of the class with the specified values. + + if the new object is a container. + + if the new object is a directory object Access Control List (ACL). + The revision level of the new object. + The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint. + + + Initializes a new instance of the class with the specified values. + + if the new object is a container. + + if the new object is a directory object Access Control List (ACL). + The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint. + + + Initializes a new instance of the class with the specified values from the specified object. + + if the new object is a container. + + if the new object is a directory object Access Control List (ACL). + The underlying object for the new object. Specify to create an empty ACL. + + + Adds an Access Control Entry (ACE) with the specified settings to the current object. + The type of access control (allow or deny) to add. + The for which to add an ACE. + The access rule for the new ACE. + Flags that specify the inheritance properties of the new ACE. + Flags that specify the inheritance propagation properties for the new ACE. + + + Adds an Access Control Entry (ACE) with the specified settings to the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the new ACE. + The type of access control (allow or deny) to add. + The for which to add an ACE. + The access rule for the new ACE. + Flags that specify the inheritance properties of the new ACE. + Flags that specify the inheritance propagation properties for the new ACE. + Flags that specify if the and parameters contain non- values. + The identity of the class of objects to which the new ACE applies. + The identity of the class of child objects which can inherit the new ACE. + + + Adds an Access Control Entry (ACE) with the specified settings to the current object. + The type of access control (allow or deny) to add. + The for which to add an ACE. + The for the new access. + + + Removes the specified access control rule from the current object. + The type of access control (allow or deny) to remove. + The for which to remove an access control rule. + The access mask for the rule to be removed. + Flags that specify the inheritance properties of the rule to be removed. + Flags that specify the inheritance propagation properties for the rule to be removed. + + if this method successfully removes the specified access; otherwise, . + + + Removes the specified access control rule from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type. + The type of access control (allow or deny) to remove. + The for which to remove an access control rule. + The access mask for the access control rule to be removed. + Flags that specify the inheritance properties of the access control rule to be removed. + Flags that specify the inheritance propagation properties for the access control rule to be removed. + Flags that specify if the and parameters contain non- values. + The identity of the class of objects to which the removed access control rule applies. + The identity of the class of child objects which can inherit the removed access control rule. + + if this method successfully removes the specified access; otherwise, . + + + Removes the specified access control rule from the current object. + The type of access control (allow or deny) to remove. + The for which to remove an access control rule. + The for which to remove access. + Returns . + + + Removes the specified Access Control Entry (ACE) from the current object. + The type of access control (allow or deny) to remove. + The for which to remove an ACE. + The access mask for the ACE to be removed. + Flags that specify the inheritance properties of the ACE to be removed. + Flags that specify the inheritance propagation properties for the ACE to be removed. + + + Removes the specified Access Control Entry (ACE) from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the ACE to be removed. + The type of access control (allow or deny) to remove. + The for which to remove an ACE. + The access mask for the ACE to be removed. + Flags that specify the inheritance properties of the ACE to be removed. + Flags that specify the inheritance propagation properties for the ACE to be removed. + Flags that specify if the and parameters contain non- values. + The identity of the class of objects to which the removed ACE applies. + The identity of the class of child objects which can inherit the removed ACE. + + + Removes the specified Access Control Entry (ACE) from the current object. + The type of access control (allow or deny) to remove. + The for which to remove an ACE. + The for which to remove access. + + + Sets the specified access control for the specified object. + The type of access control (allow or deny) to set. + The for which to set an ACE. + The access rule for the new ACE. + Flags that specify the inheritance properties of the new ACE. + Flags that specify the inheritance propagation properties for the new ACE. + + + Sets the specified access control for the specified object. + The type of access control (allow or deny) to set. + The for which to set an ACE. + The access rule for the new ACE. + Flags that specify the inheritance properties of the new ACE. + Flags that specify the inheritance propagation properties for the new ACE. + Flags that specify if the and parameters contain non- values. + The identity of the class of objects to which the new ACE applies. + The identity of the class of child objects which can inherit the new ACE. + + + Sets the specified access control for the specified object. + The type of access control (allow or deny) to set. + The for which to set an ACE. + The for which to set access. + + + Represents an Access Control Entry (ACE), and is the base class for all other ACE classes. + + + Creates a deep copy of this Access Control Entry (ACE). + The object that this method creates. + + + Creates a object from the specified binary data. + The binary data from which to create the new object. + The offset at which to begin unmarshaling. + The object this method creates. + + + Determines whether the specified object is equal to the current object. + The object to compare to the current object. + + if the specified object is equal to the current object; otherwise, . + + + Marshals the contents of the object into the specified byte array beginning at the specified offset. + The byte array into which the contents of the is marshaled. + The offset at which to start marshaling. + + is negative or too high to allow the entire to be copied into . + + + Serves as a hash function for the class. The method is suitable for use in hashing algorithms and data structures like a hash table. + A hash code for the current object. + + + Determines whether the specified objects are considered equal. + The first object to compare. + The second to compare. + + if the two objects are equal; otherwise, . + + + Determines whether the specified objects are considered unequal. + The first object to compare. + The second to compare. + + if the two objects are unequal; otherwise, . + + + Gets or sets the associated with this object. + The associated with this object. + + + Gets the type of this Access Control Entry (ACE). + The type of this ACE. + + + Gets the audit information associated with this Access Control Entry (ACE). + The audit information associated with this Access Control Entry (ACE). + + + Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method. + The length, in bytes, of the binary representation of the current object. + + + Gets flags that specify the inheritance properties of this Access Control Entry (ACE). + Flags that specify the inheritance properties of this ACE. + + + Gets a Boolean value that specifies whether this Access Control Entry (ACE) is inherited or is set explicitly. + + if this ACE is inherited; otherwise, . + + + Gets flags that specify the inheritance propagation properties of this Access Control Entry (ACE). + Flags that specify the inheritance propagation properties of this ACE. + + + Represents an access control list (ACL) and is the base class for the , , , and classes. + + + The revision level of the current . This value is returned by the property for Access Control Lists (ACLs) that are not associated with Directory Services objects. + + + The revision level of the current . This value is returned by the property for Access Control Lists (ACLs) that are associated with Directory Services objects. + + + The maximum allowed binary length of a object. + + + Initializes a new instance of the class. + + + Copies each of the current into the specified array. + The array into which copies of the objects contained by the current are placed. + The zero-based index of where the copying begins. + + + Marshals the contents of the object into the specified byte array beginning at the specified offset. + The byte array into which the contents of the is marshaled. + The offset at which to start marshaling. + + is negative or too high to allow the entire to be copied into . + + + Retrieves an object that you can use to iterate through the access control entries (ACEs) in an access control list (ACL). + An enumerator object. + + + Copies each of the current into the specified array. + The array into which copies of the objects contained by the current are placed. + The zero-based index of where the copying begins. + + + Returns a new instance of the class cast as an instance of the interface. + A new object, cast as an instance of the interface. + + + Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method. + The length, in bytes, of the binary representation of the current object. + + + Gets the number of access control entries (ACEs) in the current object. + The number of ACEs in the current object. + + + This property is always set to . It is implemented only because it is required for the implementation of the interface. + Always . + + + Gets or sets the at the specified index. + The zero-based index of the to get or set. + The at the specified index. + + + Gets the revision level of the . + A byte value that specifies the revision level of the . + + + This property always returns . It is implemented only because it is required for the implementation of the interface. + Always returns . + + + Represents a security descriptor. A security descriptor includes an owner, a primary group, a Discretionary Access Control List (DACL), and a System Access Control List (SACL). + + + Returns an array of byte values that represents the information contained in this object. + The byte array into which the contents of the is marshaled. + The offset at which to start marshaling. + + is negative or too high to allow the entire to be copied into . + + + Returns the Security Descriptor Definition Language (SDDL) representation of the specified sections of the security descriptor that this object represents. + Specifies which sections (access rules, audit rules, primary group, owner) of the security descriptor to get. + The SDDL representation of the specified sections of the security descriptor associated with this object. + + + Returns a boolean value that specifies whether the security descriptor associated with this object can be converted to the Security Descriptor Definition Language (SDDL) format. + + if the security descriptor associated with this object can be converted to the Security Descriptor Definition Language (SDDL) format; otherwise, . + + + Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method. + The length, in bytes, of the binary representation of the current object. + + + Gets values that specify behavior of the object. + One or more values of the enumeration combined with a logical OR operation. + + + Gets or sets the primary group for this object. + The primary group for this object. + + + Gets or sets the owner of the object associated with this object. + The owner of the object associated with this object. + + + Gets the revision level of the object. + A byte value that specifies the revision level of the . + + + Inheritance flags specify the semantics of inheritance for access control entries (ACEs). + + + The ACE is inherited by child container objects. + + + The ACE is not inherited by child objects. + + + The ACE is inherited by child leaf objects. + + + Encapsulates all Access Control Entry (ACE) types currently defined by Microsoft Corporation. All objects contain a 32-bit access mask and a object. + + + Gets or sets the access mask for this object. + The access mask for this object. + + + Gets or sets the object associated with this object. + The object associated with this object. + + + Provides the ability to control access to native objects without direct manipulation of Access Control Lists (ACLs). Native object types are defined by the enumeration. + + + Initializes a new instance of the class with the specified values. + + if the new object is a container object. + The type of securable object with which the new object is associated. + + + Initializes a new instance of the class with the specified values. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + + if the new object is a container object. + The type of securable object with which the new object is associated. + The handle of the securable object with which the new object is associated. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this object. + + + Initializes a new instance of the class with the specified values. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + + if the new object is a container object. + The type of securable object with which the new object is associated. + The handle of the securable object with which the new object is associated. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this object. + A delegate implemented by integrators that provides custom exceptions. + An object that contains contextual information about the source or destination of the exception. + + + Initializes a new instance of the class by using the specified values. + + if the new object is a container object. + The type of securable object with which the new object is associated. + A delegate implemented by integrators that provides custom exceptions. + An object that contains contextual information about the source or destination of the exception. + + + Initializes a new instance of the class with the specified values. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + + if the new object is a container object. + The type of securable object with which the new object is associated. + The name of the securable object with which the new object is associated. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this object. + + + Initializes a new instance of the class with the specified values. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + + if the new object is a container object. + The type of securable object with which the new object is associated. + The name of the securable object with which the new object is associated. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this object. + A delegate implemented by integrators that provides custom exceptions. + An object that contains contextual information about the source or destination of the exception. + + + Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend.persist that the values of the parameters passed to the constructor and persist methods be identical. + The handle of the securable object with which this object is associated. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save. + The securable object with which this object is associated is either a directory or a file, and that directory or file could not be found. + + + Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + The handle of the securable object with which this object is associated. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save. + An object that contains contextual information about the source or destination of the exception. + The securable object with which this object is associated is either a directory or a file, and that directory or file could not be found. + + + Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + The name of the securable object with which this object is associated. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save. + The securable object with which this object is associated is either a directory or a file, and that directory or file could not be found. + + + Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + The name of the securable object with which this object is associated. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save. + An object that contains contextual information about the source or destination of the exception. + The securable object with which this object is associated is either a directory or a file, and that directory or file could not be found. + + + Provides a way for integrators to map numeric error codes to specific exceptions that they create. + The numeric error code. + The name of the securable object with which the object is associated. + The handle of the securable object with which the object is associated. + An object that contains contextual information about the source or destination of the exception. + The this delegate creates. + + + Represents a combination of a user's identity, an access mask, and an access control type (allow or deny). An object also contains information about the type of object to which the rule applies, the type of child object that can inherit the rule, how the rule is inherited by child objects, and how that inheritance is propagated. + + + Initializes a new instance of the class with the specified values. + The identity to which the access rule applies. It must be an object that can be cast as a . + The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators. + + if this rule is inherited from a parent container. + Specifies the inheritance properties of the access rule. + Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to . + The type of object to which the rule applies. + The type of child object that can inherit the rule. + Specifies whether this rule allows or denies access. + The value of the parameter cannot be cast as a , or the parameter contains an invalid value. + The value of the parameter is 0, or the or parameters contain unrecognized flag values. + + + Gets the type of child object that can inherit the object. + The type of child object that can inherit the object. + + + Gets flags that specify if the and properties of the object contain valid values. + + specifies that the property contains a valid value. specifies that the property contains a valid value. These values can be combined with a logical OR. + + + Gets the type of object to which the applies. + The type of object to which the applies. + + + Controls access to Directory Services objects. This class represents an Access Control Entry (ACE) associated with a directory object. + + + Initiates a new instance of the class. + The inheritance, inheritance propagation, and auditing conditions for the new Access Control Entry (ACE). + The use of the new ACE. + The access mask for the ACE. + The associated with the new ACE. + Whether the and parameters contain valid object GUIDs. + A GUID that identifies the object type to which the new ACE applies. + A GUID that identifies the object type that can inherit the new ACE. + + if the new ACE is a callback type ACE. + Opaque data associated with the new ACE. This is allowed only for callback ACE types. The length of this array must not be greater than the return value of the method. + The qualifier parameter contains an invalid value or the length of the value of the opaque parameter is greater than the return value of the method. + + + Marshals the contents of the object into the specified byte array beginning at the specified offset. + The byte array into which the contents of the is marshaled. + The offset at which to start marshaling. + + is negative or too high to allow the entire to be copied into . + + + Returns the maximum allowed length, in bytes, of an opaque data BLOB for callback Access Control Entries (ACEs). + True if the is a callback ACE type. + The maximum allowed length, in bytes, of an opaque data BLOB for callback Access Control Entries (ACEs). + + + Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method. + The length, in bytes, of the binary representation of the current object. + + + Gets or sets the GUID of the object type that can inherit the Access Control Entry (ACE) that this object represents. + The GUID of the object type that can inherit the Access Control Entry (ACE) that this object represents. + + + Gets or sets flags that specify whether the and properties contain values that identify valid object types. + On or more members of the enumeration combined with a logical OR operation. + + + Gets or sets the GUID of the object type associated with this object. + The GUID of the object type associated with this object. + + + Specifies the presence of object types for Access Control Entries (ACEs). + + + The type of object that can inherit the ACE. + + + No object types are present. + + + The type of object that is associated with the ACE is present. + + + Represents a combination of a user's identity, an access mask, and audit conditions. An object also contains information about the type of object to which the rule applies, the type of child object that can inherit the rule, how the rule is inherited by child objects, and how that inheritance is propagated. + + + Initializes a new instance of the class. + The identity to which the access rule applies. It must be an object that can be cast as a . + The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators. + + if this rule is inherited from a parent container. + Specifies the inheritance properties of the access rule. + Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to . + The type of object to which the rule applies. + The type of child object that can inherit the rule. + The audit conditions. + The value of the parameter cannot be cast as a , or the parameter contains an invalid value. + The value of the parameter is 0, or the or parameters contain unrecognized flag values. + + + Gets the type of child object that can inherit the object. + The type of child object that can inherit the object. + + + + and properties of the object contain valid values. + + specifies that the property contains a valid value. specifies that the property contains a valid value. These values can be combined with a logical OR. + + + Gets the type of object to which the applies. + The type of object to which the applies. + + + Provides the ability to control access to objects without direct manipulation of Access Control Lists (ACLs). This class is the abstract base class for the and classes. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + + if the new object is a container object. + True if the new object is a directory object. + + + Initializes a new instance of the class. + The of the new instance. + + + Initializes a new instance of the class with the specified values. + The identity to which the access rule applies. It must be an object that can be cast as a . + The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators. + true if this rule is inherited from a parent container. + Specifies the inheritance properties of the access rule. + Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to . + Specifies the valid access control type. + The object that this method creates. + + + Initializes a new instance of the class with the specified values. + The identity to which the audit rule applies. It must be an object that can be cast as a . + The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators. + + if this rule is inherited from a parent container. + Specifies the inheritance properties of the audit rule. + Specifies whether inherited audit rules are automatically propagated. The propagation flags are ignored if is set to . + Specifies the conditions for which the rule is audited. + The object that this method creates. + + + Gets the primary group associated with the specified owner. + The owner for which to get the primary group. + The primary group associated with the specified owner. + + + Gets the owner associated with the specified primary group. + The primary group for which to get the owner. + + is . + + is not an type. + Some or all identity references could not be translated. + A Win32 error code was returned. + The owner associated with the specified group. + + + Returns an array of byte values that represents the security descriptor information for this object. + An array of byte values that represents the security descriptor for this object. This method returns if there is no security information in this object. + + + Returns the Security Descriptor Definition Language (SDDL) representation of the specified sections of the security descriptor associated with this object. + Specifies which sections (access rules, audit rules, primary group, owner) of the security descriptor to get. + The SDDL representation of the specified sections of the security descriptor associated with this object. + + + Returns a Boolean value that specifies whether the security descriptor associated with this object can be converted to the Security Descriptor Definition Language (SDDL) format. + + if the security descriptor associated with this object can be converted to the Security Descriptor Definition Language (SDDL) format; otherwise, . + + + Applies the specified modification to the Discretionary Access Control List (DACL) associated with this object. + The modification to apply to the DACL. + The access rule to modify. + + if the DACL is successfully modified; otherwise, . + + if the DACL is successfully modified; otherwise, . + + + Applies the specified modification to the Discretionary Access Control List (DACL) associated with this object. + The modification to apply to the DACL. + The access rule to modify. + + if the DACL is actually modified; otherwise, . + + if the DACL is successfully modified; otherwise, . + + + Applies the specified modification to the System Access Control List (SACL) associated with this object. + The modification to apply to the SACL. + The audit rule to modify. + + if the SACL is actually modified; otherwise, . + + if the SACL is successfully modified; otherwise, . + + + Applies the specified modification to the System Access Control List (SACL) associated with this object. + The modification to apply to the SACL. + The audit rule to modify. + + if the SACL is successfully modified; otherwise, . + + if the SACL is successfully modified; otherwise, . + + + Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + + to enable the privilege that allows the caller to take ownership of the object. + The name used to retrieve the persisted information. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save. + + + Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + The handle used to retrieve the persisted information. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save. + + + Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical. + The name used to retrieve the persisted information. + One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save. + + + Removes all access rules associated with the specified . + The for which to remove all access rules. + All access rules are not in canonical order. + + + Removes all audit rules associated with the specified . + The for which to remove all audit rules. + All audit rules are not in canonical order. + + + Locks this object for read access. + + + Unlocks this object for read access. + + + Sets or removes protection of the access rules associated with this object. Protected access rules cannot be modified by parent objects through inheritance. + + to protect the access rules associated with this object from inheritance; to allow inheritance. + + to preserve inherited access rules; to remove inherited access rules. This parameter is ignored if is . + This method attempts to remove inherited rules from a non-canonical Discretionary Access Control List (DACL). + + + Sets or removes protection of the audit rules associated with this object. Protected audit rules cannot be modified by parent objects through inheritance. + + to protect the audit rules associated with this object from inheritance; to allow inheritance. + + to preserve inherited audit rules; to remove inherited audit rules. This parameter is ignored if is . + This method attempts to remove inherited rules from a non-canonical System Access Control List (SACL). + + + Sets the primary group for the security descriptor associated with this object. + The primary group to set. + + + Sets the owner for the security descriptor associated with this object. + The owner to set. + + + Sets the security descriptor for this object from the specified array of byte values. + The array of bytes from which to set the security descriptor. + + + Sets the specified sections of the security descriptor for this object from the specified array of byte values. + The array of bytes from which to set the security descriptor. + The sections (access rules, audit rules, owner, primary group) of the security descriptor to set. + + + Sets the security descriptor for this object from the specified Security Descriptor Definition Language (SDDL) string. + The SDDL string from which to set the security descriptor. + + + Sets the specified sections of the security descriptor for this object from the specified Security Descriptor Definition Language (SDDL) string. + The SDDL string from which to set the security descriptor. + The sections (access rules, audit rules, owner, primary group) of the security descriptor to set. + + + Locks this object for write access. + + + Unlocks this object for write access. + + + Gets the of the securable object associated with this object. + The type of the securable object associated with this object. + + + Gets or sets a Boolean value that specifies whether the access rules associated with this object have been modified. + + if the access rules associated with this object have been modified; otherwise, . + + + Gets the of the object associated with the access rules of this object. The object must be an object that can be cast as a object. + The type of the object associated with the access rules of this object. + + + Gets a Boolean value that specifies whether the access rules associated with this object are in canonical order. + + if the access rules are in canonical order; otherwise, . + + + Gets a Boolean value that specifies whether the Discretionary Access Control List (DACL) associated with this object is protected. + + if the DACL is protected; otherwise, . + + + Gets a Boolean value that specifies whether the audit rules associated with this object are in canonical order. + + if the audit rules are in canonical order; otherwise, . + + + Gets a Boolean value that specifies whether the System Access Control List (SACL) associated with this object is protected. + + if the SACL is protected; otherwise, . + + + Gets or sets a Boolean value that specifies whether the audit rules associated with this object have been modified. + + if the audit rules associated with this object have been modified; otherwise, . + + + Gets the object associated with the audit rules of this object. The object must be an object that can be cast as a object. + The type of the object associated with the audit rules of this object. + + + Gets or sets a Boolean value that specifies whether the group associated with the securable object has been modified. + + if the group associated with the securable object has been modified; otherwise, . + + + Gets a Boolean value that specifies whether this object is a container object. + + if the object is a container object; otherwise, . + + + Gets a Boolean value that specifies whether this object is a directory object. + + if the object is a directory object; otherwise, . + + + Gets or sets a Boolean value that specifies whether the owner of the securable object has been modified. + + if the owner of the securable object has been modified; otherwise, . + + + Gets the security descriptor for this instance. + The security descriptor for this instance. + + + Provides the ability to control access to objects without direct manipulation of Access Control Lists (ACLs); also grants the ability to type-cast access rights. + The access rights for the object. + + + Initializes a new instance of the ObjectSecurity`1 class. + + if the new object is a container object. + The type of resource. + + + Initializes a new instance of the ObjectSecurity`1 class. + + if the new object is a container object. + The type of resource. + A handle. + The sections to include. + + + Initializes a new instance of the ObjectSecurity`1 class. + + if the new object is a container object. + The type of resource. + A handle. + The sections to include. + A delegate implemented by integrators that provides custom exceptions. + An object that contains contextual information about the source or destination of the exception. + + + Initializes a new instance of the ObjectSecurity`1 class. + + if the new object is a container object. + The type of resource. + The name of the securable object with which the new object is associated. + The sections to include. + + + Initializes a new instance of the ObjectSecurity`1 class. + + if the new object is a container object. + The type of resource. + The name of the securable object with which the new object is associated. + The sections to include. + A delegate implemented by integrators that provides custom exceptions. + An object that contains contextual information about the source or destination of the exception. + + + Initializes a new instance of the ObjectAccessRule class that represents a new access control rule for the associated security object. + Represents a user account. + The access type. + + if the access rule is inherited; otherwise, . + Specifies how to propagate access masks to child objects. + Specifies how to propagate Access Control Entries (ACEs) to child objects. + Specifies whether access is allowed or denied. + Represents a new access control rule for the specified user, with the specified access rights, access control, and flags. + + + Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object. + The rule to add. + + + Adds the specified audit rule to the System Access Control List (SACL) associated with this ObjectSecurity`1 object. + The audit rule to add. + + + Initializes a new instance of the class representing the specified audit rule for the specified user. + Represents a user account. + An integer that specifies an access type. + + if the access rule is inherited; otherwise, . + Specifies how to propagate access masks to child objects. + Specifies how to propagate Access Control Entries (ACEs) to child objects. + Describes the type of auditing to perform. + The specified audit rule for the specified user. + + + Saves the security descriptor associated with this ObjectSecurity`1 object to permanent storage, using the specified handle. + The handle of the securable object with which this ObjectSecurity`1 object is associated. + + + Saves the security descriptor associated with this ObjectSecurity`1 object to permanent storage, using the specified name. + The name of the securable object with which this ObjectSecurity`1 object is associated. + + + Removes access rules that contain the same security identifier and access mask as the specified access rule from the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object. + The rule to remove. + + if the access rule was successfully removed; otherwise, . + + + Removes all access rules that have the same security identifier as the specified access rule from the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object. + The access rule to remove. + + + Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object. + The access rule to remove. + + + Removes audit rules that contain the same security identifier and access mask as the specified audit rule from the System Access Control List (SACL) associated with this ObjectSecurity`1 object. + The audit rule to remove + + if the object was removed; otherwise, . + + + Removes all audit rules that have the same security identifier as the specified audit rule from the System Access Control List (SACL) associated with this ObjectSecurity`1 object. + The audit rule to remove. + + + Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this ObjectSecurity`1 object. + The audit rule to remove. + + + Removes all access rules in the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object and then adds the specified access rule. + The access rule to reset. + + + Removes all access rules that contain the same security identifier and qualifier as the specified access rule in the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object and then adds the specified access rule. + The access rule to set. + + + Removes all audit rules that contain the same security identifier and qualifier as the specified audit rule in the System Access Control List (SACL) associated with this ObjectSecurity`1 object and then adds the specified audit rule. + The audit rule to set. + + + Gets the Type of the securable object associated with this ObjectSecurity`1 object. + The type of the securable object associated with the current instance. + + + Gets the Type of the object associated with the access rules of this ObjectSecurity`1 object. + The Type of the object associated with the access rules of the current instance. + + + Gets the Type object associated with the audit rules of this ObjectSecurity`1 object. + The Type object associated with the audit rules of the current instance. + + + The exception that is thrown when a method in the namespace attempts to enable a privilege that it does not have. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified privilege. + The privilege that is not enabled. + + + Initializes a new instance of the class by using the specified exception. + The privilege that is not enabled. + The exception that is the cause of the current exception. If the innerException parameter is not a null reference ( in Visual Basic), the current exception is raised in a block that handles the inner exception. + + + Sets the parameter with information about the exception. + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + + + Gets the name of the privilege that is not enabled. + The name of the privilege that the method failed to enable. + + + Specifies how Access Control Entries (ACEs) are propagated to child objects. These flags are significant only if inheritance flags are present. + + + Specifies that the ACE is propagated only to child objects. This includes both container and leaf child objects. + + + Specifies that no inheritance flags are set. + + + Specifies that the ACE is not propagated to child objects. + + + Represents an Access Control Entry (ACE) that contains a qualifier. The qualifier, represented by an object, specifies whether the ACE allows access, denies access, causes system audits, or causes system alarms. The class is the abstract base class for the and classes. + + + Returns the opaque callback data associated with this object. + An array of byte values that represents the opaque callback data associated with this object. + + + Sets the opaque callback data associated with this object. + An array of byte values that represents the opaque callback data for this object. + + + Gets a value that specifies whether the ACE allows access, denies access, causes system audits, or causes system alarms. + A value that specifies whether the ACE allows access, denies access, causes system audits, or causes system alarms. + + + Specifies whether this object contains callback data. + + if this object contains callback data; otherwise, false. + + + Gets the length of the opaque callback data associated with this object. This property is valid only for callback Access Control Entries (ACEs). + The length of the opaque callback data. + + + Represents an Access Control List (ACL). + + + Initializes a new instance of the class with the specified revision level. + The revision level of the new Access Control List (ACL). + The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint. + + + Initializes a new instance of the class from the specified binary form. + An array of byte values that represent an Access Control List (ACL). + The offset in the parameter at which to begin unmarshaling data. + + + Marshals the contents of the object into the specified byte array beginning at the specified offset. + The byte array into which the contents of the is marshaled. + The offset at which to start marshaling. + + is negative or too high to allow the entire to be copied into . + + + Inserts the specified Access Control Entry (ACE) at the specified index. + The position at which to add the new ACE. Specify the value of the property to insert an ACE at the end of the object. + The ACE to insert. + + is negative or too high to allow the entire to be copied into . + + + Removes the Access Control Entry (ACE) at the specified location. + The zero-based index of the ACE to remove. + The value of the parameter is higher than the value of the property minus one or is negative. + + + Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method. + The length, in bytes, of the binary representation of the current object. + + + Gets the number of access control entries (ACEs) in the current object. + The number of ACEs in the current object. + + + Gets or sets the Access Control Entry (ACE) at the specified index. + The zero-based index of the ACE to get or set. + The ACE at the specified index. + + + Gets the revision level of the . + A byte value that specifies the revision level of the . + + + Represents a security descriptor. A security descriptor includes an owner, a primary group, a Discretionary Access Control List (DACL), and a System Access Control List (SACL). + + + Initializes a new instance of the class from the specified array of byte values. + The array of byte values from which to create the new object. + The offset in the array at which to begin copying. + + + Initializes a new instance of the class with the specified values. + Flags that specify behavior of the new object. + The owner for the new object. + The primary group for the new object. + The System Access Control List (SACL) for the new object. + The Discretionary Access Control List (DACL) for the new object. + + + Initializes a new instance of the class from the specified Security Descriptor Definition Language (SDDL) string. + The SDDL string from which to create the new object. + The SDDL form of a security descriptor object is invalid. + + + Sets the property of this object to the specified value. + One or more values of the enumeration combined with a logical OR operation. + + + Gets values that specify behavior of the object. + One or more values of the enumeration combined with a logical OR operation. + + + Gets or sets the Discretionary Access Control List (DACL) for this object. The DACL contains access rules. + The DACL for this object. + + + Gets or sets the primary group for this object. + The primary group for this object. + + + Gets or sets the owner of the object associated with this object. + The owner of the object associated with this object. + + + Gets or sets a byte value that represents the resource manager control bits associated with this object. + A byte value that represents the resource manager control bits associated with this object. + + + Gets or sets the System Access Control List (SACL) for this object. The SACL contains audit rules. + The SACL for this object. + + + Specifies the defined native object types. + + + A directory service (DS) object or a property set or property of a directory service object. + + + A directory service object and all of its property sets and properties. + + + A file or directory. + + + A local kernel object. + + + A network share. + + + A printer. + + + An object defined by a provider. + + + A registry key. + + + An object for a registry entry under WOW64. + + + A Windows service. + + + An unknown object type. + + + A window station or desktop object on the local computer. + + + A Windows Management Instrumentation (WMI) object. + + + Specifies the section of a security descriptor to be queried or set. + + + Specifies the discretionary access control list (DACL). + + + Specifies the primary group identifier. + + + Specifies the owner identifier. + + + Specifies the system access control list (SACL). + + + Represents a System Access Control List (SACL). + + + Initializes a new instance of the class with the specified values. + + if the new object is a container. + + if the new object is a directory object Access Control List (ACL). + The revision level of the new object. + The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint. + + + Initializes a new instance of the class with the specified values. + + if the new object is a container. + + if the new object is a directory object Access Control List (ACL). + The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint. + + + Initializes a new instance of the class with the specified values from the specified object. + + if the new object is a container. + + if the new object is a directory object Access Control List (ACL). + The underlying object for the new object. Specify to create an empty ACL. + + + Adds an audit rule to the current object. + The type of audit rule to add. + The for which to add an audit rule. + The access mask for the new audit rule. + Flags that specify the inheritance properties of the new audit rule. + Flags that specify the inheritance propagation properties for the new audit rule. + + + Adds an audit rule with the specified settings to the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the new audit rule. + The type of audit rule to add. + The for which to add an audit rule. + The access mask for the new audit rule. + Flags that specify the inheritance properties of the new audit rule. + Flags that specify the inheritance propagation properties for the new audit rule. + Flags that specify if the and parameters contain non- values. + The identity of the class of objects to which the new audit rule applies. + The identity of the class of child objects which can inherit the new audit rule. + + + Adds an audit rule to the current object. + The for which to add an audit rule. + The for the new audit rule. + + + Removes the specified audit rule from the current object. + The type of audit rule to remove. + The for which to remove an audit rule. + The access mask for the rule to be removed. + Flags that specify the inheritance properties of the rule to be removed. + Flags that specify the inheritance propagation properties for the rule to be removed. + + if this method successfully removes the specified audit rule; otherwise, . + + + Removes the specified audit rule from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type. + The type of audit rule to remove. + The for which to remove an audit rule. + The access mask for the rule to be removed. + Flags that specify the inheritance properties of the rule to be removed. + Flags that specify the inheritance propagation properties for the rule to be removed. + Flags that specify if the and parameters contain non- values. + The identity of the class of objects to which the removed audit control rule applies. + The identity of the class of child objects which can inherit the removed audit rule. + + if this method successfully removes the specified audit rule; otherwise, . + + + Removes the specified audit rule from the current object. + The for which to remove an audit rule. + The for which to remove an audit rule. + + if this method successfully removes the specified audit rule; otherwise, . + + + Removes the specified audit rule from the current object. + The type of audit rule to remove. + The for which to remove an audit rule. + The access mask for the rule to be removed. + Flags that specify the inheritance properties of the rule to be removed. + Flags that specify the inheritance propagation properties for the rule to be removed. + + + Removes the specified audit rule from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type. + The type of audit rule to remove. + The for which to remove an audit rule. + The access mask for the rule to be removed. + Flags that specify the inheritance properties of the rule to be removed. + Flags that specify the inheritance propagation properties for the rule to be removed. + Flags that specify if the and parameters contain non- values. + The identity of the class of objects to which the removed audit control rule applies. + The identity of the class of child objects which can inherit the removed audit rule. + + + Removes the specified audit rule from the current object. + The for which to remove an audit rule. + The for the rule to be removed. + + + Sets the specified audit rule for the specified object. + The audit condition to set. + The for which to set an audit rule. + The access mask for the new audit rule. + Flags that specify the inheritance properties of the new audit rule. + Flags that specify the inheritance propagation properties for the new audit rule. + + + Sets the specified audit rule for the specified object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type. + The audit condition to set. + The for which to set an audit rule. + The access mask for the new audit rule. + Flags that specify the inheritance properties of the new audit rule. + Flags that specify the inheritance propagation properties for the new audit rule. + Flags that specify if the and parameters contain non- values. + The identity of the class of objects to which the new audit rule applies. + The identity of the class of child objects which can inherit the new audit rule. + + + Sets the specified audit rule for the specified object. + The for which to set an audit rule. + The for which to set an audit rule. + + + \ No newline at end of file diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.Security.Principal.Windows.dll b/SOURCE/Application/Plugins/ModellingWizard/System.Security.Principal.Windows.dll new file mode 100644 index 0000000000000000000000000000000000000000..54f7829bc3b3fa118827dff731fe461565b09045 GIT binary patch literal 18312 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 ZajIl@R8-bc<&x9k6)xpFR9~zj^gjq-^63Bo literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.Security.Principal.Windows.xml b/SOURCE/Application/Plugins/ModellingWizard/System.Security.Principal.Windows.xml new file mode 100644 index 0000000..def5cce --- /dev/null +++ b/SOURCE/Application/Plugins/ModellingWizard/System.Security.Principal.Windows.xml @@ -0,0 +1,1091 @@ + + + + System.Security.Principal.Windows + + + + Provides a safe handle to a Windows thread or process access token. For more information, see Access Tokens. + + + Initializes a new instance of the class. + An object that represents the pre-existing handle to use. Using returns an invalid handle. + + + Returns an invalid handle by instantiating a object with . + Returns a object. + + + Gets a value that indicates whether the handle is invalid. + + if the handle is not valid; otherwise, . + + + Represents an exception for a principal whose identity could not be mapped to a known identity. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class by using the specified error message. + The error message that explains the reason for the exception. + + + Initializes a new instance of the class by using the specified error message and inner exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. If is not null, the current exception is raised in a block that handles the inner exception. + + + Gets serialization information with the data needed to create an instance of this object. + The object that holds the serialized object data about the exception being thrown. + The object that contains contextual information about the source or destination. + + + Represents the collection of unmapped identities for an exception. + The collection of unmapped identities. + + + Represents an identity and is the base class for the and classes. This class does not provide a public constructor, and therefore cannot be inherited. + + + Returns a value that indicates whether the specified object equals this instance of the class. + An object to compare with this instance, or a null reference. + + if is an object with the same underlying type and value as this instance; otherwise, . + + + Serves as a hash function for . is suitable for use in hashing algorithms and data structures like a hash table. + The hash code for this object. + + + Returns a value that indicates whether the specified type is a valid translation type for the class. + The type being queried for validity to serve as a conversion from . The following target types are valid: + + + + if is a valid translation type for the class; otherwise, . + + + Compares two objects to determine whether they are equal. They are considered equal if they have the same canonical name representation as the one returned by the property or if they are both . + The left operand to use for the equality comparison. This parameter can be . + The right operand to use for the equality comparison. This parameter can be . + + if and are equal; otherwise, . + + + Compares two objects to determine whether they are not equal. They are considered not equal if they have different canonical name representations than the one returned by the property or if one of the objects is and the other is not. + The left operand to use for the inequality comparison. This parameter can be . + The right operand to use for the inequality comparison. This parameter can be . + + if and are not equal; otherwise, . + + + Returns the string representation of the identity represented by the object. + The identity in string format. + + + Translates the account name represented by the object into another -derived type. + The target type for the conversion from . + The converted identity. + + + Gets the string value of the identity represented by the object. + The string value of the identity represented by the object. + + + Represents a collection of objects and provides a means of converting sets of -derived objects to -derived types. + + + Initializes a new instance of the class with zero items in the collection. + + + Initializes a new instance of the class by using the specified initial size. + The initial number of items in the collection. The value of is a hint only; it is not necessarily the maximum number of items created. + + + Adds an object to the collection. + The object to add to the collection. + + is . + + + Clears all objects from the collection. + + + Indicates whether the collection contains the specified object. + The object to check for. + + is . + + if the collection contains the specified object. + + + Copies the collection to an array, starting at the specified index. + An array object to which the collection is to be copied. + The zero-based index in where the collection is to be copied. + + + Gets an enumerator that can be used to iterate through the collection. + An enumerator for the collection. + + + Removes the specified object from the collection. + The object to remove. + + is . + + if the specified object was removed from the collection. + + + Gets an enumerator that can be used to iterate through the collection. + An enumerator for the collection. + + + Converts the objects in the collection to the specified type. Calling this method is the same as calling with the second parameter set to , which means that exceptions will not be thrown for items that fail conversion. + The type to which items in the collection are being converted. + A collection that represents the converted contents of the original collection. + + + Converts the objects in the collection to the specified type and uses the specified fault tolerance to handle or ignore errors associated with a type not having a conversion mapping. + The type to which items in the collection are being converted. + A Boolean value that determines how conversion errors are handled. + + If is , conversion errors due to a mapping not being found for the translation result in a failed conversion and exceptions being thrown. + + If is , types that failed to convert due to a mapping not being found for the translation are copied without being converted into the collection being returned. + A collection that represents the converted contents of the original collection. + + + Gets the number of items in the collection. + The number of objects in the collection. + + + Gets or sets the node at the specified index of the collection. + The zero-based index in the collection. + The at the specified index in the collection. If is greater than or equal to the number of nodes in the collection, the return value is . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Represents a user or group account. + + + Initializes a new instance of the class by using the specified name. + The name used to create the object. This parameter cannot be or an empty string. + + is . + + is an empty string. + + -or- + + is too long. + + + Initializes a new instance of the class by using the specified domain name and account name. + The name of the domain. This parameter can be or an empty string. Domain names that are null values are treated like an empty string. + The name of the account. This parameter cannot be or an empty string. + + is . + + is an empty string. + + -or- + + is too long. + + -or- + + is too long. + + + Returns a value that indicates whether this object is equal to a specified object. + An object to compare with this object, or . + + if is an object with the same underlying type and value as this object; otherwise, . + + + Serves as a hash function for the current object. The method is suitable for hashing algorithms and data structures like a hash table. + A hash value for the current object. + + + Returns a value that indicates whether the specified type is a valid translation type for the class. + The type being queried for validity to serve as a conversion from . The following target types are valid: + + - + + - + + if is a valid translation type for the class; otherwise . + + + Compares two objects to determine whether they are equal. They are considered equal if they have the same canonical name representation as the one returned by the property or if they are both . + The left operand to use for the equality comparison. This parameter can be . + The right operand to use for the equality comparison. This parameter can be . + + if and are equal; otherwise . + + + Compares two objects to determine whether they are not equal. They are considered not equal if they have different canonical name representations than the one returned by the property or if one of the objects is and the other is not. + The left operand to use for the inequality comparison. This parameter can be . + The right operand to use for the inequality comparison. This parameter can be . + + if and are not equal; otherwise . + + + Returns the account name, in Domain \ Account format, for the account represented by the object. + The account name, in Domain \ Account format. + + + Translates the account name represented by the object into another -derived type. + The target type for the conversion from . The target type must be a type that is considered valid by the method. + + is . + + is not an type. + Some or all identity references could not be translated. + The source account name is too long. + + -or- + + A Win32 error code was returned. + The converted identity. + + + Returns a string representation of this object. + The string representation of this object. + + + Represents a security identifier (SID) and provides marshaling and comparison operations for SIDs. + + + Returns the maximum size, in bytes, of the binary representation of the security identifier. + + + Returns the minimum size, in bytes, of the binary representation of the security identifier. + + + Initializes a new instance of the class by using a specified binary representation of a security identifier (SID). + The byte array that represents the SID. + The byte offset to use as the starting index in . + + + Initializes a new instance of the class by using an integer that represents the binary form of a security identifier (SID). + An integer that represents the binary form of a SID. + + + Initializes a new instance of the class by using the specified well known security identifier (SID) type and domain SID. + One of the enumeration values. This value must not be . + The domain SID. This value is required for the following values. This parameter is ignored for any other values. + + - + + - + + - + + - + + - + + - + + - + + - + + - + + - + + - + + - + + - + + + Initializes a new instance of the class by using the specified security identifier (SID) in Security Descriptor Definition Language (SDDL) format. + SDDL string for the SID used to create the object. + + + Compares the current object with the specified object. + The object to compare with the current object. + A signed number indicating the relative values of this instance and . + + Return Value Description Less than zero This instance is less than . Zero This instance is equal to . Greater than zero This instance is greater than . + + + Returns a value that indicates whether this object is equal to a specified object. + An object to compare with this object, or . + + if is an object with the same underlying type and value as this object; otherwise, . + + + Indicates whether the specified object is equal to the current object. + The object to compare with the current object. + + if the value of is equal to the value of the current object. + + + Copies the binary representation of the specified security identifier (SID) represented by the class to a byte array. + The byte array to receive the copied SID. + The byte offset to use as the starting index in . + + + Serves as a hash function for the current object. The method is suitable for hashing algorithms and data structures like a hash table. + A hash value for the current object. + + + Returns a value that indicates whether the security identifier (SID) represented by this object is a valid Windows account SID. + + if the SID represented by this object is a valid Windows account SID; otherwise, . + + + Returns a value that indicates whether the security identifier (SID) represented by this object is from the same domain as the specified SID. + The SID to compare with this object. + + if the SID represented by this object is in the same domain as the SID; otherwise, . + + + Returns a value that indicates whether the specified type is a valid translation type for the class. + The type being queried for validity to serve as a conversion from . The following target types are valid: + + - + + - + + if is a valid translation type for the class; otherwise, . + + + Returns a value that indicates whether the object matches the specified well known security identifier (SID) type. + A value to compare with the object. + + if is the SID type for the object; otherwise, . + + + Compares two objects to determine whether they are equal. They are considered equal if they have the same canonical representation as the one returned by the property or if they are both . + The left operand to use for the equality comparison. This parameter can be . + The right operand to use for the equality comparison. This parameter can be . + + if and are equal; otherwise, . + + + Compares two objects to determine whether they are not equal. They are considered not equal if they have different canonical name representations than the one returned by the property or if one of the objects is and the other is not. + The left operand to use for the inequality comparison. This parameter can be . + The right operand to use for the inequality comparison. This parameter can be . + + if and are not equal; otherwise, . + + + Returns the security identifier (SID), in Security Descriptor Definition Language (SDDL) format, for the account represented by the object. An example of the SDDL format is S-1-5-9. + The SID, in SDDL format, for the account represented by the object. + + + Translates the account name represented by the object into another -derived type. + The target type for the conversion from . The target type must be a type that is considered valid by the method. + + is . + + is not an type. + Some or all identity references could not be translated. + A Win32 error code was returned. + The converted identity. + + + Returns the account domain security identifier (SID) portion from the SID represented by the object if the SID represents a Windows account SID. If the SID does not represent a Windows account SID, this property returns . + The account domain SID portion from the SID represented by the object if the SID represents a Windows account SID; otherwise, it returns . + + + Returns the length, in bytes, of the security identifier (SID) represented by the object. + The length, in bytes, of the SID represented by the object. + + + Returns an uppercase Security Descriptor Definition Language (SDDL) string for the security identifier (SID) represented by this object. + An uppercase SDDL string for the SID represented by the object. + + + Defines the privileges of the user account associated with the access token. + + + The user can change the default owner, primary group, or discretionary access control list (DACL) of the token. + + + The user can change the attributes of the groups in the token. + + + The user can enable or disable privileges in the token. + + + The user can adjust the session identifier of the token. + + + The user has all possible access to the token. + + + The user can attach a primary token to a process. + + + The user can duplicate the token. + + + The user can impersonate a client. + + + The maximum value that can be assigned for the enumeration. + + + The user can query the token. + + + The user can query the source of the token. + + + The user has standard read rights and the privilege for the token. + + + The user has standard write rights and the , and privileges for the token. + + + Defines a set of commonly used security identifiers (SIDs). + + + Indicates a SID that matches the account administrators group. + + + Indicates a SID that matches the certificate administrators group. + + + Indicates a SID that matches the account computer group. + + + Indicates a SID that matches the account controller group. + + + Indicates a SID that matches the account domain administrator group. + + + Indicates a SID that matches the account domain guests group. + + + Indicates a SID that matches the account domain users group. + + + Indicates a SID that matches the enterprise administrators group. + + + Indicates a SID that matches the account guest group. + + + Indicates a SID that matches the account Kerberos target group. + + + Indicates a SID that matches the policy administrators group. + + + Indicates a SID that matches the RAS and IAS server account. + + + Indicates a SID that matches the schema administrators group. + + + Indicates a SID for the anonymous account. + + + Indicates a SID for an authenticated user. + + + Indicates a SID for a batch process. This SID is added to the process of a token when it logs on as a batch job. + + + Indicates a SID that matches the account operators account. + + + Indicates a SID that matches the administrator account. + + + Indicates a SID that matches the Windows Authorization Access group. + + + Indicates a SID that matches the backup operators group. + + + Indicates a SID that matches the domain account. + + + Indicates a SID that matches the guest account. + + + Indicates a SID that allows a user to create incoming forest trusts. It is added to the token of users who are a member of the Incoming Forest Trust Builders built-in group in the root domain of the forest. + + + Indicates a SID that matches the network operators group. + + + Indicates a SID that matches the group of users that have remote access to monitor the computer. + + + Indicates a SID that matches the group of users that have remote access to schedule logging of performance counters on this computer. + + + Indicates a SID that matches the power users group. + + + Indicates a SID that matches pre-Windows 2000 compatible accounts. + + + Indicates a SID that matches the print operators group. + + + Indicates a SID that matches remote desktop users. + + + Indicates a SID that matches the replicator account. + + + Indicates a SID that matches the system operators group. + + + Indicates a SID that matches built-in user accounts. + + + Indicates a creator group server SID. + + + Indicates a SID that matches the creator group of an object. + + + Indicates a creator owner server SID. + + + Indicates a SID that matches the owner or creator of an object. + + + Indicates a SID for a dial-up account. + + + Indicates a SID present when the Microsoft Digest authentication package authenticated the client. + + + Indicates a SID for an enterprise controller. + + + Indicates a SID for an interactive account. This SID is added to the process of a token when it logs on interactively. + + + Indicates a SID that matches a local service. + + + Indicates a local SID. + + + Indicates a SID that matches the local system. + + + Indicates a SID that matches logon IDs. + + + Indicates the maximum defined SID in the enumeration. + + + Indicates a SID that matches a network service. + + + Indicates a SID for a network account. This SID is added to the process of a token when it logs on across a network. + + + Indicates a SID for the Windows NT authority. + + + Indicates a SID present when the Microsoft NTLM authentication package authenticated the client. + + + Indicates a null SID. + + + Indicates a SID present when the user authenticated across a forest with the selective authentication option enabled. If this SID is present, then cannot be present. + + + Indicates a proxy SID. + + + Indicates a SID that matches remote logons. + + + Indicates a SID for restricted code. + + + Indicates a SID present when the Secure Channel (SSL/TLS) authentication package authenticated the client. + + + Indicates a SID for self. + + + Indicates a SID for a service. This SID is added to the process of a token when it logs on as a service. + + + Indicates a SID that matches a terminal server account. + + + Indicates a SID present when the user authenticated from within the forest or across a trust that does not have the selective authentication option enabled. If this SID is present, then cannot be present. + + + Indicates a SID that matches an account read-only controllers group. + + + Indicates a SID that matches the application package authority. + + + Indicates a SID that applies to all app containers. + + + Indicates a SID that matches the built-in DCOM certification services access group. + + + Indicates a SID that allows a user to use cryptographic operations. It is added to the token of users who are a member of the CryptoOperators built-in group. + + + Indicates a SID that matches the distributed COM user group. + + + Indicates a SID that matches an event log readers group. + + + Indicates a SID that matches the Internet built-in user group. + + + Indicates a SID is present in a server that can issue Terminal Server licenses. + + + Indicates a SID that matches a cacheable principals group. + + + Indicates a SID for documents library capability for app containers. + + + Indicates a SID for Windows credentials capability for app containers. + + + Indicates a SID of Internet client and server capability for app containers. + + + Indicates a SID of Internet client capability for app containers. + + + Indicates a SID for music library capability for app containers. + + + Indicates a SID for pictures library capability for app containers. + + + Indicates a SID of private network client and server capability for app containers. + + + Indicates a SID for removable storage capability for app containers. + + + Indicates a SID for shared user certificates capability for app containers. + + + Indicates a SID for videos library capability for app containers. + + + Indicates a SID that matches a console logon group. + + + Indicates a SID that matches a creator and owner rights group. + + + Indicates a SID that matches an enterprise wide read-only controllers group. + + + Indicates a SID that matches a high level of trust label. + + + Indicates a SID that matches the Internet user group. + + + Indicates a SID that matches a local logon group. + + + Indicates a SID that matches an low level of trust label. + + + Indicates a SID that matches an medium level of trust label. + + + Indicates a SID that matches the medium plus integrity label. + + + Indicates a SID that matches a read-only enterprise domain controller. + + + Indicates a SID that matches a non-cacheable principals group. + + + Indicates a SID that matches a system label. + + + Indicates a SID that matches a certificate for the given organization. + + + Indicates a SID that matches an untrusted label. + + + Indicates a SID that matches a write restricted code group. + + + Indicates a SID that matches everyone. + + + Specifies the type of Windows account used. + + + An anonymous account. + + + A Windows guest account. + + + A standard user account. + + + A Windows system account. + + + Specifies common roles to be used with . + + + Account operators manage the user accounts on a computer or domain. + + + Administrators have complete and unrestricted access to the computer or domain. + + + Backup operators can override security restrictions for the sole purpose of backing up or restoring files. + + + Guests are more restricted than users. + + + Power users possess most administrative permissions with some restrictions. Thus, power users can run legacy applications, in addition to certified applications. + + + Print operators can take control of a printer. + + + Replicators support file replication in a domain. + + + System operators manage a particular computer. + + + Users are prevented from making accidental or intentional system-wide changes. Thus, users can run certified applications, but not most legacy applications. + + + Represents a Windows user. + + + Identifies the name of the default issuer. + + + Initializes a new instance of the class for the user represented by the specified Windows account token. + The account token for the user on whose behalf the code is running. + + is 0. + + -or- + + is duplicated and invalid for impersonation. + The caller does not have the correct permissions. + + -or- + + A Win32 error occurred. + + + Initializes a new instance of the class for the user represented by the specified Windows account token and the specified authentication type. + The account token for the user on whose behalf the code is running. + (Informational use only.) The type of authentication used to identify the user. + + is 0. + + -or- + + is duplicated and invalid for impersonation. + The caller does not have the correct permissions. + + -or- + + A Win32 error occurred. + + + Initializes a new instance of the class for the user represented by the specified Windows account token, the specified authentication type, and the specified Windows account type. + The account token for the user on whose behalf the code is running. + (Informational use only.) The type of authentication used to identify the user. + One of the enumeration values. + + is 0. + + -or- + + is duplicated and invalid for impersonation. + The caller does not have the correct permissions. + + -or- + + A Win32 error occurred. + + + Initializes a new instance of the class for the user represented by the specified Windows account token, the specified authentication type, the specified Windows account type, and the specified authentication status. + The account token for the user on whose behalf the code is running. + (Informational use only.) The type of authentication used to identify the user. + One of the enumeration values. + + to indicate that the user is authenticated; otherwise, . + + is 0. + + -or- + + is duplicated and invalid for impersonation. + The caller does not have the correct permissions. + + -or- + + A Win32 error occurred. + + + Initializes a new instance of the class for the user represented by information in a stream. + The object containing the account information for the user. + An object that indicates the stream characteristics. + A cannot be serialized across processes. + The caller does not have the correct permissions. + + -or- + + A Win32 error occurred. + + + Initializes a new instance of the class by using the specified object. + The object from which to construct the new instance of . + + + Initializes a new instance of the class for the user represented by the specified User Principal Name (UPN). + The UPN for the user on whose behalf the code is running. + Windows returned the Windows NT status code STATUS_ACCESS_DENIED. + There is insufficient memory available. + The caller does not have the correct permissions. + + -or- + + The computer is not attached to a Windows 2003 or later domain. + + -or- + + The computer is not running Windows 2003 or later. + + -or- + + The user is not a member of the domain the computer is attached to. + + + Creates a new object that is a copy of the current instance. + A copy of the current instance. + + + Releases all resources used by the . + + + Releases the unmanaged resources used by the and optionally releases the managed resources. + + to release both managed and unmanaged resources; to release only unmanaged resources. + + + Returns a object that you can use as a sentinel value in your code to represent an anonymous user. The property value does not represent the built-in anonymous identity used by the Windows operating system. + An object that represents an anonymous user. + + + Returns a object that represents the current Windows user. + The caller does not have the correct permissions. + An object that represents the current user. + + + Returns a object that represents the Windows identity for either the thread or the process, depending on the value of the parameter. + + to return the only if the thread is currently impersonating; to return the of the thread if it is impersonating or the of the process if the thread is not currently impersonating. + An object that represents a Windows user. + + + Returns a object that represents the current Windows user, using the specified desired token access level. + A bitwise combination of the enumeration values. + An object that represents the current user. + + + Runs the specified action as the impersonated Windows identity. Instead of using an impersonated method call and running your function in , you can use and provide your function directly as a parameter. + The SafeAccessTokenHandle of the impersonated Windows identity. + The System.Action to run. + + + Runs the specified function as the impersonated Windows identity. Instead of using an impersonated method call and running your function in , you can use and provide your function directly as a parameter. + The SafeAccessTokenHandle of the impersonated Windows identity. + The System.Func to run. + The type of object used by and returned by the function. + The result of the function. + + + Runs the specified asynchronous action as the impersonated Windows identity. + The handle of the impersonated Windows identity. + The function to run. + A task that represents the asynchronous operation of the provided . + + + Runs the specified asynchronous action as the impersonated Windows identity. + The handle of the impersonated Windows identity. + The function to run. + The type of the object to return. + A task that represents the asynchronous operation of . + + + Implements the interface and is called back by the deserialization event when deserialization is complete. + The source of the deserialization event. + + + Sets the object with the logical context information needed to recreate an instance of this execution context. + An object containing the information required to serialize the . + An object containing the source and destination of the serialized stream associated with the . + + + Gets this for this instance. + Returns a . + + + Gets the type of authentication used to identify the user. + Windows returned the Windows NT status code STATUS_ACCESS_DENIED. + There is insufficient memory available. + The caller does not have the correct permissions. + + -or- + + The computer is not attached to a Windows 2003 or later domain. + + -or- + + The computer is not running Windows 2003 or later. + + -or- + + The user is not a member of the domain the computer is attached to. + The type of authentication used to identify the user. + + + Gets all claims for the user represented by this Windows identity. + A collection of claims for this object. + + + Gets claims that have the property key. + A collection of claims that have the property key. + + + Gets the groups the current Windows user belongs to. + An object representing the groups the current Windows user belongs to. + + + Gets the impersonation level for the user. + One of the enumeration values that specifies the impersonation level. + + + Gets a value that indicates whether the user account is identified as an anonymous account by the system. + + if the user account is an anonymous account; otherwise, . + + + Gets a value indicating whether the user has been authenticated by Windows. + + if the user was authenticated; otherwise, . + + + Gets a value indicating whether the user account is identified as a account by the system. + + if the user account is a account; otherwise, . + + + Gets a value indicating whether the user account is identified as a account by the system. + + if the user account is a account; otherwise, . + + + Gets the user's Windows logon name. + The Windows logon name of the user on whose behalf the code is being run. + + + Gets the security identifier (SID) for the token owner. + An object for the token owner. + + + Gets the Windows account token for the user. + The handle of the access token associated with the current execution thread. + + + Gets the security identifier (SID) for the user. + An object for the user. + + + Gets claims that have the property key. + A collection of claims that have the property key. + + + Enables code to check the Windows group membership of a Windows user. + + + Initializes a new instance of the class by using the specified object. + The object from which to construct the new instance of . + + is . + + + Determines whether the current principal belongs to the Windows user group with the specified relative identifier (RID). + The RID of the Windows user group in which to check for the principal's membership status. + + if the current principal is a member of the specified Windows user group, that is, in a particular role; otherwise, . + + + Determines whether the current principal belongs to the Windows user group with the specified security identifier (SID). + A that uniquely identifies a Windows user group. + + is . + Windows returned a Win32 error. + + if the current principal is a member of the specified Windows user group; otherwise, . + + + Determines whether the current principal belongs to the Windows user group with the specified . + One of the values. + + is not a valid value. + + if the current principal is a member of the specified Windows user group; otherwise, . + + + Determines whether the current principal belongs to the Windows user group with the specified name. + The name of the Windows user group for which to check membership. + + if the current principal is a member of the specified Windows user group; otherwise, . + + + Gets all Windows device claims from this principal. + A collection of all Windows device claims from this principal. + + + Gets the identity of the current principal. + The object of the current principal. + + + Gets all Windows user claims from this principal. + A collection of all Windows user claims from this principal. + + + \ No newline at end of file diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.Windows.Forms.dll b/SOURCE/Application/Plugins/ModellingWizard/System.Windows.Forms.dll new file mode 100644 index 0000000000000000000000000000000000000000..bd228e5a3b6ff4c5e4ceefe5394229581e1b6c1a GIT binary patch literal 1884864 zcmeF42bfjGmhWqyKBrGNG|;3bNX|JZw2EX=KtYkL0@7p;*J?W)@QoUZ-aSQVy} z^5g#x9w@aA|I$xo{_j8jPdt)S=Uks!t&aRM_d2iEm$~b=Yu`Ormu_#h?H1Q5SIfB0 zo!{z_t3~Tv-FkM;)xLACYA@Hz)#)x#;AeW8mPC?(szs^r(bXSRPtvkL2LoO@I%&~_2#jdL3#ygK!7WjYO0{_AB|Np$ae=kE^hktjj zb?qO@>`$@Wv_JVglqW4g{$aWa^pM>@^m)h@A^x0)iTUW?M=kKE1^$y-fUe`ev*!Cx z%JzR$n1|-Fe^9nR&0pH?|D*Q%OJD!F?EiEu{KfwtG}YfuN?$59?f~-R>W2cM3?aLR z(*A$_6?F=o9{gMSzqE2_cDG$!{g-?nvi(c?e;@eE`26$u{$~ZFHo!TM{&984^WS3= zvi>hr|ERzIl=kl~!$bZ0Z;gR}i~qaxaSb`o(Eie$UtR6G{Kxe_9P4Pi(3ys;bN?Ol z4c8;&=f-gLU)IfkstlFuKN{mt0sj+z`G;+V_{X^jsS;0=dZP5xL;|WK{=05cq{=%`seF?oRmZ$OmA77xZtXj_?M@bB z*QexM!RI%e=1HQL|O6`k07r6!`Nv@7g@|35&CHvm0kx+wYQ z&N5Lcl>awRy?0)r;79r^btHy-i!M;APyte{Pbl?nm=CFAhj?l&$`PX$ARei3b@Lfd zmEqie8fzk-fNHswQcF+qw7S{GQ?JY-R;aC~?%|PVxVn|ns0-F^z;R=@WuQ^NL5asl z>7|x2svqk6>r7AOQPC5WYLeTBc-7%6WxkA3iTZVsQ9auk)$vWEPFuU>Xe;rktW^rN zaH`Vn((fIqdAPdQUuu*>^+U%|tEEtjeiwzd>SxMVqqnCLk5MfXviTG~YK>MawZ=pl zwL$6B-K9*w6<%-Dr=OXY+;qvXoIe>h^S)`*a_Apv=gwJt+^aEaQCHJPbygVVpJr6L zf<|Sv>^ZBp6_!+trd^U-j5?)RjC$^f;yzEIuD>hol0p>$laX^{lSw^O!L&;i^fIM} zt9hMF=}Tew%lKLh8D)%7NsCPh1}`)DzNGVwQL%?Sb#Ok}eT6ASRB7ZUYTRw3YS`4> zR+UR-QV&>;wL}{bJMCq{HAp|xgE;7}WvSk*F-TO<%Glt%{OT-4J=Fw0I8nRz6Q<&*P~as(n#W;c6UaOqmZ} z$CXSfg_?(UX>^X%n9WADS!~o4t0rLVirplPSW!h#DpE1(=vLFy6>uAo*}FMfNJ{nH zRH;$8n!jDC3_Jt3OO{bG$oJuFGz|C0_8lg*2-;Na)@?CNArBgzDb!8a$u)fhQDnrv z1g85Od34~pxQSJhj(eK<5l`mW{fH;(%r>L4qy2zO`*|ezVjgM$JI^WMp@Tht#q?@{rcuuTx`G zf8-|Dd9n4zV*;X3ZWyOFwV_r05Je(av~92#9#WPpOGL$}{n{=@ZLq$BQBujRi!H$r zof@w0BZ`!C#BMVV=IGHGqoUA1;#&nZ5;bX#8TSd8`Gw`QsSRu%PuUVYXYKCW)Vemc zs7)PWQ^(nQtOjetYlaned(6^u>rL(g44eWO8s|$mR*#6CRJQatvW=$ryavAaj5v)63#2u1sTC4Kf zX7x0z9oehA8p2*9^Bb>0ngkabG7N;icclSVFXS~2YftiuR*mKg34kPUobmIF*FrU# z$>aehuVqZ&mD6~wB!bA@Fso7IfLf_`u~&uSCeBKAn8|0D1EtKLX_BLaAsaL~G}z>| zMU!u_Iv1~%A-Q>Kg#2a#0lXGYSu{jPh82vQ}s|_M`yi;U@ z$YDBi7La-9oM@E-YhJPms8i}wkNPW}u4x>|A-2i6Qp&Sboh1UBxNbs{Ku$4v3v+?w zepY?QUUhAYT>u%3ykc=Dl)Nse-`S=cZec_c)%Plkk0Q_MYa)NI9`i+_2cO0&m2C2R z->aNHDsynMkdBd;RY4|Qu|go59_q5H!NfO6@+$6KRPH7gDh#>du7ll;zVl^4ITD%fftoH?b6~UU3%98}LhrI^05mFppU$IU3=_Ycl zcbRQAydyT9ymFe1#~P60ELG*atL$|Ut6+&-&ijeU{*O(Za^6jjQxvNqvPo1GiJ&=N z?`*s(dcU#FC-y3+=wUw!o16A3sOUXln-RJVp9-(&h54z)^4NB+=#2rv-1~{iy`ne8 zPow431tG<~svy*2Nhu`vsEDfGTqd(4r3Y7sSM|PRlBJ5+EQze@9S2dWSxO-k=Zt?a zau2iDU{&u}I9*NO<`A3wWD`z#bB(L^^O--8D3K-xuezfNyetN*O_e&>XA@fwf5da?$PS!ogtg?Z1c?*A+nrFHtg1@JaxRcz12+e zWfPk@AX6f!#a=+$l1+Y)&mv}_ofq^MFMMm3w<&^p@ajjV2m5=QBdDgac1G&&Jz$c0 zh{P!luiTN;K1J+!?(gMia>|lHL=fj2JtGzO5;VzXBMaK;omQJX^7YAg@IA zz9v^3@(z2IdPm~K!Dc9v#`fMcUXxo1#%78pN37ROO?nJ9HVZXbY3J}2L{OetHup7} z1iFdWI^P;^INPMxS8k$O<1JvaNcU+JY!)$jQTKa0kX=!O5qV=kYD#eqb1lNr`Be8f z#Ca|i<^GwT$Cj#OP2MjkUOhl+uua`1LJIkky$;w>MynfoBy{qUy-sX%!m;VXq_VvR zlfCXt`mfTF;nj=DdhCp-JU@jedjpufrfn9&CZ5Ufy6!zd#xj|Cqbi znZ{(hoez_}%}hQWEMCQ7vo#fujrl_2Kz6Xr3R{aknq=1HS*rGUU$D(nwlDU0UottP z+d0a&$NQSeaoZPrJb!A+s{~f3((-$}jH#*R*Jzu&-hNG@3QKuoJ)O+SuvQvhDN!ZyFzdL8k$bDXYoOudeHXV_*3u1%_G8Sgj|)II%=LgLhM?*@~j zUm9|e2x|I)UMFPm{S1O(s`~3PWB=>@#$=I>Oyn+m&D3>I1WA#G^2%rH^|O~c4Mk3I zRq_g`TSQ<}bfL-pmX}$)x(Z2Bo=?cj4#~zg54wbGaxrOO@1CA7ACow{2Jn1^m^AAc z@+!vUhC@m*`NQ!l!{oc}A+M*H1f9IfGf8r6Dl>V-A=Q{{>=cSqgNfg+B|Kj(CR?5I z)M3)oiBq4+04MjxOh)wxMQ*|*HBM2f->D6oGx^@hy%m#4$EzKaU3RtX`8qN=;-Vp2%APdsdzb6yASt~Q^qJ=@ef zB$2TLB7*YdA8f{0A>Vkm8M9n$5>+uGu=$~jkR*`FY*S%H$mT<~nb0+4^AXz&)a%|l zUNPTnwz>4R*u>#^S$H~%TsX5Cy-#Y==CZM=%p_XP-y$Wvp=xTI#>0)x3%*nwr-xm6 zzC;AA`cbUdTusq{ZK756PlYU14SWUI>ur0THt>~TvNNxV+`#uZljz-syh;R-d#x0b zsG4h=WIIDP_myLtl=d#%+*gs~oaiN9N${%4WVGF%Huu$Luglh}6A`q}O*^l4^1aSB z*&UlV*ye_f+{yPQ+YHp#X`<@ndy8!r?7a1gWTr43ZmdL9}e){W1DvRd@P^_gU}<}YdB{nn;Rez z>1mECHCVhld4qkC>8b9!?a9etUlfy)#ZBa4MBw!f&QB;#jo^El{JvO7hF^M){u3KzS|JGh3pXKm;ZH@h$O6 z0(pjQHm?-26r>W{Wau8Uslql#^&EAcvYWU_OE$$gq8cl16kPJKiK z<=L}Jyb{$cZPT=e$!nIcb_VLxQ>lamVDk!l71y~FX~ucA|J39)+t-$DChFZ^9dAAn zwBZx>6k@(_276tpXv#d_w}8Fo=#lwT_!3QyRWZ3Q@hxGSy>^5z@vY)G2kZ!6;`@wA zvB@U#65r?S)zyyG)kM(p?ez5DPB;O$R%4P3*Nxpa3rmbDc zB>6r7$)GailDU^6PiC@J-|>me%t*bQ-`?Mod`B~4P^wq1O9>Th&M*CGm z-RdhEL+w*>kSX&)5NgAkONAt=gT7+y)wYw6B#_c;rW}_rVwB_+ zfLBHK8dpGUE_erhHJMzq^YcO9OB|=L6Q>TBaQg}I!qZ`2eYQzy?|KJ)jhQ5t7MnPA zmD9y3^ti7* z+jP^dL3wpznJox*Wn0^9s< zucqU^5p466y;6?*Ml*TiplOZczH#hzSMSY>tB=A!FrseS`{_qv)7Yjqo>|c7t>ews zB$d4?XNO&5uUBkdv%`J?!F|xN`JHVdY?)_=-DRTmOcJMNhp9}F7?~T>$k@p5%>|+I zjJ9i}`C%zDQ4hXkduIs|*i5y(vm`7P+nm#9JH^$Ku(V9_>stI2SP~Y) ziPMltVY{|j680K{q0qm9QHQbtg%;Ra@as7nHQSe zlf#CvS6e$H?ID5^j<7S*p0HtTlhU5p?+JUC$#=SU%0%u7o6KI%er+P-nMYQt`#n20 z_7g$mnq5qp_lNmGqSY@y2&v=k4~t-%x^_0+9~P69`YWGq)nC0sAQbt-HR6@14uxfA zujai>4+dsWg91*zdqYUCQ5k{RXTrTwyFKL zDRVl1v&U%Fy;|Q-n+MYQTfin-)zEb>?xpj$;y7bt#p`N{bpEkS4&@dSK;%Rwh4nR< z1zsDOq!=nT#bL9XBPZ&;Ll=KK|2{6yQM;A!?C8%(Bv-VWf_DaJ#?Inp z@}GH(=G6hmO)qEiUuCbQb{@;_4`icu9&YQN-Jd!ewa*b-_w4=*Y%|&?C5(#5?$69* zgB~q)yzKtc?A6#lLCEeO$u`HLs3XmI!hmWpgj<|AdLRQ}PPHWUd@S*|Jl=|1==v)fq&okL@$fvi{yU>&T!Q>1SKjyr-GqDX_i@#;T|N*>jNB zEWH|x11W~F6s?NenXMub*wnByTSb3Kwn=5@%!>Xe*ruGFGb{RI*=D`1dqsaaw%KIs zUeRBbZ5r9@qN4wKw)xmz7Zv?4vdx=LoR`_Al@q5P+kEqcw8l17(ccI*(Q349pNjrI zOeXJ;R=ok61orB+T)gni*FTIS@3S*)MgIu4S#IadivCe-)2EksCBbVf+bDekQzo*a ze*)X|n;|xFu*s8?+Hi=Sk*aAjce}BvrOAhSPaUV~YjS(Ov1zQy%XY8VOq1$1aw|K`(d3o=e79Cx2ls;Rt(mck)+ao3|pwrjFMQWH7u2*m2m~-v(Zo zA#FSN_OIqR%Wb`S`?oTwse305&m=$)=QZ1^?`WGC+p6#Q_p(=edvg1Ze?OCMwuGZW zs63y~F|`=0ZR*`Lbsy_L!+Cva^O{HmeKE!6HPQbAlcspvky;~8P4xfBUa#8`{xK1F zjk6>CWB&~%PuqF^WB;!p(Q268U(6wb5>6T{SP0wy}yuZUiCmKCcX8nUI(NzlN+nWW+}W@ zb6&H03P}R_oNe;iRa5oACbp^FH)OK|1W$#0LTUu72X?d9W;-^j2mWB<(^qaGfAzrQ zxv8dK+m^2$D4Uzgd=;2lzBo$wG~47nWcs3dpaGMYW*YJ$5qP!NwfHIgWo?tf*5c(r zBlfy8-FUqmc%8jIt}JyZ`+U8(hY+rOCg1i!JExH6=XPXXo^mYln!8V0$ z8+Hk_WHQn2o4N$rvR5~sJ1T6Tnz}!V6W+)m{uJSn3soE`1=-%P2-ef!2tFb%Gv00oWYn$Y&0UR~*P0CNJkUWDF79yLagsdyapiw&`HU^TfafF3ZJ@kCqCqKP2n z^^%>V5(C?D?MJJYwly{ofz67yOymuLov_KEy6Cgzgs2UHJ#2H|Uhf+MS2)fUJ0m3% zL7YT8BP9o}u}w-{i<^;~xw>%W+=Od*L~ehc(HPR%(#|(u-~4%SxP?AOo4Cuy^Xifp?iy z^NCH3;Nid~Cc9AtDq%J6aNu_)#ckaW2g($t5>~WzKOA@(dpfM}9h(Yl^M+$nm2Enw zk`fk2}Vje2$itiWU1HY$dj6E)p2fuRAjGnHqOaFW%l|=&suX}Q;kVQC2{;IP6oQL zSI^l(;?&8&5Vq-Q>vdj}C_RVAN1hLilf3NJeLirNy}qd^aq#9a5!7N)b`$w>AWu=M z#V>I}>UcjA!94$^ZJ!?lZx^M#aDskkDGO}gW3SqJru`}W$G|u6!lxvANSq|~W8g5` zG{HO|E07-p$CxAx7E&BGev}q>>UBaAL4w67P76E2e+)!2xwSxS;$V}Cz236tb+?GX z>lMt~low7;0t?tCQeWLm)qNtc*9$dt=J^0)Zxh-r+9B6Ng%tJ z6j)>;rw-rCUVCke#SlRWgLdT*6MnE5jqrl{-d)X$2|vtU18iO~;f0EmS6`b~On8yv z)ECE7NM7Vsf^FvPHMz%xzsO{*ZuvNsod~=N>+35zBCjUv=ZIG+kh-wRpxWt`L$;K8 z!|QRJeLfR8Z}?g!4U^0)T2zxkC5=sKB8XGdu1R9G%@BJZj17Mht3EuvwR_>%@MlU; zO$$3V71-vCy@SMtS7Dp!_Ffqq{w&*+UnRLORk7jK+2&MdA$YGl`~|j|{izVV`yKug zlb=^gEdn5~l%SQ>Q$xh2tS>gaehE7JdSR#7JPpzik#T+L(OUteF_WSCZRh7env|G@ z-B#Ys;-wI|RSD|lJBuYU<<*A0{?KbJyqzB2j?44%Me%BiID^@yyC!5af^D8nDRJt6 ze9Yv1Z8OIo8@>r%_{_7;D-L;eEJ`ZquU>dRCb71r^}+|BH?d#7 z;;D^u=|rer_@I)5;WZ|Ahzvz!rJlw7V{9fec@6Kb5Q&4=CMG#BT7)##B-)auniR97 zgC=)yt|eZbG)almFd^MF$!1A^O=2w>t;uam#%mI9BTv+%oXvfjCeK-~S(>CxG`TO( zTQneVRlcGBzhQnPzRyX>!As=X*`^Seq-FOt3cBH92X?FPhZIBZ?n@_SviO>fNeQm>)G?|FpZIBv+hn#|a0$VZy|Hpt|)P?NT{ z4OfHEyzxAq?9aXrq1KTNX3;b06q8m_>w;I96q(^M!IP}u4JJ3zdFm$iMRWWcgTIs< z46o7HX%eXs+!$1)D9(?FL!?#I#$cgRl-JPyLQtw;NhaQa5Gh}Z;#9*sHslq6O{G$F zz5jp`5{Uz;4HB*TV%{KfLv05kuccF^JUx9og7rD~DVII5e(dkS6fLxgTcZPjO0B95$_(%qSv+;yl* zBLtsf3y$YFCA$m3r`UoM*`^jsPCskZcba^JdeKjDkSV2nxiYAJn1ARe05YSLAIV$s z$vgT<0-4Ei&Y)H4r%Tj#!8ss!YIaD-d60Qbp8ZzHW{`zUMxn*%r+KRHf}b)eS5ye) zwSq||tn=xI$o4;Z5jn!-1D#hskSk1RUq(L($m?3EFqCJ>o1r*irKyAsj|d^JNG3JE z3E4bWn%a2|R%rA?dF24X$i)0ZKXK|@us~@);$+1tg?<9+swN*F6_O965Zj#7uRtfdnw&w`P8*w4JK(0OXTQO*Mjw#e69)EG-h(bvFXSp)*)Rv zchm9#c=czSfNl+nJdVjW-Ks>!Gx@y-N;rebI47^AOiDPB*D-0SZ89TrB9~{I zZJ%qwEle8de$Vb*3+`l++OgTkq_ge8Yr$`rn0`MIbuD{(3(kaB2KBsc=Q|()NydNl8OmFnNG`r6DbuWOyv()rtu{ zfigC&nbg9a(U3Mw#yB=@nOtiV@@mI~-d!B!`u zLpm{O>kHX*W>Ry1h`hz*7bmYSOw!nE@J_HRlbcTDZcONO*W})v37u3J(t`<|OBm9V z3GMm~>BWT3u?^|XWC6an$B;fuUXKouzGc!Q==LC+;8T!yf^Rc<<}c)VF>!2~1RnNE zig=ium#iGGp?`_o_AikK{3Y`2zjz(^lNXJ{t2ia59~y^mb4}^lu_5tH=(Ey>jATOZ z(;6~~NzXDNuc=H{IB`B?vav$QW+s!SPld=_CLccFz+9e1Oh!3m*cgQ6s+wX?Ft}$8Zke`_>aJ+tJlHbYe z4<>u?MhE>+@7!T>JSx;;_n8#LGgf00R+jp-oI@g*TyVgoT)N4MILfb-K3z@vMGGw!q zNmx{<-`z#Ac(ZA>aUSJMtAFFSE|G0AWyzz6LDwDF#c>a;eIcN6!NyxNN5B|a=#%a}GncQ=1ZZVnS z%$c{DRJaj}bDzm>XFRJ|x)+>uR)an!xt%tQV3OTwvD8dDIB_yCDdV(ZRwnN|J(!D0 z?B}7rD8Qt;(;9`CxU)?WCd&@oL3njpNmp2|oR2Ytezp1ZS*vVlvJl-I%=U+zWa$Y3PvtOcppRqQOkQaYp7a zCSN(^JtmtSGM33ohfHL$%pud56mv@WF_TOVnZx8>c&MfenSAYx=TDjZ;MlBUlI+;5 zV=~tnQAtdmU&l?zV{8+XDh^3z66cVuOqw`kJClJ9*~z4@L%v{A&>?%6I)2#Z;sv}l)vx>fJQ9O#{6Var?!<%DYJ{qcFd_#=tfjQJH}4EW!P5B(puKS`kt_?uVptZQq4< zs*YAQ#k>Df0?(@BHZ@8!x3_2)G=Y0-L1(=E$ZDEZIdT098;Wn@6?Fmi5LFlVKT)*1 zBIQONcga&zINoKPJ&QVwwWX-tSdEFIQv^{jRyL{$#)~leZXr=L>xxQ`aV3g&#-d_y z;w@^6&4WH0A&mCsqUgKiL@ma%BT=+I5j74yEsCyMQMJ&6qK=+2j8>Pz=o~;4y>lt* z*cf9+-@r`tstrSF^`C%^FL8nOB*(Ppi!mq?vIXkRXhPKrdOv1Or?7-3s*&lQyg zV@On$wkEZujnWJ|KuH~%+oicXZO2oX(@O={`I=X4MaGvx%a&;Y8ibXVeVM9*#1TeaDPdO4MVmjVjQ>s4wG; z+S|aWG#!k(h#6UYhiCU`mD}3UbtI|b*^FJk=0>f;lP5_n{heXst=-I)hJ{Zss!s+J zFU*$tHb$&Oi8*G}U7MO^oMAm088y_FAl#q|9S$G&Yb#zkGmo>J6z zTDcydW3Jo49z}3niuww^q6Vfks`4zO-oVo%No|HwiK2W(wc8}AZXTB~A~tg##c?MQ z^}JODzsDPV|Cf4fV-NbSa#6Q`R9cY-F*lE|aV76!kE9$vR&MGWxa;oa)GAuJsYQ2r zYCos$n`jh$&p9!_I)>+PhgcKNvihgUK*hK_N(*D#BU8h1yOn=g%s z(`-j0Ruqj5Q8ac%t(>T|T7~lyVs4a;=(qD6B?3`I9j=E@TQXa6(6G#J7#7>#uy{PV z6}ut0x_rN%ciuwCsmMwPi{)cfZ=ow_WSQS{yH z;z6|(MY)l3BNO|DBkycy)D_fM*w2^`L}kR4BI+@%+$eh+D0PdYPz#AFhP9L^>OoNx z>KjF+BIZV+{p~%DLf^6=ssrjFD$c4gD}=eel!p)Ja}DD!qs2vS945-O`vxTqvK^IK z6wUmkTsvx)D7O0!_d!wf&lvWzRr{Cd*!rHtad8hFjIus`5d}qh9>eN5#V}AAQqjelA~| zUyXYEOMI&kvj

+(zKv*D$>j|Ct^E11AV?Z3At8KX%ff0z?=+ON@YjLLURgo@p_eu%&8C_{aw&XR*dyDJ3>ogv#k5I-a%WDx~2x{MVVQAv;T`TQlbM-U(on6{W=@W zwGonoWTUwbvgDUw;5uFB&F1(cV?*;qKohnWEEporPOG%(Q#T9g+_Rj%xH-zWr95DAt@%vy8n0uwDch7`1MXr5H zLfdDnXXTIPe#lXhIxfY%nFk=nW~jM%G3G%?6%z67#TfGtM69Nsp0*ro{s37{l3B`O z$bosmz%JS_Y!bJC1aTMqYv zo-$)2M7*({GUFoTSL!1=Z61k`LbT;G=Ftc#LGr74EJ7-ioHLIr2~DDLBJqU%)BFjt zkVHIF{xnZWi3<(D3J{){xvEA=G0V4j2&AQ8DPn5Q88&FG8fX$XHa`l5LTa%T^< z0q9CxGJk>mLo!avuMqx5^JVil2!Esbig^}NERTAkT{X`^YD2D>ze|Y;ZN!;gH_s~x z--p-DKcvJ3lAfXUr3{J=HUCs;!e4g2VP1fArY(zl?524U+u@qzmU#)nUw^)BUY6qD z&v(o#QvAM@JLc605x?>s^IC+6_2TZD*Oi1g0_UE21HutF_sp9Rj`q24-h!MNuA+VJ zo3|kx?eoCA1L0_&2j*QVaUt%mHkrr1I3-wLOC+0KAWyn+WZ^(?M z>fU%}K8LJ={B6E~?9ZmsJU9P=oP)eDUqTkqPg8_S%0K2S$W{_D4)Txr8luyC!A)v) zzck-K@{-(_@-O7>eKnr)%6toXLn5~G%6td8T|kw%*XDc3KO~}jy*58Ub}bR{I246z z1}e~DQ41}OWRR2~c#J-tl^nuj^zp0|5FVqCZ>5Cr7=3&z6@XY zqO8o2W;Ab9d|foLl_f$%nk1G6Nk#Xn7#B`v=@1^_O>P+w9^p-CnNs}vFr{Tli3xs2 zZ)BqOOJ&)R15}!Xq_!N$Gb%em(pWBp=Y*!UJV>Q>Dor};Q^*`TcabZ-l~qX~?+LY9 zW(MmsNF_){E1ML*y^+bvF2%2DGg&#LsG3&PqM59m5#rF({1Ype+D?f3tg=|SA>3z` z#mWQW`cSj-LbyKEtb7oz4|VHv2-k-Q^P7Ch2o73RZb1-3kdg68CF5aqqH>N zlS;Q~6@t7cnIz>)$WI@s6-O&suZ|ZNhy9`lV_EJa9@*Wm4@(Gz^7Ij2#*DPYL%4|9pY7^ zvs&dKylV7kR(X{xDlxt9{7$7Qn^ghZ;dL0YSrsAN+mp?zgzcQ9_H$t>x!JACkPDC; z*4N0DU<}O)qVko~ssc$yB3fTLt*XfN^CgP$q-&VVss_1C(oITrNbTvWEt=b^0qH^_ z+M>Cwnvli#mGfA&Ae-kKo3E>rVi(0K9yn=2~t2N~1LF&7p@?Okp0|^|W z`PNh?6tmhwcs!-J)egerDaEb!Qldj*oN)}5xDr+eh!|%SWw3>GJNbzg_3RYj0E6B0>6|H^{jyJAk^@s5Ldu3|? zgx~SMwgy6YRe>tjAjs>Z!N35ERs*mGL-=bK)vO^(0%8PP9AR~9D1=+x)vaMtV#70b zYgogPra~3!8>2E<)B09Pke?~Ft?wZGOsQjyfE=XjoP?g0b*+(*xpY;1Zv545iWS=kzS-WG#bCB6%ZaIix(@gW`BPTPq+gd5FWefVQrKW7vgc5 z9@ZuZkIVG1HbZ!>Sx;*VgvVuiT3e;~bIp2L+aNsGthcotGOCffH~LsRAoEGYz0t?o z3DK#YIh?LqUuzd68>FAL8`AzNtrkFO`dfP-y&(gvy%26o47Bz^xGgcr+Aqa#w+yxp zK)Bs9*gA+@{B@Ec)*%Rgon)x>1BAzthFOOpJeD-v`VsQrFKU(3J@%~?19=Pi&WeTb zSkee94#ML^BdjA39$gw?9fk1d(g^DqgvYH$TE`(gZZ*>S3386!Wzy2|L|Z2ycOj#! zpCKHNG}<}|;drDm)+xy9mg+YhYn_I0dt&oZf}gYeuZ#*V}kV?gxebv zt+NnrZ%nezLAZ@H+4>#AZKNsIc?i!soNE06;aP`Mtv?~9FRQ2UH0uJS8f3b45t6O3 zDwQ*=OOOJPnbu_~u^}E6nq^%C*&H0M~-G&*CG9qt6s<1 z)(uEB$r+tiT5KclIo4`ty_?mB+I4ThE(`U9rGOP4x}Muu60+6-)5U<-GgwO zZJu=>x%g|j^Q{LE{#xz=>mj7U9d#!xv>rit+-jlq7_y0azC{hW$odQN17xxF1TwLN zO0&dz3Rw(UYCVH+wAeE1ZwN<=Ew`Rai3@QHZH4s$!Y#BF)<05WqM`%p$+*&biS68t zr{2+4TCX54NJJgA(s~WyS)!|~HxQmBy2|<&!m~tITW=veOLUF(4#MrawbpwGx9iqf zA0XU5TyF&`2Iwz3#O=ckRuICmJsYif5RUEHXvLS}$M$Tp5iyP`z_V@-~lVG6n~`epp_2WX+`5HDL)Ma4q53T97TE9$^hX} z#TY9ighyeHS(&6n2YRMZb1RNppF~I^D$B>M%n`DTuHgwQON5BEVoq6FgjA$lzgT*N zY@%GhT1JG>i$LJ4WlD(&kKO!kSyKF#=XuLkx#Vbt_?6FFj*^f^QC_=A{-8Gf{~sA) zQ6nPQ6nQqNG^qiM@Ft$?*HuTy5;@PzHa|Ur}`Y53Q^bLfvR2pGAo12Y6&ERX~H8lZ>&5J9;ta_|62J~uE0U+ z(|bvKe`^(h@Tlus>k9~%i+5H*2#>nHw+cb{jqHQyO@;d&|~W77ss5~E)MyZSP(SA;x0 zpkkI%+m#?C5GRw`t_-OUNn?L4B`zvH^~Q_0wzPH?q}hl#nY4CQl_s>PnR@1?wW~?- z@2IqPbtOUm-P77NkcN8((%LnpLtj7{i{H|d)lM)x|GKXeGQ}3K9J>qTFQjqou2TGO6S#Ia zDgFv+S?%r+zBfLzdq6mXBAeY4!Z8Ec?Osy+-y*x+TZ+13iRrhjY!$mw#h!~aJStSh zo`*C%+r5fCAHuWUtJ(`7{GGmP_Cg5v&Q-G)LAaNuy1f{}y)@PBB~oIdI69(+y;MqU z6vy}0u$LhX_aoJ?mqU1NR}Fgwq`@*Zx>UnniS3M`8e2TAYS^o!#6|H4R1JGIgh!xi z*lVOjhj;|4ro9%zBT%*Mbr6masBN!@aD+e|djo_=sp{GrAv{V|*WLt)ZAxRK^xUau zZ-)E=sc&zAydSF4G_bcqk_=PQ(B1|)G*U?;dpqQ3$T#*5NWzoq?rm)EgrtTvv3E)F zXJt0EcSCqYtf{>Rxp?KJX7*kPue{XU-iKT~{?)?X58?5z7WM(;;vTA&_CW~uP_?oT zAs0uCx3+(PaBo;^`!I5GFIF4-M+o;~wY6g){8h(xb}XdjRTWpz&W@9EEh_8xs$8_U zk01??h_$zmLU=^1y?sndTvUQFs=Rlwk3*7?i1OaS{z*!7h)3T#+9x19`qt6@8Nzdp zI@u>7Jm;vBeG0;Jjyl_?Aw1`(vwa4_qk&!QUm!dh*v0-8;x$v{qO1KI#6~Nwt9=%7 zm)c08>~yuyL3kCcuJ-Q`UInY0eI8PYp4}qqzPtSgqz;LQGw*Ky30Y|e1BIxb?_pnn z>?A2ByY_Bt8&rLz5!VW>2KeJWR6zb8DQUnWQPp2Z$p}#q9+3#&mj8_q!VPYeHT)!s5<5$ z_B}`?$WZ$}glCNnvmZcs*4QxnA*AY{V4y5rvElY3NPUvZQXWINzwTT6FUb6o>P)}2 zpFlQ1zO$b~c>drB`x%7i5013|mNGIV=B$amN88UK;_ISf@6q-P8*l$mKi;2AWc?G4>mz;rEL%_PKpGT#0mB`%8Ru}-i9mFU(F(E1yf)jZY-c2G)mh)0Si+VLPf zQasU)58=74lk5Z#p6fcD*omaXM&+dO9Z}+@*dHMck1tQLLl7Qco?=Hy zi4O66y{Y!c5T36$)lQ6DJia{5P6FZa%7P zu5y(~)+`uEKz+vxZ9_>Q|5H^`7TczjxFE-QF19VC$+1)QUM{ii2obTwOKe9;OP zEVW$-&lFf@ds1S8yiV70`%?(N9j~ynLO42fh5Z?}!~K~n?QBx61+!4=Vm+P3Dmy#m z6163SthRGN9BMg;_vJNqPRRA9D$QCumz0>`B5E6pH0$i#kYd>KdOHu~J+{2T&I>7v zEpN2*LE_U@6?@-ge-3$oc>c|Hen^TZ)Q?MPw%7$AUr-HjjAX0*1!T>0bv)bbf)Jj| zu-z^M$yi#Y*B+GQ7kJf&xfklprI5S}Tp$1V!lOwS9EX0Kfg z!o67g?BWpa``T}pfNeyE24(zmMBr zONkCd(W___)pbAFRiwn0+q?+#)+XY4uj;@oa?NfNA!07o4ZCfGtfVxz z?RJpb;{yRP!}^ZhK0-E7n!9!fh*;xyJIOt}qm;Pt%F_4kPLP50O_S}^R=;m|My_l< zX;pH{^}z0;(uA5~Ew4v*S1H$mooEzB{9cdjZc4&yO+T``BMq-m{mAYC=}B{H#53iw z-4nuVU;kzIg78}0Pwd_hUf24m-3P*JaX+*BDhaQ}{oL*c;kCG5*!`tM2gJ(Bv2vJwFg6ZE$+AW5agXs1 zw-Nh#NNGNHzKf98BuSkS*n5I8>a8uMGZK<-mU{b3`JdxqQO6Tio8pbbdl#cQDM`|X zg^wqr6CJU4ozi4-Mqyt(qbIX78p1PrGCN}+4N9n%L+1Y+4~sgU&uGh9c<pB4b7umCTa2GO6CoQBQ<~qI1lf<6()`Y3$WW>? zk5V6X0cQ$iJjqEZQz5O2*Gh1yrJWr~W^L>PfUeHp`oCp#9 z0HvL|5h6zD$~f~PWDM=AoHIW{rjk^27DUJbk}A$ZDgLaen$9AXCe-1LdZVxDEQa(Z z5xti+oh6WYQ&bFaEoUiY6N!icuH`I)^czL<^}e8Iyt5oKhUAr$6_CdiCAfid)p1rr z-jayz)NxipPPb9VQ`cDyxk@6Ar>?UG(gVj+&shr@h2yE`tdkNGUMsJ@vmU~2tp?5p z2)CmeIvXL}R&V5Nf^e&;k+WHfKR)=4vqg%(@>^qPs}%p4+t}GAWoC)CR4UifZ_(J< zu0+my-a^vE*`cI@nDx9%%1)#avz~Rj6Ph}^Ah#gRoZS#H>-iw%YVPd8cEqgbSSfpv z=0pR!hIE}l3{q%qBJCh6e(2)Q|t+7XniqZ1P$mq|K1v5*~<<~B)JCoV!nu5Qke z2-!h>L_M6NQv7kNp3bod5#_6=b38&s`Re8T6d|H~^>$7~h!`vB>--!cVyt9KOsCXa+Grc!gC%+I~O55=W(=i z3Bq$8$2gZEJm+z&a|Ob49>+OXAw1`CymJl0{XY|&>k#h$nc&=jTsjjBTr3_4OmuES z9+RAvatre2iW+a42yd3-PKQOP%)+V~zS^+EV9(6h9tdsS}_# zOnScz&wgF%1f}>Ryvv+;5FWiQt#A@bi3@SW!U`vm6u$>=g(G_9 zMD$wsvFh2h!U;+7k8q_E1>uN=mCnaf{9|6}B$g5zzJ{xuB*?|T#cC(16#uHOags^# zzZA2^NiM~&{nj`sq{M}I-KRB9N(is}w8lxLa)o%^r?pOM2(SCJ)=2~5b)VKbX(7Ds z(>f;|ghw9NJLw@j^0?l~0O7SLH#iv~Jo32F$pqn%&`r)K5FQELX*{c4Pl`WZ?~wC3 z((owWAtyhCNAV6h1t2_%_k$yPi^P@ZQM|)WLC6|h`5&D^ka$zomH*NC5@L{uEB~WY z81e&h#W+PE#gHq;`3lk)xni86km<-3>lA|=#jhOe6o=fxuN>=?fbjZSaZX7o{56koL+a;8ZV9^rLpY}5XQu{) zYl)LiO$gT#C!JbS{I3k0a%w|(MZ42Z9SE1EGfrIym!>mLJqVYkU!3|7E=|8W4W#(1 zw*KZcgm9$6Z%!lR;%^U~b-sb{e2{ZaV@QhhYK-G|rwJq@P z9Kxfee>yE7JX(6eX(=TxRQgxy|Db30MW+>nzXx>DX$|4;3SDyAK=`{tmz=gzqC-4l zc-d(O;Ss~jPJ0N)hhK3zKsY}9iqjFo@!?mUP7sa{zvgs?@TyAJoh}ewRq49Z6~fW- zH=J&e#U<2Lz3Fs^@M=-FoE{KfE$Wuj6T&M&-FA9GcqORYPHzaWD0Ro_0}=05VwCEx z(^pDNIIjDi(@#n8EBZ}EtLeVeA89yR?13`?Y2MOyM4E@rKq>yS`;jw9ivOg3>3248C>dLAVUQb>>6348C&~K)4LPcNRjp41RDHLAVTla27+j3LSsr0^N@KeRu`fPC*FE$<$K$#`{Lk^Y?qNs?w5YxR z93hK3!iKc3tl{GkN7#ZSTUhuAbGbjNEz2Y9Mrm@pF;Z?var9#zHx_#rExo>!CXX8@ zB_1TUqxq;&pji>@6Gt!{Y6S_P?R0<4eR{wuaK5S)mY>g z?r%~?$hqw!X**xIXOTvfFOjQ|drnGBkjqzL_jf6Nq+AjAyprHm8YkLhP%pashZO$~ z|H}PSivO(q%DoUFlW6Z>xfhj$meQ|0lccD739@6U>f0&mUWObY5qEe|_llI5z~uha z|3SHmxmO{7_oG$%NQ%4HAj|qHDdAp+te8b>*HD_0?hQy^Nnm@`zr6gfL!ULwp_ve2Xc^R$Lyjs72Q{mNp$~+ z^Qz<~pr@Fak9IRbyud+{%5Fl)@u$>(Lh`kn2oj>+3?WtAk08B!(`Xk-RW}6rnD+h~ zNi{c0ivN36cR!Zm|6bMI#1V3hu6%VjiIULV7W5Th+D;8OsT6W?fHQkg_{I}6sZYn8$-%c$zwUp>k6YBjfLf561n+DR4M2xZ4a??VhQ>!@< zwcT`(sU#vzZ8trn3)0kaGe8C)O&vF*l(?w*@l^j|T{jbCD~Y%d>$;yHSNCFSU-jI~ zyd4s;uX=74h**PN%%iODY7nsod%}uBbSeIGxq)jy__^G`HIeJYQFZPOT?=xKMC_}f zYfFg<&ab9gu#H?tNqAkOZ(J9`YfvYUSpH@LN)AHy4DX7TdVFAsn^X*3AQHMrSJ8{O#Plkin4l zZaxUNWIDK?L%1c=(ajIx*{_}40+3oQ)RsHDUqD)2Q}eRBxCJ3SAzj@TXdcxG*Qk7TcZ)*SL3+5wAT_A=yGv<$ zy2T+~A-&uZkQ}|~J2sT2w_6fY4bsOg1=&jS52fkrmWEt{^mEHV+EC3V_SN4l3mFC( z;Fg12r<(R1r5Wg!hrELfaw|X@K?b`OAwwWT+)9u&RIiHd40S6*eufNlzlJ<6P7!x? zX{5%j0(l4d)~yPuOLd*t&UbD#NLR=Rw>sp~7@E&V+ZpNBfINjnyEP#TsiqZaM!B^h zTOp&}+K|0eKc}KJW86BBlaR4)T}U&k)x|X&=hlPtfsA+SL$c9RMjZ15w*jOKWTM*; zvIJ)_$!!EV2$}4D1L==kQ{2X!3o_Mh0_jOtOdQWNw<%;AWV+i7k{?%ohT9xc8#2>v z0U1co(~NZPv)q=DNs!rYD=9Mr8R)7Sl;(T4wMr96kV-xE=D2Mj>+m$6>$ZiI$J2A3 z+YXYF?iTTUpYOJZEXA{Of!hI+p|?u2(CrABLB}j|Epj_Sw&O{?*zF97#g>=2T_9=b zctozHZdXVqJYko)-5?k76khIjhXfOe4BoF<9N8LqALch#c^S@5G ziy_=|d%|4;;rF-`?otRxADwWQK?WsP@lhxK^VY_q-rB@0;*;TbH1XC}f#h^p_^s_X zce&bfxX=8oy8`>-`FdyFl@Ok|KVVmr+!gJOxx;r2|XYHc96S6CZYNcFqcR@}=F1x#>_$v!tarZ!YF4YxxFLLpW zr>pKh2+w%B>h4D_j-9*a9)R$Sr)%y(ZThD;Tcc2+&Bo&c)H~tk>ajY6tv?qBT7Oo}Uxfdh$6-8(I-n|qd z;%)T3dpSZxM9>HKN`#1rpn!KZLPSJRJnveBh=`zs-t`C(5kXPj4JF|fFp_vTAzULR z@oqs*FHkjYQtvh-V{>&il6rR_OIoqqg^2IIi8q&|-aUx;?wgQg-hIff=Sq@$4S^U&NPkp0P&&U*{th?n%#}OjRh3O@Z5K%5HFG+-ma^ZMMBSe&o zPrYPHLOf?byO$iobM~`)DInsDpM9w;=kQWO#1}sYOGyQ(vm_W8L6Xx;4QWj>R!SNv z{xdh1mlkOXP$ZbB>vDPNASFmd4@@pEy%hgW$n9m25)7HmP!f^ZAAkY_`< zE&8SBK)5Yh*mEJ=7A@j=5N>CF<$Vg_R%KBys}%og6!Sil;`jR%^Rh*VxTA`B*&{@( zYhB#SA;oWxmGE*xxII?F%LU=~SV=E8gxg~!y*yI<-@TNVSBl>rE9K>r5*<26tNM4( zK_eF4=W09Q__0!6ew8cyCGOH*0m%65sw|iBzJTy|x6673A^hF#a$X?_e`UM8_a%hC zsa?SQdz^R2q}4$`tYj@sRXG*GEYinNIh5Os_A_VX-^`~w5C@D zVy&dN(L&Uh>s5v1AlXRuSS_y_guew)+p7-YZvoWyYCyKvR#(1`R}*rWMC_}MR|`^n zjY?D3s|~3_BGT0L>Oex62UO3i3rR~N($w?nLHJt$^}YHK{uV%euK|R=1<=522;px5 zH1HZh_*(!Cy>B4=Er5nzV@T14>X;jOO&~Q%#PKxpnnIR6QqSCPyk?O3>FDb}G}G%F zuQ_B3Nl_^+AUUb8Qv9Zky_S%|Bx1{ry;hLKRQg5Bp^4WTVnUjFZ6Hxp;zXKeUR#I( zY3{XyEHA3kwD8(P4nSIZ9U#-Oc?qv1p^1li0$-;{6UhpBz?!o8vwbpnnuVSim~?wLV|Sn z(qRX>d4nM5)5Mc$x_N^kk4R!@%iX;pkdB8`d!vUp6jJb#I-VZhFbIFUp@%md!ryM_ z<$VkJ6X)K``%a4gl1~P|4v?}{}V<8`qrmr^+l7iNn7HRr=<00HD($AX!;dr)w-b5)e70c7u z@e!(j`g@a*h9e~Vdy^p?A=%%X0(q5Jm8JpSR7fIPrBIy30B;)P5{_`7Hy!dAXED&5 z0Xa!)JBv~|$eXF8!bK9Xok89#r1_lAOZ@JGz1fh`IMc!2_mFvrmLKBHfvgo#_q3fM z-dsp6>NOJk8tTo1v?UQ~hI;cMyz;;>Zvli?9vJ2=gv`tm42ZAc4EGj6R*;Bq)(rO+ zLq49XBK*JgmOwrs5$%m{y`_-OraGSQyk(FfB;t6!^Oi%bKh@nb!dn5!Ln6|Q@K!=L z&=s3P?aYzhD#%Vqw6_{EzIiY(o6?N()<9-LMtf_e+zuK&X-!AEK4ZLfQvC7vvEF)> zD-cI@W^`fd=l3>1+M{%j_clV#P#Wd&ql1%otM93zRY2MZd z*+VkZ+ZG|QBy+s&5ps%Tfwu#)ZYa%;rQ2nxw^Pc9z>a~cyf5>1Nr?&6r`tf3%4Obe zDgJj)mU(;BcEauFW!_$uCd8|9E%Ww4IO=Sfw_oK7fA4s?cL2gsXDhse$i*?_E4@Py zZdI=Ien2jcAz$SkhHwn|YVSwn;+E$cF9yOb&oy2wa&Zj#S}zX5G34vKBU1bo&ewZK zm4wz0qglvQC#?65L3kd}dha-7SQB+;uJ?X|Od}C@=6dgh6u)&E7A_#WCAkyk8+4v%S^(4N?u~waq&V zX+-jf&UBl14#I13Z})zO@LJqEyz`Kw1L~D68i8%Lz-d!nv&*UNR9)x=)4|(^Ii+d)2 z@E$<8XY#Q35K@00eK(Iv_mAEqNE?!?QXWHA;OP+K{RP>Dr$dbQ1j2CzvEEY%#}&kS z&mg=yT%7kegja_<;ys7(3Ta2Z7Z6?{?U?ruB-cM`#iZk&xR1s4DGK??dj&c7Or<&D zy@ou1{OrAf@aX?Z?_UUy{-5&RLd0s}qU@aZ-a*7_;X=-M?;*VQ(J$Ty2(Nwgs~4d4 zGQ<&X&#Uf@-@M@ev3H+gS`=Ns==+`_3{i5<$aHQ%3>X0g0YODU#e@ndq6i9#NKgjFkR(}Aksu&J5F90Ekenn)&JyLUs`{_4cKUVuJnwnV+1K9J>zCX4v1)a9b#-@j zb%LZrHl-#>Ihf%4AvdQcOId30JF7RRW zlp!e}wxIoCae7iTwSW@i>?u00vV;_bOoJRwEd*JUpZ2}f!jGgDhAe;_Pb~r&06CRf z6fzNVHnkX}6XZf_aY!@BrPLCT((@9=Ihxkh)RK@~5W_45>AaT4m7k!u2b-lKgCSYW zGLYtw6tgU(E+o5IPKvIvoMw3`dQ2v#d1FNO(z?iLR)|P$ntCoXH6n#cZZOS=lp@Jz zT2jgCC#c3zHU|0ydA>VtxB19K=`^Ufn_5d5vo=J$`AyV(8M6-L8ZwtL>q5qc@&KeE z-sV@vtOt1oZ}Tf-)`v8scaP8jxKY-85YmA}wD7X#Ly%F3DQ7+mnTD8hW&_A4m{xi7 z5y)grtGxLrgwI@VG#f(r%;iS25rp4>QNer+!pG$b=Hn2)LYHbj0pTljsb*scKbvEk zPeSd-te6~HO)65{7#-)X4^=fH>gx? zvz?TK*|Ose-gV43QEJj<^##&8=39^^t<*lDj@cg4avjUt$iwd}s$+JLlAidkFpc!k zwCb4eM5F^rU9)3Ex{}m0J4K{7$wOx6h5N0Y>t8O2*VI_EQCiGhM1pAq3?*% zQi?N$Pt9=<9$^@2jz=jTVHjpkfba;zFmobGU8P@mA+tujY7;^@sAc>ftG3HDNU-21h&Vuk2pRwk5kgs;C{n+Q`Y{&u< zk>_)B4upGX!nfu|$QLA{C46gcf^e^Ly15y`y~^q476|t$XPCc2xK}yD+zM&h zQ=LuBG`B(8k%+z4OmjPA09|<$YiE|Z12T$4%+D-yC#3yS74x0B3(}WF#C&J&hAg1d zXOU;Nxd*a_M8wQC_d;4>T64^OkasbyIp%%{e+PW7`5T1413uS004YxIR-H_3<9qWU z@ zAIuYwBDq%=3^ckaY6`Wb;gw=V$W|$nTI}%!`nk)W;TimYJ6zk3*K5mmv+Qw=Cvog?R%!jNt|Ab`kMbF_;%o_7Lq%dTyX*{g*G}%h;BfOVJvCIVI zRmgfX337K@!l*`hHkiqf29S+rCdk#T^nPrL*<@yhVt!6d|kD+ZdvqK)fKx2B8XSio zzddFiCE=Iu_nLVj&*IEwubEGZ9-Z53=7;dJ$$QNLD0SOxb)K@%EC}H3~@j(vsd)^(@64G>b*#MUq2iaVbj;9vl4KETJS}QcHM^ zVvd-i4I2J0Jtg z(|ZpnCM%7f{`Jh4MfI_#Q%p9*s59U1Npgh3ee4^oJ0nvUN5(wXT@m?(O69fg&M-gu zt$Q-ePyX2au&DW2Pk9Q4Qx|>yZ6t+5;rS_URf|mhFvXOxs$*K>-7IHFN?A1^JPuIG zx>w55l;4)C-bE?vJ}K$O#k};rV@HE{JwvQ{m~)6~a)m0~Jb_e;^|JE>Of45d=7 zIvHXdt8PRt(i}S014>ew(uj=c6$Dm2$ZI5`R}fhBAsg}hX+`Tnh|yP#XI8Wxg7jUf zMuaL_4?`w@Mely5%oSrb&!TER@gyCM!g>}ppN*tSC|vWmSq)TXIo?v3Vyaq?U|Ma_ zx4GSV6jG>@s^{CShL8tWt0leNY6Q8^kz*c%Os8?tQk41j*gUhSdA^Zi?hNNp%(F*w zcPKp1HLS-~=I}c8z19;_^n2CrwHibCO)U3XPpVSkTb1s!o`Ue3Snji)hVYwMYFf`g z_)RP|t!Jg^H?h>Rnn3uPcrEKWl;StB+;2S(;cMcxtrt*=?^LN{HHGk5Z5^u_gwJa0 zTFoJRR$JG4QHnmReZYDN!e_PhtQIK6XSMaMmmz#sTioqAoQtqTDCB;_Iz-kStPa?L0238v>=_z~#;SuX~2wy>X#Cik5 zR}dbx+CumW!lPC@Df;ZVq4lPc@a(vu^_G;hl%m_|$*OvEx1rS@d2-ORz+w&?T5m)6 zxJZZfTnF@Kz>JH)W-8^mefbjQjp0PfF zG+Cpr%sy+SL0UnYSUn;AapwD+)eFLRQ9ft&hVWgK&slw>=(CdNt-cUGD|z1Phf?B6 z9C07x3)Y7a@g$D8kMRZTBghRT6RXmDL#+Og(j-%*43N?zWi|C}#M)_Q4TNkb5o@QJ z+>=ln$ULixI+{1PK9(^{jp--UmC)waASH=@chcQJwC8%s`UElDAA8vv4B`G*OKS*( z?@oWk`V@H{p;5Jhsq{`=YbYdGmN53vJilfQgFHriS~0CQ)^NxMS_C0)SR)`mJ))$Y z^_i0J$%VJ9kq~}zp}jQUePn9UZzNM)h{?C3!y-K3=3*lOod+y||v%WGQ+d-qV@_;eB{d>kG^e@56gp zUqW~v-rJfA`Q&{Xb0}jNeXOq_{8qp|*4I+fQ_g%x<7YS0*s1jmBzZQCS4o+MQomJH z+j2kaTgX+&ht_lm?|VP8W?sh)Bb`=^lD( zrIN;1hN@*BX{|z@TxC^_jkH!n%94ov*hp&)r1tYFW|XxS@*IhX8D*`5YRmvDRkDJ?IUNwYEUooS^&pX}QK)ze2X= zNEo-!zHY3w6>^N^w_-xJL0+W&#zm^l&#mo{_9SAg@^fnkT033=cfmR*qV z>AHCX+5?QUc0<0xJEF%~dmxp+P)jk++6$@iG|N6na}u%a+%&{9mcjz~$*mK*gm**c1t z)>MbjQ$0_%jzQX!6u(EvambgY=)MceGsQZg#Q5=~TGA=jNk}cM!70`$$jB*bRAh>E z8j^H~rZvSn8xgU-zOc?kq$y4POY3|@DkRYzlGcTYyh1VGSbs#MEy=gm z#fWqunPFXuNOzLi)@6uuL2WzptSeH|jlG!XdDd0L2%7_S!88{RDFr=Bc^3rY-NW$1o_d*0coD9@+`4( zLb^bfTDc$-F!i6T+>k|(bn6DlGlf;2pRGKQ*C4-Gc_D8#qrD@|&oV0?q&sA}l^>G4 zkM;)?v%)F>$p=|!6@>V7AN5AMk7$)u2y!Q6wN)6>p$=^UlxK}q1kw+()+!2lpZZav zp4VB$AVVSRt>RMBQ~11KgH=L`z8idlRZ>ZKyx3@!LQJnQ3As<$XqAS%O(NRQCaVnO z*mP>|G>4n4vXGINRg2nWm4i$UrM!|vC8~LG)Z1j;2suRSUC3su0;C14{A!tyUC6W5vLM}PeTkTDmJRuY*3Nv&v)ytaH`2OTLbAhhA@!-|bJDSUr{zJ8 zQ9UoGm|d0+`Ic%`WZrEBN{k;0QY#?YV^x%rma?*o+OO`lDsdjv&t9uCgll!LbrXbZ zb)QuQ!gaXMx*5WCxX-#pN}93lZWDVEj1O2IuEL4|J}L^B6>QaHjY?#LoUmhx~{ zbszp8)K4 zJqB@xB#e2*X|&mT9Kvs9zhXThB`y5+$5pE_gx?Ty)p`=8_?x8HtfwH{tGs4C4dHv$ z{scvjDT`=+#PRF8)daGhMD$y(ThBpwB*(Cyhm@ovo7np$>=z*Ky{GP) zPO_UqdP9=!W{@5;@Yl?5w0l7KYvvW~4r$O>VOuHxK=t+8u2JIm& zyBFjt#I}1wHn*T_4iw|qeISP+uH6^H*EBu5AB3-I`u2wq{swVie+1!g5LdMOL--rS zmFxi!{swVndmx0Lo4CpT7{bp@RIvv^__>>#?N1>5+|4caUNINoj#gYa7%@34nM_$`ii+9M##>043Ns1EP4KZ9(7+-;A9@YlNUu}4Ap zYu(lC(GVWJtZt8i@aSa?dn|-UFYmQKhw$j-efBsAk6zZa$3uAZvX(so(qxSqy}aL^ z2x$eWZBK&m*ShQ2lOg=I?z;9A$Vx+f(fa}W3&?gzJ^M?@r73h>nChp#Jr$Cjt|bY1 z(EbWC4L$0I?5`nlY7K@tJAO3_y*-?e{;h&bJa@I1sF;+r9qL@TtGyKRDT$cFuJ%tE@^rJ)rRe4AX8$ZD-PqZduJTdl zZuT#bQS?N-knZ*}NG*D5z6Qw$_HrphQr6P_8{%1^59}3?JtX2Qcpum+l^CZ;#9Io} z2_6Eor5)sqW-Uyl7S;h3SH$i?O5iz~&&5+|=RZMSt3*=7{ z5!2iL6(UB}YEzB%vA04xlRPM88)R_-wFdjz+ac>oM4rC(4oE;t(TGa*vv)%7CV5KA zF32NaCX5$IKD2j3nv#g|!4K^{kgg=HNj|doLOvmRQ_4QbOEuJT^|$v!+L4I)>2LoA znQ%qT^8ot*WEP2t8DJljl5W)6sm`DW+J~epHICAlOri4h-8cKNDkb-IooMPG+rLNT zeUd@;5tS!p6+Mw5ddq|Dqe_hOG-}j`Vg}pCAcuO=TeYC^f=9 zDMh!Rk@hJiDPyUWnAS-9G~_!Hv0NkVGmx_5RQ-&y&q8h{5iz6ebC7bwRi4rIdB|-f zB4)IG0g{xe@{F;e!zi~QOy2;sBHukAuo(o*8Iab7vyE)FRInPHcJETcMXLWySDB_ZocZlf{bnRY29#yr|i z#nEb(U0TXggRl6^vdcjD8tZpM0taglv9gs(gUq8W2!y|cvcY~7@)*6HTYLv+8`YyXEWG-a4-3(HwB0a@VOS;Ey4zWnylJX)Xje5(XjqSBxf_zLO*85(&1>~6$ zN%Cvm`|Ot?uak&pM)uh)Av`v?-+l$cV}twcS0R(;(|d+!>c82oAhSu{m+~59Bpu(| zQRV}7YsfT`suhH^fw+~`lO_l4*CDk?#97Hf`wd9r3F?gOklhyYDv5|WWVeIxcLNXG zZ$kLHfrst4ApG6H-|hAg{%+tA`)x=C>Wj9aIXr52kg_!8%?)Y|9<|>=41c5fsNE65 zs8XYHO+(o%Rl^PJra!sD6e?cONG zW9Ap^J`f%=zhL)8DIQ<_!|n&+@zsm=hbYD4>X+<~AUv*q$?lI*JVt%l9suDn>MQm@ z2ww}hYJUvjYXMj7K@c88yJmj^;W4y7?ZFWKqV9Ej2!!wayl#IA;X6MKXDEd4{4|_l zQqoiS`<@ABIE26NnQ%s+RMUZ~50K=125C(qw&f&eBxD9%6%xIsWM>p49g@izErssD z>80NPli3*q;cF$Cov|pz&mlZ+oYfhJQhePZ#TgIb9%G6#0m9$J$>vPt7<>~a zn=?s@zT+jkGa16;&pDhakmny(%azml0@4MN%lQ(*-@ME1Ooi|_?{Yg|K|ZRk^4#Ej z4H*l`<9s7U-=UP(nFirrZeHhGl;U1)K4&_Fd%5|Y87Q^k5{+BXexrah6T;syEa1#S zDgNGQLFYRNe{ZyqGaIG&`d49R4ur3N6?W#L6kiJ{;(QO`YXL=_c__tq#ujttL-@|v zV$K4Ts{N>{pW@C!NE1j2=LZPi^;*(d1mQEFlFniXp8=J0ew31)a&(>AXO?o7KoaZK zQLmJ<6s7nKsI>DFgwKFVJL!-O=v|a?eunHP5nDkS=NCw|9Q6H*r|7*9&N9dxx^G9E zDU@}VLza?=GljCw3dpZbRX?hnvl4QIL}V`Ktb#l@n(h^)JmsC$kT*zPma<05Qe){J zdglslbvHU|A^dKi3eGwu;dS8(&U(ltde722DwXPNkfPs#V>%n93^9h#eLK@=xlCtM zL>7^F&gO`0Ai2re5|M)>Rh?fWa+Rc-vo#{Qo~CQ(&bEk@C3(Qv9+6u}8aO*3`RVTK z`Xo;{J0tQq$&=2mh%_U4#@QW_b|lX`dm_@6q?xlfA_GWTIQyii^Coe8Z{_TllAf}w zlIkbC=KPi+<~8Sl6g_&`+Bqm?h|%LHeNlxnw{Z@sQYptLs=h>9=P;z#6?MMc*7+Th zb*?&NZR;G7qR;HwI!C4G5!bfPF)2e*UdcuK=i-LZ);SJo^e(k1DJLL%Ces}aQcgld z|4_*(NS-j}G{mMcPZe_paw07OISaXqo(@(q=OALlUdefgxTj0W1&F9sC4WFh(Om>; zo-abO)4k0(>x$*N1hHFE&y)6bZJo=ICYM>RNQu_i)tFpEDSpdSTjx(D#=vK3l!De* zTj#ozG&uq@gQT5f(7uVrf24@F7`^Evl%$mXMYWB$og@ga)3=>u2(Qz(olFpZ+t1rh zW+ldf^n@X%^|q5GB4Sz{oUD+(9qBBbVmdh~5m`#o#mNb&NAJ5>N7B_P0-4u``m-b- zI7K6JmZXJ*2FJwR@f{!WRA6eaoCDHD+jBtskza@$b)#v{oH$A@%0 zlaMmf2_UVhB~+)F(N0CkqWlS?KFL_866DArdY=Qy=T2qFE%ZFmGbH1jn;;{ptu`YW z?^J<2`$xifg=B(rGvw)46GnTINzN^h*EdsbkxX`OjYw~jFPz&T2^uLKO7fK>zt=$b z&OJ?IUt>tVc5X+^DY{xQm1LT87i11C=?s!@ojMU&L^9K91ldpHb!$oHIE^9iP|a^8 znd>x<$PtnS&dU+`ljKL|O-R4f>Im|)^Olm7VTaY8w;|0)#Msx*P6x=m z-&M>n&O4BF5)t!@(-HD3VwO3bAip7InbR3^&o;H!TJCg#JW3++EO*|8v`5Se=RHUt z#H?_-LMk0qc~&~zAhk$Do|Vq~kQRtp<#dO1K+Gzq2W0SmwOp&649SZko|~R=k$eKM9ey;A7ohbgmJ1GJ^$u> z2$@7uk9q~`osS^x5wpSR59yAW4bA|FhnS7dK*(K)+30)>$%2?o&LBtu#B6dtfn>uq zm(9*#j=?pT&CU?WOxhocGx{ygr;sHiqL;G884B5gv;JS5VUPnj>;Kgm4p~U&_<5-0 zR%Zlc9Z4Z6pFw8RJ32~|Y;#6JmXMT}BKEvAa+d4)DfBcY{oi(a?os@go~r{%9y&UN zl6e4$7=zuxF_~+OS3Rp8&M28VJtcj-ItuS}MnigaVi}{vm{KmuaA@i~ow1O*6Xw3ibT1t9# zzHjiD^No^(N&DxfW$2Bo&a{Zsqd>fJXs8@NynI4gP6m!yZ?xORfl(du{lv!+Fmz*V#5t!B`XQ>o@h2^sI6JmIr_Og=>;c?o_&d*ZPv#lAf z+Vd6X7bS_OD6^>fE6y@VGHn-1mP7W2F)O6>FkbD>rB*^Zhq4N#_*(WAXEkE(I;raU zin9hWIs2+RQLi{_5mOq=e$`nA*+=ywYU3)l+@+Z>(Ap7mc-2{tJbQmo^K;eNAZ2MH z6HQCSP$2!cG;_yLHX??vtzUIEA}{?qvt@+66v z!#|y^QdE0xNqPQswyBtK-*VmA4&i;vb!UeXgWuPE-PsA@y^Z1Sg7DrZ;qH!z*xMw# zGz;`!daiD?M|z#6o`ogzGTN38(7$OZLU%j6R4Qv2bDH*SV!5=eq*CoEkCw3q>AnmS z@y!JBUwY;;bbqEeC(8a8X;GS<(Ep3{q*6IUY13DYl;-}6h$ks-_>1(XQh7r;bwiRd zoTNY~1#eU9qF^YE=ne|;%@-{^&xPDQvc~k=!V9~5RUKwqO!rZLT9=;UclSYBuAujd zNZAkRKytdgh{3Yw;^RdT_cz4wIxXTJP?F$vTEsmF;X7xFx`(9bJ7Y2GElyHwkVnji?8?PeblZSKDcM_ly*ML@V!}Ma-A9ea)iG<=t~q(hMP@ zja6{ZtC)n4`6Q-$LCVrZZMusfoy2kffaJsbGadJ$6uqR5dr693QYWmjvvh@brObmh zn0dz+YQIsDV{*;dp|)i$PC(-g)DpDxfmGsBnWwz0mc4Q)*|Vt3TKd!Z`)ia(%P-$6 zxyijO=Q-UtPuGsc`|GN>S0MaGyIb6=5Pl29ZSFM)zXjqB_fIK$+3#_$OX(ioGjNY< zG!#p}B*$2K8{`(MjeFdL6up+Kxk(US%hlavDSH#GnyD?Wx|>N!wwCMEvR8LABZl90 zSl!K{@?_&TJ=SouBBmWZT`qddHQW@)#x?5dz`brZ2)}FbJ~umr-;r3;6<-t;`w)Kr zVJ$bOlJK3DwcT70ey3#}H@B4Z@C}v^xHlk%-(dNGn@5U%li>qyUc~S_E$h4aRG#pi zg!SG0QgoZI&n+PrzlAuI%(rj?;PEyI|{hS3OKak|seEr86+XpDLnt(^zmf{;}t z2T2}w3rW#!{t>sZltIS4L)6crm`B_qs#Msb9(9XCxJ5N`i$S>kJnj~Ua2tEdEg?m> zsAuIoCu77zyb+N_-G3;KgU=yG-PKvMc2vauhi7RHUvNuCGK(WfQ@50o6!CWVi00kgV-t)I`Z;X^mY9eAPL`0No z>8482Z^dcpnh@SjTe=p6YxPyvhHxFe<~k6r=ht0Vimuf+T`wZpX@1^xeJN@!Q}q}f z+(63SM8&)`CPUIOwk|q{HQ$8lSuDl7p@@4y#k$bK_kwnHE6U92a&Ij5z1`eOk@*pM zdbpJ%B95><+?!OX>NRdu_56WbMM;Vn*Xls+`2+Xn45dDBZ$Zrd@@jl6&Ak=UdbqkW zo95n@Ay1lHRY^FlH1~EXst)s0jitGFC^5uaWQ&pXbnlEv8Is=aT~hQrZ2P)*OWB)^ z_W*s}dmy~M_jRj5cwg7ot&TjrXY1?Mkdl@n_N(GMM}6IUQK}cocB;dE?tKv6BYo)B zR1&^dw!d2o!h6~Q?)?zn*9~xMLwKM0v0Dei`_(~iT`6gXct34xx~t(6_W{K4{&}!l zPm12x4RPy3_-(60-3O6Jys=g+*HHH%VT&ok^=cVZ5#YFc7 zDY_0Px=p317H(1No#-}GdBR$qbYiyF+0(rQ`Cb=(5Nt4@- zsGmu0OI0eYpULhkh!Jm27Cqr9?yFMNyQalD{laYp;dT0@`l zHd4|I@%G?~w4`6VuS?mRI8SdHIYODIxo@Bp*Wq-xEri$UbhjNuyeC<-s2T2?5Prk( zEcY!)F1p5%k7B-a+e=AnEZ$deD@}d2`?i$y6n-!IT(^UYk^LyK_nYg!qhb>Lw&(BN zju5f`5i#@JPEzz+qvyMw5hLpG9-7tyw+muUP+znr&Cf#jT`6kIokLsPLiat0(~h18 zp;AA%U8STOTpNqsZio@JF@(+n7Q64Om;}E^`bW3Bib;8>v%1fGiQ5A)qBg`lFL6JR zqTkZI)J>CeFu`^BliL%e_$|%pZZ9R-#Mb@7Lo|}?_KwKIG|#`deNc*9!ZNq7lr&=& zeThKK^D?&|VuUCIl7vj{GiNh-H#z7N>E>eWSu)miasu{cRz`UsGs%jU@7S-eEizr4uSC1zzy!F zs#FSJ&Dr1%g)AMc=5T{M45b_zJrKQ}jqY&B&GcN7k`WMYha26`ApCy*jqXS#b;MT> zTGO&`az{x?3)k`{cQi`z5q6V1Mu{?7Igjz^w$yH%fUhdV)v-m~p+C#q86*0jT&1nE{tt(_h2WF>O@T1@L>hdV`zK6BaS zet}XYi>opGUGA5V;yKlqEOxn5A+5foZx7N^>~g=7qR(!2xnD#0>}I$74TP6sw>wRW zUW(oBw^D|rT-!&zGs?W%oi0VUmfh}*h~)P~%*=?0e$*a!mX!1qJ}=ngeh1;TyvLm_ zrH5RD9cfy7+&L;HT+4ghxhTc!bdUSJlIr4J76WLV?s4ZyQFEB33Y{;x^HGYYwa;Au z;XM1?g-VQpt?7yw<=N-{0D0@8s`>ryB1rkBRL>N%-(3vJ`6A1Y5b?&*-ZEy1l5h?W zxJ#wzIXvk8q(mMI#Jj%_x#oyZf`sBi}7Aw#uXKFA(0h9CMdR(e3A$yIkc- zxu3o%c_*!lW9|yb;{{n(LJH+pE%TVWic8(VvKk`V*g%?}W9}L$x{V!k*Fw0B9e3A3 zxQ!im*GtiD?6|u@if&QI-Hj0uYw)W7_kJ zJSW_(Qqsc~b<*9YB!yeTNq0M9_>AnNyF*FXHcq-bA>1}jxx18vYx$JBTZ&q)JU;av z+&wBL+>4%Z_o5V^O`LJ}DKR+n8FzmqkJy^dxW7e2WIp2_P^H4{>#Tba!h7tq?jZ>8 zd(XOuAzX)N-QT6Cy=ZpIeAYbz5p^i0b=EzqN`-ZJ&OL@aT!-h};}AY4I_I81DX!IX z?n#LFikUbUKIfiN5}xmzcTXz`YyP}@2Ez4o!95G%t@46<4#HdI1^2v?aP3@hFF?c_ z(mti_^bhwBDSCZfbT6uy@XYR#dkMm|ddaxT=GWXD5bl{@b8{jO_sp-k zxuocx`87AUDi!w3|8#Fa4EM~hyLloqissPp@=DQt^@NuX!hQ85FTWJsSI^`XfN)D-GcuS{|>Ak~-WH@_1z-ybb2@$|(ukMqaPHlCVAJ^=_1+=O?dM zLB)i7wtQY{hCKN^Gee$yo)yU>_H6k)J0kbd-X@>ts8ZpcEx+eNc)Q5&d8(A$^B1O4 z`8^*Z_F5uOelJj^!o5}juOjmBUaNpt3Bub>0k1Mjag7!5Zc-BNkqUTKAiPH^=-mwA z{ZB#f76|X73VOFH3HL|^z1twX#TD|ZN>TNk<2Jeq6!? z8IcLJofh|MsZ!x`mGJI|@N$*#YD0LrN_cf3JkKS(x=O+pUc!4oNjT3Xym}Cx=Mr9h z2+wm#??EYQo~P0rmhv7_G4!aAI!`I>J**_0R%x#RVt9T^dyhc4o=ba=LU=@|wAT>A zd!#a6BPHRuL^6hE-t)-AnLY0X2xs=Zrb@!L>U+%) z!*%F;%^_URzV{+Zaa;Ahm!znvccybI-)o^_WUY#254@KlJPuINYpF`5e7}y~r9&g_ zmAqG^=wns{{CGRx|ALA-{t&xY1ah1F_Qqod7(v?RVzMyHn4iRnR zd#bTY-Ww3nHpG1umA$r7^jFNPcSafB6_YkBXZ6pz#1?{()G`Xb>M zG|#oY9*E%)&N|))5FUAZz)O>&zra=B>xn#~wTNY}@AX0{9v6Mk>y1*pRX*hPK`9?H4`0z}<&B2$R@urM1L3W*l{Z$(!SGsbEAMkDs^>X^YOIwvE+PeKep-9uBT|aw z4R3-JJ?7cgn+V}H*3O%RQlf=dpi*ynlcl7Gqp9t^DJaEl{%!9IloBmmOsj+UC1SXR zzvE3s9v<`T=zRs@k%3O$*C@p;yp#8h6y3tRc+;e)uh)G+%ihKN7BSqO-}R*>vdR6nl9E_!+MA@xYa_4i)h0>}v(I~C*4y}gByD=g79zj0w)*(h53+|`+8SJf(h`63I#M>Z6pQC;1ZG>=- zXsEYINq9YFxVKr#!SHI=aBqtgeU3K5`&EiQM;qyFMJYZ<8|`g_@HyIOZ##thQDeLv z5bk|_?(Kx|b}`P|B}MHa#o8I~?N%}2b*l;99x1x!CwO}yT=NsWeGsns3EqCl{UudD zVS@LY6n&L*f_Fg0gvZK>-a*9h9$=Dp2qKnLT+^K79Y!hMlT7x0M~t|dBVwj_M-apJ zrF`KXMT}UdIcW`k=^cy6gS6~Zz2hjwR~5hVPC$5n_?34O!bi_HkNYPg?=Xw`aOkxgQ zBg;kmgn8a2DS9o>^De7W;aZ;WT~VdNYwPp9s}Nqx^Sx^jUd!{nKaq#Gule3}DS9o> z_l(DACTLH{M~4MoLQ0y!>vW-)gcx3@KX}OyUW1FgOb}i>i@nScUOS7uED&BhOT4TQ zUOP*@6e;@Z|4&{v6%*c%l?#hqvWbULF+_?jcusc~wlfc2;}&r08vMwU-~lYiG4r0K#i$wO0^%c??x$l41b4LLB+_L zZ$x{59bT#wecajUnJOmSPIr2i6unjM@@xpVmffBM;eOp-&xP>%+Utog+|zau-j%o4 z^QGv1-Ci${qPM2KUPVmweF>>6<#&OaLu3bszbQu&v-Q;yrrD+?vNRl{)X$Mhy3IFL-s3hu6*@UR?;Uor~TB5MDc% zym}B`JD0rr5MDc1yayq?cCLC4Nzr?)Yu>{U-kPp^4W#I`bKQGH#e{3e@E=t%;Z|Vy z4W;O{lkgisckwY2h5a{_gh!CVep?9FY7xI3 zgln~!|0aZMwYdM56g}Qj!f!7{Z*e93x25Rqw4~nwdAPq(%6|uW_>1SI{f-c>`Lcc| zkpEm$1d*kKS2y{aW(zHQdHYmL8WT?Lr{v_MlJtSl;Y93`~9Ja;UijY ze;D$Jwjq|iu0I?x+%_KYM<7O=f32sOdj4mK;Wq!EKQa=tjba}5M@2-8sx|aSN8~q( zdCVUZk)tGy{jm`_L-Mr$c|{WjPMD~#=rj_#2g^@LLMM_BTQJErnnEn<0D$#W(&I2*0=I z8~;}bzqjWbe=CIF#Wc;|2H|%xP4l-yc)adge+Pue>%R4Oa-L*$HE_DW3&QU#n(pt0 z@c7{je-DJm4`=v$l^6#E|@1Kl_h*{vDipWNih5l)X*t&ls`O!ZUk#A@}zr;Tqkz*9I z)ITRhAJKmC&r8w$pJo09loES@D^zNk{|8F(5pB7DQHt&(t?)0Ql-QP&UZ7D3|1wJP zw!F%}f>PWESnXd$DY3!=Z{E5k^_E$h}=PP$S)X?8YGAPLJ-k1 z_tSaG5x=k$-Rh3|MWm=+Q(Y=`%rA-#UjiapotU4~ zeo5rvR(HlPg*@Eq&ibVh!)@%GUj{LJ9K7I{m7x6@+if7{)_&N5Z?1& z@+&|@Yw1F5n|Cnzf4Z0bZt~T>2}q3 zr08p-SAAECZY@`RPm13AUG;qkx0b7ZAVuxjo|Dt6sKj`S?r5c1GOqcRBJvW&{OMPQ zh#DJEmo~oOCMkORN(5D;=zd*ta5GAEMdsw-7AbnfEK_i+6un%Tg4k$rRi!Mc?I>Ik*GDcSmFn?u78&5t)O#l!W)dWDf3@LSLFrR@bdE2lqhgk%;lt z%t19sj(jR6OHdtBh(yF>32H#f?NTvWgL@$^iHOM>+z08nTg9XVH6cAnL`+Ih3zF+O z6_YKvA5xG+#AFL*cu0!w$=nb;9Fg`f&{OPN{ZS;ifI)N zo{q>Mk|Mz~Do@y-FB&|H7_s*oPBF!TCQ{VC?sJmj!E-3Z`??ar^C-ppx{|>QC?)o6 zVp^qwrYOaGw$ec}l;S;GnV>mD98X29mJMD+Dc;wW4_-nH@9QcAEg)haHHAu52wp}h zKEkF3EfK@}Ix~0$!uvWacon7itkw=%Nzr=%H+W5oYAw@fT5ix<<&kY;Hi;Lsfrz%T zki-vOm!jK7#o!GHw~b0c+en^tDs@xPPKs_DRf0EBirYq&;4KKZjVeKV2)B(Y!Q05g zZKF!iL5doSyPckIsuH}TN`)=q=AdIFMqH!6CFm3p@pg+_gU%6IMe|%W=n|3bv|qh5 zco!mC)JBTACwLDcdT2XHss&x8=ySB{K{qM7hgKtaAEiW#+E1nK4Z5Qgx2XGq9w@~v zs%G#3N{JRF)lN#wanK*7xb;363_vMvy-x)LrRe_Q)4|6ok37nV zmibIDNX3MGzh{F_Al&zB5)6j$-AB&_Lm+&w(F?(+QuH43#b9Ve#5}(k3_~d~Rv>zn zF9pLRF=uFgS_C6hjNDQ#k-Qvy1`%6|(Uh(S1S6&BE#=i<6oj{wR>9~9+rqw2x7!h&T+3Ue1l_%VG z-UucmMzr}tRH|(-MT$O8X%~Ef7_k+UqL_BUm&n8W)i;BwQuJ2vR`3;Kcpue1_!@b{ zb|L1lL+}k^c)NHfn1(#OU33h-MJcgeh??&dOh+l+F1iFWr0BDf_kx+o!~4vx!7Stv zEvm*NbpKEA9rAGNeLt9uJlyl_9?VgtWLvFAPeXJM=1NI7`01)1!S@h;ZYwRA2jM$W zdj|8Bg!j1i3>HXHZB@Kcq-U@YF?_b(EBFDzXY0L!MH%w+4i-o9tSe1pn!%5V;ro{R z1WO=%AAX-;DTJTI=@a|};k%3b1nCf-pFY9Q5T2ht!7mW*`}GZ$LAdYNH(0JD?ECc% zRwxOdg6tctL=4{%-7i=rCCwN{?=+}D>;1!EHA->M>Z4$dlJK7GkAk&I!h3f=3f8GS zat*#t=d&LL>m%Y)=KjG3RZ4E}w~`DDHmVr8N4lHj<6sj+Y$-KK1_hfVQlI3LU<*WS zDGf;m2fs?ud)gtvRw??8E<=KCO2TW$LxSyy;q7ZkumdrC2hOL#PQ>sPmQRCS5N^*y zgWV9mMm8+i1K}-hc(513ThoYOpOWwz$H-tmg!gQtg5RX5yFNtyj0p}v#CG}=$=Ki^ zL~L1nmlWQ^gGbYz# zVmu+nf1>rAh)GgRl4Fu7CYhzsbH3MTOr6&0lpqV_$fX1%D`d>`9Fqds@H9&{$iPEf zD!Y{EJm)}6u|K&~PDp~@U96^_3-Uuat=y1v;k0gmq=b3$K+c5ooEI`R%##nYC(M&y zN^}kjAV$w&L5QBiLJ&QN;_bwAKVyoX!y*tpheaWJ4vRtb92SS@IV=IG5iV&-NV%}a zNc&{93bB~fSd0nLEy{xE7G*>9)Ez0& zd3F(_=h=hk%sxbC4j?*nMJdtDl@OydSBB`!H$imfDiEFdW+~Ckw;)Dmz7?V~-v-f{ zt3q_<+oeP^-+>sN`A&$=d>2G#z8j)5-yDA8y@^Aa{ma_hXR9=zK`+As>e{3AgSiAdiH38bd0Ed7gyS3iCV#c`(fL zG~~4~&of*q%=0XyQ<$d-mkRSd2k9KjenCAsZ-!M;8$h%>lW>TUx)*LZ*6JdUKcGOdR@FMC7QVh|b(uN;Gp9#OTcLLUiW$ zAUbnbh|b(iN;LEPh|!t5$6|WKVm^q)q#@>oLfj|m327KguUM(xh|yE;1JTRX7owM| zA4D(Lhf<=;^$}up=Kc_!c>qLb9thEyKb8{BJP0v5^Cu9Uc`!t09s<#sKa~>AJQOiH z^RQUV@L0?Uh@Sdq5Iyyg5Iyx#Qle8IjTk-kF%X@3EJSDi9HKLilM>B59x*!e1c=T& z5u!6sg6PbXr9?ANL5$A)MJ(paSj^N|%vZ6PuVXRa#A2q!V!n;VOo!+todMBHIy07M zRxHnVu{^V5dFDWZ@CY&&k}o`hd=J?e_Iu|^iPq|T#OPXG0MSda5TcjjhghCPu{?`o zF+av)mO%8hmO}Kjev0KukLCF}mgkpPo@KE-%VT*~#9~&)VphdsR>xx2K=g90h3Ms4 z7t6CgmS;mO&&F7uO|d+iV|lj3Vt$RqY=!7~-UiY0ygim@M=a0ISe{+6JiB9g_Qdk+ zjpf-F%dw|%wedUT=H}ebJOa^st)r04^k|jp ziyo5_-QtcTMo;TREaqe^=2R@^bS&mfEaq%1=3Ff1d@SYyL@)av5Zw|kLiDm(5k!xefaR81=(B|5Dn#OP@y$6_+Y zVlu~KvczJt#$r-pG1+1<*<&#|Vlg>mF}Y$fxnnUm#A5QqV)Djf^2K8E$6^Y^VhYA$ z3dLdy$6|`aVv5FMip64zLv+h50nsh9WGqjqSf0|cJY`~e%Et1Pi{&XFi@7ltQy~_U z8jCR@dbuo!UM@S9$BE@}V=-PV#*f7Wv6zanm`bsj%CVT6Vlh=>F*nCzZh`1!zZIgF z{kB-1s6v6yS9!(XIDch;F@2Ao^JO97G>0pNHsU8!rQVH| zdM_5!H5StiqBFlAE7d(#sz)s5gIG)&MAv*zh_3lwu{^zFdHTd+`o?1V#bQ2;#e4+O z^V1)q=Vt&U2VKEa{lkF}-8Md!5?$|u5Tn=oClEcY!4N&IArL*SPa%3*L#0HgH4HI& zTEiiFS|cEOTAxAmv_?Yov_?sZPHQw`^t8r6^t8r8^t3*Q=xL3E=xL3Y5}nor#OP^F zgy?Bag6L^YhUjTcf#_*{AtgGkFA<}sH5H<#^%X=<>uZRf);AD6t!YxC)A|-MdRo(C zF*9N@Gh;EcVlm%A^gPdo=<}U95Iu);A^P0&dnwU*o`;yKbpM^&3g$!ZdzNKEtkgop z=q3Fj7PBZ8vlyb6;zx*HiX{-e6iXp`UHk+|p?AEfc}|DiX|Vh(CAy@)AV$ygvRKUW zSj>u8%*t5Is#wfw#3ZfZI$Q&>LRkyZOS&$WXMHTshFG4Bu{@h%c{a!LY>DOhHI`>< zEYG%Bp6#(bJ7Rfu#`5fn<=Gv}vnQ5kZ!FKgSf2f{Jio>A9EjyP7|U}gmgjJ+)bFuU zM`ERp#!4NFl{y|Pbs|>kWUSPwSgF&oQfFeN&c;feiW^5di-^(N*CmMF z-Y-M+p7shvZv|JSM7P{)h|!t5)hraBt&N}1<{#HONnMK zgBYE;EJSB62ho|!Lv-dFr9?AVK#b0u3elNOh|X+5bY@#hG_!*ko!N!x%pOE%_8~fR zASIf)B4TvrN)Vm7GDK&-38FJskrK^(Gh%e+TOc~~tq`60Hi*t#RZ2AT?TFEt?||sc zcS3aLyC6FA-BO~N??H^tTn(Z#SBL1#H6S|ky;7o???a5vToa-**MjKG_d|5%+ESvK z>mWvFt{aPaAQn?E7E?bK^I$CIp;*krv6u$2m`7qUkH%se#$p=9VjhddJRXaAA{Ns) z7V~5*MtoIoJUwkm&odjZt`ff)|4uembxZukOZ@uRIQ6%V<2?L(Lz*goeWLo!_;<=l zkuS;kAtgypXUYWi_c{5SF#h^?vQc-3_;+^xO)@y|9WB&!)UWpIIWQmcH=`#Rr!jwA zj{oNA^WVH&{F`&HnxCQc6(KQS>R0FIzq!21moRvKI1f8dkL#V|)NfL_J`(S#>8W4s z`zMO|NiwR+^_p>g{^$R$)=Mov*8?vP|9)C1iROmaQ^GKdi1nOgJW*b)?^|-H@}+i* z>Qw*T402a(*M`BQvI#C7j;h<;mzhGR${k zr<(7o--}<)m(`d$T}&s%*o5VoBBz@O_dDEP{^_^%DUs*jFZXTV|6aL&nxDN}RNkMk z|Kh*7++liNTFfu+-!`mN@!b}P-z1~eyW%(5SaU|j-GS{%{U#Yz=s9vxp7U_tzx(Cw zu(fPQ^qywSpV$sX9`&pD_ZjnWd`9QL-z=)OU(Uz=cX>JPufKmk{eQ}rar(_)Q}v^M zlMLS8IM4t5s`~k#diX!19(eo9_{-~${m|WFf01O&9Rt;>4x8KgVn$D@612c-+%Wzbc)LR z`E2$3j@X@1Jr>R+ev^${nZ<7=qeT|+n=q!|BJw2}H&cH^{JZMEWD5H)|Mc(wr{_Q1 zTrEHEzX#xaVFr#{g?zLc~Fv}`Vq28dNBs$$Z>s(*eTxG9sf@ojk5$Wm`DZmh z17-g<$;eIb!V&uo_3xPs{`ZXY_wWAA+vDGrqcQ^-b?!k;jQ7<2d&J z8UN0Ms*Jg-c``O4q#Z`JyUpHJ|5 z`s=Tb)*Lu@qF`d6**pzF!-03FXQiR>r}hpa{PM@`*Hp) zkfDA!F5_}%tS@yuO&CAPes7YY`qjzCeJQHGGy31f2TjF%X2S6~p6}tzqMc+54dwV^ z!f3Ej{QdX8CorzCDn~Rf$>8a|jpK=G2MOaxjL)jyq%i+~cYU`)f3`+RHU0n8{%U@H zRX;z{7c0f`|99t)%gw?03LkgXICPS6wjvxT;KomtJ>B7DfPhHMT_-nJ66ARJy7;X z62{-T8fQ%k$60xQ%j2dQ_nZH>{LTAyUfzpWMZM9uj~rM2_s5(6?)bsSd+vYpaXO<< zmHijpkN#KVRR8Di``a1wazFOp&CmUjzbnW7ciYQ}H^laogmL&};|cK|OzO8akiYu) z{7-RwyqbaI*56IwF{|ynO06$!NP&<^Sv7$;Oi>l=FBG*F(xDV!q@3 zjS9Gakn;smE)%Z9WX5%vgfa27@T9Px^4GtU4OKpqp~};Ex!m5egylySQq$$-{7?Pz z_2~apzW=N9lo9KI{wt&V7ys_^^7zKTTke12{~z|g2F}W=T7SRiocTU83^NBE;LLzQ zH<+l4iG_tlK{p^Ox=uw&g@FY~hDk+5S4=cODoRRJDoQdyDl95W`bR;=mxf72NkvIF zKq^Y=Vp9Frv)6j&J!cQEGlK`ee)HoutY@#i_S$Q&{dxAg-~Gbzr|^`J?-4~C~ z8-?NG^KX&6R=$yr`R-fx99P4U?YGMB_~0Ca+Lv-%4{Wz{s2^_8{FTb{x;`2v{Z$`r z*Gl8~BtKl`=h3(vVfg%$s*mdxu4gnH&)@X>ZhuZAal0)_t8L(@*&Lx&k>UJh3OveFrRn)vWw;Fs(p9+^K~ir$!gt? zYVprOQf|XJ8s6*IvyptaLHixg3l-Cj>wNYbw#SgNe}&^n7=HOm&6kwFgQ)Mil-hZ8 zl*;w>&lgf|kL@$+I1|};6aStM<-*@1#p6-hy{ZNIWZaM6f&N|QroCA6D?aZWp16`@pSgQS2u0w9N^F|tu9QpS@qJF$#sn+Mi z|0oPcPWh4hr5``y=e&B3FylV6TIIv|hi-trjJw0P-!k`?FF>x`eesjvSGeqh2v@pK ze-5_g& z(S9oXM*e+^j{6QQ-=oWwcgVME@)aHIp}pMq>T3R>JoV`L%lJ8aSM_PS__;aLQE!-E zXXOp$OQlEmKjZpTy}SpkDL2*c*D@Sao#*7d zqrI2Id9PIS8udL#EKu*Hi89HQIUDYwSEI-)p4aB+BPKKlbe{K1aoH z`2MKwlc(I+gE|g|;rc(L{qTLPlpD6bIQ;0(#p85I&&&Cq7b(v%tnt62p1S*!;W^i& z`s(3pdn&ab`r0`Ro|h;N^V~+{TFbTFD~*5eb=F@WYdp{QZ~umtKPlWPq#j2_eXumd%9$T)eHYrktA-<|dQ3s>2 z8+ugbIX_Sj^Wpi)a2@&R>%)}YhY*iXw4;aWIQnGw!yj%@JNf=0$IDX9YsKpVd45>5 zj)>O@Y?n_~%5_dseQH07`!nU(zlv!rm(=fHZTAMXenRW#17AFKe`h@VIsHdI^S#Nh zA5-@Jshm^y@1JJey|YyB82eqv^%3=ulFxF5?S#J%*={tPcE#(vRC}0uI-}uu%=tN- z-@@?e&1+A-br8$Nb(Ws{&$O?T7_a9*({}DIW9zCiTUV90%XjAQp7^K6xZP7vJ@w>d z|1YT>@I4XTUy=K@{QD^>r{Q?Lrt3@cBUc=b<&yI0;rFz|M{9>Y?W3oC^t6xUar*J< zAG7V;>tFpjvXmP$1MB{@8|#0MW!%R-johxy`g?%;^PD&SevP){;;^hY4;0H^>CcCx zWWS+UUioSFu_MZFy0(zYc~jHF`HIg4?zv9oiohd zk>hzq?vGz&_nY!}U=P*y*5iln`QfjZq5VB^=f!*Kt9$iTDt~cYDwV#@^zd9v)929M z(k}1si;3@nDrw;Xv zzf{wc&oJwY;q7_tw--N0=a1Znlro*la~_F*N0QHZbB}-jm-CFATYs14Prr3_9rSiT zj>tK1v+F{euQ%Iy(W_^v-mdEFsvPI(yMyymOwV@rGk^Xy-9DdokDqau*g1FlPuoZA z*Hee-*O;dCS~Yo8kX*+n1!0`?vbm}pUd2DJS}g( z-<$c9zVS06CiAz3)9xX=|NPYXc5KJgqcr9A?|{Cv+hXU%)o;`v`Z?ssVd`W1r9HY& z9-pHe;@>kbYrj{!D{?8RkLSM)cE;yFL%k1-Qvd1w2+4At#b0gr7*mezD5S-H4E@x3 zIP}-4{T}-_j6Zeyj`?B-E?VO)}Qr<(%#+=#A@%`A@NNOz)kQ z^O1hsN?E$J^$+%!$Xz@T^`3IIe!NaQj)T2lqU}NZYq`^LrNYLQN*hJ<9#T zo|d)WQ}&h`%m*oZuP5!aoo1|^mDxC4Zu|NbPWwxx&AV0BeyeTXtucGD*8XeT=UvsC z>JT3MKG+pmzFb$NEWeKB)%hVVC;g`NlyYm%Rec=q8GoiJ^W(X&Qq@20KIc1HE`~`t zFLPgr{H{{AYf_GD;W{9RulaBskH?jy`To>;;(1){pgxZGVVLbCrnLXmG)y0dIlggT zXL`;n43pA+j^`YYRsQtXrJcbH(D9M;4xd|g9Dg|fO!xQ6^LL|s-^%u3^><{PKFo*vu&1UeH{AAVH9igxw*6w| z%X?`im&B(XoF5ow`(~K)D*e*k@r?I6@%<6z7v{tIVn6Ka?-usMaGYYleXPGDs6VNn zzx_0Sf3ln`xB5Gtx5zIQWjR7WCGj<1j*pLhJZE`N{X2}~cdC7#iSkL~G3%G@h~-GC zr_j{L6L#e3nj zJ;viG?d>Wp)%$}zday1?{=P_$e|r3b-)G@_X2s#2_EYSS&|f|N>G6;5JMp_sJ>zQ6 zxY{$WcKn_hf9G>u8B(tQlPK4ZVLbVyN%5Wio;cm#eT^;J|HJZxVdnqD{$A_&+@e(b zTz|0rkg(imI^12qo?1TMr)2xl_Qc=I+^^*C+BnR1*Ijwqk@Wlabe~_HX@5Uf{hd8G z*XQNs?w~z4=RO^uXWX_<`&;NgKBv?AD|0`$eH`s?6>hLSk6`^4)0ETmnDMz##)tVl zXBF~~&nqw=wY#F-?$b+G+5Q~mv8Jb=_?#`N-a6YiOH&Dftf;?W0DnI2`Y*7W0$ksF#%GrF|MsIhK>* zFrMYpa;My;b8H^*eqdPcwK6|Y5B8$zd=4QTZz#v}1E-Fc@4(o3 zdFB(+QrpAlJ4yC1KD2}3QrpAvBFP@c^EpWqjw{H1%OFOWnA}l{yc;EmwH`Ss`EnhUw3I&p965-Am#a7`XwCiyT^~~i|I=3=TI-# zm1=i<{)^w&(|Zcy@9i->*6y$3y#}YIaz9@n7lxTG{LWwaUB6cQzM#_hyMD9JLVrrR z8}@;w-Ph&*-<0&P#n0CD#uA|^*$4jD*AXANT05t`LGFP{$-f=)2mbp+55n)T`=Jm9 zr#KwBTYY@Wz1>sUA2q$jeo41~pOE|{f0EDkTB`lE;`>9Ne&1Q8zj`RzX~+2^^b6mg z;CGivIgW+2vv`hsGd`mIjOQi7d`~ybdrfFpXW^uLO4XnEeUy3Mg}*!Albre~{7~-t zdm7hAsq*Kzt>2MOyNmBfe)7JHzb~?^{d>1vlPkA-k>&Ti-6LIUJ9S=3+j+>0eNU8j zhWS_8{lBr_c+R`jc74;|BN*TBr{ATgU1vUj`bF)K_iAfVk7Z8nC^)a`zrR}PZt>^5 zW4koHe4pTU?RTa2&&T|^<+MBD@0ZNj{m$|}mH&>p>|6Qv65p$>?eWan^O8m49_epf zr||x5_V-eiKU1UrheAC`;cM?l zzLBf?lIH(2Ps4E9earUuL%Dz6q3M;%_nS=kw=*izf48J>GoG$r2_F}ot zzB?AiM~>f(CQb5J_O-mvYNw4TE(|sr2$5Q0{Z<@3oXW^drrO^;oL> zsE?HSUS#EZ+rN-+%6`Xnf8M6vr#lVXA^T<6PuNfC5B^@@J)r#kHO7D6u;V@LN%G(B z;`ir6xnKJ4f+c@{K9twrbzPUIeoYsD=Ssf|lya}Q6YZZA3biL z{BHTR_PeP#EaTIS+Mh!HPd=#QaL9kdqd7kIgaPs+9>LZPQrRn+o+()M=_s!pEIr;ramYZSvhhgSJy`}ygO8xqNe&p2O zDR)g4cJh7I$npC%)qmIW4zv5!|8t=3lYiImv&;M6_Pdhb71nU%zG3`#e^AqhVcPLz zrQvsk!Z3fIohkcU>>m2iZ(;bKU)1)+`e}X;{!TfjZ?Sl#srG)QdLlRCty({-C;9i~ znJVYgMQ_+X!Z6zl=lw7F=Sp%P&>F43r1?K-9OFF5aZJNqAID0ickiFo{@2)e&Us*_ zjeAwk)%KNC&v#s}>BDxN#1GfC9G}8`HGg^H=f~@`TfY@{WZdg){8IVkc&68M@_i0J zzsYwTyq?IZeJS^^-D>{}{kYy9Rtdn)F<_IKKPORg2R{?cWnre$@Van){kb`8DhI9#gnjrsgK$cN!l2Bl54e? zq@^m)1Jh4EPnSwRpNoXwP2&AR3;pj<`Od0+$By!)8vp389;)ps^n-r)Ipy>_acOt& zS=t`Lai8CZRyp}Dj>)~?Ue%j4UX+T@{hs1=Rq{S4`w#o4Qu)50?Yq$rrE2G`e}>;u zZo@hHJGsU0FU8?f<->DbKlba+ct3{a;XO|O3vI$xddQ|{LdnD^7}CjUM5czzeg_Rcz@-2{@iqA=gm{@*dNueowe)l`g_V# z?f1)t^~3a=deMF6$c6P1_Semgx*p`btTg3{`3$G+y@!mQV=rre@8GWQ zs(nmHzp?*^VUDzWAC9-B z*3air?5|1n&3T&h%Yc(w&W!&q-NtD4zt>rgwO`eC%=wY;>#2X!?s>n}d9j$^ zvAvh7{7L@u_ zvi*0}j{Iir2c5kK#OEF1bHp%AyLo=J&7T|1xQqOIZDsDyBamOY`>j9cQ{kTJ!;!VO zlw588D&9}_*Ew_9tEZ<7U^xd^r(^Wd2Gkt9NSGDUoT|0Qb z^|9JPJ&(S}xHOfD%tq^ovJ`9KDXSg`uDG^Pt_zn{0~_MA6KdG6>HccNVT!_2E`K zk2K@O+K*@l`Sc6`=9LLB}Ia(gl zaDSEj3+%i%fA=QsmlmH}==_{6?MR|Lhx{Dd?+EvolG2eMo}2x9TFc9G-&y~ADecA{ z1V7{6WA76)eP?vOjZgjT-nuaS_RBQCkl)>KlD{AQd1mMSr{3^93He(7_RhV|(N{r{Uyrt~0-%sd(P=bf)y5u3o;^L3+A+o@(jXuGoG$qqp0BQfG4X zgWm6xvip6~F6ZCd&a}U`Lb+14Yp%CSt(W?qDm1L0r;6RBwlnkt!+cMK_gi&0TxvUe z^kE(N*nclRUHo{5{chp-eBVEG9l-Y684aH!e0i<9DS;`Kx1a`rnll9{_=!`|a~fxX8O&L4VSGu8h6=HhVjy67T*KVHh+@4q+R zalfZnPkc^P%aN>i%6ycE@9C%AUG}?`#2TQt73gj~8WoOrkZ`ANYO38oOj5tUWNFKdx`%& z%=04U?zwM+f8+Z$x|)vnbZGj@Zs)7dT`JtUpM_nOW=B=G_0SI0S84jHOkZ^eee`Gl ze`|YPvjXMs*dL4gLD#=0r{@`-`t6nNuZL>;c%uFAtNXOQ{^3GUxySNz8eVX7A(eT_ z_Is2szmNQPRnm$4|F{z6%e2Q=?N@zDnO^SO^n8ZXPSeS~0{%Vf_&s0Fqr87oY0Ay? z&%q#OI#2{0;L=xx3hZ$D*SBJ%v)218Y0Xmld9tZk@Ny z-k12l`8r>2_}HoYDfi>g%=z?=?~^h=^<&5V|LH$bdr7su@p(hMZe>06&{NlISN#%> zk7qg@&fnpC(#7*~@^gLev+$l++RgW?yITGpxvsSz`ZtLVvi$+luGZsub;v*Ee&%V~ zt@Kp(0eYR_3G-3=*C&-H2756`QH=eJotwga{gwugWHN&7`-wAA+Y=sWdz#QmZV`g3uS8)^5w zvK|><`DIPdFyBYxI)(M!8GYNwRZnMfN%3q)jHf-J{o%gK+LHe*996wm!q+$Jr>u&yjX1O%KbbEeb{$ajdJ%7gEd*OMq@b_kS&-YPpch8rF z92 zA^o!dZgwnR9FF<)3*$q|`0i3&H^lYb-SkgZ`Se?h=NFDsq~Y%|ZTA_wx3;YPJ}I`V z&h~Bfxo@V!^Hrw%s=t>nWA_ro-z5z7hjOYn`MVLJJijxM^cnXM`T^GgA*VxavUh3{XWB4BK zleOPHRqbN^B-J; zl+*Jy$>T{V&vC1(c2GahyR@hC@8u?s6I_Re^~f;$J;S7|H-?|?w6pd6<5hmv2mRj} z?QTC{zdzIEVL5ouIP)vjdi3dbKLY*JL-ltC{V>sfFKD|>xupF*&JX%LIlgC(=PA3_ zPvUh9=RxY}tUo?p@iXlC4QZHf5i4id ziub1?$NEs3Dp|XDs@GGg?dLk=bn7jwM~0tyOrM{<{4cui64o!}LK^-~=DfmrhT~+Z z{m`SYcwN!skM8+{{fPU~Z?*3vhwb}x!(6YhAFyALcJ}+McwLfwu8IAN&ku^96Y;rG z+Ri1$&y7@nd=K*P{rfiZ9X7kqkL%82JL2^W{Z*=UNvZXnsdY}cZhzVLbi54vUuW%x z?I6_0d)rRUkJnpae3BiZUEK|{pLAB9r1)@tV1MBAZmvs`>xukFs zpXu66Uu$sgj`5vQ&i9?kh4JCKJB;scnB!|W?sC52dV$a5-sRupF5S5}-Yd!e%JH4| z^XqsS*}hk}uMmdg{RirsWb-X4`P9$*{4efPJTKD@%7;|rJ3rSD%25yVXPEhs&+`uC zbN(yU{KR=r^``B4Y~(_|?)&h$ap~&4IG;16H*NQ}X53=Ge^%yxxg7Oe?r!=&(2Dl& z2p8MadAc9jcN1BEU8SX}zwY*n1@=9-aQ&hDOya&>aeUcn@6&WPE^)m1)@|LJw`v=; z-zrVn_dFuE(e6W28uNKiHR*f&x-aFfwe=sv@BEV5LB7(I)A-0SzPt6n^=McR%8%E9 zVLaFCA)o1n+Ivl1ZHK2T$9cK4`h2YMN%IlkBYwVpmy7EG=12QjKE`wYq8#I&u9W2@ zeY%#jyXB%kl4y7JJ=x^h{*%hrRsJ2n(D6@cd`_6*a6gEAKL1)fP{(D?tH1E?Tg1<+ zN;MBs|C{Xn71l?o^z->0^^(#*^f&j@xL$jfKaZMneO9R-!g$sL$EO{3E}!}t|74+j zjz;@RMOnV^`9Z1l_vq=~dg@I3>)yp`59|HOO1U4%af{;%e}_F;?WSEE7g>(taN7Oe z->=N?m6h)I*O_iVkC%Rq%k(EH*Prxf-xV0&)9!Wu)OKB}dFS!|T~R8((r?^X;_o{8 z?{w*z@<(UoW_eE6?$b@j`IhG-LOV~_uAX`J)bk=JP)z&5r=$j7xEsYwTm!b(`DR8E&ac~pnjzspSu-* zABf)x;`h1Za44sG;`e45Pyd8rmYeaKp3i$?J;nS?yI)S7PVRNH@+HNqpX5DI^HY+X z>M3jY*W3ODf5|;(XX!l5@{p2GKk&Wv@O}8=_un&)@zhhQ-z`scKkv!^)a%=)i(j~I z<@&sMognwW+PIw*|5(>0r@NjhRXXjj@x0FU4*5EN#rM&ds$X-QU_Pb3KjrR^pxvh2 zJM6gu$FbsZi}y69Troc$&oo`ZO z_jKvcr7B1GUC_?HFUS5E%01RF^>+6DcesDRe*E$_ZGT}qd33uT|9jNJdi&09ZQm?^ zNLjux9mAcyr%k!XO8FhKnZHp#YdGcZvU|6bABPz~+4eyg&oJXPecGMl&nsr!EALW& zP(CSsq1_+&U;$9|IGB=%{P>1d8wE2 z%)f^g&!0X1czXCFoR4^qC)NwUlxpK#Q zuDdF)_f7urC2WQ zl%MIu56OO|-Xy7Uoe;~Kw%_f(mWCau|Y#eMFZ?YW}TRQvunU8Z5L_Be$93rQa!JpayPsV_C${1|Ng6n*`A7N+S?(GS!^%6l`5?dhm@$2n+MDYw+dM~0a$w2S(~ zc(o(tcR#l}kCElPTuM;}iMJpZdeF_V38CpMQ3^=Ev}>`V^0^ zHGkH2!f}YpRSkVdfL+r5%(b4dwa!iSne>7sj(4k+Qvp`jg7R zcG}%`8|tT>q>N{nl>E-hom5`xNs6c5u)Oq7NGV4?^@nz{y>a|xd?-(Tk{wBW_CNMt z-k-_vMSfi$_h05yOjGW&{=S09ebmmiFrNBInIFTXSs2kC$PX{fw0QIc_ESopPlfuV_bCDea^^VSN_!xqb@QFAT?i zN-8(Y%Xs?vOZFY6BwB1ooKG>Ic7!yR5A&xTq_k(DJOh?LmX-6@Q z^LwxPDTz{_rjOGV^OM($#rd*4u^#r@uziL6FkGB}tgo1V`gSF?8}f_uNzQ*%PS=0o zxI}(fPb_D#-;(qv@#AqW^lNBG7|;AeyOQjod`P+ftltGnyYPM=o*OTgquqSI5Qh2Q zN)kU~`INPvA6L7mkLhDMJx3n7+w43c>oue-U+BM3F6<{sVJ&xPPuxG~AEqyskLA>^ z&d=NPyJXZ?oGxSEEh{tsmACt^tMc@t%17F9U*gY8wrsrL5> zC{I4$AJFu1{U`BhKj$w}=0{3TmHC!w6? z$9B=x_bEEg$F!UIYCY1Q{Qbyq+MfUMJ@_(vKG@m1ykq=hZ7;N!er3DR=aXrB?#STCvlzi3?(}!X5Nj0A1UGjX!_D_0h|Hb15l%tvXw|B@s}zc4=RZ=qjk7v&lM`P=n(hSHR4wJ>R@m-6%< z^>s$yewpr*@b{L=$In%i&;G)CAnpD*7}_&_v*yq5PLtB_43m-{`Z)}T`OvRSANr4e zqg<#jiBElDe(b**&vAzRf#Gen6f^jg>r14kN!L*-iK#>QV+w-k9IRYiBEs>`%Uy0!+h?= zFe%f8g$Zs zjwCsjm+_Pj`Ni?EJ;nUUh5Nl6XK$6=>6ELICo(UWzYFE>0=WhBjq-PaaNj9^GhKt= zCbvWW?v}p`UEVz`f4_3g5^k38AfbbV4iSEU{6S`7 z*>E?yY>b;3z1EE@YjdmQ?~16+?H0Ny+veUQ_yX7FMwMM6^b)b+Qb~8In^ZQ_t%_!e z?pdOHmgv4*c<++%yCnQB312C4b4Bk}{_g^JjnHdE$8{oeoyc4#GRuT_qg#`@S@OAA z;%wUzzd z-4XSR?v=lXUH@ou*)s({Kf2pJKf2J37W@jquMj*jy1>0!@T&#CCVEfw8VSESs*=A8 z+y|mhxsODn%RVLHPe(iC?{4|K(A^TvjBXL$|BH5)-6i_BM|JX7Eq@ofyM@0;(%vWh z2cr4ebZU|Oy(dbiE^z%*54&f|-^kRx(Th`6ZcJ*2{M{{o7rKi@?qZR z@Ei%xk?>rRn=5j2MeaJ`Unl(Qgug`a62VIZe_Zg#1%F)d=S2VKC7)YUGoxE2pW7t; zZIb>rNxw(p_sU=2^u5tJ=^gHz^xg7zp?gO9J<&7L7r5u7tK50QKTr7Q34es(5rRhu zK40+pg3lNH0>Lj3`~r_>MkCYLMz0XwD}?t7;k5~F6Wk{F^@3k7`1OJ(3!W@^vfwug zexu+w3VxH|Hwk`|;EM%cEcjxDJVo%E1;1JFn+3l`@LL4GMeth%zg6&C1y2<` zRq#~7mk7Q@@Fjw$37#f+n&3+XUn=-g!83%;5PDg9X7oOyCFLyZ)hd{TIQ_e~5e=2R{10iZ79ExRaNuJn%5VFO+!TD-6#R{7%^q z#SsYLvt{oN_zJ;Wt5a^A;TIc*pFcKD^#d=JJA)x}ugE+3oq@J@N!q!;f8DuP2_N`E z>1&Vy{;TlcZ1^o_IVV-``8mOt8~&B_*$)_Q+z{h^!p9?A=;I|DF*clI_{YK@TEIWoFt)NUD8Mf*kQs0I zmm>2#G5)VL8Q6A*;b)5cw++K5 zlt&x;zVV@FM?u=x7T|jg!zaHekpFD~K3pLG7sIgUVZ*Q?s!*Rp4{dn1@T-jP`=hma z*iSvcy-fyol8>~kYsmC98Stt9d4kU=NITRp>it~9NITQ)1pk5p{!0rmb-qA!jxXT9 z*6=9d-)nlt6xi@e!Iu=s&om4_RJy_LN{O$OmGwMNhq(`VI^2EO(-H0?o{n@&Jsssf z;pu4iX-~(xTRa`-R(U$nebLiNZk?xX?yH_ob{jpN;=b+aRQLZpo$j`JI>T-Ebhf+O z(>d-Zp3ZeY_jI1y@9BK^TTd6b|MhgCd(hKG?wF@b-QPT2=KkU7a`$gfSGbIfd6jOZ ztMYV}tMhcVYxH!DYw~oxYxZ=5tQ{f0(LKx4O>UT{o87sdZgJ1|bensTr`z3VPxqJ~ z_nM#fnVt{%$^)oEe`WYT+{fvmTenv)GKcgb8pV5)l&)7)oXI!N9 zGcnTonG|XLv_)D!lcU#o`=>;0o=%P4=;`$6EuPMZrg=I$n&IgjS*OC^bE9{AIxl*k zr}Lxvo-T;4_Hpfi>E%S6)^eIo5M>l)ABKn-CE2Gt(u8P)rx;pxbr)#3G zd%8Z_-5%ZV>F(%&r+cE`d%8C|;_1HV z&z|m&j(d6_df3y0(Z4)B6s2XXsdPu9N>7hPwVoc28azD_o$aYhX*jwq zTL1Mat>;`y>nm^a15JLg$qzC4VJ1J^2MQ+c2N*wi_mj!XTArxR1p z_HFm_2J)M)f$kVy0$)3(jz1h?G zskeE$AoUJU7p7)=x+rypr%O}s^>kV4gPtx=E%0RL}%rj~fRD)n(s*O(vHn;$lq zA2ymFHkrS+7~N*_yN&KiY5U)6@%zkg2TadF;~z45)cD6Oe8TjcwESG!`f*zOaW<{> zTc6hY%~^bt#Sb+8VB-%-YrPLkYkwb}*8V;sZS|Pe`Wuzj`Wv0L`m=l{n!ZV9u<#-aFSYP8OTWhW>y5v`_?s-e*}_|_T-(yxp0}s9 zeeF&!_w~3pt?g@HTF0~fR{jI&n|%Diw2p&^OwUo%e=M!z-f`1=!t!$&>sJ};R~fCB zdJE?)+>}v&=QC>8z>L=0;Eax+LozyE4l{itjE*!tqfF0eOE=c^jmxOLlQP<$+A`X2 zCTFz1rkI|o8SQt|GoSV4oNfF$rf06{pJ(~aw|o|w+#=&IHM!-+Ut#=}#$RpxHO60W z{0*jWqvf~B?B1Nw_P5RW+s!|_Gdd3K$>{jMH>2%xzv(|<`VX4^qsBjG{Nu(yX?$0v z^^+;H`mu1%!cApbANew^r-4QXm#Ke;l&PJ=%Cw&hFVlJ)QKs!^l<6C7`o>!Nab;SL ziDhd4q%!SSZDm?NlgqSTrj%*@O)b;*I=xKC!x?4TUT2qSz0N7q@o;XLj)(KgbUd72 zrsLtlGHs8G%%0;GK4D>3Ztb<)+H1MZ1La!&CX3Ho{6LEzZ1F?NZQLkVzYH%|zlbdOFz;0lZ@YH{K=+wis_wh`es;ocDeSuIpyl_xt4yOrJrA}{#|JL7g_vL z)3eOqn6Jx%lEk1al-68Y5BPd^+RQa)?c#x2->n~TK_0m+Ke#%#P1v*U!7>!g*-RjQvWE3KX?t)42ao+_=M zRoXaXa)V87h{+8zx#1=^qEh?Y$V%;Rqb=Q7OE=EaO|*1v7C*W2RzKcPF}bNGH{JBk zsMPi{yHeZBoJwskbFCcnP0s>LztGYzvV4}Bp5-RD!sJ$(+-l>mG5&hv@3!zB3-2{O z`^=sLmhPa*9WuG2mhUl>KW=_GVSYJTspC+lO8sA1rT))W*|=Y&{?Aoef2mTx=Bw1N z1FJOsFiSt&(vPt8ql`b=_+yPf&h$<+y^~DuWRss_@>5NIhVf?`e~$6zTKaiaYka-U zullm53#+uA7FB7xURtH~w9Mp}S84sNFg+`)v>mRh(*C}>O8eQGD(z?ME#D1h$0nnj zjlae8Y&ZUHQ!L$7OE=xp%{I9?CO6mQ z<{N*3@t0b7nT3~|+zQjT%HmgB{2Gg2Z~1Jj{+h4nP1WD>baS=V`KD@2^`<`yE zzRT0y)w?|1YkK#Y-u#ulU7YIL7tyV2c7_tfZq$KD!U@9wM7 z{f_-c57g*>$H5xi?>JPW`yEGXbid=6(c?9`?{T6=$A^CBb`yfNIx(_letNS3sv$_v5!sy7X?uU%Z>VC-R ztnP=5&FX&0xUBAnOw8(j$fT_9hqPsNKV))N_d}*+bw6Zk_K4r_n4Z=BkQrIs51F0) zrLXTf+23gWXAf%qXAgTiKl>+77i1subYb>{r;D=x^mJ)9CHv`>Zdta%)8*N$rz^6( zJzbeS%hOfa{+_PR4)kMPd8^@?CF;57*Drl$9cLv z`zlX&XaC#NJ=r&Sx;Hz;(|y@XJl&styQc@Tmw9?HJIB*Q+4p#QH2VQhk7cj&^mulm zrzf(DJw2KIn5VAx22V4!D?F{N{fwvC+AnxoU;8CbbG7R|ZK}m{j7pcU{ide_Ywz@Q zaP1aPht&Si(_ytcJsn>AV^2ra?)7wJEuL#sx>2>i_H=aZ1D=kpJ>==Q+CO?avG%W? zPOAMsPuprwdOEo_l0E23H>I}R)2X$(j+tJo^Vy8r8qc3yTkq+d+CHAnt?lROyxIYt z&aWNp>4Ms!o-V9?uBVG?&+~L??MP3T)n4f7^4gbqx}x?Kp02E&=;^B3*Lu3T_Vu2w zslC|K^|ezy-B5d}ryFZ$dAh0gU7l{Po$KkA+V^|9t@eLB-Clc*r@LzxdAg_eqn_@q z{iLV+YH##(f9*<757d6%(}T6Qd3vb!c2AGiZt(P&(c`t>@Zl4+-|_Th?e{!&b=y46 z)ZzI^rK>cWt-HsE>y75>?(^X$qxrghK0MIq;JRP=@DQWJ>VD_L!;Oxp`-2aUtUK!I zD5In6{^G-9>;CTPxVlF?omeNI@D+O|)s=bLR#)xmQm4gXh-i@8J1$I$tfQ)A?#)oz8DdjlazJt1P_Q!fQ-!eVxvO8!dj5 z#c#IwEp<9SZmZMzaeJN43wum{ugUGRbo=XcUOZ^wLv^|yJ6fmn$FVwHuN|+`ar=a& zKUt^iHP=h?tL&xoXttNi)%Vi$xn5enre3Ni-%Irm?4|u>a4+@4kY1{9xP?bpx{!tJ5ar5U1i$7`9 z)oXmFUj3b|*L~;udTocfdfk_9s@Hw#fkp?{tAB@>{IGi6rygFf`_v=qb)R~a$&Iep zdK+7>^*hn{lZ-#l!t*V>z~mOzYke-N*LJha4q%TovA3?{+Ink0 zpKR%;So-M}o?+qHrf-hrJJ;-(Z*mJvZlTF7vV51C{BpB@MQ`oDD|>5yUDf+JzP{F& zp7o|@gX!61{LRMSV*G8Uf4lK_8-I`Gx7Y03XMQ|jdJdZWA(KC9dX5|agz--r-!-UT zGe#>L)SvYh&NXQLG&N|w<}H3;gVyih2JNRq8uWL=um=6zFucKjH<+GLre|z}u207` z=(==bgRWaAHRyVEvdK-c{H9ud(=ERlmfvj4Z;s_R*Yca!pubZVSiTEQ-y+ku)buU4 z_!SM$^Yyc`;RV{S8b*1#x&hDLE8Uug|MGNw!z(@A&@jo;2y6p{@d%C;fN>BGR%=2__!-qWG*YIIa_cwgR(*q4lJw4d)2~Q6-eA?5a z4YzoDtYMX>#~Z%r>4}DQo}O&@s;91Tqo>4?U^c{;N3AD)hC{I{p08#9$C_t?fN zPscUZc{;JN(bGwdO`f(jHhVg`@fn^@X?&KaQyYhQI=%5+PiHjhx^;G=u3P6c>biAq zqpn-$HR`%`ext5i7c}a+bz!5fTNgFzx^-!zu3MKi>biA#qpn+5G(O+wv$F9;o~~*f z?dj^qmwURVae}Ao8(-t;hQ>BeH#WY}(@l+U@pN;yzJ>A=QwWs?Uuk&<&xkR@%Y1T&1TIbG4pM$~Ab}mOI4My=Jzbc) z$kRo+$(}CFz1h=cxwm<`JogSySL9}Ux-xf#r>k=B^>lUagPyL*E%0=G?pjYbkbAR!_I*)_A%*_hnD_HggJJw1@S z%hQ9oU7jAw?eX+z?x&s}%l*>RdLnnwQ`g7F@jg0USN75Iy59IX<2M<9poIrp zct{@|_lFyQgz-ljf3)$(8h@gNCt0}78O>T6>lwb1Z(I(fKB~z~mNMK1)r0 znaQoN@Jb7>vUIC0-5N``!Q?iY+$NLTY;s#nZrfSfF1DYg?O~6l+iU6eTlj#54_WxA zg^yeKgoRI9KJIMwU**|WA7^WQF1rT=LzPYZT-OH7Mk8gCco75EH}Esd;@4aJ z28-Wl@tZB5EobXGd)wK%PTy{FyU*6&Nqf%Lb?x4>b)CM?^zA=e*SQBRpF_q!YUz(z zKF7`elP2ey)c=_#^>^07^%l-GsUMq~)DQV4`(50m`3-K;=Y>O>^tt1(CbfTfliE9? zNy{;bj~guAMoYKJ(rvbMTP)pnliO`_drWSx$?Z40 z4>aj{goEahJ5OzFN=uzWO_RU|+4T!F}~P?~uOg_hEgt-iP`~r(#Xz`2sYP~G&tM#(1 zuZ~m8`)WH~(O2iKm3?*ITGdydldSHm?Q6a1-(dPTS$MOBw^)ALEWhoR-yW0OYjXQc zZokPLFu8+f*CDg(sM&Sg(x0&OCoR3}r~c0L({fez({g3|X}RkAX}NO!v|LU7v|Raq zTCRcpv|NMx=|0+!etM2{SU(-dhWFEY9NACnVN^eD2c!FGeT=pICtCa@i=S-aDHfh; z^3zRzw#Cn}__-E8&*JA>ITlzs7Mc7~lV4`?%T0cTm4BtBTW#`dOn$w|Z!oz{{j|Mq zHn}Y(x83-=jlakE`;5Qe_y;X~$ihcW?zr(!82_a4U4QjgroYx#w!h|I-{0o3{?@;Y zKhXGtjX%uz!;L?}_@j(J+W2FQKhE--X!%X*ukE9)zqXIb{k45e>96f$YJY7X)B9`t zn9*O`$L#*vKIZh-_A$@$n{W9ou>2NUev2%>WhS@WA3vcJ)M}p%+pEvIi9xV-{a}z{0BUplE2E+ zsriMTPR}p)bVmMTp3ctS;OU(F3QyD#FTRdHn|DmTV^E*9Vo&T|?>+^d(-H`u?j92KBNxU+(F?e2u63^Yxw{$oKK|V7{NHhw=kFJ(?fv>9PD!PmkxH z>*Nm%bY%1UJss8jKc0?lzQ)su&5Jyp)cjFT+nPV=>Ez}cJ)P3L($lHU zpZ9cn^KG8aXujRk+07d~ozwgcPvEJ7{BU}UK0ln%qR%I1x9D@dIW78}Z*Ge|H=A#EEwJYt@8y1rS~qU+J+mfwn&eLnw{ExK-6)uQX!HKuR9m1{$b`gLQAj-#7ebR6B>qVwvO z79CHwwdj1i-SXYtV&~OO-#*i~-|ReTd^bS-o*AHiuN+|W$^i9y{Q&zNGC=*mz~mR2 z{4(P&H~tFauQWZYOwZ~8>W?)8)F0~ys6RGY`puSpi>2Q-K!Y9b9RWROpfq#G@KVNiCDBuH=FR#nG z8$ zEF&;wS_}BVAP-FWTMJ~?703WnW@iB(nEWFJd|>j^ z;+y;A?|bi+_9V2uyn-pyTEGV;A7csSfytj$zy~J(8o}-56@0(^q0M-{V6-LR2Mh2+ zf_I2*;6EaNdj&5M%6x&Te_a6|nEb7Rub00!ywACv1v0>tIa0s}Ccj$RIP(G~zqNo5 zO#XxdJ}~*y1k=yJDA#pj&#VG@V9GBk-~*Gtu7D3r{>}nEF!@Ic_`u|+<$Mq80+@9H ze4faCMr;Fyof{0p|35JN%MV6w(mZK1BGc|4!PGxUFv|NEs$SV zAOlR9tpzeW3uJ&P^MGLHm6kI&v;nxiE(D`oZq%YXq|_I5&iR$8VFi zAsG5!Cuwm`h-CzBw^=ai`UJ`)7yymFw^c7%(TErJ6zHp7RvRL^b9SK2c~>$fjltecZ>Xl0zNSKsjH>#1V12c0Bsfc z!2%3B>*aeS;9oENeu8HTrk%jdca~t<2@L(`ivGm~^1zf|TfhetAGzoJ&OzY zz?283ZA%2ho*#-mcs9%a4$S@zjPYcGv=d;opXr7%wxBJ6|A@%E%P@2v7ra*Zv>BK- ztP>2GLz3@~0vTY+>@45|vs{M@_`sAuQoskMd|LKEt`R$H=Sy7+raiz+TP+xM{CIHU&9NA9<-$~g5j%YNnR5QWPm9%O)zx=QztOeK2OpD!-kg# zo+X$z1G8M$2&Nuj>H$U_prvtjxN`&_$325oPNVCDZWuRUk9VWX6fik^(+3 z(q1b3bp?E2@D~Ul`!#q*cfYI+b{5D0LuR$e95$Kk7O|^91{gBCMJAn%{aG!z-4B9U z#zBIw7yCbYmH0z2{QND!t%6xzVCZ~EbWSMX1B2fnKPqP#K40(>!ORPoc>!~*14i05 zk-t?i>m8Ww7MSf880~Yz0QIXiLDbZH(B{DwufzBkgY_?HIuGceNbleE=!F&`NG=vwiiVAeG->)P|_PvO%x@ZsAxepq}fn0Wz1 z=QBj-gaSS=_%9XyG{LkPnE3)TUtqMc%S1mg+ST6-vt5DzLb-Gfb1pFIuI3uW$g6gt zjLE{MZNT796B`x_-X-!FPk82lZQ_HaR3V5S9z%&R5s5##&y zmGO^A+Nxf0zQ9ZijI{5UwAIE(T43<2eTq-MSh*}ArB1suZjFl4Cv@xu) z!H4`wk*}^-JN-IGFy+CgJTT<*ACY=789#>#Mj1Cx7yp~gi$!LP;QJ-tR_Pbx3*;vh z$OA*?n?!z^VEF9=B0tk)&_{rG2_Ja@_ZOY89~gb`ec~Tr=y~5(sTaYt2iWsP|6=3& zekT|@eSZ{8osbzL`fn0Fz(`xOP3lW9bpnHbgXmlvlkt7ZWPU3$hYMtm zn9S{a#ZM;V7R$OzF4DVR+SOMUitU2YKK~%NN-)b(Ef~HA!!E+rXPly4DB1dHj|KhMs4O{#L=PJ7Dl%BKpS*W?EpT z1#T4mXonL7Gc7REzDd#oBQ0zIrkyiQ9%CRdx}Q~)c9+SPaC!hpX+Df`$a#>veVMShrrOeRni_Q-~)sIfbgR} z&fOwupDE7`(}Fn`RSAYqP)19?7JQI?;H9$@MLhWtf$ zDW5uL2_M+6EluW9(YaXg_2Re7MIIRQ%Syx43H~c3FRTrK+t)UNk=KnsQab44I0L%38?q zr6LbJ$m|DZ+F6Eun=$$4O4`LHk2(T|Jo*bT^j|GHmlz*ufx&N+v}=uz{s;{IZ6d#} zKpq(Ug(APRfDa7*8sQ%)-~)qypYW^Cj_VGXbvMv3`sPr<@Zmj@FED)w%(4SR=LwN% z70mVkOr7He({I4^12EF|*&+Q`Fw+7v?M%U2rCp)T0MiCw+5ikY&lNqu(D@a?vrNX< zi}C*{WnV0qI)T|HfnlewFTvCgKKcdPHZb(>68%d|#@C(k&ykDER|$sw@Znm)%nO)0 zfnoFSMGr9b14DnWol@6==@Vf3WT#;0@#|!hf3@UW)fD>&m_Df%OnG4Fzg*;p3TAnM zA>-#_lNly9v>G3I0VC~FNjsr{4-EcSgg?{x&;v~Uz>pa)Iu{FOxqvYjV18d)zy~J( zZ~-5femGLV2d2-f`o{W!DL=G;4_wG+UgHa7fGGn^nVEv&E58mjKI$6$_Vy{*`&r5h zKF08C1+Nv1w7y>prhmYP{3mzGI9$L7X1xGI2IIy7!Cx1h_#JUrF#QQkn_a(Hrb;kn zfGGpaat#&CyntaF`W-Oxy;E!(Umyca`+*_zQ<0fzGTuMNKO+3af@uRV^94rQlOnTL zaJzp5Q$P5S>9bpO^w%}jKR+UKieTCdOnG3)w~GAG0vTY+07K>_A~Qzt{ZignE|PVR zV9s|l1-I9!V9t-=Ghblnd6Ve5M)37gFE@&w#e!MhwSr$M`mr_uh78scz-Sv-O8`?p zF#WSt@O>hKXEeZ9iXMznz&8lqDS7P>%)AZ@-X-#o0Y+X}O8_%3VCDtPysGlCo}mFo z89yXt94~zO1Q`4k!k=mQcEgkbA7jxL;V%{pzoBgaL&lG{f;mot51o@t24(U4MZ!l} zaDHQnVCeB6Bd^rQWezRi1B3qp;U6jB1A~9L z@T=vcG1LPL{%yi2VAeY@>wU3c__J2Z z0u1>J4MRWrEcnomadnAc+6fH#@uL4$!PE~-{c8n7|5VWl4EawQrhf3Lf1O~K3mAON zm0JZ8~{82PT2e8&jJ81j$BvYsiB0fx-oA~Q`e*U!NBo3CaS$OA+E z5s_bPeBWOL?-F_67X-8aLS~HQ>-SCtBkk|Rhf4(0PGIn#Cm(iMYkbVnz^LogJ&GaI zYMA=h73cwm%sWNTR>80zZET0hKqoL{UM_le8Xx@>82ryl+QS9%z~Emh^1!TXVE7#R zfzf}j6PY7|SuS9t-6uM$1{Bnxp4=xH^1lnWUAA);qO0UsFr*9(7^VD=GUlnd?u8o_K2z-$k|=ZOsym#EA`BL4=% z7Z>m!5&lf$Bd@;+UMy)*M$`rHAd&ZDf?$>fe8}&RvMdoy+kk1?TEWx<%(TErdqmQ% zGa2{+82k@Od3P8e?H0JbzYC@w@F8FEW0h&|@529}*o^+WQ!wib81lD?{s#opZ--3= z~Z*l-K`m70fo19vJVxRSTvKz|eEA*w9+Q2L}IP;g1oF zvgEFpxzc1{8!&7`n*^q9z)1Ttv2B9M!=J$5Kj#J+Hw3f1!1tTYz-T8p{{xJ6Qngeu z+Q~BvL(d4oGew4F2WHuUS@v0iSzchIy;N*iESPD5DGv;pw}|~q1T!r#_@9)tYXvhc zFw+7L^OM+DP0VDSGTwx!RBZL1PY+kmMD81lasJ=KDt2fwF)!EaqIOm~+7_llS}ECi5xLbB$p7bFpByZD7{X62Y(^X@Q}ClcZf|eE0+y{NEa%W6=(i z@#BeL=tmjBr+#3h#kvuAm&o`%F2UCe#=3E*VAud(0Ykpmr(|vt%)AZ@rv1RI7ht5t zJ}q#eJnQR-$)JqD&_7D_S3e`JJ7Dmq34f^Zp%WPVtHkHP%omt>0W+^w!LY~goeDqO^x!AuK`v>4xjub2A$lIRDfAApheKH*O=z8`;#|0U5mRWNOsDVX|!k@jzrc9vl1 zL>&QB9@y&_Jqrr>OHBUtzmjpoWd0>Gs|sY+nhfd-nE3+J55Umha<7abChwnr8GrDn zrGAZ%dI5&~%Y}bfFm(dA*RNpOf5iB{P6Z?FWsi48La(|%yu4-A?6B<(E0ObZNt<&83K z2*#ZCH?aZuJjplusH|HAQz!84B7^l3F!cjN&m*FLiD2pn2LCytf35Kc{zTf3VCn>> zPGIT;M%w3#{5rwViS`K${v^@4!}!n%yenrhZ`B35>KCiGE<#HSq1}I4$dXmhe#)louFj$4b7ykoWCPF!d}B z__t={`_&mW^8h%7%t~1OtZ;*k` z#*axG7EF79Y3Dk@v;i3MpB5Xo3a0)YCWG+``1Xu*zY+U^A&+O8J59##EgOHc=y^ae z`ssOM12A-sH4K|yZy0+1Ao#Gzz#ilUybEcsP|UgmAM%I9h9f4AxdWKx0*1^%u_66T zwV~$Y;se33;Vi?D87R0)_{>PGIP~L39FB=Pbj}2@IJfqI0oe>I9}vVCn>h9`rR}r2V$wCB}zNVDP^uI@cBO zfx$m6{2hXs7clbzW?sO|3m9qdle~5s->)T%|IC}Ej|jd`>Jkc((=k5#fJ8 z#xY>%`M2OI!L$dfOLzshnyp$Srr2!fy(kbzdAI_!af z0x~cNR1ZWTA|MEZBVu&~)Oas?12Q;l)y<|sP!O0fpi~ba`;t)@9YCv_O#`xo3!@`} z>JY*v$bP@yU!AAxz4M13zn_QaJm)>{IlrZNovs?uYQj)aK{?mEw{0+z-#N>D_1HrvD6?>c^lypo*N=IO5Yrhf!|t?Bkh&RE&8XS|Z(6uKYRFUK$Ixs1#~^K|!l_!zzNY^&#;U-sSX zZ^@J$`%!oWHsAis>fa}G*mTdltbPUl)#8`cZ~ZE+!Qz)wgM5^Euk{J8!REgnyw?2o zM>gk?y(hrQS2y2lR!+Wb z&OedA3MXGy|KH?~;N-}uQ%;Vo|I_5G!RC06mDT@>oFj1VfnzwCax&#)%8vaunHz92 zW%WzRoHV_APk@uDo=iEJvSV-ZNzM{%rekIG|4Zhy>Gn`grkqSUnX+T=O6E44OgVm8 z&owXM?43RHm@g+^*6$w4$(J4bK=K!1^Sd+I^jneHZ@QUst|{5EzscC;=5eg7zK^kk z#!tl~n{SSsoRy}#r?O*zkFf{f?^1LB&-s}Pe2DY!Gf_SV{=25H<2ly&V)QRIHs{(e z=1k(xymIE1^}Lwcyh=mfO^AJWy7vv(vEO2B?>2M)A{>vb=d4$=r%m^K%E^~= zHe~(xVqMG4?_9F_y~!EC87pVKa&lz-4<~0>{Brzq{IdQ(#J^hna{MFMby>fh8szFp zrn;FgCi8Id9D(!f7{fUyax&#)%E^??dkE|At9M7nD)?nxD-V{n)`6}R8Ak{%q3g@4KC-N06Xtl@G_iy z*?jkO0Grv}&x=Q0kIx!8XHPcsj%2RDj_vOGO@9%4eE?oMlb@|~-jLGV6Vcrp(96331a@OF~EIanIj6DLUwlSO>IXQB2HsIvQ z=6r{o3A~gu38#nZW_reC$9C_xuw$RVx;C4~^CLUfzMX{ zR=?SiGj{E|{d_Gw*c|s=&U)q4EN8v4Ij@(sj`XD>+Pke?m31?n8nR0Su{ZFPp zC!5E5wwuQ@BkOsgXYvm79xlRJudL@Ccy<@h5}ZCS!`WZidc0ot6#rg$9ewd7+^^u| z%jSQI{Qbqh3MW%e=E34Q1gD0z;+Nw;T>Klb^ZH&bJMZ_H_jvJaHjme}tmj6r;X5lh z^~lLT+1TEmf>V#2vnPL@wcm@i%Lm#Slg)oH`Zk=slhtp_ymIE1Gw;G3=W{K>S(ohC z`!aSntl!#}o5yv@dLD~srRcKyMd+(Vm(^c_zSeZ_SF-w1^doTAE@$ns*Vig*l$EUgv49RK0M8^t5XbG-0o@yPL< zEWBMjay+~4Jm&>CJ?z2mY4<)4A8YGX&pWp4UU%>F@D`r#eI8ziyZ3oGJz0b^@9x6O z#UsbFr|?Sg$noqid;mVgUObrnS}lG#{)2@N!PyHr*R||5dm%aU&btciUavLX>;1)z z?ZeIginZQlo+&4@)A4&|aIm zWj((QFZ{y%86jWDyk_>`g~B(4yYFw&9s3-{E*6iRYgX3tW}ZiVIQuKBzm~DfP4Axd zP4^k3?!5L>Hq&|cHqZCy!vIdEZ007JD{yL-9qW7b5VlwDi|knMlk!>2<#SEm3;Sy2ckIXE<>u+mNp#NDUO3m3oNG!xhn)M-6S=#l8t2_l{k!z-H=FKU z{{;`w(?i*M{+k+P`{T7E>%ZgYIB&4)@~q0P%d>g_PHl2(ldbJL%q4q`hf|xnwVnCb zGmmpUA0DEohqC%3s9_cMZ%urQp2+G8f5Uf5@Dll6%d+*`XIanF7`p~1Q_jAOo8Ntu z_5UUQjpCQ%pA^5W|5E&$#V_mc&QREx4Bdb4`oFSaCvikY>SDWAO5M=cY{DD~S|{j2DkMVHOF!RzRM(Pi~>(HDMcUW1%7FMGZF z-$#&r{`%iXkiGV!AAtSdSlw&nf>+Gg{BOWL^mTMUlgdl@y-zN}>7lIuQPk5fep!FF zcg4Tl{D<)Gg|CC>`mbb<;LNoGCto)I2>xNw<V(_X{|CA?KXPdB>3L`CVVh{|-C$ zI6Q?HTHm(eoF7@wS>!L=t2~S0Epoc=5a5jM!8!knaQZ2ma}RQs;ENgS_dk6&W0y~3 zb9{$iDY_he2&X@?bJ@4m#@$}P&U=7)55bvt1pBUjoV}BiBfBoo&l;RQ$mYC&oN@8X znRlbHdoAmKJN^mmnK5&-cw{}F!82{T&mcMV$ll*RdWw0P|N0y3#h%$deull1&H0^I zagD&~r<`8NxxX#L*6e*icI???t`uEXe+GWQ+m9dB5 zjFmH1&bxu^z2e4)={cPG<d2aBds>x6_Bs-+f2XbiXHAZG7XSJnM@`HplNw z)|%ekLz;d^{Nv)6_51zFM)Aw)55Yevep&sQpQTrDdM>Bu)8_Bq)nV^HufebGSU;m} z!x<}QZ0|m^-gfWmuzo*BEW+{2@%Nj*`#cEe{Hq^hUhgxqIeuPPhLa;FX8^mW&MWKp zGr~&o%kdw8v!_EiV`azQ<0N|oXD&Ho55eo4+gl#y9@6}ez%M69&R98P*P5q$M#Ii^ z;ZgP!_Ikg99N8T2337TO>%Y2rtigBGjpjE~*7KKSPMU6xoE%w?@1L7+>XcLGDLDO^ z!q(HhzrjoG%&VK@JLEQ;9633?z4Nhh#>$TUJYyH(jFmIC52p{Z{qcQI&RS%1eD_<1 zlOrEpm_0`ZaP~#k@ApwFP4|8%tNYG*0M6Rw%NJ%jviGZBW#46=t-kNc-$j2y)6Mxh zJVbvhHGk^Vj8lWU9>2d@h1I)fR@2|Z-W`HdgPa=V)F68=y}>1XKMk9C)5g|w7kGs3 z^X|w0YsOn}_l!f&ylb#yukakg$MAShlfC!4#tk@rS^srk&l!W$^UdOs_4s$xPr+Hs z6!r{Q!*=n@`u!Wxi}#(+C99vqTuX3r=xcI}t4_RbGG*D`wQm(6@AnS0@6 z%E^@N^Dn=e@04Ks?9Y#6^B;!30-M?WemiWYe{*=X=(74P*Lf!_x~%Tsxjh1(YIVw2 z7S6mI=;^b36p!ynn?;wSpDer$XYI1{K83X}{_;%s{LAWoA1gao_wEgwX>WHocHZUY z>3UoALD5%E>2l)*C|Ku6mMzz3>XoL(@I;vicX8cMLn$^DJkq ztmp6*+ymjvD`(yboO$Jpl^y$$E4WVKjFmHX3TLdGv9e=-cm*1qv2w;P+@JlT=GU<= z;g1*oVd0;9&D?WdWB2`OjW32@&^Y%}Gd%-uf9-5+&X0P|k8GWL|AuEXZ2i8=$?CWH z0?&6i^~;KE_!rqDIJL>v_NVB} zaB7n?b}zinx^DJ5?mNXJ$8!L_43EFlB71ND_1CdqaORSo>$P8;>CWZzOWoQ&h`tKz z_u7~BcfX4Z$3KGg|Hzd6ZGP`Rvi|#`uQk8tR!*IV8+%sA#Up2b<$dJ4*Ro@~=T7l& zG~MUy2{>z?z*(8aaux>j zXNtUYPk_B|JZj81J+L*%R~GhJQU-jVBBOk-#KFZd1y>0F%aO#m$Pak&e zzlcXZ3$}-{neL-(&NJ{V!^x48GiZMAWAYL?)*w6fZH!%kGgi*n1918v=bkCslh2Jg z!>~CAHaMTK=lOGF%AOO?gM1Ne-&WzwC122wLm$JbVdFGT{-o%er*S+}^er-7m+Zdyb9vc5_%n3b{#|2v#{<>d5M=I?uQ za%A`29?E-Rf4(o9`D0(={J_bSleq+^KXUrhhjS)nb8b(Le2jeGOPAqf%E??Q`T^K; zexswD0oa}|H9myi{aZ71^KXm3TE@y|x~@ZT>XcKbZ026Z%I@8-Hg?`m!Xxxt3$oYC z!&!^$yzB59oVCcAcU*Ki`bN>^=qF%n_&oE<*5J94b5D@3#N&CGz?oN0&Suf&=u~itQ@eGPC$G=i^IsOB1_E*mS z$``Z7-+Mjh2e!8_dc%y*LGS)mHSm({JLMytgeiv$9c+hN5KSj@baO#&+gY3NB{T$A_(_-;2!S3CEx_9t7 z)bsm)$Nd?$p6`D)l7FT>(`U_rDZrZ4B(8F9s9di@eTmzp1%UeFQ-2T;G88n zXGzXk8p6q!ms<bG`B^?*DM|<>ZfG$NHH?KE~Qzi|p7BT*cXdGgi*nG31lQSv$CY-UdV;{!;PMdE3W%b9Bxn2CS`V&15=gpr5vORnz z`zU)K>)sXNJUi6g>+Zb~PCt9FHQN)}{Pi!-*mLDsT5NvTE9-dN9``JhK9qD>+n(>9y>2)_k z&s=M;b#^~rfX%szoN@Em6FK`OyWa17d8X?>=W6!7`OTMi_8nfrZ_Wfx&t=Cxg0Y)$ z>X9>c3TLdGv9e?Tgt6Oj#>yGn`<3}vIb&tV{taUn;f$3twhw1sIb&tVe&}lU4$fFP zV+TcFIgR5P7Jc9@|%)3@}IsS3cH%{YtPM~{+AI?5bif8jQj(@x8a`fK$^EEEQJN<;?S%RI*cT3r` z>gVEq^LtK~8`~>6WB0<2^}jnXC>}X|SSh-ku?OIsXW8fVe%32r4EwuJLpU|d$y_bE zoXipIo?7!7oO3JZ+#Z3g+0REC#Utn3Zo-*YPW~zQ>*PQB?bI$)=dJi&PCkV0_Y$%> z&&D%_eP{5$sj&?wN6uR0%(eKdbB`R49M2M*zR9@{$mcMZ*Me+qH|A&S@}r9Gz2cSB zrf!`}?_jUtB|P2!!l`o^P7QKuSScPk9yy)^@H%tdgM8WAeE%F4kDRfqaORb(p3G4j z>;B5_ukXyVYq{%J*!SjfEpjr)aP~sZSlO|UXY2-?x#WyJ0bj;ix_>JQdscskbxq(c z*n6OyOxesoCvy`{rku3YuK~*l*T^qeD14z_MY2xYq;*a zI1lLQ;VPW9$f;3wCHmD+eMe-@BP}mW;y=FqRa93 zi@tms$1^DU3Y@)@?VG=YcL2`b$=R17ywgM2vE6r8uw%QQ;}p+Y^LRF7J^q`Baq(<4 zPxo%tJkRhQpm;WmM>gj*c&5d(T|Ba$58zpN_M@{-sw4Pj=w9SUOlO2RCGD_ zy|tpt@gFWcE}o6kIQ|ppsb5b0vVWudjnpr@mJ4`($=5-D`@3iCwd}j=M1Q+qZJx%N z>lAv<n)^G0$H-jpJED&syZHMefcLHTT=t?!DzSHph3}0lItS&r{@M z=sqvx6R=}tGyV7A@)o-Hd3hc7ckfr=^h8db2jJ8xr%u`XYsDj*e;3a7xOg^BS;qublPD zuJ<+6FS}mpXI*kK7auuamu$_Cq2^^+f49G|e)n{x=yLQ`c&9(GInO0$ zt?07)+t4?PE~{UTz6qyJId#g}3)#8+zEO7U!}&eE?WTJlmem*D%suVb=b3Ucmy0e( z-wR)dwcq9#>xG@m`?hT6GMTGQ@9z0c@9sZv`lcuSS!;UtzSMM|*BeEbQ^RJ_<>;qi z_xdi>CR@*5c)R%J_!l2l)(%Hsf|DbgbKn^7O0Z|<>F_d~y^u3@FPw8I=N!t(l+C>M z-_tiZIdXCiz{!!5BU{657%N{1dk*E~%ZKQL|9u46&%g0F@7ox=ik`ib)$hgL9fEWJ zTq_<~&!h2dz^PeI%_rcTjZHXbUUsZ!Kz6M4$d2{eIR$6zHk{hzZmehZ(ertiPvg|E zQuNi+IG#21`$%j&(i@a|i5 zS^aGE)uPMl4?*8({C;{kY5Z;8&t*ST-14h4c3s`I-#lN$KZVt;Z5z(s$>~Y&F>_s3 z@4f?pZ%Dp-vz z%kgg)zpVdB?6sWw<@kG#o%csxr=ITL-@(r7yToE+Ymm)6N)7#{dp4GfN7nNq=9M$A zoOuV$@BXedz6+VMWA6|+68%39+Z^G`8_YK+F z-s)Z#T~_}X`oiPp_u)l&r+zq@%SD%??}c*@AHZAG?0e%%@yq&M%MiBDen+%gJaRmT z;AE~9kDPhOaOT=59yy*9aB?Q_67zb!Zx+8C{}fK;G7vbYdiucUrzoQPW^J~m(9G|YY(crudzQ{_j$L7o*X$j{i4h2`sJN-RXoehV^3u3_kCD)-t*Y^y>PCD0i1c| zrnHxpToI=w-#pCxSXEL&h=&1xC$pkJpr}$7^b%>5i4vy{0B`YL?UI&El8!d+ki& zeaz*3TXrt@UDop@YTjw}r!=~F?S^Wa?n|sn&IP2wc_i5Dwgp)6)x2w(X8fE=M{BmlOGj;@@eNC=|Z*ewY*JYiuWABT;)^x8mS^b4%9)Z_6 zSGT1sfj`{|Dz8y<9x9p8MljDY~q_ihcmjy=b+0+%H+rI-Wztv(`NJU)J+?c#ag0d?CHE zZyU|uUGL5RVf^YjKXUfy1e~>O!uH2{Was)eV^6`US4Tu1V21;f$3t zR?gT{aK>&IzZ}0D|HALgd$I^8Uyi>IFSWD1Ts(3-d*RHxQao}za^@YvTkZN?Eq*zE zIsQX%@<*`ukjuSSz^PfzSUF?Iu=RK6t@t;Je*$}-cP}=JM^2`k%v12r8G|ou`P*>L zr0m&vHD{wYoWEl)!l_wKzMTB!;*sMS6n*71j^_Y+dNqVym%q=j3R|1krfhBhLTw{B z{aJ&p&HI>artd#vc&qK#2Amu@Ih%0SC8wTKaO#;hPj{b$oj07m=`r)H|6!iyckkq6 zF09V`--9!+oE|O~UC!7gIQ8^l*X2E5wg$iVkgefC)F9^`EAORd|6R#4oO$Ks?}d{; zfX%mlIr*~rPa|Kxj7;B+W#5h8guVhNUrzo3*nBgGaIOV8`y!kF=5MptaB}429D;L( zW#_$wXX^-Fq8{_*WXfiqB6AH+rku<%oa;z-toLWxvA6mT_c}OZ<%~T6r=AJyy8I47 zP7Sg-zfR6()4hkw>i#VF6uiz_Ui}`P#jxud;g>xdzL&~ocK`kecI^6h(csi3r?!O) z=C#Qew*K_sE%NP^oJ`rwcaSM(f934&BAmJ8%(bMSOn*0{59j)o(@)v_FOa_sCr3`s zUN|`ec&XJaCr38tX5XXN#ee8D&U%j&U5^mgwvBDoOxG^U)FzL{D+EvRQz(*wFX;{*RSkYe};Pm&Rk$KP+dHOThUcNN(>{cdNud8|Rs z*g?}BD{r+P%E^(k7%kht3=konQ&Rnu{y@k2f;G6+DW5=-j z@@YJB#>$Sp(f8R4IAi6EofKV8ots6M_*{)^pPH2`5ud=34W2-~Tkfzu!KFm&okS9-OfoaK=uWr#pMavspabMVB*nk?#?b zDM#A7tEPi9@qO?O?g`gd8^08Wmap05JP;~hPT=|l(Q~b&$k)7(R6E&)t}7R37r1RsZ-W-^B-{S7hP6= z5o4#YW8D`y^U8W2%Gm9uJFl$%CdT$Iocm?<=i^^&x_(*xBl!Dp`oCN}vYxB(42nl~ zk9_{FG=KL!XY>2_Gly{cCTH!kneU~Z)uuaER=@7M*&{gh$et_bT5Epmm-XKc|G4=* z=kk@*7EYb&>7ne{ZEDzPdbf8?e-N1yI5ljZ#yRIx^nJ|LeUA-iUiHi+JJ*eVh}QIO zznXplbM^jkeqWW7BPT~T=bq#&Hoe=&razCIKAf7Do2R?aG>`A_gW{2QuC?M{X?~wy zvYGZ%cI~cr2)p*jQIDLO<?;abt<=;NZxsdJ;~a{QB`%kgg(U5v6k*ygR>TO*J7V#*Rt+D!dZ))%-;W+kCii4cI+G7J2+$Ij9qTJ^~mb>d8O!b z^kLJjc@@rFvU9za^RQMta^~77x*UD8=yKI}`ibsbes`+Jxw_w5D`U5t$FnEv`3Uta z^0{kg?XWp|)b)G=&vMi4xvYNEOF4&d#>yEh>$wk})#8!kk@Z}FXRYbx%jz#d-)Oq` zB3b>N=$l2C)jy8DU36Lf8|aHqnayjCtbT)ItP4*4a%z+HoQr3rc;xhdwdiv6wW7<> zH;OJt-z>TueY@y#^u<4#*DOb0F1j3jrRZ|>)uPMM*NQGj-zd5qeY5Ct^zEX{(HH-? z)DK5rF1j3jrRZ|>)uPMM*NQGj-zd5qeY5Ct^zEX{(HH+usUMEMTy#15O3~%$t3{Wi zuN7U6zEN~J`exDP=-Wk?qc8G(LC(A!eYxmz^p&E^(N~KuM_((t9DSqca`erj%h9)s zE=ON{YN;QNzFc%U`byE|=&Nw9ciHRx(OmCq#V^OdQFJ-_X3^#7+eMe7FFvi*4@X}v zx*UC_=yLScqRY|OiY`arD7qYdv*>d4?V`)k7yqQx4@X}vx*UC_=yLScqRY|OiY`ar zD7qYdv*>d4?V`)k7oT40hodhSU5>s|bUFGE_Fd~X$9UEkj~vfh(dFplqRV-XZxmgQ ze*$MN*>mf&Quf^b+Yfo}!?~{IjGe+~Q|Fnxc>jOK+#|;`D!LqfTy#151hxi0ugTVM zFY>2Fm-92+j;X=#4P^a8{JlS&=g8_WK<^h_R{sa|LD6OPFQE^MF022{8GL4Gy1kN@ zsKIwR`2_EBVg2XfpP+A{cRv${Q@?tCCL-_jA9n1M7~4BE?@u4L=NF^P>6M&J*|G1( zGk~*qa{4@kGgeLwvSY7g?5KIVH8y?m8my)0vi@cC-ZSTO$(c*eIqVmY9DM+%9yx1~ z?XB;#r0h-Xwhay+u07vLGg>5pv9e)g18+XQxOcU{2QUv>ND_s_DK zZ?+H5n)&^ih-{9TvYwALPu8gJ&ocbkN*_)=a(XDIoWtrEc!Ee-aKFS46ovm_5T$- zgtzc}jmXwx4`n^a@Qj+?eV+rT2KCe+>p${o_ObcRk@b6)`{R8{*7HO>!{U+CLs`$W@f?Ibho0e4@yp4S^}ibbxOimydAldl z+va%>o=Ne@$&tv<}k-V5jT%kjv1 z{tQpQdAc(Irylj4H8%gH`1im^+nx^K^heHK$mV|#|Ni11!VC1|c2DHmgwykb#WRAF zbGYbJ*s-2N`96Qi&zY_<<134v^Q^}juAm0ln!E4c;OtB9Me|HKnQ}7aWXfiqaV>fa zCsRH`4L3vY!>LnFj+`9Xob~2Uj(TziaB}3-CMQ!)rflZx$&`~RCvylVQ%1J7Iet0*-k;5CFkeo-9Dl!g z%#@QU$1{Mlb~zr|xjd7y{{7_0uKg+S5YAY6tNCT`$w!(eHLE8_Hs_LS^9+KMBfFLl zG(9z_XRPelU+T@qt~1x;;Bm>3Q;(b)GbL4nrJ>SIBFCIA_S2vdVKa|z)()1(r=K=7rd7Mi&r@MzV|1mtH<}pV$ z=M(7TraM;7SXs{$&!l-AEAJ!Udxfm$n%BWsJaRm;o}1w5Up()LoVjE@x5G0i9yuOa z&;9WXi${(}*7F!VqvDbEbe|oX=YQcD7mu7A*_;>PnZTZ(?(;>{UxVIz@$9VHXF2z3 z*|G1%(=Q%59$C+4@C;zjq4xn<{fA9|IrIMHkIp;`ZBO+aMem-Qa59H*&bA!C9KRg@ zsQAatZ+~R{?ys!Bdk=@L?S1cK-{I6OJC|c+ui3wBp42lf9y$5_znJB8&sNy6f5Cdy zkHT;G4DS_iH?Mtwx7uFF>Yqg)!kJ4>%_G=4zl}$Bf4egPJNCNQWglNMUyGc+$?27> z|L5`di(igkj$hV)AN+&n_xh6Km*bc9@5euEeruMkxx1E|=OR2K_!zopvSWJEt*eYx zH}l2#$3>S@gPa;<{eO#pQv7miko6qLGli2QyQjX#?t1B*dvM0ej{U!k?ZfA{y%@qd zOY+V>Hvc#AtLOb(KEl{He{$EZgK*{@!8>~m=bWfJ@AZF-zQOC%`MbwC+i>ca&FRiL zoSX@q9NC;(lOrcbPR;I?lUZ$d3&&Zb5CW*K8&&b;*m42 zoPCt_KNb57(X_Pu-8f}PjzWcI^5{cj%6#t=@=W&H=Jb5uNXJhGmr;~B%L za{_0*vh`TQ6wX-L`}0c}E1Poy?!9bYzpTIe_aLzT&oz(!>tCNUjGlSr^h8b#1K6DI zo(bC%*Q=hfa>jOy=PRF{d7SIp@DR`WZR`lnSULTaGw&F7F4rz+?XsD-q5etHW%c`@ zPn+)AW!JvH>3Ux1*q6^TyZ0zKeOAwRCbE9NGm*F0i|*Y6UWfh8Wb}%%7C37eH{D*z z>fLi3c8%Tr4K}}fj>Fln32c8HD_ei}9EWp0hp(LZJ-4zRfB#uF^Lg+H-sv;EQyZL| z37kI5*=yOHXZ#D9ubTVit=0$G&lF?&DeHgTk8|c>bGr9iIK5R*Z)N@VR!*k8-g>+H zl3C66s`tA2TI8(dXW^H#c0XVDi${*<@W!0SN9TQ$t>J^zJb}|IIb-FVNm>6k{%P^c z@yqec`mcEduFcoa=asiw59Rn}{Xf_I7qKqSf4`0O8kDnlvi^JFzb~9V4B)IqPHl4L zl^y$V#tz}^mz@2QvtP1)_e)NWyx#U}1n2z7`u{iilQ+$DuSa?3yum(yyK4c?y7V~q zWo@i$>8=HI*V297fpZ;A;mj*1U(Q%LV`cN-LVoYfv$0-BvVMCm>+jAUyt7BJV?WH; ze(}rk4`A!*o++@`=2iIBkHWr7%jW#l4LM82FXvj8^>{7!-ZJlxtbV-dnX8Y!PR&pH z0Othu+WhOr`^Bb)isf1YtN2k2(L1zk?2yoGMB(-JV0-fK-qYaBC7XXfYn0<3!`VmqD06jZta-X~SUi*Fu@7?gS~mZ7 z?h$N$_e_D4uWr6$<&2db`yj^l-a7jk!3A(1USciXbqyy+J#`LX$9@vOob}4~;j2y0 zdWY!l%hDgxL->3=UN0j!bIJO>hsfr8Zyz^)(ogUn()`^stNA^{lef+5l(WX(+vh!( z%^Z=_FS@M$dh`LD^~zcA5Vrn*#Ut;W0XS<{PyMo)n>S)U*q-=1#&SHeo-6Q-o9K|x&AE>?6px(xWj*fE z;GOe2<((h^ziYl0*&43#VR{8S@5}8WoL-HJU(UR8>X9A$c55zvIW@@f%lbcoe^UIi{_dGl z{ObC@*Ziq%TE@!OcGI7v4`r{9#`fMl>x1t?vS+OOj0vYsb;mwwbLR0{cvj-hnm0i1Qop1qs>)J)g20zVEt zYZ(^5oIc3P1YLKnp{Tdg)9FJ_~Gsv94sZ(~|uAj~Gay--GksbT4rkmM4 zchIwz-m(9mbFWZO4Yw$sK5Px1PkD>_eJ;y6!}4C{^5?&@HT>s?c-FufD?8S;%a`Hz z->Ax-Xa9|=?ATA+PdGKpJN<-H!?%SlV!QapQa_W&&vz&g)j(tKK>ltt#N9fsK*>kvtN7nx?cw9WPo{u*@*Py!o zYyC85rugNZ^)}Bf@l1DFs+<4MXU#bM zRL_|izGuE(IW@?cOE%{}$Qc*EoVCb$eu!sMJaRm;o}1s4dYZ@kxx7<9yi+IaTJGNb zj=k^AW@A%-kLxylkll;lz$5E_0o*Sh*?K$=vYyxD85ED4nq@s7#4{`&IUZThHl7i@ zK)(AZr-!nhYyS*Agj2JewaZz%?AmYL{EofD&1Yk?_DRW+Q;)3w0r;oIBkSp|1vqo5 z>;EnMJ-&}lZE~)CShr~k74hvMH;{Db0`&G+od`Y*&kEFRfwq+|F?$Y#Xo`5H`%eCL)rZAkUuRRIr;KVZ=3%{w>V?hu78@>(}Uxe zQ>VPt=IX<#LADRKCr7r1^Wi;k#txd_dz8EnfA<*&J`3*NEn&y5GIl?lu|qiLO|}Mm zB4@1Z*yk~J1gCyE{gkuzF`W7*u=OARAU!PlNjNo3;bits{QsQHK6>hut!KlYG=F!W zgtr!E_3wd`KY$(UyOZqo*quGtGvHWtGyUF7HpllXc^&pUKIeQ_;KZcVdXY2&dJx7j5&e&)=WqsiLkX&PdJ^z6Fh;E<101sem==P}T-S=8>^7Uk1Ir(z(<SN6y&(X&lcU z^yCcS%qy>_Z*cZS-F59{UGh#(;GJHE{6a`{B$rgdOX(Bc~qO{Ac5r&3P?+ z5YE^UoUyVsyQlIA*y~O_$Nh|&9{b= z#WRJMIM3E2CubMm>15vBh4&QRU-)3*!-bC*K3RAQXD#wNHT==1sR6bp@BY_a+%)Gk z^x&Km+1k4Az2Wp>ck%aO*V0|Hu$gaK;#z~V-aW-XD1KT0r}4`>X9jkxJ=_ncKSMZk z$&URlW99e{7XJv&TI8%n&RPx^|M9{TICII)^)o-q`#hXFPZs~Q_+|a~#4pD$pUt`+ zhrWyNbh54DfUfFrC^>e(p!>L)`YS)W=QQLPp=T`RGza?Xj!&%n^PMs%4|*zGk5K}FZw|^ z>m9+4?cVue$L_>gOe}oe?NXX{@umjFMe77f8m$o-&6ei3lCw>$-=GZC!Ai%>5rV}g1ptvo}9iN zgj4?rUTA0XaM8!bFJ~^$Sp z4`bzwmF<=H&s`sykL|%(i|pEc4(=|Ve(}i8>-}HOdEQg}`wJf|Jc85D!$lv%sX$lCW5-e34&;SrpCIb-G2FWa~0e}db&mE)K7KiPdO{z>u6@yq(3 zjsIlvPm4#+T)RFp)p+7j+~r6?3wAl*M;2| zGu3k~$Y%PEByY8|A+N)}Bkh6B>^|$kseb@3wHo#p&#-vpcn%iNsOYjayo+@mE}n7m z$a?yb-{oT7+^IyA9Z$CO;<8C->?-zYf(Fbtmm7VvN zD8#KeC=7NA{ffvwPXO^c;sX*Pefy^8j{TPh{*6c3%CmnXhVk&fchb ztY6Mtvi=j+0B^PHOV0Hx>-lW+BvXAI{}0gjTsE(5f8im#(@)r(bIzup&Eq|M)bz)o zA1?YBP9J3Zp#ON`N%6?>oGd(rQ^T&0%{@KXwfNp5$0J+kGpT2H^LuYOSa{sHtEcD_ zIQ@~6DZ5{PL#Ay01fDj&8t#33zFs+N>BGsC9ee%T&~y0Z^yGW=M2>$@{Ib`n|1DkF zvA1XJemG<0j2*(6OV3Mz)i$``XUW2m!yWk%cj~tJz=hyHYhTS9kKQ4Yby^-*;f$TYJAH<; zM)j;wcI;~ydlJsrY4OO;>s-5dUx}v&CsS5;-(`EEU(Q^8IOk1v-Yw=G6kSfHoUyY0 zFX7)0r-mV%HOhLfe>=`_@r;T`)^jeN!^JZ$9$C+$@fT(^V!oVv zmu%+KsA1eZ_D4>gvYuDtnKX|%vikecr$v|j{N*($>$w6?@A7#Kay+u0Gw;B&4?fCT z9NUMp7P;zK*PwXhc;sCBa{NO$eUP(8Ir}SH&(BiNsQJ6^8Q|=Nx}Nj!4EVXeIo@Ms z^$XC4aL%E;GgtFG*Zks<({6b5H-rg(rol zg?pc!`}=U_8WbKDo;0>6vist*QnrTfY{1s<@A*$*d)56ODQv!D)xDqid;W6vsQ0;< zzk82@_4vEQ>PKOJ*FrY`lkNqazK!72FXzn2IWyzpk>i=bnM<~2YmhUq?7UxR-YJ~9 z8Q>8+$%`SIzQ0pZ&(3&p~6)=diKo zbJW=LId1IvoHX`)P8)kZdtaXAdp`S(J)eWdp3h-p&*!MI=X2cH^Eqkk`J6WPeDQB8+$%SjXj^^ z#-7hfW6$TbvFEe*)mgshv)|bBIcV(p95(iRjv9MD$BjLolg6IUX=Bf4?`yMs&u71} z=W__>9xmseJSw^zecW{4A7u6JJ44v#$U!pI^Bj@ASHB5;0%tBcnbV@n(Fb3j^AOHh zIi69`<>+I0AN73n6m`No^}yD%Wj)0s$0O$%C+q(z{%P}f-%Av~di=8fANwVG{*8If za%z+FuGoj2*Y_Mb&pSEKJK0RXCmF!5>umDn)GX_{Gx`wT=@p!LM@5&bp6Blv-TZD( z;pD65-9~n<^O&pu-}AZTWDbiiM;{ekjy^8BtloV$0;gA#;*sN#t!GF*Q#k#U)nCx` zBdqJ~aPOOQkF4i*_hKzYm(?GJJ}A1Z{#5i~(Pi}`=%b>`>K{cP7hP8WVbiVc)_XXU z=-E3tYn+y`@)G{;9UeC462|tvH6JTytehV9i$~VeeI6{HVe!bxk&`nn9yvJ^IQ^Hc z?L)2$c8yUH1?=``W zz0NPQb~yJ6c^%K~(Z_Hy<>X9?E@v(|o@w#O@yPKEzBA94qYvS%SGLY4QIEXTdNnE@ zS>2w?`d@^9QarNy+nRm^|0m#S@yL4i-EXGrc@o_F?z|pZ&lOGA)17DZ1-RQsIP2}h zS=XR=m)czN&fdY+*8Lm&@6UTOgyWI*T<8AmJM3Bd@W0Tv=IOrA zfpZP2>tDt{F1nmOlFhl}gy(hhui&4+dG5&P<8hDV)GsGTcCJ;%_J1(<4B*rwXRh84 zOV8nC_TfC!<(++j?Pqt-gzcw1fYTp2IkNRUhkAx^a^&QUiY`YV!^xEQF<19ohO-uR z^T+lIPQIMImi2r9Pj46hW&-xRQ`tJZ`wXn-6rMrx$UAFko*&>D!$1kTp12}7u(;qqgkMMdghY#e;EG+c8y-|a{O}qvi>XaPvNXlj$e*n z)_>-Jz2|7=5LeJTbQp`j$e*n z)_=wdeJ&n39$C+BJOem2$jOxBm-XKb{}9gkm*bb?m-Rmw|ET!orPd!=&lB;C;hb$b z*TMu&{uIuXh|-1ka#&WIf);WIb2w zIde9z-+RlMOHQV&{|5W$XYtGN%X-enGb$c=Aw7h%c6I$L_{YUBCsWpQ0iMCNN}aI! zdef7y$NQf5|55SF`rm17aQt%oV>q?R@yL3-*G-BpS3P5=#Usbl`;mF39KBz3Ir_Nh za`Z{j<>=F*%h7w+F6RpN{^RFjb$jw3^hDlyju(Hw`Tc%C*1zk4oW0^76u+GNo2>sV z{BrV##V_l(x3d0o@sHr8c4o%#&R)P-m-^10E zy+&j`Pr@@P9yvXf_1Hr>Yn&Fptlu8W`t6|{e{XSKgPfXW{q|6fzhC^aetRhEw}*q` zk&`K>53+vyFf4vK{g?GT*BX9wR;Tw0IoGKizpUSTg`B;Uvv>WX%T+(ZTAp|r_oAZ9 z*eS`o(F4|tDbq)Ggh|#?!Hv~V>o^}{z>z6@7vAOefQP$?pfJ%_o#Q> zc@462{r5-NJNRtY?#~cqYwo`9f{&v6^F($1M;^%js<-=+oO;HvIsb@9&e~_MDWIM(0e~NuU}SwR@3!6m%26k{Z${%zQ|dZ zoOKQ0tVK@EviYwee^@+nJhGk-;u#f>ypI~b(e$iEUH|u+?sezhjoVoFMb@))9({(h zE;;L(z^PfzTyo};&AHEc>M1S8QiW+OGe*Z3H=91Ol*Yxbmpm=0GU&bRRQ+BRvKZpBy^ZOY}b}y`1J_`GH2xW8pJA@-R zbICaa^3Hv}c*eyepH1dZ{0coR9yvMv>(BG$=!2rm(T7EsqmPO%M<2u1;Porp&+eS) zLHGJqcfDS}y&s?VO?K=a>hHtpgPi;UY^ME`cX|%*W2|Rb-TWar!{V3Ym*bc9KNJ6` z`MdihoEp?~4a)joiGN%?a_XEEU9NieQ9YSc`W25{_0-V2;oKv~BUg`W^xo1hemQs8BTy@vpeP2<=>aoxN^a9FH8&uz2KnKQBB|5shkSt@=xdod`w9DP`HIr_A4@5b}%QTEz@kJo2lu=Rhz>l)6rFXz4_UxeT5Wn4Uy=J7rwFEx*B<{1y>S<^h;-()@A^Qd`lj;HsN z^RWXs^UAK*?|0LkIQ6LOzu`l8rZj)o6L=q)euh$yUrueZWADJ&DV(*-@ymK1f~WUW^S$oF@yo8| zNqA)am%xMO>3&xeHq(7n-+8xh{_b}*;jB^5I{xl=HQ~%Pgj1WW-%Qzg-^;wC;+Nx> z-lg;tpiO7!i*(B$>7~N#nAFrKpWB+Z)r18&~ z3CG|2>3P0vzW-)KHsAg2H}2lOo8PmouK%HA4&Y=Ci$_kKvVQ-K$>gTxI=$6=t`WS` zL)g9k1M<~#mSl5Yi9Uu?r<}2}W8d98`mcZ|=&4ga%AWcjI4!yyy?5)mUyeQ~JS-kL zo(Y`VWb3)c`P2Yg&u!sp@yJVfJY%w+`{U{LXF2v?wh!LZ*>JaTemJ#WS{Y94Eo-YB%#>FpZFXTLHWc{1uPl`w0 z=_l;<;@{s;*Z*Jmr_IydhvDR_Ctue8J^Ve+Vlrj-=%&9q)AiiHaeCe_emQHDvv%3B zk7Mkh`K?DzJ#y-i^*4k#_WdnQzlfSWGb8lm%Q=T~-ZMvM7Z1GS zfs;Qj9yuO4Yn;IL>g^9>k6?S~8f9z#M$_Y;qNg_5xje(N{wqJu8NSVof9BWdKWt|A zy$bAJ`%b8y%zpF#0)9Du+1h>seb78FX&jGwGUa3roBxgY<to&W_x0)yYSI-(p zuQPVTsCl}Yi$^`4 zar4-7x$5b8?{@88_i#M7FXsn#-tOHV&U*FOf6wrw=yJ}UoUv2bdAn;Iw$BfEKWF0( zv*);fQ(E>K@$c}+* zjdIp9EV>+hRCGD|7+#`I`y*%VvUA;!nkR7Pk~4M+A7QNj-4i(;IiB7f=eiudUvxS8 zpy+b+VbSI2BRGANt-<#PSxCySh2Idj$6u*mLFI z&XtoRCuan^*RD&p{zouYHs?9;w0PwFT@E?(%KBf|{5h+=bLMABj$d}J58#&_`xSUl zJaW#VtiSvG()|8SiDC0}&oVgsqHgAoK62(sJ)`26(n`F{_Z@$sZ%}oMp^$6*9B*;{$1vC$>#6pyA)af5FRv-`EvRu>-l?Y zXddsq^3J^QMPzpGA#nPv$FY~Uv7Y&_!DIBCZFwJK{qJkb87n*X%fHTAieJv!<&m^qWERkVr_ErW&KOd?-}U66FzsI--FXbIdk=4>-YUcPCc@IpD%LtJJ&BU*PxB< z`V6Nw^_)Xl|6}nFo8O+xnM+Q-tpAVkkBVQ8Uyfha@9#W}i(igkj$hXQQt~HodMLZ6 z{+rV&oUy&T&i7Z2UtXfmUbC{9?<8{oXRMr_%c)@q+jBqT%VxT#@(I{X*-Ss<%UkGv zK9bjAKjV+!oITlkx^oLV_Ft)ITs*Spv-@n`JYU2!DIWQ3Ji8t})3aW6Gw+B#Eq*zD zkmHy2KdAZbiR)6gCq64>d(xfNyUqL7gVQ(v-9q{)M;{bjjy{C#Nq5Fz*W&l~>PKPk zMY6R$f!apR-`$H~>+#I1XDzb+XEuNC592o0x#V1Ta>mMzeFbCtzc8;&PTyob@5VEL zGgh|#e?uR_S>p(HY`52N)~lYevYFpy>=;fD<>XA@oF93soiW+5XZ;3yT|9DfWOKUD zK5)*qx?|5}Z0{H6emV2@i!MhWz^O;h8s)4@Hvb{y4~u66r#3m6ve#7CD>!wI;q*(&Rnu{y$XHO{GJop+C0y4{IdQ_@lWBc)=zmI{@vr8`R4gJp5EQ(IdXDjbH0kF z4?DK|@5{j6qq@Jz3GbtZ?(cTOx!>wfj%?2LAH%tV&FTL3CY&5~>$E>|#>&Z*lQV>O z`doMnXTN0qcVga2(Pj0Aq4)0b|5!T@_^OJu|Iaz+CgB3f6*~$T#1=bN6w#m{#*W>! zMFsV$sMyxV8XI~=1jL3F1ks4t6;aW!*dk)b6%_>mH7d5nF8crdX6Bh^%p2YJ|9N-! zgY!Ml{mnCd&YU@OZ(N<9;hFY3JxjVZ(6Eg-Pm-B8=94V*B$;vT?%gI0USrD(X54=w-D0F6OP!FZ`2d;{SlXQ|KFQQ1N1?othRnLM{RBJ(`Qf}ryUcqn zUc>y5sj=%cuc1EQN9&v{8nX1~nn*(y4OujGk%lZ9vS>jw;3{5H0G`34mh&Qdf;&`m}x9Yxo|4c53YW--;y<&9F~FT%La*GY>rf&;n+k zIS6TyX}`*|q?_L*Dlb^to!^;}{N(#-dC8I=GJQ^k&zeX>7XM^w-h`$uvXhy&CHUR} znVJHg)7$O*36{3b_g4*B>Xs~;nn*(ydkHM{OlE!tzk>35J^Kk+@zNk02lOlpS@dM;`8$hsUT^0CF!NyNhe%Hi^%bu=z4VQukIS^kte@8~ z&yXc8GUKj=xTQ!>rk;I?EP68aJ44?Hmii$}{gA0?fTlUpkY)Wq7Co8z@zA$Kda`K9 z)I0-Cet@P+77dx251^@uG-T0`sWIpSbztdZWVVI9_jyfsXiDHvcCY7i2krFJ^%%@! z;MsoeZHzQz_J{mis4KAeAv5k)u(x>q6wlHhXs4!v?=^OFe)u;5$x`Pvtys!fjO=6? zcVy9&z*1ha_#}(IC9;!ctkvL|U-V?rlf{2sq#=ujESh4ZA&Z7Ano^`8i-s(k=14;p z4OuibyF0rbJK))9FT1t@OIeCu!+ER}*~#LQ%r@mcr7_ZwMbjMF$zpGb>}1IsnQi@k z2h1CLXnx2Nw+77i;#^VJibEfUoqo1QpDcQfEh9LT5iCASk)15|#>h?@AT!znA(UOIl>9pBgahoaYe8k}g^Fb&d-4e6pMT?<%sS-X_$JHW_$J43nJ)WMb7Ut=ep_bW#@0&lbN@P;5xAQAxpZ&$WE5NN@iTHf5?(nW27h356eZCdTaJ}wj(*V zOCDNamwrf={F9mPaGd)h_dr?fngJZg6`ytcXg@EtV){9X^DXQl|KJhGGoSGry`A?; zGWFL$-wc+t$h6<*?ULvGzOGy>JDGO+AyfY$^fh4dQx|cu6-!z216}=_W3l!Fv+Q>K zg6VTBZmOPN9y~vU-*_It~^ZU8D)o-9IV2MkXxMYb-X51Nw zTLWggj7y&F`!iYEmrVT^EK8&(i=HfcGWDGYp|YVL)xjCN_Z{)=EK7nybV z64D}ze=_rsoq%=$i=W1bni>5i!kVQil zO-rO9i-s(kJoca^KV;F6MN<=L$f6;OrY_QuMMD-%5iIpdX8nB0`UkV#>|E#dT>qCM zJ(>EoPDZP!^7{K(C*V*gk*3jWmatC1;*%^sn5KMlViKYZH_c#(U3*c5^2byA&aI4&t{TOvS`Snsf#pZ(U3(`j5K7?kVR99 zG-T0`Mbj8*$f6;Ora7{cW4n~41@@T55ACAQ<2fy6(bF#a8nD>OqOSw9|L|QES^8Bm z(v!sxS>l!=4Oui~(KJRHvS`SnX^u2x(U3*c0`B4O1!USew>RRMhjz|yWGN$=emJgM zB0E`p=J9MGWhYD7Yrx`%EP68a_hYQpMH;f?nJoHZD;A%$i@pRFJ2|$CpAw!Kf(9Jh znIHST0IbhMlLw2YCbE;oKUp+&k%lZ9vS=E?d!U}}`7SW)it8fUnFsrupOL0H(vao3 ziA=ry%}=lA`mH6>lSNOa-u~t%)>zU;c`)ZFt_{dNd>Zb%|TK3r)EPiO0br+dF`P-g#xHpSWviKy6 z&tjw@i-s(kQlue^hAf&q?oW~ySu|wP)I=JxXvm_ei!@}>kVR9BG-T0`MN^72WYLgC z(->*Uq9Kc>Int0tLzezS7JW;kCySmenmopKs4K8&XctXQq#=ujESkDVLlzBLG{s0m z77bZ6rAR{-4VnGczN3jWjgf{dewrf<`kWW>%dZ1#fVE0H-l$m zobnw3S@ii+m1`odi?|5pII_7&Jvt5hA&ieTc`eq+@BcxBJPd@v! zc+G*Zlj;9j&!VY0P3IOeHBUoB7EK*k%0-rXBTK#2dpq-1jPzvDlSSVgX~<%40W)3B zz2qJ!quoOQGjBZqpC76kvS`TE*zbCP>67`X0n1!UriS0YAoH1>XE4YtBj;N(^US%f z4$OMy84NPx@;f7B(UV1A^m?AbAXCrpjF3f77JUgU^-N}3JpWIg0=D1L2GbAE|2KNQ zy*GjB)25{4EIsam$Co}){c@QlAX{Vm& z{K>KpKo8mBME{<{$m}y~Vh(GLG-PVlfxX4^&YmYie+0Pt zOqZ^m2f)<73VRKhn$N(sk*3aTIG>T3H`|xMlDDGQoDWS29QsM5r=4kygQgKIamlnl z0(*0$C)55q>@A*`dd`psJ02r_{w$ZSeZL82TQHxr%X*AVpFH17o(&D}Q{)j~?z`52 z+17V&iaPQ7DvbL&ucuEk{cHq#(euupC2zE|u9(k~*VIEp77bZ6jbN!aa%^W>=OZrd z5|_;W!#SDE{%_ywc@6W~>^1gXUSw~H?8URAeh8+2#w|tm#>h^Ve%l<`$zpE-OIgV5 zs|P=V`4h~tT#vHk|E?M`HTL%g!O}Nqr~VP>Ya%_FdX}9mdNTE|KwszeoQue8(@(u! z#wqR8uY@_H2$r&wr7UEbTS{P=6UgF+%=WVN2BuFwk2HF{y*GiGXZsB6H9e7TGg#6k zOS)wCTl#DPOS)v1Wgo;PGp%#L`Eyi5mbA#!TnkN&*Dyb1YHS^XWsJ~H{Ugv9y`FVQ zru}8uOJK=!qu1Cndd;WM&@Oe-9BIh2{kS93=PNi5))HyRq9KbWf3Bum1C}}=Qou#3heF-glf^%o z{!3m%|C2nkjBHKCz|vlM*v>%xuv}!xTTR4u5f>vafh8@nl$Xr3I$*vhhc*I-wg5}LQ6u$9 zmO5+%i+{5CC)5At@J|kH1P*Nk7XQ?Uf3o;*28(~P_$Sl<{_szxf4*NPi+{5CBuiRk z`ac74TfpL3JXD46-N_fW9pvj)uka1J3e?nB5=o!8JmSu|v7c>gC${S+e&nVL_aDS<;D8>XE9 z#~*nL^2WKhCbE;oUIz|&0B?joY`=F*4cLC~7|e99S_5-qq$kTJv{___) z|C}euq9;?o7W6fdhD;6XoJ`G5(9}g5viKoWa}+d1u=EGA^arxE3t9RAc?9Z*eTgjn zgiN2qyifL%o4_U5#V1*OlIe$in=F3FvtegjlOVYivMwYrFGwzXyTk?AL6SC9;nVMnHG)5Y-)F+vmanLk@*)HrG&5@ogKFQQKLBAl< zw?ulf=*iSCfZklJ{_|j|L$c(DOufPSi=6pBLuTIWTnd)BHIara^+Tqg&hS$gX~^P- zJj=IB5gh6~($g+J$@IAme3l|TS@KC1J(>D_p>MuaHDt*HS@bQDhAbMgX!4h-AF^o3 zqN(v3JBNFXU2l60>#*oG?2}~iLl!@!NJAD4Su~AcsW&p`2j0KPQ^34`ky#I?q8^IF zHUDJsNfw`_NJEb8^s@nfcNBK%17zuMWNJnst(wc7hWol?X(KYzwR;g@@lQMBK8Cn; zVDV3;e>;A?=3SNrEMvdailt6yXPs~lhfM!JAZ}x%CySm;{VG^rlc^s7&R^m3Z|65K z^UpS=o%y%p0!%&sUT_VVK5f~-EW7OwVEX6Z3#LZ$Ul(b};=c%%ypb8#{uTk4X$?l+ zXczxviQDY$tT!_4cFqUOxT8JPe<^Asu;}Z+OlvsOA~Qdn>&R>umaFJB_b@+^hAf(r z*SrA@S^SWxVLltZW;rxu(U8SYGdS~lvgE%dvXjN0zf$#NvDZX)ve@e)J6Y_-$W9h} zDYBEr-Wb`*VsDP@WU;q^SiyyMgIr*!jx&n)y zcG2fY;rwhFz6XsyPy?pMu9?BoABte<4`lY4mGG|=X~?1>Q?m*FHAWh;Xvoy;fq%`B zhAbK~HOJy#i`Uq*zTnxuZ_`fAF#OApc5zu(WZJLs_RP9fY`@5Oap zWG72nWcs0hveY4&X+4X7MX>lJOI)(VB}-f~<9>jDC9u>vnf1W5$khCTe~pobOpTof zyrvVL*IT^Z_8D*A5cd2S^-mW6WcnWfO--aBi+?gTM?zB2LQ{-1WT^)-HFeOGz?T}1l`_~&;9$&AbI4CcpbTac$<>@W}HFwcOcjcUNm zryXBl`k8<{&@OqXYsJ*egobv0ck+F35uCvf`!HG3Ek$;+*c&4|S?tY`ogCXG&n=OL zESmhang_DjYa%;Y>~)cyEcRk#CyTul*~wyWjO=8wH%E4|*jpkyS?u}iqWpu!UK82L zVy}zrWU&_`J6Y_d$W9h}V`L{wJ(ES#9BIg6Z;9+=vFERk$^sU9O=KsFy)Lqo#a@i; zWU-ebJ6Y_Fk)15|=EzPKdrM>|i#>lslz*_;*8$&*ett%Zdr+hyi>4Ua$zm@>c5-YF zbslLNBTaK;CrjLx$W9h}{>CW(V6oRkcCy&(B0E{^#mG(;dnvM$#oid%$zpGg>}0XG zM0T>+^W&oYgT-DG*~wzBi|k~v7b81a?4`&~7JFl4CyTu~vXjN$64}XO&)=l;Ct2<_ zWX_+w*VKSz&Lm4*^39mHTR6vp!#oV0?blJX(+}@8MX>lGOIl>{Spth6GUJ|t{dls( zZEVGiYxmqDdox)4lf{2aq#^Tp{6_dEi^hz1OrHxP&QH)hkVQ|HaZwX#$f6;Org~!J zKVmaU?bQ+2MqD3pesYu_u=p=VcCy$T?@~Qk?B?z$-I(uH&Ef}iK52PK{gA~^{t>k| zw_?$h9#u{8FHhGPKJxESY-y&I>I5 zX&-^K>^m>8^ph5_^f9vJIsbTMkGS}R+R36X#r7v7%~Q&CGn5;jR<3(Sx!9y!0?V4J z8O%Ci*~wCNvXq@HWhYD7$x`+fu=vc+RIUL_JrtjH`|Vttk?Hd}j>pJOru|*m8zVcJ z_HSWtj_hRG+un_}+fe6qaNYblTK zu58v;ZdgZoLCotpJIiHim7Dsd=3&$)*9HqBHvQFJ9dT{M^$}MeoZ5cHaY~lHM3ym2 zW}A-0_^kzVzP-n@=xG-{nfmvksRzrNpDcQ^=*iS4r{TK+VD=N1xBi$kjBD~QNOv7- zBCb7G^$o+6$9rb|lW&I4EfIG?q%r?ceRah3o*9?SxDOz%xlr}>5jR9UKH{c`7es6t z)K7K9wGr1x+z|2jh?^od7eziJu8p`p;)aOFN8A+gf{4wxHjhDs;Q5-A>#31DGOQ3 z(iGXrVqf5yd01z(&LPz|y0ON6SF(%+GW-8_u-Ae)z7F#&8rrG30`_|FZ1!i*qM@Cd zyJ2qti=9k+GwkLzEpO8@*S9Z2TU7t3_WCum&=%EQlo#yanDuP>sJ-4Z?F|u+kGOhA z)sK(3$+PvjlWH0~(>^}p+MP8Iix0@c{9HR&}1-vg}ouNlW89a`}oLCru{V7Ye#7w>Lae5s`duYEMs+(vy&Hms9gJ*>gywJ zh5u8IDCyyR7TTjJpOj zX5XAWciqD?92C$?{mb^82%>zs~(vU^7z-#71Ll!?|(U^m^jAYS}MYGOP+Bf8yxJ7m>nEtbesbjVF10sJSG##ax#=m@EQol} zOwH$lIjXOIMfKys(vDgJbr$`iL7M9v^X2#0w%eKdPVVh-+gmE7Q3sAMt9+_1%;kB5qno z?bQR68$2`rO?x@JEz5q&#V)%FG^kzrg3IrVizy4i`jR-K{*#=k+_5hwu5}c>1e}pA6A$Z{Iv@!%*y`Sg%xIXe=Xr@_PWBjFg5*?l`HZ09L+!<9_Yi% zeAw*6IX-;dhjV>6INhX*`5T(jPr13whf{qx-G?)LIMavE`S3d*F1KN7Tv%=zvmFY| z*W8TdE;lQbxo~A4ZtlaaY*=9)Epz#p?!%cre7W4^YrYQ`+OWd>=&xN^VXmrh{#{sM z`sH0b7iPGo{|fV(4N?Cce0$ii+;s8RE-W`S9bEju9bCSK`0H^ttT4NEbm_UU!tCj< zU07lE_17+}FbCM{3Ui3JyRgCx^4EhqGCj1b*PZF@F03%u`fC?fm`VQHg%##rf9=8w z^MJp0VTF0bU%RlvJms$?TyE1ZH~lMJdB;_{{EV-3<#b_%SzzturdZ|bXNV0`Gpy=g zXzy~96kI$PmYabqI9=t6F5KFN73M5|E#WY4m+&HgeVNz2?!#mym%lO}=2!Cm{dFfF zZes1J>Eo}Dw$~NLg{e8$+R^V;cJU<~x2n6o)ra#}bJq)PSYi6E?)p*P>dx-M3bU8L z-phWTngds7eWd14e|@x%*X+YNK3ruD=f{N=roX?Iu+CraWkaOn!+~qKdT?QdInZBA zc&OL8u-qKsuU%Mfj`r6Q4)*a~SYg&()8$LTpZxW5A0}Pg=Oeqge2nqoqdv@c`(g$5 zhjrI>pVzGI^qcswr?+ptzO(oBVNFl3^I^}PF8UAT%5JNvM!54-ztT_4u? za1$T)v|+hf?!$!xT=_fg=IW)iJFhG7%hJw1bPw7qj0-XE+Us)Db1$c#W5d*p+}r7& z+sD~o-^X1K+1FhU-Pc{8<->EmeVD(V@2_VLbo!(B^YQm{*PHC`!dnkyL2PeUEV03vGyb;V5@4;ko|0rQX@EJJyBsj%7NjnK_tYg%8V3v%SXs z@HprHy5p#?FcXe<*Dc4p_)C4b+=pAA;Oqz5u)>V<;dF1G>#to{Zu*?)^nE2f$z9Js z*@X*z*m$a|kIPPT_N6{N>r8ju=bW+?nZG{gxOsNSInF-rTo=wg*X4WMdG5M+0mBM2 z%!cLWA|G}i<~|?e!}&gJ{)e+qxXAgr(}zvSW1xZSnheuE1~-oVc*j0?-n7<*lAI^XC%pFYmTpW(xqKKy2!`+Vq4?(?5+a@Wi4 zHOBGHyiQH$+uVKa_1j!JE-W{5Z{z0`J}fu${O2w#HxG`dJ~cCZ_?!>t`f$Dt(O)OH zbmvTP`54*g!Z9|iF!QFk&s~_BpQgCaXWZ-T3#T%~eeQlY4qRAn>g+Yvbq_e*xQARg z=V5>ShzpncaNS4U^(Hn<&0deX{`k{lF1=)$3(Kb6wGzu+HqCuL;RzS-J0CXAaJs2J zT>6arynhqJ)ZF?{7e4C4sk7X5-LniUj0;oqsJ%x0`Ea2Rw|ma%`}%M%A0Fz%i+niJ zhhuzroevv*IMs(Ud^p#K3w^l6hb=x_>caz{cj+JM!y|k+#D^n&IL?PtefXdcpY!4C zKAh{rc|M%)!=HS(+=s~vF5NO8cJkp7J}mn1xmTQS`DQRHiVf2c4zt&oKWvC! zSHQ;DH5vZe7{aj#S4Ma(!qpL8hp-F6>k(EXyaC}l2yaBV0m5+zH%539!d?h(Mz}h@ z$Z|{8$s}e)q`o?yf4Z2w>1H-FJ}3uz z`9v&fub7MtPbnB*q>NczoY zQ1XEpocwBzOEP@PY>nicq)T#cvVL-2vO#iwQj=Ve^h&Nz`X!T+{>gpGUdhblu;fKp zo0H3vHPP?bKrE8~?(v8x4)1K+nv{(8>x?B2W zx<@)I-79@I9hknJ?w`Jq9+1A79+rNP9+@spk4nEv>(lSjqtoBhV%jA;Ev?QjNw?1~ zOM7Qmq)WcFlwNA`5u zn9WS5X0y`!vKP`PvUk&uviH)(*~;1SY?bV{Y_05f>_(jX2~Op)Ew42;d~mr7FZJOL zo8#A8@%jEKUn^5Mq@9;~* z6~^?MXUroAU+jxtI6>I?d#Ar|Ef@Z+7ry0<9f56|@y#uSPxf)wb5d*(V2}*o27gr^ z;lJ^woAvec92f6lq|fUoU&UYU!RKQTkKyka0Sv3}NzAA1@fijRbw!*2xD??nkJ>MM znYy>|s{)BJQlIkqC3`vjxxHQZ3QoY?htMkHj15 z%lT8Si{IM+*QozG#1sFIo#=E@Pi$Y7XY5waF7>vl_uE?cYgeZ`b#oU=`d9RI*9*Qu zTBv7fSN0?Nzqk|T6tvrhRd`!~>m9wmb${x#weutCO1yd7x_XiLtL^V}d!FFJWgEIs z`o%5N+;!7YF1!{e5hkF1JNtaUcC@=b9qmQCl>a~V^PhHb`nP<2Nxwha*T3}t6EJbo z@1Ko>d%d6SeK^#IGCtn*{$KOsYP$C?=)xWUm*eU9W1XLa zeZP?Lg~{67f_9Ylkb3>I@ir0TmgW8R6&L=earcrR*GInU+rjq}>5sQ>=JNGtD4&)1J}*Sq_1E90X9b}p20a@_jv`uMe7SlZczd-idm^q`Z>FdBboRA<;&U8m%paJ)7AO=!$1A~;RC^M| z`o0fW^!a$pr#r;^k$g*jC7)yJoS$!fxPou*I|n%XLA$%KgP%|Oc>7D;jd?aTW^J_F ziwLEB(tfSmOZvfC8##Yp`fx55SnP*8`ts!Am;Pk_mVR=*Pk$29qh9J!+NaOX&OYDg zSH`K7_dwqd_o#8Yr+qzLR_)T;%KMjoGz9r*LOzClj9+I%e`;EinAdRq-VYcn2p>j2 zV))Z{E*!g)3xDZs%v-SEw9H+NK?1O&H>q?}L!x3iWG4A>S#QPQ3zhgY`^ZqD@$&A_h02lUO-I#W`Ua{7N z9WfvAx*qMva0tdD!|hQYIfO;jFR#0zzL>x7e0jFo&e>N-Kj!D>U_3D#hk2Ue(zRW< z4EgVf>pPKO+MoA&nLkGKbnUqRGse6O|GfXN4Bh=}ppFr~iF#cD;XIU+*JmK#3=hWV zT@a2%z3@7Ra)YXH1B69ip8e6jEY~F{4?kao{>yL@ z{B4Zza@5=A2w(8+dbRg^1J-F27s6?%*BubPjPlna+zRFDhj7~?oxfL(aqaOP z+K2s*^VvG>jM>SrkKVi=V-NcN$GiHF_1AtKQ=6Y_eYj_3YF39%#{I_iPA}II$~bO4 ze&xO@>kt`#xA^fU_d{9V$bC!3p^U3-&|fE@OWnSYOaGQFT`21r(U<&uEcgH3U%C5_ ztXq1lm0CZtPLXxYl7pP?em{Tr-^%%yb;a*Kz1Hi94~})Z?-#iEsjr`fPdoeLus@zd z{bBv|0Ky$tbN0t(xbQ9XLze5!UtRe=?}7Di8Rn_?(YFvvc_-t3OWltcA1lMpnX9?$ zgHCnvr99JX-L=%a)T`9L)UT}HTdyxwV}_4m(GEH zU2;Y@cfDg@7j}~M&_3>3`m5yU#3hOO5%sc}4?o0n**nPhNmy64ON==U^HmpwoToQH zxG|pB@JMaWJr466`Z@Dki*T*V#NdFH`O=RYc|N-QK#VW=ABO(&BEmb+Kh8wHH^4l1 z0m9bhpM>Y8cQ9{%g>VPVhw}V0a2;c=fL@+scIfKL^W$1B9M{W*WrMJuhwjkL+_kh% z^>LVQ+w1dM>w1>wr0Vzlxb^eHd>^)MPw5|$f2mJt-*=Ec4z8KAkROIJzGb}2IG1*p zcG>!1m+#LpA5B0z+~VgI@%v|fWL}W@K<0wHLkNV<|v>-k#Jk@k^xk#=f5Z(oc1*d+A-E3tlB7xj4&`uQ!mp5~t)-o^cM zH;jwz{JMTq-~U^ePxdcb=ezl2tT*7V^>efAKgoWS>_f?O@IT7kxZwP@GRD{HBVGI6 zgZ5`Xm37OLUMK4r>1Tho{*ZcX-JVjP((k1mq@1nC(Vx|?;5ABj_EQzNmuGo_CsXfMfO)@d`Wu$slH|W zavmIwbjJUHeuq%%S?c3I`H}jN`BcWA%-e^3g#HGf-l=P)uWWJaCgVbB=c9Q2->0i>H-tXi3^Gtt#k^6|$hdg&mzQzBk-@15m z{h#Vh>R;wdDaTq^x7DK_&cHq(!`A8Ch5IPSo6LjKk7Yka_Qih3O`JOEr>m}x`yc!b z!}xs};h>_sz8m*N>hAQ<(S2&&e)DgAon7V;*$0*JC+m9Ica(ieX?NL|TF2U9)_NSs_-MU9)w&&JUtadNTJKXzKT7NI7avh>J_p>0Q1T<=Rq9FRJ=q_WcKWmY zNjXM*;GQq8Ji^tR>~qTeBhPO#KBc{7+{*r&lvnEY68L5NTG!a5sa$FuS72jT5Se5({;*K_cU3EkwsyYM@I-3jCNao9&f&(GUmiG2)& zFMs30k8@Z|ApV%n&d;%DI^9CAf6ZS%zLWd>T<`bp8!!(cp7ayxUs4XvSL~lH%Url+ zZx_n^EA#B1&8sq>{^a8=!8aWb$l;!W=gvd0PLXzK-Ttk|t&CHdrzL+fE@V8&JTL1& zX%~)DmP7ijtQT6R+uA>$n>r$&e2!vx0_yv5)Ykyq51vJsJnF88AmsIVr@QOd5%Rj` z3S$mOdFA=&gyD&q1bdHn(VhrDM@XII>%8yrejC@@W8aOTx?z!E@qn z=-0S@c%akCbF$3KGOx<}k=E_jdR~zGfXoBZUt9MRDUXy-`p18oCtKeaq&-^CZ_>}C zKmOVL@ZWwfE9Ke3?>n?^SE(+vDwmU&&~W2txP zuQK0CzGZ%v_LBR!ltaQPoAS9RHTd3?$>IMMrX1%p@|fBxO=nYO)-at+H=Nz*iL)D9 z;_OCm(-o&Oy5TfNwW-G$j=?y?agtdV=g`+TLvfblOq}KT2hMU_gtHvCA=U)MddzHX zrr}J-bhEwrCp^qDwdQrx*Su?XG4GjO&Br+H(PH*6pTYANIQ3DP>}#r$fu@k`XF4bQ zn>CXIuxE0RxhOfHeuu1JnBrQ|3xBB?jmCr6u`l4H$;WU!f$9A~~xjyKDa zqWL~K5l4+qG40b+O?5id)TF1I4bwBsX6czY-+s2aGX1-`D*cBUnOrmFWZq1##QTa7=I!(<^KLp4d;eGCJ;ErwLl|woOvjkt z(rfV^;5w6J*JEG*22+vUXgXy#VK4b+(=)r(^v-U>{`KvqPd47{nB8G^$|jn=*(9@1 zHrX7OHJYQdd(5D0ia9R3*PNW)XHLo9GN)y4n{%^wOhY!$T%Nsa#$@l~jLm#=Z}x$i zntf=dWed&p>?89;w#Yn{Eip5)k4;nd34TG~Q}c4xV&2X^Gw)=dn|HG>%=_6=vpD+_ zdnaF;W!X38=j>avJj0}y`_Yu=em42suckxJB6vSvY@4f0cFYx$ z0l7}eUb&T%gL11Thv(Kvj?Q&SPRw;phUKc03v=rxm*&<>F3+u>T$$S-xjI*q+?LxY zc_+6?GB3AT@@{U+%$p^V@l23BIk}q=GB|qePCqL%;BtPY9lV5T>C(CpFlHYUq z7DL&9WaF~klAdL|CtH{8ne1G)SJJO+?_^-vKFL94`zD8!?Ux){wtw=svO|)?$_`Bq zFFPzbqO3j{Ty{)yLfN3?q_V-u(6Zx_)5}gu&L|s_oLP2ia#q>U0$uU7Flgc6oAl*%isOvXRO3va6GMWuuZsWn+`YW!ELE zlwY5$S$<>Eqx`01z4Dur4a;vyYRhj+`j$^f`jt;i29!@qb}OHpoLGK$a&q~U7Uuqw<%NPs`^dE#?tzE}-&vsSm0qr`ahqqff zJ+j@JX??pc>9BTP(^2i#O2@YAp5D-I?XZIC|SZlm;tcAKPcwd7aK3kXTz<#&gnVs!O1^J;YJTVRwEQmV(0sr2ocylo`S}6q z1^M05VfngrRDO?ibbhb&mi*r7^!&i|iTwWQllcSEr}GD;|H>bnF3BI3ew;r%?cDyz zv|Ib5(skO`r@h-BogUQw*z}zCgVS@{pOBu{zL*Yce`0!R`;*ek+7C&uYJXZfs{QHd ztL@KBUu%DMI=B5f>D%pxrSG)AFnzE6Md`x!m!zMzzbyT{{qXdM_LrwWx4$A?-oBKs z*x|~wM~4yV)*VKsy*i9adv_R}?%H8Yx?6{_>46=tPyg28hV--!IBV76rgT_`Thog> z+@9XjVM02!!yV~AJ4{Sxb(oYc=`cC{xWnD)mmQ|0Uv-$8uF~;=bhVBTrJXxIlCIhD zv9wFa>1p?lPp0d2d@9|kGXj3tgLdyth{pNtX<_QS-x`BY^BQ8vQ;WOXRB7OnXOT|R<>qk_pD3h+F6gv^|N&= zH^|nj+&o*qvS+qI<(An-m0M+7RBoO1s@x{qv2xpNr^@ZJoh!G`_NeTg?N!+)+qZJZ zY+&V1*+G?kvqLI(&W@S9Y*X-2F0omD=b=d`#yJr_x?vXWA?wMU) zxp#JTSGRCz#ld*wk{W97lwLzRbQPgEY7HC6sCd!h2M?3K#H zv$rab$lj|wGFw!6RQ6eAefDkT(b>LF zL$VF3PRTZ}Iz8)Ebw*ZOb!OJL>a1*+s*V z$yF1x)2b$AXI9;rol`YAyP)c>tfA`e?9!^n?24*;va715WTUI@&Bj+v%_dddm)%`; ze|B%x1K9&r4`z>4J(N9O^>8-5>XGb;szd#9=?n^!e6d%x+=GR6a}O8R%RO3HKR2zgL2i1XCO4z7VQyw&qug_ajdRU~O>%Pzo913G zY?hl_*gQ9{&@(r`utjcRVawc-!dAJK!q&N^g>7=*6t>NMSLl`dsjyw{=fd{6Ukbf* zzZQ1LEid%R{Z`m9_j_TdoLQkZm#lz2r7!SnjK^ScZ*IIBFZ?X6{0{c^ERDZYY@Y|} zg}0@n?5A&jDxWUB1Al9%m2LC!I3;LpyR0K=Oz0`}F3vu>)J{y&|B-{;zDdk&Hty3m zVSmTc`7`kMxhxIFdrlX(`;Yj$_ty6PoWwk6Y2H^tQ;@E+4ZqKrNA0H_h9%|+OYe@x z@910l3hy1Cw{*`B_*+MoF1$)U-SU&fyy0xssd?K{UzGfPOLeF zOOu1{q(BcGCH`J{27lGp>W;okyu8#6XGpB=hdV_#>rJtBYZ2Ys$g|7UX~FZjkiWk@ zVazwy%ZDrCS3xa3i&k~D@gVkzms{K1pQQfQ?wa}*?DsmJM(wA^2HQn=)8K3`{Va8Q zVn-ZG#uK42d(22og(a=iekGh=v9`^y!e7bK;|+MPWJzoM4(t)EWo@0`#?yeMS%*n# zZMDY-A4p$YR3SZQ^WhR>#%fZIy_@j2#jL+?o-(GVrS5tBriLXg`Cpf^r@{9cY>d1A zA@#T24*2yfYdZmbtY>g6T8-W_Ib&!cC%k)q|@ zJhbYCp;g&8F0nC4S6b>l1;1EqX*R~C>qEP2CjM6HA|=u~)pVDlce=6q=@6k)2FuvT z!;iVqdTxi*ZnLzoAhc1iU9y7MZVR?Lyj6BFI)@m8g6=qs8JDi+O52iUo8-!NQey6D zRkn^Hf7<3+N_u&~#?U(Wezx?<#^sXkr6>K*dTDDMF)wZ$4R2%Qjrv$TFT-hS*RR^W zCZ4;lC7+I+FSaF%gmyVz=)JX5^O()^gB#jsL`Ef1yd#={@(G!w`P3B4rodtAEYupFJEU@LL68EJ$a4N_88#@f=!7P1srOY6Y ztb$)WwzdaXN_{V$zJ~PiYkyD768q`n!L!Z`Ggg(j`*g=_Yjp!wmYn87DbK<$l)Li2 z{3QNk4ctS2wO-!D9Gea@_@DaI-Z?Gw*hb8R?W}J7g)%}%<33YmZQEUnH@=ph$9Dl- zx>^TE1~0?j!|&8s-Sm}3cg}S}=Y!mxbKnb!skXYOgYH<&lj~aBv*=;2{%-9naj)(s zy?Fbs^67=EO6`sbq%E!Ot8M;Jht$;AG<4PS$2Q;0AIxnKNEA1)s>AC>WeXbxV3ej zhWntU{cxu{&eC0zB#qB;z{%ZzwVpQ&{<^FrtDpmdj_Zh%trxXTnumLe?IlDHglgip;+%-^kToqKRb%Fq`1zoWOH+ zy7tRL7vimgvptIysH0D+#n$kYtP@wf5%*eKwmrg1i>p_6muw22qZJuO?Zr0Ft6}!J z!V*^>XTY$#@V zSMsYDiEePHjkiM@J+T?((l49f zF9=xDS&vUjuHW++!nGxzAsiiw+`GJ-58E^w_l2;2J`Zu-r@vzr?r6U-;&ps14s*M% zsW<$W%piTk%U1--pe6n$Q`E9J^UT5!R?bXk$m(_I(t8iWOcl-r8 zwV(3Y)Xk0yr^qvBU1*tauxfTKbHgO*#m`R^ntF%OgesxE3PM^3+W*-4?q0h)p2l3d zy57~*dRuGORd!0ue4A(L7Fp8X{^8HkPr1rX z&(Vz?gl6Itq_h1U-_dpSTBUe7IM4%lqv$?;A<(s*B#n9KCGJ!1BsjVUYh_1|2KutS zcsZhn#7&or?z=#fLmKN~esNx&4|$mpKJ6JkogY5^+i&7;jngG=`^D0C@kL(0TGE+c z=a-An<}J4VbcUM~VvM~~;(qYG>`ZJ~CU@Nzu8}luFH6i<*2_g9?tl_%DwZ>#C&JHTyce@yXh^){9^w z^qga`S75#DdX3oL8!NPKcNzP7Pibo{brS9_ZUvg)PU7g?ux{EQ%+HsH9gJd_OP&pM zW1y*@%P7bQ{8Z^JIrV`0C9^FgI82WcfsIy;^`TV{b(1L?E<891NdX1HZoal3nb zHCCXG_W3d~ZuL6#9a)X^zX^XA5BC~;Z|P>N%x!9Vw>mUD@9#EQ?g6*qjEI|Qv<`Fz z(LEmB_tE_v-79Eohv1J-(bb_2)(^C)rT^^+XsfSjZ)&R#wbgUlYJF|FlU8=D1LDou75x$$iIhHtw(3S#;~L!;-|@Zf%>R z54pD7HYe%+gdJQr&Mykjmm|UqtoH?7l{Q^2Gu+-`Mk?XC!g*^%6eL|iXURqkD)ysCSSx<0N?B7dxB7h{Dm^0dZv zCC%pm*IL>N!@>$rpC+_+wT-l{G>!k>ooQ8D2OKk9Eom!gowk*Om%}WepBBQtsOD5Z zRoi;uzBM+qp!%x}JwoGZUbKB*zXjhTw0S;x4*r&%B~63x5ncOg?dqrMdDn1v`S<{7 z{dLP_9>2M#c;R|&bDM_V^YrbF&f_|_>s|bVTi**NF zSIyen+nP(-^8DBS_zuI(!0NA$&aq(zzA)^E>CC0O)31Ln_wJ|hgt3FINu5DX#yzFh z+H^hsL`YZXlHJdcy81M%1#~~>k28pCL4B?`eYi2ZwrWAGE1ens+bjKn*l*v{rpx(Y zzd(mt(sZ>q>D}+&8_C^SZ900!KO?oFYc748aT#XEdYi_&;k|+Gk859RtB3Ke$8k2U z?tAN=w7%=m`qR8!{6T25D=A{$EnlxkUHAbUxKyvf)#BD{XV7_h}vbI%fXZ+uf|EcS&s-?P0nC z(6c1k4>XPKaO&V3n}dpOQXA?|+gHcA`r8{Z{$buOta{u^!m>Heh7dYcqvEjlQ8`D5$5xlUVO`<1r-e(>VfT>qDKj_#1^ zUWWEv&T!Y;a_BuzYe;Qc2Wr#&X&q>JRrlAQ>N-c$&^68B6J^DC7k)Ry^_({Y^%yTJ zUrkMG^8eyl*HV9-hNi1em2KIyuJms3e`!^1OSYg}z5e(7xqIG!&!6jIc!cn~_WWxM zZvS5Il6T-!_mp3o6B>?_7tW@0-E~XlQ=K<-w$M*?_3(eW2i*7=ei6ft4?e}Xyu5sh z@#g@({x$KRzB5#Gx-M>O2k4`)Pu(u;7jH09X4W6VZt{qd*nYzb%I*2;c?*3TIU=0= z(H$Fo1K596`~_*7`#-M78?Ei3P_|Bu_?;qayENFAV|D0kx(e4f+yF5Rck4xKeo1l6r3IjeE3y*-<<<4Uty33@3zKdvv%#-i+>y9g&&V z^Qn05ai6yJc4--Q7GJQsmFEg+yXhO~ww`BnZqi){&N*|ezr(`wjOx^%t{C+U2IIbI z<7yjeUNi@7dFI%kXX9!bTZEl9_1somjiFw)#2xWN>rcJ3mFF=}N}jcp!*I7+V&i^X zA-jW`hCYM+b%{2)0((5IO2l$}V{Q6uFahspez3L~?d6oCo|V)mLtWA8e&?s?ORbA%E2kTQ@zKtHI&-d+a=-A#>5cII z=%?`J?5^-GOHXZVwh7KqSuZcmmc0D+r$=uky6Zlby!66O<;vEJt~OVlCAzgj?f&~^ zv0Zw#lt@oqHHWua+H(%asYF+6tA|;6*SDm+dJ^lw@Eo;PsOJr@lhn3)Nl5E{#jSBd z!{&Jwc0Q{uoq_rOhhtdd*W!m_T)J0`lAM;kA#dh4M89{R>e~W6PpBt)baZczz5n%W z8ojoZboIQ-@vBK{I^XM?ex2`64m(9#Rm(oVo>|;Dw2b!l;V6;I=`ZI?o+pMis|o8X zJ-^ZMHd$%u`Hh*i_+=`adp+IJh_e-2Seu@;stD!S2fMnx?5AVDmNQB%c&2kPKEd9h z%hglMC4Vngr)DP`;~CsFT->P_NZh_5S9(AC59Z#y!QIk(+wB02 zrXU9stUo;gb~i@6tAmBBN)B$qeC6_YQFy1Wdvo1BkQl#(_0{_5bzyDD}d<)>xU1zcoN8VjF&yS$pT>Y^pPO&!9Lzc7`Yv0xWtoIr1FU^A` zU2W;(k2Yqy_4gg_bgqZZ55$va&bI7Zsoghl?$xasUO-$|&+{Z)ri){(2y(E^K6?2=?zPNUE_KNQqOYgy+_Zf_C85Y;CzZ*KUaTBt9*%b@HRC) zlg00TI335rhxXIQ!YR0iI^Z0+RjYIhY@k@nL`4`JFha=I=J->Syck^Sh+YS!?D5-cv5b6NWo~s!s|0)UDRl)*a7B?&SPp z^cP1{um*9xlQCRB&~!(BB01%*q|3AR_VNb&a;D9}G4Skq?6!C+a<-Yz<2;i6bkh$d zZdaTQa9-XUgi}8DQ}w4azkc_jt>;=j*`RZ=u2uBhtIp4QU(kI=JqNF+-}OYiely~6 zl+vAT)F;y6;r)W1^wc|!eg~ngdyjrcLhrDwdslx~Es+{p{j0=uvNcrIPM&dY?=B;X zy8$kSj_$Ge)Yb0!;f#{rKkCOwkJZ|Ex`5w~v}v@p^T|6zSNo~%t{xnA%C)>&N`1!G zyVW~*N_F38(fhCVx~qORriV>K?}LBc=3_sTzNW4Jd01U*o9nrMUCZko_Abn}uKrd( zR%-mu&iL2Z{Nc}x_}bNepeK314JY0@uO~X)XIO&gsLiYwJ>$O^yTn^tn|^mhcOkS+ zUk%ULyFMqLzeIU^+qhce`tpXZJ{4eluq;>yO{e+20b+869d# z+gw{(_n<~q%B-g?-8sy*yW#%k@^>z3@+j-?ZLG`(TN<*id^&T!==Y*Jp_PMoVh!C4aY`**At+I_o*{JSuqp z9V=B=j>2O6T@ZUpr5HZdp7T+-gPl;2dfDo7iTfDdja_2Xxb|%sQFxeQ+LE51pxAUN#)NzxLD5E)v^hj8(VKwZ^Zq;`u6^tJ=Zrq6zwD^2$m%uO!F(H&%_Iq+WWV%u~l zV&~4)#$bGV)U_6$E8eu9F8@aIqIG{Qe%D~0{d6?QdDb_XmG~xuv;7$6$+2t5ccJvI zp*smz;U4gz^`|py@e@h+UnuVq`)SKi`Nq;SA4@s5#&c=SM`|gdl{$H7Zv)b#GBt5pkk3 zky74Sr^-7Pejm}jZ5fUypdW3z2jFD2tNT;KceSeV9N=sdb@viGsjigTsxODPLHC3^ z_O2sk&ALi>M|E!?T}9SDDSfD|H!wr-OyYW&?lJ24IOTk4X*6rn?_&0hi}*!v5rxFYtHk?WfnTB=nC! z+HRW0n>R?^bHC2Tz2#Q%tp4;qt-oQwyT%GOHGNCbJG9KR2THA767B}K+$l5lGm~ZZ z{tk2OYSv3zcT*h|+;4K_)o*9&cl-8RAfM`Y-DdqRt-2>_$i>yYhlycVNM}razSNy^ zU4iO&(>bE8XB^$B)VTVsQ1zmtR{agQQoebwBUI}}pG~K)C2Ou{OAs{6{?4|=U8t<~0>v-a3Sb|ZB6xiT)-el0OQtmoygCZ@(xsZr|rZp?7*l->>4 zxpQ^j)?UH?{|-URnlgiQT8vy_4P#7!&lQ%wUnKNpQRuy3n-graaZhnE76lrG{a9z4 z&bi6@>v5XU)~m~>eXkSSGvU)^A#V5Z>BZsGHO`b6lkooBc`gN72Tu;pw#$c-#w{VW zV}ieG++CdRzL46ykki_bTBpw9Wn_raC)ChzuKH}*b_unyQb_Ig;N{Jb#_u7GW5cH# zhcqUKG(w&}sv5WMsb zUN(LK^@6oK{#piljyuJ`p5ur;#}RvuBla9e>^Y9ua~!efIAYIn#Gd1bJ;xDyjwALQ zN9;L{*mE4Q=Qv`|am1eEh&{&^Y9ua~!efIAYIn#Gd1bJ;xDyjwALQN9;L{ z*mE4Q=Qv`|am1eEh&{&RR{IJi9*juuB z-ZqfFG1j}TmQu@hU1MUlvvGI9O2Lh&zh5Qw_tq$(6GsSbc8$>DF+zs~T5+t{b{LEK zz>d%}M+;qzCwlkZKz|8AYx0^Y^7Pd2SjmgtIoA$(dE!b*YjU$!MI} zTY8D+Z-*IT)0}QqFE;JFIy0Px-GCEpy|lH1admiW`TXCc)}F)DtQ+y8-jN#Tw*gPF zULFm*bnDNTbX!0!#`R%*=(k*+`d+>Pzey<| z+kN;OZ#Gv)AkS{>Yj4**lnJ4f8;p~ch z^tBWF*D3LLZ|>*cSHSYh@I9hSgY$u-@7v=qh}%zfFX(@p7fn~6iMxjVmp8E2;_6iQ zmU@RzHTMsFCoMQ|6THi}dC?us?=Ys_3|tjR&(Z4HTJ0N8Va&KYllF+V`ir(|TeF3} zsn(}Oz0>J0>F8{+eu6uR&HdN-uPgaGXoYFk)+;q;h9$ip?G@(OvjV;IrnJo4IRETo z{2FXe4wFwOVo$-f;N0-Uyyh43XA#z6-BA9s0blCD(DJ-&gzppL4WTbw#Ts(iYT~);8Mtsl?2({ZvQj zj#*6CbJx|g=)XVPwetfBX;j_dY?mUMqj^P=xg zw1&RG$a6VpYY$m#LwAn9{mJ-W!qR%t-Q?Pd#(ZLPpkq~cn6(bJxn0h0=&tj@ugkBC zt@E4EL3k(PR`uVaUY1(Voj=E4DYo>|LizNXKs=Z0baw|j9eZgm#(pglcM$G*PPZuN zCjTJ6DYoDviO~7Ep7t?5ungTM0S@^|xtVq5(+@w`Lua#YB{ z6`}r`g6;c2-LO*l$=1QNjj;P`>G4pGSAxISf^7z#e_g$N)lG8RXE^?_#EHC{t{GzV z9xtCR3AQeWN!+)V%cnntdR_sm8`lc^{3NB^2B(2sYHwpz^}c=HIwa6`uZq9sV4D`w z*ep=DLqyje{m<3k#Z#s3@kc(q?bCTeH-;E*hxUCC?*m-i+)?7MFP?v$?X}R-XNOkZ zKYY3f>s?olt#HC1Z|mxngT=Nk&RP0gg_iy;#Mmz6<;+0G2i?QLOI@&S9OCX5V$2G; z?-6v{Vtwk;9T@UF8TU(PJ9e?6n?e5JFu&eVFZ)wL~8%yhS&H~L0a9(p2b`*3H{_p6-O+!{%DEA+c*dj5q^ z!s}bl+_B!o(zJt;QrTtWA>NBp8xIeBa-@@UuveN+*5J>7arV#!_zUK?yxQA!%;>oS{S_X~fu0D^a{zjd;uXv^E(dMZUt4Qs?Xmhx zPHmmH&~dJ-aGeEo?CVJ<{oO`AZ=t&o&mSN;)jH6XjGlti6BYX8ue%2NyR}+F`sA;t zBD9UPUUcQA{pI8E-j6fkm9~vEhW5n2uE{;IDj03!{){=+t+=&)A8h!aySj(qq={=c z?ZsN-BVU(KwVrkE)U(98Le{r3W;fH^Q#z?l?#0&PQmyv^DbnxGuiM zdMW!nebA3|#(CP0>z5GA+-aAZ+qHox( zshMVaW_D&L&%*Aq3!7NjK#ocd0+J<*WDt=gA_5{JB9bKuNKTR@C_zyX6%olvqU4N- zZ++bKoTu--srF1Bci@<)>~iBWM6{_dbBywOx+(UmZ&w5sy?gL36GBPX4UMYyfHEO zORM$rDz5bz5&R6bwo&CR!p(oEOunjN>R%U7F+x2XsbYkRJ|C?Pey)lU;a26Sc(3At zy5m(m2zT$VW2E$t*H7K&>h4x|yov|Q+6VVlJsx$3s;3auy*eT?c+aS}O{?py?q7A) z)Ki1%NkY|cQaz)r=LfH5|CXwx?n`yQb#evQWn}%E*0;0w7#@m=_u_)N(&C}mWTupJ zg;s^4)Q+~nZ?69JA$9Fl6jhN+MKg7UwlT+?bL5+$QrTI-9E$oC)D>6nW_i}P&u5Ld z9_D<@(Cm$>Vd@GE4YkSP?of6As#%Jvp*Z=!-M=3O-*B&57j^Ablv3A9-P5f?_w?u{ z!K)kYK38|Qx~J8>udfTp(e7OFGiVOwY1kWWU^y~l0lV&-;+r3ab_-%qg z7`l=M5l2F+o>i|U>*-r__FvTgRp3irH_dP+z={gc(BNY6fU zR*#}scIjd$o1$uQxH_(Ctm+G>{(W&W=4+a^?TV!8@&&LI?X&v(36|$Xb#noGpR6kZ-D|P=a4;?RY zeDHXiLauGdO$oV6q0d!)Wi_H#t?A!?OBD&#_f==FVwh^*)Hq&^?bUs*S|-)U4A&P` zeK!^F_m35#QTAtSBM+Bz4OX|~$*XJ^ zu0E?esm|)}*Egv=p<30XR#>U4rsjkX%m}vZs;;T4refWD%t++S@2l21+&Qbb7Vhj- zzgR^d)tajIGF;mju0>SsrD_}1w|v$%MMa;iwaz)ejQW;WW(KcNsZjsw#}2{mR6io? z$&H+rMD-NTh4#%1?Yl0t?{9wuXV@l&`d6xFl$Doion1GE&ozjS|4=)tvMwm+OvC*O zs=laSLA{qyngB_l5qFFTCbA(Oz`TOVuB_0 z++D_mpgSD;G_Nr@gK#V4#)V29LMyiJap(2Q{^nWz;+(fx8JIE2DJ=-?(LL0=ekb(r z`>hU@)DwrQzNo9K`nIaY?!nWeeX~DTJt31lN09CQYwtDd-)m&{o*BxV+OB3F)Qp7c z`KsQqIgWG7_PRfr-Q@&f_+23?_AafQ+hx2SCv~T zIW+iuvihYrg^o8XG$*Hig{)b(asTj}E0@*RoBR)dRnJTf7r}Em6ndNA;*r7oDC_+t zIq#lO&r7})I{Q2Wg7-&*ox!6#=pS@D8}US1_UArppYU00Q+-o#ybvxjgsWk(zX#X) zh0CBd2#rKkA6WH^!_B9tUnZ-kkn@yj0;PGKvhJu8=Ym(Gwk_CBtLUwI_3CY4>P`uF z_UhBZ{Z);k)xRawK9n1|73w{V2+eP8xElP8Du;eS_1>9lHoiyp@7CWOe5*yduUT~j{FTRSWc;QXe3hZ)1XuDs8FA) zj$ARcUAWH}e=c~Gj?;r@|0kK4oKI87%X;HPPHUy^g{%=@jtlq8T;iN_{(6n$<-A8u zz2Q&2!%syib+4*BRMjT+mOk}vK9v_JJ16)yzi{u|Q*YW+@7Gf?N4+CYjS<7WOHbWL zDl?|uU#Bw6>b-QTcB(hjsejS4W|3e^r~bW9l{HXrcT)dKrMeeXCPDR3)E%Yno^bb; z>UV~ljZ`@gl@(Y01NBR*9;nJusQXf75>ymWt%hnBRIO9*a#XcWy_K*E(eY^ZoucLg z)Y}I8%nH6wP`!mr{ac8mSTCPb6SLlCnp5f?T7B1yj9kures)oCeOT7-o3m2P8*=Ha zq0ezQ$WG^!DxM9NvSLn-%Zj2orL1$wDa{S7$aDM^ToIMtg}aQAr4a2N1WT%Cp2Ui% z53|>*g*$uI&z^BH_}x^-dh4a2yBI1pITHNlV?w2xmxJz|Q0b>L!F~504*s=yXl3xD zP-$t0;F~0dg-R7er6^Sj#lN$yf|2Hu2*$PjyutBw_OF`thOmp-CH1`3*7?CUPd!Pa zVuUIc`$34mviDtaHTaIGeBTE@ZPP2k(%H~ApB4J6ie_pZt$IIUxHI^Sl}@*^Kkel6 zhX3mcqj$CipK%JeM`7MW^&oqXuZ{*IYu4C6yq@*zhwJI9@xtGa64aYDHPrvm<%3&&5D5Ek3)XeoJ+ftj|c!{;T@jaG&<|yhqtM8%i0Oizns@AFdTsd`q zs`RX9+M1DJ(d^p!-~Wv!5p8pNuUThRI{PRpHf6aA*)FS8J^lQVi!*G0X(Q1#|6GN#S>9{>Gopni{M-BQ zl$_YEzDKwtKkHfj*Q2}?=GSkT?f$jn{o_^p*N&2NR$1RN=Ui0X4cGpL`;4r8+lBdV zUH+kFhub&YXQ-?8tb1gg!9TycYD}l%ni?gjv4*-A)VM<3GymFI^$c@e`ewVVbAC6> zUx)sSSItCDI_Ft{ZM3?hvXAl}&q(C-$o~H9v(9CF_8uzUtH`P%@PGd;L0Lzh8s=Nh z{ujSx*6|jGIo|Sr<9KVr9Phh-@p$U0shXply1FW6t6qz0{le|5eg##FRr{88T{dQ) zv$~^Hj8*sa&?iD{&ED<}Mu9n{td%-BrHL;GOIiQEeU8f;+CvNNv9V2XyL;sSa<+>I zZFh&6h8(vtwB6azcK_+)RSSJ?a_Id241KO6^o`UvSKm@ORr>qu@;}@0-oP;RF_ z`+e14RVmzOJnLW8cB=HBIo`i>lyLhB@?kmk)LJrF3U|&~tKW0BQ<2|7hBU{iJ)X4` z?p)N7v(_`@9C=Qt6z<6Cte!IR`d7~-+>!qs7w)^Me~O$9zv*Vpi1ic zsTiiNnu@G4)Pjv*F6N*AzJGr_^~+?f3CuZ41!i>q`SH}5X07_m*)A3`a(tEPUBf2XJaKgav`MoRzxy?*MO|0hbiSVXjNip5ZhT*4^GH$z=~E=>4kQ1X8o z-U4;8oUNQ<1(d?dwz^o!e@^iQl)}qay7-d6IK?U`g-_Tpt3?E64V1z!?3i7`f!PhE z$S)!}egf3RQLIxO<3A}9g$thqbs-FHoB>KvOnC6cA)jgR;*C&>T6~%=avS`ZJWz_- zB7liDL}6l}6fcV0m{>y|OkOBO9TAO*GsIxxp%isREGC~JFD5^fqMnH36YE1=BpBlH ziBO6LA|EEnkROu_rD(|a&_#+N5mNw4(TH!Li&R50rXZB!C6U6>8be(aG8Dk4K`Gjc zR7|>|ASMG!(Mc4-WE#>ig`pH(MLMR4Ap=tsO3_VZVu~3GV~Rs528$w?5{9Cfl8}E( zg=?mZQikG~(ol*ILoW-6%5beD?%y8i03ht4COJEp%i091xyt~MNCyF#mAx&rkbHLraF{joT!4S zVW^6E0ZK7mRO9#)pe||}s^e=xW|c$@{3NK0+J+bKFG49k5j8P&47D(Ip%jy;1-htb zco9<{N->4sTo(-tbukU06jS+ybhEmKH%`vSEEikV@DdvinY&j3=qP5{=d>bgm ze9;Q?o#7SCdML#L(Hir;p$%pOl;ShdmVFmOUHo8ZhyM{uv5gwU^K(!aR}3BSe?cjB zh>rN3P!|T-2``}(2SsQ6A*c(Zd=+nk{QDK63r3T#VRAvqE0wxp%<^@N4yE{=dZ&v> z*&XAAQk)k(FjZtvOjRhw1f%lLF1`L4)XEn1p%W_z9*wl;RD; zWPESPJ!qVQuMVYn(=Zj^2XZGGKgGWQsda{Fn7577G5w$viw!d{{f#p*1E3U346`ur z7-wS!LMfIS=3w46&czIZQhaWhhk4I9A2S$AvBt0f^S<#j%n&HWTEjxj2gXI1p-_si z42v-z8JA#&Ln*#CEX6oYpJQB5igku%7`JIT#sj7J#;^iY+_Vx?0!s0%;R{R+)0dbR zpcFqDR`Go|LL!W5HNF;<;%CDe{3b|*F|EbF2&MSN@D+YDB+i(=#@B^X{AyT--vWs? zrf=}|A$@VfxA<+4m}B}5-w;Z%-LM|N0}^>m-{W6`QtUKr!0&>@AJY%`CXl<*@FS+F z=_gDx$X#jJh-q&68PfuCR~j~9rkQ@hOoyzJGi=5zGyRHL4tdXnVGCxrX)9(AWYw2p z8)mO*J7yo`-!C`pz}zwI#N374-G*J5r>5N)q3y<8Fzmq?St>}}fKpsC?8BI~-!MAl zemCsLL}&*vb|}SN!$C}xb_kOja-SLwW8$MYA6sEFv8dC*I5iieRUeL~BYCYPrb5IxKv^)6mP>Sc} zU3__{i^R-4!+fdb!mNT)w2@|mL9~VR12rAL z21?ORTJY_mF4k&R{8vzl4$_ACT8qG}gHm*qcFZ@L1M@AUUnC>hw=<-z)SUSBP>NTj z3*QCOVrp*u1}MdA(u3~`b+J+N;(vzp1f&nMN%LcVfwbu|fZ41?VSa_Q=`uHFiVF_`U;f3a7_a{NV57dy1P_??glDdRA^w0O*JNQ9L6FnhH8n7vSnUWVg7_fOZhzeZh`bwwDS1BAkk7* zz+BZTVy;1YHL?<0Zil+Ku2sh0fW$Fb1%Djs;-*#=e+x=+LRQ0{gu1w`Rmb0fQk;=B z@Mobe?rJaK??Gantckg=)xtc0#5!3U^H6&c^9T~_WF5?7tuE#Xl;WbS$I&i9qM}wG zFLKq#{~;UTFGKoTxf2xH9k62=6jxFQ>~raa}gY-+;PkXl{XT1f{qsTjFm)UA$y|8Q&O6aa*>+-+{VlXMP3W9uk3NYy3UP zy{9r35lo$zO%6b55w zyo9>AWquWZ8!{3!cES50SKIs={sAPa8@uA8pf05TI^GDSh&Fb^$3R{9_3ropl%jyK z2PTi+6B7-kNHzAt#OrTh@hIvYL87j4Af~(iE~W>RqM~sSrlL$XA^56L7a!{%;KxBJ8XJe=n?PO6&_Be_gv3wdFnoKc zi#hs7__>hyX&jDOrH{a@hQv?fNX*arD9k2E{4|cnY}LnLwm~U68^?0AS0T|!{}{g) zO3}qQ4*wb?7U|>h2O#56;{^Qckocod#2!09HKq-0{Cu2_QQ!re_<1Bn%$Y|O! z8=nRl$r|V2he1Zimbv)ikXUD&hyM!dqO@f`z6_*4XA^l0q68sC0IB8sp-vH@jSU$(sg;M-rT!v|AS&nH0rTEdf0@KX0 z64M+KIgMYi??$MLS1e!RTSNMy##Q)DP!}C6tMMHn(bBjE^QvVnrVEr}ukkCk+y`~h z&GI$AJCx!#<2p<)%Qu)epcMO!-?HTasEa<9@9=LyMuo=pn0}V;G5w(whm0H8@-WoJ zAj=Q<_aOaG7`hH#*c@@YU3vSama|(@(cb)NUSz)#-D`5 z1k11Z2T+Pr#x3~Mkf>|fihlx$;l^$FvykX&-Hw-#SZdsX(X2Z$xu6t(8FyhU*4-E@ zB(56wVC>et7zZRm8uwvb*55F0NMF>r9}}=1z(hf!pYb4{_ym$ivL3?6Kt_wE!*~tS zceNhD$3sSorr+^qNT$eo6rTtgEt-zuEs!3p^*FvDB!^}?fww_wuk|E84N4JVI)%4G z@;}zo_`*;Mhv^JH5;Cr_p2e4dWZq2YFwa@fW1fe^Thj$hMe9XOCCE6@bcuZfP#0CL zf8eV@deNrK_}q|wvh`1VO-NtbbOj#`=^I=B!oLKih%sHo$3n&<)@%4?P>Q^!>-acG z_QQGu|1zWpZn}xj2X)cbdJEqUN|E1m8`INz2h$5mkzl&ZmWhxtyY(Kv50oOwbRVA# z8G%|K;QK)-QcMr=1t7g^>m&RSNQ+>4j2UKqg82waQPA|1EekKwb5uXWlG0AGee*&c_Y@*{Uia^F$)?E1MP>P}^Grkzq#Vo6ipADrb zX|iDETdkM{kT%6+W6RP|7wfGN`0pWYiph>I3yI8D2Ywr*=WmL{KL>TO-Ri{efb{%L zE_`{Yi=9?Ceix(-GI{V7A)`F27rzJ6?wEY|%8>Tm>c{Vcv^%B%zAB`@VU5D?hf-8C z<;GWswENaP_=AwFohce~$Qpw=49T9EV%hRjsEZ@ky!hWC83R)sejy~UYmLVrgHkLq z<-;7e=Et0X^pi~qY`FyL;-obZe+rU4FeTwXhqN8mWc(RO580H0UkP<_)>;664$?z5 zrDD!o3t}!nddQ|iY`F^R;-WPTe+kknHl<_!ux4N`Lwd!gOw6Cw!k8q8m#G-$nzcCQIwY=|N^t!BP!~6>CGj_*6vs`aFt@CwF}ESTN>drk9cx+4T}U6& zRE~WwL0#OlK8L>#=|h^H$6toJcwjA$e+cPAnkwM0KwUhtR>VJs#5z+Y{8gxnC)UdN zr%;M(rYiXBko>u=D&7F4xM8Y>zX|Da*{b7>P>Nfo8u;5#7be>acny+yGu6c3hq}mR ztA#g1qNS-eMz_6)u|T4wsSaB{fx58T>f&vXKA~0*FCp0gTYbD8N}*{D@VTHa9JYq| zNJv!F8sTk_43F(4ybBWjw8j{>tqH~h$(3nM+0qGh;k7lx`yjb8tvSYTYk>(sDco91 zOqA_qOl~NJM{9-2V|xV?4T+*!YmVlFx`?s0!N)=(r`8r9fV#+QYln}6L`bbYJ{r>h zv~|GegG5NJBPPGC6D9#l5vz4(%e+t*iMChqNswHG)&-MndkvEUiHcfROaa^Lm{dqq z)Vi^6BGg4eTX%dRNc7Ws;0r)qq}h7n)1efFv|gAD+Z&inNR-ohV+z~e#1w&2q-%XJ zMQv|kia{ct)|aDYLRuEv+xQZY$fotfl(hB7l!El4wE>vYws$aPpcKWmfta$kcQNH4 zJ!)+b<~iGYnCBspP#cUXZ+jn80TKzdA()D`4=|OW6s5JHn98;fF;yT@Q5%M-YWoON z4N6f~8;+@N8-b|-iICbz%nPN@LhpB5D zkEsWVoZ19TecMD#11LpBZ4%d{5~Sy5`vl(zN>NptjIRb6bJ?cg8$&6oYg6$xpe~x& zKE*eM37KiqX5s5YUA%0Yjc)~+Y0~E48$x=9 zwz>G$P>LqnJWLzgd`w#?MN@47rk(9GOnWFrGi@RJHiz^cZHw?7p%g8&#h6aEC78}o zik8|^%&WG~F!Yp&`#w>?Y4Al0p@4JwGf@?4Sdnm;qZ69Wn>o?3V zP>T1o{cJfHl9h5Dz;B1l@o5J!yIhAbyP*_AwZm-rA!L;2I)dK|r5L9Dj{gWUnsXh+ zAAwSg)Q;gtL2^p2aJB6PJXV@t2_#le9DVPay57 z>n#2%r01ZW!+#2CRbA)t*CBIl+6BxF*G0@tD8+Q`66Tic56o>yrcS$zak>A*xFMN3 z?FvVm1?j81|H8*WX5X}{_&HD)pSiE$7eeORwCnf{}d?vGjQHhal~O*@rpo@neoa;<-7% zmgOLI%oBw_3W?$7-1z4q*-K9z{BcO!Hb>(tKb7;a9$*MMX-J&E{>P>L7KN%)$Oyo5Iy?}x;8 za|*sTWX*uL06srtrGYsWUk5T0^cKV?LRJ@;3*qZQ;-@za-whJU&FPr8y&0H(kVtOM z#JuY*j2Q%pQ$B&$DkoNR9QD$B%|m^fy<)jPX{) zjD^HEb0xNX2U3Ts@xfdLGu~SjGXXM>Z?1-!=&g>K1c?>q8kh&(7cdVYbNc3* zm`C1Pn8%PgeRFNh6YqS7F#*kZ1Sk-qvEBVnAzP8c>Qk=GK@Od~Gl_A!`84Z85cc?J%{W6!XmOF)#W$VCq0(l({3OuCEiO9%Ma$ zxihA|?^R3#NW3z4!8G)}hG_(uk1%(|yySZw(-<=5GIzr?@pZ>Eg^an(JuuCDJu%H8 za}(xXm=?Y_FfAeDFLQ6q%f2@;tst|v=02ELd~ab|L*5c-?u%*TdmGahGNWPchiT{Q zk7*AXTbTz?AJ#&8Aij6-9U-#}=7IRHA^i~FyZFwKSz7ZT{CAMvi0?go7f5c+JQ%+L zlF#(LkKY7|!{#CQpP(*&@qK{b45ip)9*X(Z_aSBrWcJoPj4d}qM%liP@Y|piTg=1p zTOp%t-w6B;$SkdSBz^~ElA=F#|FkWsd841NzJs+-5+_dr$|`9H?zg^Ux; zfWHYDUj#nG7lX7K=7pHZ0o;Cn-6BFszik07~}z~}hcPzs?h!y6#iB(NO62$GA_SKu{BpDM5t zzXXzV)4#x5AU&(Vm-yw7+?u`$vm&q>vl24ntgm592h_zEfwlNAp%hO2E4&MmQ4f5L zUkw>2>g(`6sEaj$Z}4j&nKb=dd~Qg-BJdsl3}ig0ugAwi+LXZe_=}K?nZ5xZ2bnJm z{DA)hvhq#;5uXH^9Si(~{|hqW(>LM^K<2^%KjUvevRnEld?Co3SKt@?9mu#(-;7U( zAxRx3sA#J7Qr&h%aQ zvXI?{~lx%rtia-hq@RX^&9?uNN!5sj~Nnm0P_K))z%MU zhDII2d4!1HqK;rbg0$fJ?;NcfWDY&*D1HQ_1=o+^Yd~^+QOEJ4AZ?<40^b`l zw;pv8KL*kY=%?`0p)STooyLC*iR$_p{A@^WFzPIRJS0l%=kW8PE+#~s$4`W0pY#j( zFCjU@sEhbdAW=@gg#Q{cM<4YEehOs0ihddY4P?Dg)SviIA+rGb75qj>jxp*l{B$VA zX8kH=M$|RTOvo&%ew{71K<0p=Zs6xadYk%9%)F>unE8;nq~FFYh`NLM4DxUE=y%!o zH^|)-bq~J?lKy?Z2>&@GBI%Furyy4~_Y?dWNJP?~ z;?F@{%*-uJPB9CTA-5PztPsd8F{_{yW{VN?b#4=89puinu$VwtAW<%NF8ue9l~fip zW@Bz0^E2dLwpcJna$7OKL+)jZ4Ra!Q1m+|pM`W>MTIX?K+Cc7WOC+Xk9w(+9Bwu84 zVcO?$V>&?cMHUaHV;(Q26C?|5@o`qkkiLB$KmJunw%HQE7lhR6JW=@fA!|h}x$#9I zbvsWU{0ERsh$R|d3esBTiNSA%+%=Y1{Bw}DDNkPfHpty!iNjZhX7kEp8WVrklcbL0skUoZaPmQUPLG2>sylW4IuL%(aCrRq~~c#!8e7h=!-6ZcS6Sg zmQ;Kz$T%yyAl?n7XlE&eZx40hiB7|NA+w4W^5~*7q=y`xf%ij3?v_ma>yWvX=)(9Y z$f(>>1m6>~YB#zlJ`a?lx1|{VO~^Pdx;Q=t(j&E$z`qUYIY*bocY}bHLI2~_~B3&J)_IwdqF8iS;}GFjeZU@2ud;9@;qCPf%LAU%i{+_#<`XX_>UpI z>*$L3A&{)Hr4r_Y=*pO(kaZW9Dwq$Wt73*hGR&50?7Ifiua2&c9}bBImKvB5(Jx>| zLS`NziW^VM0n0b&Mk);l1QFL9*V#xfXr5+|aramSHO0nM30Fw~Y z5R(X{*kftLIqZe3q>6b7pA6}BSQ=weVwzwIK!Z49X^KgYX@<#w%;i~{m41xjJGcEg(>wJ4@Lz8fS8S$p7hNG*!#iSGf4Io4kI2uLl8c>~`I z5>>3d@lHtZCFV_hZ%9_z+6V82S5ve)v3){8DUx zd=eyMY#o5l3+Z3QzJpJNWQ?r?@%bTH-`IEY>5%AT9fVJY#6OsY84r9w=kda92NBDY>IA$G=F9jKW z#E!r>f@E>6Bk^S*zjEv-d{f9s-#Qv!4)R;aj=?vFjOeXn@f9GWkJyj#Eg^jX>o|NB zNKJ?xk8cHO->nnyH6SCA*opYokde4`623O1hQxk?ZwncTTPI`M#ZJMrhphRxPG!rw zkUA6lDZV2l`)Zwrc{g@CW)LK1T4!M1kDZAb0?EW$XR&WXsEgULv+;8v>olx$@J*mD z*2T`ne*+nzTj$|hK%#o=eEc@Z+Bxe2%%RxNFoz*IRqH~`k=R9;-yu0w>tgn81Bv{x zOYp~_6z#1`F~?&+$DDwy`mip;oQz$LIR(kDT34`dCrDp3b|wA{WTl7o3;e5)xwF_W z@#i3USL-Uw`PkK%3y@WF)-`O|71F-MuEk%1QoL^c3f~Qq<%|6qe;JZ@wXVbWfXt)C zeuKXP>33Pb#rK9}|6;$xUxnlxtn2Z8A=$s!@A20m`2_0*%#GL|FgGFj1nZA%`3|He zbgZL?sE0*^V{wgG=VLgoh6mrG# z9>HIS-s70tkeq|{1Y6F7%thusiN6cUAy`l07eeMD z^Pa}vhvW^cXYh+5Ihnj?@ed)n0_!=jg~fxQm!JkX(WF5~fSsADGu5 zxdQ8DjdW+#SqNNSkZDiy0qx4>JMM=34Kw?>CVAYTN_- zWJt?veTe@K>S9XVBm7jz>PPEi{0~qUpT<4GPlMzltWWVjL9()OLL(~+Sp#V`XuOFS z($>dG{47Y0!fM3Kjx%BAKynmT4Kp_`7iJ!$=WjJ*=Ev!n1(2S<)xy!XKyun~R{TQ9 zy%u4^_lEQq;v(>iA$h+DJH8KO#xvf5kA~cX5s~=5kRC$36Q2yp^+mYw{UH5>csITP z7v zfEg5@hWV{w%8ovmVX^bd?p92}M#h1k|f#mlh%3*fI zKZn@~xkDqK$6SpskGTf9LnA7%?=na}A-*F11|)+QQ3-Q1zB1+(x`8HV_( z_&bn0G@=^jZhUpjJxC@kq6S-Tg~W&W7x0fE>v$t-;FK~{BFqTBVS#-8`7tZsE6MR8D-?FkM~3Rv=I$3@%b8J@d6Ki4_SS;+sGz?ney6KY;Z76F$Os zfs7O)hT|VWUGz>EfqxS+dlfMf{{+&?B#gqp1sOp^jK=g!7=!5#>3Q16Vg@FBjCmJI zQNunC^FhLR%uq-l(mnz6VZubrFi0QLJ_$1>;SK>0#PuVb&+i#(WQ%*|*Q(_$?uGUI}yY zXCWhc`#gLrNWL*)KK>8L2;IH_|2ia3nD80?0hFSreIdRVWF2P0BK#9bYhquFF(fX* zNXTrseJMsu{2Y@DGFrDUW8b$Sqx;0=_&iXGe)biZ_{5c%e2_N9{smhOfYkrQFY!r` zIdS_cOh)2rOeUmvXJ3OUp12lM0@Ay)e}yTT_%)^!q$RSi!<0_^22%#o64}4SbW8jW z(;f0WtbILZaN_rv_aSYQeFJ8A;t!Y+kiMV&N6e_ipD?2#t(AQv=HtYlG2)JJ#7g1;{8mWIWj~1j z1Tw>$cnH56(l*%-V=|JCU@{>+O#APc!bwLlMIh~w{TTbsfXr1T9mm&(v`6+6_*sw{ ztE7|oI*|6rehNPaGFnVJjjso#m}@_Sp9jeXB%Q@KfXr~&&*2w9U35%3kM9KOk=ifd z7ee}kNf+^NKzgM1OZdf*dnf4+{8UJf)P5N=JLyl%97ua-zk*qi^cUtcNPB0$idm6# z4YLx`Beh@WXv-m)|D+rEFCp!n{U&}TB=eti3%?rD-q~;Czl3D|lkVWxLVBe3yZF^m z7hfga!+#Cwk=pO$*Fr{rNe}SbAU#t1L;Tl}`KF{t_#Kcn2KL98TS-qaw;}yW`%}!F zB$11D2hu;Z8*(v+1?j6NN&J0C%WF4c9wnJDk0I;B?HWcT=fW5ut+3sUF(vC54bslq zEf`0#6%z@`729nXcX9;A18H;Zc0O@0WR+dA1Mh>ZA-6~34?x!1B|Gr}NDkTV!XJY4 zHj~}>Xh>^o_h4d@y_i@?R@v@j%VUtW7Ri2m9Hh0i2k<8#EnspKJ_XXk+H+$HB|`D#Z3-VEvSCMV)cLUPoOB)kRk%t&%FzBFX*q9X-wgFOG9TmWAglBss2;_Z;< zZIcV)t3%c_Itt+tbsMMz%Sk%{*}`rFBc@pU23(Kw3W zqaazAylg?-yHIMjiUsnMRG|@OUNvhqZC`lLhhR6()iCHvs8{U z_&CUzBDpMnF_a?SQ4XIE^5kIhbNHo@6^xGO@d=Q5x8(Bps^AMjo}5aliZ?-KwH(#(>5!gbN_D&&vVzf31D^@WOQ*bm z_d?ceJ8EJADYYpfB$;`2jRGdddKOG8FdDKFuZA#-Go#`v<3-b+dod_hRI-_aER9OQYElxFzy zkU26(b9{M7JxOVSuMSzA=xB+r2zlNlJTr30ouBunP#h-s423DXp^cE!<|ed|H$Qp&6N z=8%;tjxLyXDX(GLLsqIdx?(z{ypHJz>7_WjVO~q=j_C@?fH`_#-b(3-=?lq#IeKB< zOL+q`7?J^V^u`n|@Fu1h8PhoiVdfQh4>KP!rgIF&EG+OoW)WoU<`}}h z(;#zU1wO!k4rwbLL-8}9E>;%!5dQ_Ft#k~-&w{KXDDV+}7o@Fp49CxbtjRAh0>2N^ zRys!F=Rwxq7Z`;<2x%)FqwxzMnZp8O@P{F7rDH7SXn~J0#~>>}9OKw>5hO!ZU_AZ; zWK`&wfcc}qM9gJKyXlyOxmMs4%yme+>6pyEpF`Hqq)x#bA#J5&DtZKY!dCMIvzIbtPstq@{Cw!Ip<0qx;k^ z@pB<#Psb|!5lGERU5#G^X#pK;@JAt|_0+ZaC6G~}<173bNR3MU8vi+DROncTKL?4W zso&t2Lq>v*Z}Ar({h8G7@GBvsKgW9fB}jiJ^?Ur6kP)9_17=m~517@E5uf8n%$n4n zFl!+rGRH>DSE)Z^zJ|=*I5uI{rT&8X1~NKxZ07j4p)S5n{T2TmWWL6+1%DSZ5=q^P z{~q$}fMXl}K4e`=>UR7OkY@)RJMfPoecIHW_@5we=Wy)8KZW#cQ+MNkhOGUF+=Dkj z*1o3h#s31OkdgcFM#xj!slVZWg{%pQ+>hCkdH}N(N})v_#B57FgxL<6*@-;Nz7dc- zN$L^&PRI;$l}FklV0#7CIhlAEAkYke!zD%tZ(t5Wo-2&Ji8)m8 z7UnRNVpHU8_WcDi7hLEL-U-P-M&8A^3f;rFA@^+LeN0lJ2bg3?|16MP0F^Aq_LzY{WoD-r`KCfnd|SwqhLJ8zyFzYEdq_Sc(u3(x z$cyO+$%jPx*!Kox?zBA;GiwxjzL2?&`qVQcHIgrTQ_&boEd0HO42a*GcjK<%C z^uW_%@Bv5;Br+EN0P^H=T3&obNDd@24*v-9=8&{_d<#epBr+f7m9+er){uUtGl4BV zkZ+fkh;Iv7`{Yc*`yk&jEg9b)@{Ei#1s{NX)3gHkj*vA`&QyGE$Tv+Zi0=$}cE(u< z9}W4YX=(T_kY1=W9UlwnEu>}OyFz-Q&P;q9WHu+QFuoh47wRm6&j*>eO)HA;0qJcz zi(z`E702{~%!E2iVBSb8iRlgLc{)q6Zz^Q2Hmx+i52WYmEQ5I~tt_T5a4()nUJ}Ow2JtFkY1>>621szhB2)&eh{SR>8ye; z23fU|Ruz8|@=T4h8omV7#ksWV`16oiS7!};DM$_{?FIZFkXct}P0Z7@S{RXD3sc5f z8)Ha+5hEcpu+BQ{TMp8rPOpnMLDpJ3>*1e=91f$L!KpZw&rNq}%L1sLioiU%Jzlxa*nelXX!Awbi4Ko!o*Xitv`854?%rwaJCeCh{ z>FM1uGaz#f&K{VV={+&CAaf1QUYzGRNJb+44g4HP-_qF|b3Xk|%mql_(%FYCr$A;5 z)8E2hg5+VGeKCKezm2&J>03JcVg5|-kGTSg|IPvIyBso0nEnp_DkT0p2jW*kU0h3l z7k?cR|DA&{H`3q3+=Q%SaSq1ZN`D`78{{V9rvW~?$6mu{AL(F|h?!q~Y z<9`jw52t^Ge+ZdDa}LKmN*{rF40(3mITG_EeH7*?WH!w?8Y42sU<{CTEY7hQnej2k z2wBJC9EUMwjK^q@b-&IDm|PhXF=oi@n{yII&-esmfn-jclQGteDHt21g>p{iJhwoy z(;1)Q?T}uja~j5xF&z^LX`!4mFwTsb7#F06>70deXUxWUAgz^i4#t}?7vqEUHl6b@ z{*3vU03?^GxOvVySEMz^Nb15co#^;zg zNIU3UhKbKuj>!kfmN-{n@@K5XBtY^c&Mz>D8DC8c1f1*nc2^)7!i?|nMIh~+ za|5Pm#t)ccP>O5LA2G!F>F=VRmP1$LxWu=W*@etW1!eOvX<9VMyM_wF`4TV>jjkWQC7w z59ZH|y_hSI9FA)r=0?VEn46G3p=&?pPR0SuT}a->brAC);}GT{q(yTb#yB#MU?L$o z7T50>Z{|^q57N51j&WAekeZNr9G@Gqs>gK#6Q6k!lMm9axlUmcGf!iZpcHYgGnfLI zXECXejEd_VCN1+kCLQujsOtizWadRoDaa~B*CkBZ%s(*YAg!3|GNxkYpO{LJR?Kw; zQ#tc5Och8j#dQ@^J@Xo-2BbxEUB}eQyn(3=Y0+Fa`7W7|jBe&Fd_73Z<+_b&n0W`& z2$C~#-DS(-ki0?WJ$zG0&ct;eb0_lw<}M@);d;oH)gdiW;YWBAWIo0982D>Bp$j_DSrovX|6)>2Uj}gM<~Tlu1vVmRRr@h zq#y1oM)_Arf7?}p@>WQ6a+RXI6B0>WWhnm!$@q^=6^n5z=zI3zx} zs=(8(YM3*SQKzd0<#UjcrmH693y{&Jt2X6JkZ9nlL-`8iK62NC4tE0>>28E~Le|2$ z8&mc|*1x%%Quae~mG0)0qagQ=yCvm3kUpEc73CC2-^|^baw?=IyW3JO1gT^0_OQ6S zBP`+W3`@GZz*6q6u(Z1yTb68dGvQEQ21NL^$f^WL#z&`GI@GbWO*w?)fzU^KN`?;6GA?{`H1NRCz z)cpng(7g%{bFYCPxxa$r-Rn611W4U>e+wtM*TYZT8{lO3kNkC(dn4u9?oE{EKypp) z&6MXs@=NY5lovq8s_t!+7emIR?j4kuLdK!)U6hwWDOS4oQ2qkamvHZ+yb4k?-TNtT zg|w~igOs;JYN`7$<(-hW()~N--H`UteT?#6NbPl>p!^%8_PS5O1MV}JgOJ+mK1ca5 zWH#S@f%5N=meG9)9&=xY$K6-(Cm{0$?yHnfL29`BI^{Ev8t%SH`5dH%yKhsz0BOtI zci}bneav-8tK@!2`3_{X<$g^09%RJieoFZXWTx0{u&~zDW3bR>d5n}Lq;2wOlueNQ zgU3uc7bL^ru|S8%hKYpa6FhdxF36qYiG+TS3lo5}I35q>+>r5($45CIq+Rd?C?`Ok z8S&(%oCLX#JkgX>ATi$)OF0b^+dXlVGa%1^c=Ay$49SOk5-1mi++Us~%Eck~mnVgC zNyz=>Nu^vGGP3X#qFfe|$M&RCeh!km_GD5n56M@1iolAVVwg&hd(cyYauvuu=qW|H z8sr}Il%ZS$@|2~g9Oasj`_A(`<(DA$ou>k9;;96idaB@?L9)u8YLr_*o?iFVp!_l< zx9q7&`4z~>!c&`a8_2!ssYAH~yX~Qr!nR3koD@G zrj&a^DSCODQ+@+-7kgU5H$AOjA5UxemZvR$?F+e!J?$y?gUob$I#M10ncenuraTa` zBGJ=@@?gkpwWli_;^~I@0CK;3dcY4oy)eTd_q(Sz<>8RoWKSQ;BOz~H_VlGZ77`6S z{U}d>L<7$N%99{-zMg@Ur$X}Bo#5vOHtq63;lyQb?@uOn}QglQ7F6?WSik<&}_j(=(OwmymYTGYzix z%)qRHynV$pi}F{H)q0*el-EJV6rOpMzlDqoJPRmqfV7pKg_Ji!@>-t7ls7?g&Yq=| zH$z4Qo@JD`K;n{T1?BCKak2LcSkb!*R`afb)xBTATHbZAw)b1Md=b(vc-K>I2&tdm z4e%xJkFc?KBW&W`1e;5u?^E6YxrW|{ zaJ%<0+~s`=cY6(1;EM6Zx?G3;)-rV@JkPMzTn(}!_*3KJC`66Tmls69k;mrpx zdlTTF-XwU%n*zPQROs^+f_`5*4EQo(l&=WP?JLG{@<8THeI;OwuM{R0(tG!np&SQ^ z%)WAz^FboB?|I4zkjU(-0F!)`V6v|YOz~CYuLU6ec3%z31tGE8R}-fBYQuD29ef5P zR{QEvE)0p)z6O+wLSnVA5iIU&j41)>3;CMDp1$U=m#-!4?P~?!^tFb4d~IPrUwhc! z*O9#jKx&1rGaTsa0*Cmz!Vi4i;80%=_@S>C9OmoI_8&pkwD|hK5x%}~q^}zCmm`7Lp0^4Tj@f>?>Hn6$x*$1H|9a^0Z-8F^ zkI?65ov-jiYLR~v@-e=J<#k7Jvakk-VXkMft0*2JGcc{L=C`I9KGg^a@dDU`p4jKch> zl)r(D!u*9Oe+QWX@u$OI{F!jGzX<+UNT1eUjPh1UKh|G@@=i$H^OvH$8xrgMWhnm! ziFN*Rln+39mHy}9HGc(o-CqfR1CpipSAh@w)!;*a4QL3|1sYS1f#ewiO)2Mv?+VGR2KrF$2C0F8zLa}GB2}Ot)X%_R z_)cI5W+0?~28L1|1gW2aVU!0$>Stg$`Qv(Yy zpF-}4z(UH?A(@B3V#+ficSK+*<++fk7+6MmKIHBQtbj`cUtm6m#Ie9C%BLVBn!p-( zF7OrRJS27n)=~ZwQUe3uQoaV6V+yRNdN4djkO&!dg>p4W?=I>ptPyn`^8zGtM%|=b3)0_6^Y!LMr-w^&Uy6y(P#`=%{__bZFS#mQ=cFwuZ&2?^e&d%-5&2>pjNc$nJS!>PA z%*>4BK1pjyk|ePf(h`z{+~uBxV~urnbbtQ(NJ!)Hb~G zA7uVbZA%smZOL(lEOI=u`ZBabtDyth3>{H6Wb>>Y>8pkubQ*GLaUtWIA&=}v=1@aE z`4MCeH5A~ZhC*7hkRD1C$B0a<~l-v!O%?-n_yJ0vj zrO2+qP)ROBdW)foT#n53h7sfnj?_Zdgg)g3RNF)#Po+JZ@M^-hu324C~0dkU8D3p1cQ{(+wNR`;fhiVH5cq zWPUenCVz{}?}n}9?~uKWVLKi+?4;!gvd%Q@CLcrAnTEaOQ^-2gu%CPy8LJHk$Uh;U zYZworXgq{T#v`=fgUtBGqvU&$yGF)i*wA*ckkg=3}85#MFW#lW!@0A(L$ybq2 z{frglYsl}68T*j0BXfbVFZl*C7a05DP2&Js{zm2k;~?@s$oOv>LXJnS7t>I@%QTFZ z1Z0n98ct3`K9w+4l9P}%gQ*H1GL68NrjhutX%x0HjmFldG1%TT7N0bY!!D-r99x9^ ztr^n^)a(_C6=kiKV{Po9MIJ<|g66r}H&7LlhSeb2On zT#Jm}rlsU*$mnfaPM(R3*rt`_*~o}(T1}pVjIpM*!dmraHV~I)i_i&SGQf zJSIyQ&>&spl}2R8BwZ$3kQIe=g=|As6w+0+OV==6x=yiME1AiCk(GdCC67jS zK$48(BnQ4Fxp2JX=GnKA9w?>bB*}-9r2tNmLinB(#`mQt)=CO~AT`HnQVaZ0%EakX zOPnFK!kJPV&iN6t-6;@;5w-^jmDkQ7~Ca|#of|4+#`+0z0w5SCspHqsRqB1 zCgA~T3Vth1#e-5UekV=CL(+6SEX~9t(k%R5nvF-LIrxJ#7mrEv@keO^9+wv3326zQ zl9uwbtwXLXX*r&eR^m_6YCJ2g#dFd+JTI-spQVj>LE41BNSpDZv=uK&+wror6MvO< z;}vNy{wD3mtI`4dT{?)@q(k_JbOf(UNAXYT7~YVM<6qKAyeZY;-_jYpC7s28r1N-N zx`2ZDBF337W4!qaisq|$m-!kdn6KmA<{Ox3zKQkBw=l_k8}Bj4HDbMF7LmU`jt$I- z*wCDWjm-72vAF>zn;T&hb26rwQ}8}>Q*3H(hWDEd*vxFgRI?ckW-A)aGMdZ|G@D&$ zF}oYF)?vIf@x(h4wHql9-#5qsYBn za|?2FWan$nBxfRHh`A-XB{GJXTajBKyIpe|a$98oVs1-rhm0HMEOJL=+%UHzXCwO* za|d!Rvf?s#B`_? zEXDgR%dwedC8koH*2h(XIHj9E6LV%drhS+?`amPjAA z>?F5B=0VGDavNk%VcCoAE&H*9^AcOi44C7rwnnG-EO@;+ovv;@fCAakN6ME(|;6D?u#cgUP*iINW^ zbD~8de~-+Gmge|_r3Ed=kU7zkNj{FuiI$dl($We~S=!KEhm6(Mwqyr#r^uQ`b|Jmj z+77+e4(PLXM87o~1J)c2T5~aE&BNB#e2!{^jKJ0ca$95-XDuXWA)~Rih};h8&(>n> zU@gJNtfkn|TE?@FBljDv<@kiPf|eX)l(zQ4Tx(yfu=b<9H*&|%I)MBvGGbc?kq07o z`K&|8&mnjAtV8hy>o6Q{9gZ(rD|xmO*#%px$Rm(Dy0C2`CnKv1+h%eKvbwNsB{xOJPuq5KGi3aJ@lVPuVAJBd+S z9W60rpJF>hegL`CZaYhU5ZSZX&XXTP_AIsw_^|CFEv=BAZ@WxxgY?jo=i9Dg zmhBoX|3OA_+jVk#r03gikRL<(t?edxAo6Lo?G|}3(uZxg@i|*uGAj_9n9QAOqz~H? z$S)#ya%_p@myu5)ZAs);krCTgpZq#9Zrd8*8@5I`)|O2Bo5-remO_3DS!vjsk|!c7 z4O=tvJIG4IW+1?Uk(+-OV3 zuWUZrHzB(TTY$V7>HoG6c^5Js+QQ_0$arXrlD|R5Lz_bW78wt1&B@;(^(DEa)N3gXepFpk)TNe2ga$VTkkxwJng{=emC*-=YbtIod zt_xc>`DbLOVBL(ayhv%vTm0v$oCF4rrax0{t%a!CdNI#dW$Ze5+E{`B*AtSsz z65Gk6Xlal1b9prRF=T|7$B-XKMtFHF`3dAMs639`3Hd}o9*FTzc?$NBr}COI%>yK995H3;3~o5ogPn@e}z9&XKR;r}8zND__TX@(r9X-^9=4 zTev{JjSJ9|Su;n#8iH_IX1B8PFS9K~(2g4^ZhxI=D% zJLOE=CAY-gax2^;x52$~TihpS;eNRtej|6l19C_FR?fzQat?kc=i(tb4-d=vctkG1 z@8v=~Di`4oaxos0OYldz6pzbgctS46lX3-~lKWtt+!s&F{qT%D0DqDP;aPbIo|A{- zd3hNAA`frE-DBiFgIr0zjLf-m75NHsZ$TbGzJ|=g@<{Rx#n|U# zp?v{%u`j~z_9a+qUy42K%dxk8CHAqe=BQ_o6`*}B`B~&MU;8?8e`Hp*ug8J*jkF9x z?nT=-k%u6&s(mwgC~_~_z7>brw_~+^C%$Xn&9jq`owa>0c?xpv*!Sb7_5-xcMXnwD zLGpa$+OZ$P1@f%~Bwt7RkNp<; z2GW1*{MNQ`3+XxbxDvyd6ekxp)h>_HqpatCA&;s{_zM~Ifk zkr~PnCO?79P>v|M6S4b^$xk8kj-v&+0@+79GRb|BKIv#l?vM0IM=SC` zWX5r{ArD6So}(@K1>|!&M;7@dWcG2i!&e*~aHOLnzUs*4*-^;6o^6bbd(KJZCdjzwoI<`2xg+G9 zO1>XigE?!-smMK2=QOf}^lj&Kv^ZzdVnuc_&RJv!@_Dp#HaQ*HYdhzVeaJ4xIhPzj zb}r8O#of~N>K*ne1CUPM%K07y)i;&ftb1S(RS*$gl??F~d&UErO$V$oS zBY%s`N6rBGJ7lHg43Q5b*RnH=DXu6j_aWDXOCjHnTozo+5KCO?Awo`x%j z{3x;$cjc1*gX~aTdDz~Sj~!eE_@t|lXY-Ix0bE7oe5C)oipd2?|96#;3z7csDkT>o z{ohqaE=Kyls~k&Q6|{6mRxhqTgBzm4oTTva&HHG-CEWc+uHB-bG0ziSju za*f8xt}(PvL3+4rEV&lx;jVGyX-E%ujVDh>dbMi;&T>`L@-Z?OxN69sB6ERj5_uld zt6fvbpCP^4HI=*&*%!EK$!m~(fomH13#9kDrsJ2cnY64&_64q4_6JY~or(zKF~wt|jEl$QsGDlzavGEYG!^d==Th zyH=8KBKvpOYVvJl|DLv%EFx>6v~`%6wjS%HZN#LsO?Xe*W?oYtnN!lXk{clFqO|Sg zWMuu5wv%i??rx>+MmcRS+SB&a?m+Htr5zxGPxKTW7DqS=(MZ&PTDovYmk1Gb{!|B-JoSMvL{WuN&X1wGikTTA0vGx?KXav z7T1(fE=|P6X$iO_EfF{I56tjxrq##oX$^2kS|i+SyS%h! z_1^O`frjx5bVK8viJ(_G~9NY6=glP@4WCoP?P5$QQ; zKJsOx=cEP5SCF2Q79w9oc4}#1@-<|oofakEKzdY~LcWQty3?AIZy}%dx?5nJI}_vG zEiu8}if8XedY8KmxgOHH+->n5cNW%nx5Ing9k7ABBQ|trVbeWa9^~GsyO8Wh?(n;dFz7C(C4{U%+$H2NG6K6x$x-AElDmwo zAfMH`%gN1=-&l56kXsBA$krCTHi2MlBOWi}rk0QO%J(T<; zvNCZGBR_?#Ox(k?vYsP9)-Q!qiL@|c9HHeT}2Vkgfrp3OzZBF}Mh9x@hrPLlJHdD&A(Eqbuk`F&)q=t;y6JxR1oN7jm-`Z&|m zfR>MtJ9VB$9)RRn}hs>Uy6kOOFaf!mLcmvj|o?J%(SdT?!tMj zxY{GrvId!LJr3O9anZ67nN>Y*@+M?f^`w(GBmL9kBX32p~kn!2mihKqclRa(7 z=aH+x)0TV@8HYVtuE>6fm|1!4&ZnqzJ<)-o^0}MWV}t!A;%$iHqvu3 zAw3W8PS2-35t+@?3&=^xc$;2`_0x-Jxfi)!(u>Irk?}UYgxna}A*Pp-n;>IvdKuoI zUQSChF6ra2Bz-(~PoKbR zN|Ea#y&7Lguc2i)GP0#lB3B|KTly5NN}q}^r`OUx0=a6^r;$e@qg?uQ@+joD>C$JC zM7ht@15sKa=c$ar6-s4@) zE9)ckpm!y?0WuGISCbndD=zO^O!ltBCf@a!;@!xz_aX0*cN6)3WLM(dOg17To_8zR zf{b|H?PMD=;(2$H?Z}Ad-A#5PBc69JISrXlz5B@?j#OrC@6 zh`lM~xyX*#+mt*XSs!|vkryDNpVvTMgsc_4CS2k*)ABho5_+xVWynbAmB}lR&m+7J z@+xE`^t#Avkde^qCVzqKJG|-SFOgld*GJxfd>-KqkiSA!q}~wuYh*X=4U@MZyJ>F} zw|Ny>wj(2?w>fzyGE#Y4kS`-EMsFth3bJDKwj^Ig=5%i>@-^f>t+x$c_qL_wPvrLo zy;wTlhg~&Z6-)OA%jiKco z%zAL7x|Xr zV&8IH;#-NI`&RRsrO2Hk-&*o=WQE{cM_!4n5Pa*&tC7#?d>hGYk-JI0P2_dRe%!a2 zydGIO__mTaA}a^qc0B0YiQoHn(|#2BjLf%}d<>cKef#ma?*N|g9mJEqLwL$}1nYc9 zv7Y}JHuN9os7A=R?LSFQMm|CC*O8kdyJr6xvH_V-{b$K08 z_FpE;$j;h-h3r6f*8Zzx7xKHQ{%d46a`(x9ot%#BxcxWCKIHC`|0X$r?1}uh$RVV+ z`)`xONN@MYrPAAx-tHI43No|%6Ufbxp6^e@7XBn!9z^y;{`%yHke$1~0r_EMuJ<=0 zKZ5Lu{K@1;k-J#_6!L$Nm4Lq~xjnKH@HZnrhRhCr1Nm`ecJQ0XPav~{-%Rd=tOWd4 z@{`Ek$}f|jLS_xWgZwn|w~hQRa%W`L@Vm)fky*o^j&uD!oaYbV5`PFk_lI$nKZ>jU z3a;@t$FKY?ICc}V!t`h2W`9fE;%|jp{cUi!zb)?ZXW?FdJKX2*fcyO&@sK~8GaN>C zN&X!2_sCw!pG*D$`ApWINB$A%V}AYys&ESFWBvm2Y2@<-eTN1g2qeU^;dS%*2wwES~L-?7;)G$vu#}pn*Bq zGcXs+1M{(0U;$PH7Gdwe5?X?9Bt~ z@U_5tT1F%HDgztw~{hu z$!CyvCs>D%1kYgm;92YtJdZiS3)m@m5etKtu}km@M-?GI+u&7l59DVUyoP;(*J*hM zxt|=oL4Fpw%MrXu?vLD04&EXUM1GRN+vLH>r!c`d1E0bmpTY!1^7F{PAecaY0ogAH z6Ui?kGiES}{1UPz4Av*VjC}GEY=C2fjc9oj*+&PH$!{V1=wJ%@ZDb!EY)YPp%)G&7 z4(8KA)Vi+m92d%F^)83{u}FgY|7n}mkZo`USPL&M3_FB4p;2TvGVg~*lYPis9~wgrA#;6bEIEwK^`UX( zC^FZF#*-Cfeh*C`w?MAtP&K(FvX>9lkXs?E+0Z0%7IKY;rjR=zBXDRcIUBjsL$%~w zWE>7nBj+PyZ)iFehGx>z1(}yav&dbMu{SiE+zlCfLvzU8k?|ok7kh-}(^7_vy`cr< za%AicEh1MSJG;;ld?mCLM~0T;tD%)RI_C1Xg!V%ZNxW2n{ZrcGrkqt zisM7u@$Jw~oDkZL6GMBkI$GItDp$7O%s1g1iN~Zl9vdhaz zA;%*-yNssfyOGsJMl*6fWM`LQAm4-R>@rN`dy$=8hMC+Dxqp>mB{xQ{sSFvLWH@L^ zLDt?GE=Jpo zd`2sd8iw3q$Y_JZGumQhMi#!D(GFk9=ztS4I%0K3Hh!9sgYzdq!W}kf? z8H4ah#t{5IV<;ZY7=}M&49620m7L)u^6q3*;hz~J@K(l1{3l}+-V+{;^}}QE-tbsn z-vC+Hg~wr|@OW$-orA3BjH8ZD!c?+hnHfT@N#@4yb{}nSL0*hwb(Jd4j&J%=ex>A zcGKaFm=oTFox+zscKGQxy!;Je|QI4OLK_Q}X-6TXep!*M3o31Jauh7(Ne$C3SbI1xV%C*kaH zef%Wc02hWE;i7OdE)J*Ql5kV}JlqVIh7GtZY{E5RGp-F=@r$sG>%tEFGVH=lVK;sq zPRGq*A8rW;aBDck_pl8ak-}lz7mm`h9~pnb3i&%^{0TS5!{HWqB%F!ghg;&0;Z}G& z+y+mC+v3S^7M=>X!@6(>JRR?I&ck3FnZ{A-|6r&c%Bpd9*Y@`f4Pf+z9Eb zkpfJP6k?M|5vD|n@xDk2HjR|x{gE>CN6I-Wfb_#i1v!Mwp^-l1Fw!R@eaTT|4vq99 zE69F1GJxD1nNK5w$Ssi15F(d* zUOxiqb&+W}CNdr0h|I*Xky-d=WH!DNnZqkgU^5m|yW zBTMn4$Z}j1S&54yt8qzWEwBF^>2HyBxGb_Bmq#|@ipVBh8QF|mB3p55WIJw)?BuBJ z$oLl7jXNWIaaUwN?v5P5W08aSW8@GXj~u}hk)s@S66rsYV^|kCj;A9h@l2!+e~+BO zYmu|O@(*M$9667FMlRru$VL1sav5(%uHfI1t7wT{Lu>Rp+M+j5j^0Fj^cFgzw>g^= zxvw6Llen*r+;xnK*ddxg%VWq$6-~s)qe--6BO_I`J~;;&siFm8Tlt<+=!Orxo8ERkM_ZzqkZv0v>*Nw9e|Bv zgLr*1GGfGrkW-KmBQ_M9#)jejvEkS(R*9*xDm27KU^q4sqp?vO6+`Z9#71ND*cf~u zHWpjN#^Hmp@t7H#z$+g@?xe-4@!?nvJ{p^ZS+ObDJ~kC|VzrnXn}!9k=^WJ=`HUkr z6Dwo0@TJ&ntcuOSmt%ABmDqe78C!s_#unkI*b;m#wiHLlmgDQOl{hB08pp=g;+wH` zI4-sx-->O-@v%+#c5E|Fh;7A*vF%tL+llYQc4JL!FTNYwkCS5ua7yeTPK_PH+Sn2N zAa)d|#g5^JvEw)+b`odC>hPo38Jrb6i?d_r@srpEoD;iiH*rbq7JeSPjmu(jW=5Nsh$~_VxH6WAt7A#HCRQKU#v0%ku}1i1EE(6w zQgB18DQ=84!%Z;*ejPL6=9n3`#H_e2Cgb*)19!w+xHIO)U9oiB9rNLySOE9NLbxv$ z#{ID8rFKK>Ldz;m%eJRd8#;$2BQ^wY#)jhGv0?a6Y&hPIRidC&VVp7oMP(%3rHsM^Wi;NcjKO-! zSWHsJ;XTTDtglSK21+$HQfjcVG6|EFDcD4riuWnC*i@N@_bbz}nKBa%$}BW0v(co? zK}ng57G*x#lm%#47NJvFf@#W9bSulzqpU=)vKoELTJ$UHFrci*pt2D|$|ejen=ztn z#i+6!6=f$jS9aqA%3f@t?8i*y06wG~#Fok-Y^5B*Hp)?Ks~p2emE)MDoWyoY9ky4_ zULX@tF%WPCx(I7VrXW0e*-PRYdaN=uxew8Du> z8?08^VvUl8?<(zZlF|XEC>?RCl8v=W4t}8I;xr`>rz`n5Qz^h%N+Hfxig1onjB}L| zoTrrHe5DK*DCM|FslX*lAN*YDi_4ULxI!6#tCT^wMj3)%C`0i}Wf*QyhT~UCC4Q|` z;TB~CZc|3$4rLVXQbyw*Weo09#^Qcu9DbvW#{S$CX)lLYa*xl{t7ynTvJGd_1Epz@L;wcve}0=ai**URjPmD=YCA zWi?(>*5a?qI=rH+$E(UlyryizKa|b*r?M6QQnuqwWhefv?8bkTy(p;rFrHBUiAz%RL^1~^*lCKFJQ8I5u2!&@jmqmHdU|U z{pvMrre4QX^#&T%n`lyRp`_kMvl?e*98g8HsR<~niD*}o(4p2xr`iD1)JEu0lhLcD zpigazezh3}R09T86K1Gp469a*sxm67169?9%~dx(pr&IB)rSwN0nAiG*isE+D>aI3 zR0Z3r&GAvS1!k$4*iLPU?bTM;L2ZK_)wcM!nuXbFJIql#U?;UB=BnA4r{>^OYA)uh zd03$4V`sGh3)Mm_Qj4&wT8!P)5-d?mu~aR?9%?!ER4cGt?SmC+U+k^+!)Me1*jF8d z{nR1YUmc1A)L}SK9gc(5N*tnA;dAN;9IB4QVd^M+K^=|5)iL;@Iu>72$6=K^9$!`` z;0U!EN2)dWsyYcrsZ;PZbt=BD*5Vj-8or@U$Fb^69H-90x767+l10Jx)_M;&gQr&QLewOm!=Mq;AKL z)txw7-Ho59dvT7sALptEaGrV)=c|YCGxZ2ARFC2!^%yQzkK+>cBra9!aG81rm#b%S zg?b)WsTXjydJ)&CmvOCn1=p!palLvCH>%fhlX?R;t2c40dJDI!w{fQ$XJZ|rif9u= z;V$73ApxHd60x(8B-|}LPfL=pN~n)(ga-J9&_@fZQ6G9kI2~qq-Q1Ft_9DfyB;BP`E z{w}n{KZI8Jr_cuf658V5LKglbv_m1T1IEX76q*R{#w7@;!m_w*ToIRp-^JzP;kZ2f zJ}w`Bh%3M!;|lRaToIm%E5_4tC4waU7GH|L$Cu$B@#XkudoMFtykBqtau`v%nF_z$` z#^E^6Sc#t*t8k$)Ntnog%W;xW%YPX!2j7>n@dGIrKa}!thLn#VN!9qVRDhpIh4`sd zg!80g{7kCBh0<_bELGy?QWY+fN^pgA=So;?%g4`c)ws-7fGcc;xXM<9Yiz~%g{=m^ zwB_IiTQ+`W%f+v4dAP+^g4=AvafhuEciF0NkL}KNwMEXyZE`j4kPC2^T!?$*BHSkz z<2P~*ek`J3G}7;n$PyX@I`w>=l@+4JxodkNlaAC3*}mDt!`g-z^tMg+S( zAD#AUOtTlD$6knDdlCBW#TexLmxK(?e@TdN{!2oP^IsBF&VNaGfb(Ax9_0L&goil) zCE;Pte@SS~`Tr2=Ii}z}j;VOBqZS)FreR~pbZp|7iT62X;r));nCh4#7~^`oM&L89 zk%BAEnKoBYg)igYRuhD6ac?%Ck8d?k5_ZRZ+gud(#aSLm5DvuM+hPPZY%x-( zi|d`arh8r7x0zqycbQ+}rOZ|MYvu<0J@YI4BlBxaduU5{G5+0$h0+J&e|vPU@NoQd zS)$N3{++CRoSapJ?`7rU`&oH7BdZuc$tu84vkGxuRt|oam5mFtO7QcnN?evzg)6d> zgn{v0o)Ah0(s4fZ4~%!_EX1^&dFaXc%>P{cvYcw+x%d@1Ik+mP0N3Qy;1@Z?_+?H$ zZpbObuX2j;>zrKNl9MM)h+p=kP&y%g#gqSZpB~@(=>%a`{Ko~N@Jaltf?QlvkcS%z zs_?6VO8mMY2fr`K#}fqwc)Fkve=aD(e+r5PgZOgy1VI+R?_P~RbkD&byBFZ8?lpM2 zdoljhJs;0?FT|g_7vV46bMaF5Jp8SD75>q^Qb-p)r3pene7IB;qGHd|D(qESiM>m6 zuzzVT4lK>X!KL~5Txm5vUs{AOlosQQr8W3+X#u`oS}4TCiJT`UzQcK9;=7zDCVs%N zG4Vr=jfpcjHYR?=u`%&uj#b3ZdA%YoK{;nPSS6Q*}v?%q=MN7{-OzT;No}QKH?U{qIp82TuEW(F+7GUe1h4`PI zCD^HFvCvt3g`+x)uX0pp@imU>EWXK6oyGTgO`$lCXA8y8c(zbn$g_pw;-1;KjI$Mr zYdBk>_$99|6u<6Sja&Fyh2l2OTqy47S%cs59Ttk;@f{Y5-}g)sx`-z@XBY7l=j@e*h2BL2$Rx`@AVwl3oDoUM!a2WRUd{>j<8h<|goF5*9&tw?NGUWJXz zE3rv=4jRkzQ7W%SOL-C6%8SunUL$lBA1u$shsyKtVUF!8w&vKb;v*c}Rcv2gfRC3K z;uD;wtJsP2bQPcEJYB`7I8RscY3)3n%S(h}u?J@>7JG8GVzD=8D;A&OY{lZUoUK?K z%-M>?7dcz8_!4I;7GLIU#o{ZRtyp}OvlWZ4akg&aM9$Mqe24RN6W`@L-Neb9r;;>Vn)oA?Rm=_Y>4dAf=7I8Qh6GtN^YZs0s6;#ZufMEsg#OT=xQ ztwh|x*-FG+99tsp;iwXEA4ipl-)KjD&-qKlQ=GrM_%mndF8;z9x{JSYYG_zv0+2@i51hi9d2| znRuFG%fxfqv6uLM%EiBVeYyA#uP+zxs;I)dD=M*GMGmG`vA92op;-{Rm zpSX~7_7j(J&VJ$=&e>1gz&Nr zi@$P){^B2;p}!d4`_8fTdKU|WMQ86^OzWM8{@zs>>|Kc&y>sw^-uc+NcL6@iQG>pm|o=Ihq-i|HTpSjnUFyOOXaaUgC@d;_;7uEOn!+i*wX3FO~3o+Jso5^a+uVRzyK zxF>NS?oE6J_a(lE`x7_dH;ISwK;obHZ6g2aW#M3AWBe}h0X&r09Shy={Z8&gdzX|uN&nyf`dlH;jXV9{ zXa4u&?mYL54FCS`e?9KbIji{BeE<8u|MR)^{P(E-`@jG5x!~geKJ$NnJ+uA)ecYYz zrR)Fad%5%6x=a86<1V%QpU>U-%6BUDqdT_#?JlkAG4oEfuXlo0-O#E}x9Zgnt$Ob# zy?Rfp8e8wyUU@V7&T)-xdUd_eW+Sw6E7vuZC$~ePV09>Q$h9y|#LFPrL#fSIcwm9M`yyUYWJy&iz|m)6Ti!8U4AVPv3dvdwuol zn)atneO9lQ%{RAi0=+(>GpMB!Hdi8|% z9_^c=R|B-FajjlC^mBfwSGPLcIp@TgdKJ{)%~^WYQR|V7=jhdJ?YU0#^y;kMC+6$b zG40PVaiLzlr2SlaFVd^6+Mm7kV!e7#`^l#+(W@No=lScuRhjnZ+xGdt&uM?68B6tQ zhj!cx%k=6Qt?IN~uj;hkGjWw(-O`@hw^pxAPu}_SHD0e*FKX{}y$yP`TKhB9+o)Ib zw0Eri*Lw9~yF16du~o0uY1OtJdX=F4JnQYzE0@+o+V9t^dfHFojc@hJpnWgf4(U~z z_SLr?)~iF>6<+TLy=tkwo9&P5)v+w?tDn*8 zy|-^%)~oH>JGSjNy=t#rE8G6itJk!jOTEAJYJhh2x4)%Ve`(LP|3|Mr(B6mkxAkhW z_Gf=1K2aMLmuuhWwgkOO(%$!aNqSYK^{n>y>eV{^J8Ps@=d_>1z!rLSNc(z=AJVJo z+H=3Q(yIg7Su)z{RduI3KZ%S-^(s-jRtC1yt1|s8kLguM?Ulb~>(veI&z_O1SIf1Z ze8!V{CF<9EzFrO1Myc*Y_3C_^J6~_cNWGe({j5*CrdI>CK4GiYt6#O}y1%PeZ)iW4 z88h^1qkh~hz1pPx`A&SSSFN<~+V-hl4c2~2-RJAoDDCQ)aaOMqw0HBw&wBNWR@pA; zRe!A~cfX=n$yznzcfE?!eiA3H>(xo^-L(C!S3l{0+S__nt^Jf{i1oDhHlm&7#NB%J zxb{k0eZ6{9`Y4UY0s@BIdi(d89=QvrfKGu5AKBrzy)~=(*9=*!f zs!l$=`c|tZ2K6dMKQ63SH}$Wl=+$>x)#(Af%F|vsF;lPVX=mB@uwKp8-rL5H=#@qL zNp#B6E3ZCcw%4mS^`A>ey?R%li*xkqgx1eGJ*ih~wd-$UzFw`;#)5sF^~$D?*Io7M zVeKrPO7v=-R!!`oSAXm8QMq27(dUOgdi93B)_7L0hG^gQ!~uHMPk-MB>s259>pibm zR;?Fw8m?Ej_4nZ=z4}_~J^M!J)k>{jHy))|9_^K#Ue~KH^?7WpUbWMn+xM1U?bhei ziFy^URh?@7eWmuDO`NP(59>X0s$Siz%|MN(>6KgiUOLUtD_J|s#94Y3(0ZtbI;T3vSt5u#=dX=KR@`crUbxEtXtuu00pZ3bm8};fP?YU3C(yM)1kYHcM#Fql5UJ@R)c+=qUamJT9IVvc)UH6XNeej`+9GNfhI9 zc|6G@PfU+{N-T=Y7hjEgS{xHsz@xJ`KCX~Q7am1Cx{5V%#XP$4DB;naM=6gUVr^U* zkDlVEapmHIxL)F#xC$P<#k#mYJf0DMjq59l@z3(;C;kuG-ZH$=Wm^+dwojOuVI~t! z95W<$?nJU=x6bZv_qE--_qqA8N0vU@x-Cn(g6{Si=9xPjo-i{r(}bBBCd|y7_gzr% zf!ybuJI~|Kss*)*Y1OK#pZdjgYxj#8zWLS zu=NvPeBAmCUwqp7jbA)%{iZLzi|=RQ``P$@4!)m@@8{wB`S^YTzF&y%7vcNG_FN6NAUfl`2I0`|2V#X z0^dK0@1Mf=PjCJFt$zmJKa205!}rf`{erE30pGuf?_a|AFXQ`HwtnH(zl!f)+xkUY z|2n>Z1K+=i@881rZ{z!Swtn%}zl-nR!}ssw`%PQFWa~e`_aEZ>kMRA+`2LfvU%K_5 z;``6={pa}p3w-}2zW)l}e~s_I!S~wm!aKjQnJ@cqwQzkKU|!S}!7 z``@;H#n%76^%GnF2fqIk-~Wa0|Hk+K;QN2^{eSpc-};qXzXiT8@NMDy7QWvS-*5G; zU$ymHVl`|e7_sM-yPrYf$#VH*00(6 zz3~0s_ zhVKu@_ebFSBk}!F`2J{oe+<4q7T+I-ZyVnqk8cOxF1|f{`}hv<9pXE}cZ}}@-zmO7 z0pFj9?}zaHbbLRI?`PoqlklPAYQYTj;H-Dh>2;3wJG)0`y}gsu-Q&Z9-EQaPeD`Gk zU~lJaZ|`Vlr**bkOwM=p_xfRcw<6G<$j>+5T(1VJ@vyyE44(Sa@#^MjUR;mATm1CB zoz^+NW`={ER%g7z|8D23yLWK9ySHq^M|(#H=SRmqP|iEYhX`|e zKPmQ(cUoT+3xqkC&@IT_lT9J*fx6#2-#OVmIN3YfKR<3CcaFNJCwtw)v$ON_&e_@V zVdrrFboUI5BJVVY0q60-$?n=&Dj_zuX?jqB6TU{lcXB^7V>i4GW$6_(KofJQF zx79zJO(w-~HJ(ig8ErLN0D3dnZB540_w7XimqrXckAwT-d^{<3Tcg1W|L=>{H)q9U z^3`Cn1~`n)SK}#*a<>IXcRp6uH-l+0*=@ZnKJbTiW4Co#JOVRVPlpff`Fw(+VT5*D zUw7846&)9g!Dw7eS63wLw&oFo_|FzeIwc=8q^sG-{&ZA)+HEa@iy`gowJvV=_ILNJ zX6moyI9`bQ-L*?7wL!yR@*>ZNb+I}~l0^U37oT4mu&-eE`=iTG8PP@}NJwD&x z**!fz+CSat?HsjtyIl))uhkokSC`XscYIkqEmw=#`{Hr|9P>qEq!B`VkUKwfuhkt( zVGR~f0K9betaSEb>Fi1A?B%7i7fXlnm(mdjN=I3xboR7#G!}a-9bn3(v*)FQ+)PVn z52rH%MoK41jU+}x^3vH0rGqr??jzs#VKsVsaCmfdaBy_EyK~q+**of?0dVFda>b^8?Lc{m~poT+q!QSPmb= z96si62{1vV7#?h%r6gfp9aXL~2@^IoTSdU|qxj6v+6eSWadf;>4t?46#scXto>H%Zz^ zJUrsiiT}-`>ro3`*IxUuw{v=W*f~4KU;E_b;PiO!V1MTT5SrA%G17(Da(vex&G{qA z`6J7Dr5rIw6DHwdYL8ppV-=x4D&kl~9GeKG98*NXBs|Bh!~KKP_RdN7q6TP5}y-`k5Wz;pM*(x zPH-4z=kS(c%SPWB!iVyrnk z==RP}HRk%GF+Y`pLx6?UqpJGOHxYIl8^v=(Y&-V`ZI_=(RyLGVJ+wHb@y6DBv zyPc!c!}CrTS+a9@fV?>AoE)7UcK15nw$3@OZ`wEA_Dx%&um2_X?N;yfuzi54ez=d+ zVv2X(Lyva6zk9N`b9w}km{T2`p@xc2{VzT{t)tyjbb|Y+usg`GJu?Dx9ICvCLM^Yiw>DGGgOcXw~^7zsZ;LD}vfb&pUuN8Q%&VLTc2yDjvhkLWew z;_OLB6acf^AH!VCu&;{gnyhGD`d^~c#Zk>8jDP!wN4rOuY`2dQL=W@sqchAa+da&9 zPdXg>dLkO*`D=A?CieQ>bwHbo=yyE{MgL1Ey;g7cbocxeS$w$LLEGwfj@xG#SWZs& z+GqQxhnQw#;=6l%-a@yuhXOg=+1uIK#mEfiBXktV^|M~*`1}BM|NNkRcHU}tzdCPS zA$KV=yk1FxNikiEvs>J*?_tHoD$-wGujljGVpWVfPrxx)`_C1XI&Weq>UijAqz6$l@T@1K)tpKVGTnt42O9bDwF7NJ^#cJSt_qlISNqWv^(<$;S!MvL--jApE!f{coQjnSb(w1_P4*?+M z#dsy2+PCQA&L&)F3H-9STV38Ih^z7aLyqYbliA0FW5DROC-a9v>$>2=@>MY!4_a5n za<*O!i|gS-@i^ePIb;urIa%=<1I&lw#b9#xV!RmK52gwBd_9>|vE==7uo}Ft@CGbX zh4oGE(`qr0^ag;GEtZoRk$zW3*X@1)u`1ubC{~v;5Y&0Ji8wrb7!M1X zt5apN-0qWG{ZYdA?e|C4#p3A)5pZpR&u2@G#j5zE4rU^jxe~Sa_S+tfUSV=EVv&&E zEhgrYcKPn1C??lfXd`chf&~faSf{Lt?|xUkXhkbVH-lR#>lCKQ%ZZR?`a=wKPSep~ z5q%`^8&n5MvQ^HwSQ6@eK%)>B{kMn1Vy+<8nA#OyJNt1~ed#Z)RiEo9X?{!}?M2H?w&a$p%}+N~^7+T?rOt zzL+h>-({tp7;Xlh+tvsEdo>ugM)N zTCOD;#}tiEaWk7uZpQQW zbo?j{+R&cE=drCPW~;qM{Sa4Y zFd^dQY=H6fX*z734W`h>sk>X;y_=4ht*y(C$N&dk%x3QeJBA+MdNIU!GhOqy)M0&Y zzk@JY)`JOE34>K{_5DerA~H&ttFwTxI}uBl)Vq<^xlv2XzCUU)8Thf8^r(e4$W;tb zA4SIj2P%lyAE{2-X?C8J)Kd=vUSn2*Zu(*|ThCtLr>t|Cupo6(3VH7!D#di zv%a-JZU0cHn{j+Mpq@`itYHaAFK?%l#FIfJP{rDveay%i4!XmXrKYC$UyhfnZS=4< z7DJ~>fKe$l!cwtj6JUX`h-bLVX$CT4edKWFAtElP(M?vJ31-YGio!WnRE8xQ*`)9` zqid^_5*tiPV-9mHUMlMVp<+H|kfkUhE~nA`3T+X6{p+Ie+yJdRhGL6b5{{1|DkKqB z!7>Ix9d5!sXI(XJXr#Y{xkke&uop7>sB_n4|1OW;i-J?I{`78^i$>HdB#B=I>+xf` zVqoSf^BTR%JeS9aHE?LG8;F+w4b+&K4Ga?H23mWWWCgmj!FsZiJqO2|^g7bzv<~Yv zV75vmGv(Hw-ynag*-|BHj#TlU)jbsGqFz{;q@v1L%hfVEW@niq`B+9$3T7dwDtV$Z z+~qU_*}Qt6=9n&_gOCBz0aE(QKvS@TJ{HaRdX4p*czK0F8eK-YKBZ^K59c$vMgv)6aM-do?MX!$8U`a*|<#JkslvK?| zS)eJpE_|Whg!mtQHOF)W=llNuSPn?I~n_H zyk1UAvXDENqfJ*Ov?Osby_iALM^wF19%1fMAtA9fSPH^UWieQAid7O*C7{GB%oM@e zcP$I!l87n+Jy?aABCvwyE=|dQ35#(#XA_^xOU&#)E-+)NlTc5EqA&s*EP9 zj8~Y3ES55lF0;g*jnl3sE*s!BF_Z-}Y@KwNU>zUJY!?1!aH4+59A=|9hRS(5gHiUH zY-(me^=b566}@~`cE(W_o)J^&D6)*^{hLLtOpbEP6be0`3}kn)RBy{@wD}SvJ#**0 zCXr<{dW8}rJ!}47LxE5uqMqnwT=qn9m@6(;)ESggQo&zND=7N!42JLTvA)1&01Ycj zQW~h2(?){!dktg;*q_eVtCtuB*VW)^X=w6wUMTA;%$C=K2`Bwa)qG%yam5j~l#b^a zFQ?D*Fv#`?Y(#OO6_K zwA*M9x`D;(r1d)`0Sq8^u_a=qb1l)+ZnZ?BT&-bj)FqD&Rb}yP zVUAU)41lYZI;j;r>PwlG{%u)Qp;>yH$YDKI@hFj!dfVjJL~B>u#N^exi5`Qo2GGQq zh4u`u2l@;f!;X#XnSh^XOq*MiFbi_oM7LD3o;0yg1gvq2#T3fI>HQ{FllGb1=x9Gr ztR!?}{1B<8=*JW`aftY4V%AES8C@*5s9?(o7ECP-mA=jkWvNE0PErkp9@uVbNEUnp zRoiflH_Qjb6d{X%1e1;+H9Q{PGi;@XQ6q?f#j0Mz5X;Y6R}D|v5^Bf{v`;A1ZNu5X`cAO3Zt%tzDmzCO?R#n!1U}%cO}e z6@_{*Y!z3kNg0nyQbvh?u}i>Ya=oaCs3B3iL&J;Q0|gssE!|tjC{b81sHtM~;$DJhlSgI~52Ce+yyRwv%VU6|Gk1gqkm1PW zd*~U#m}_ZR-pY1&G0MD9*7;zvEHbPKsuIY4vsl-1SMX$Jw$+KQ;I9T_w1+acsJEdc zKp$SAiMG3erqwA6I2Fb1+F2g2R9X!gD^A+`c(E{P-XCQI%eh(_Rtu&<&b&~TD4tC9 z?WIUvRH_XhWA}RfSi=e1nKA|aOBKn0UJX8#c`dve3J1grJ1SBsWW%W zPEF#P6DSdfAWBja4CV)sEJ@?;2-S@xKeB6*;*pRttAsYIc!l~VNJDrDL=Ue9%Rsf< zOHu4oA_G12ro+XPXyN3{St*_kRPHF%dXqFK%OwsQC6QWFb(xcry(p^`3Jpb-dMVeq zl$I1?ik1k*2|+n-RSKe2MRJES*jv4xt;TmxHCzl!dYacT)GUQm!IPPq;u2qqB8yKW zQoLnD9VyN`QV*#hD(6yKNm!X21y(7k7zSb5h7@hmYbdD7YP68DQ;KD5iZ&@Vlu%kJ zJCMmpPD_LKWPBfxCar?MoK{eb50RbOrwT0*Q%9y(?7ZKP%i-ooHqexb-mZ#!Xx2Rq z7EX>tZO@qK?IkSFsgf^wETd_Bl{3=w*#HZqC1y%o*;Iuzk&)F69w}5S{oup+zD{NX z)kf>r6>pc*%LR?GGg%Bq8$vbG6+D?=V9==$ERSnxm(yA_WwFvV$*QHPMOej)H?kxN z6px9Cu*Ud`sEEGuEr=jCkl37yB_Rq=RREJ~iM1W}Nbm?=V*T(vT4D7Mf!Wlm=?L6`pzX7;!5vBP6k^(Bf8J=7qA*1=Px^;H78CS?NFYffWxH zp=O4px2$-kXq`}2NG7*|ie6q!YbxHjlBGtfLSRrbqpvCB3ZBf#zEFj3k=w+=aWU*y zRRn0kSBfd*V#Px_n=1@SHdkmdn=7O&n=4e$<{E-#bA`a5P%+ ztk4%tLaIcSRK-&q=Ak&i=N*N`B}bzB&zQUxzNi+`96{}*i^eRslK$TnyL#yrPFseLR7*#UEz^H^{ zMWuqzkv=tdCVG=iH7ycHTP>)epts;2T+U7@a+2<5#$$FRDK!*Kl6Y1lXZLQgh9m*Z zKAPrK?NZC3G>~O#T0@`dkLLFENkU%;PACVt#^xZtxQy?98cz; z;jK`uh?^PMuuVN&@hs`Dh9;U78l;uVrh=EK$xN!mspGyQy+$}JnQIEUe8&Mpsq7RQ zRz})I_9~I&3bBq1Sq&5lqyd(S3FPX8 zNR-J>4bf#b(Y>3g@k+T`8EX<*C3wQZk*b&bIlxqjMOx@xXi()+y^;u7Ul{|R|S5K9kjhd-aNQt_~DJ;~W z$cjj6YN%-VYFvDDEM-I6(}$|!ljAH2WwfY;GDgW=o8e^yli>5aj235i8Cnx5Hbkne z$*3k!$4gV^WDH)9>u3~xg@yd(bn;Y6V;PNFRAP+Xp?k%7?FSr>;Np0If`65+2l@q%2>s|n5}LW7$hv`#DK}9x|?~Y z`#5s!&QD;cC{>`lhl^sB60dV`jOBs~VmuLk3dXWm78YR{_ZAm$DwQ!4%>u4uSFIo3j~5;!+0Goyv$)+wEg*sW-}G=_nj7$&pX6jwrc$QDMGfI8$nObB+WnB6QK zbM}`wC~IzJKd9J1^IByG9QA0fTxP*b3e1qDy(k9GK;gJVN;))bkDTMsTu$Oa@G_P< zjJI>#H4&K^vl=wQEXm{SEnJ?F2jwjTO(-X{akuG*LJe7^?Nm583&U`wg7sdQ3QvE? ztjB4QcetU1=DBGgv7I`WDXL=c%4bcb`|HluJUqlImU^#2Yktd`4Eh_aWufPaN15HT za@qVO9CXg9ESLro3|nt!$c_pbF~sD*Jso9rVVMf<-VQSuM{jVHOBM$K&#bA#GuoQ@ z9rTYbmE2VxdNpWh6P@6}NWRDB51t&jvDmUyX+koFLWu zZ6wks+RJo+TV-tD-qWchsbNUIUw)fXUyVmST-TDK`b#;vc^lEuG7)p#t-za5f{dY4Eu`LA_fen53-~Q7@R*2 zZkt@7VFr|hjI$US;_W;GsddQ^vib>_5yA`r<-NeA1xyGt(cQ$C7G*cML`9iu31^cT z?WnOYjf-P2zkH!J+@P-lqz=xo3o7tl43>e!5#bW|A;6Cf0|qfR=ERa$ImqmzT<)oa zjf0`F;W7rjx(3x1dtRd!s;@N{$1uRR+_;+v19K(;NtMnw2v)-#h&aXsIWwcL$BO_y>{cdNC&V>Oo zJtb8C4mVVcNhCjYyH~}JuLVKw3_*_m^aHNo4m_8W=oa$w)tHxgm^>MqM@UJYM@!z2NlT$EyWxj^Yd z!!;m8#3H(_FGE2Ea_GuZq_68zob+xfqPH9l=D5C1Wnm*Lff%s145t(0`Cmgpzn5~p zou`nTLifmzBX-r~X zVQz{*4-}cLZDly=mLd!Npd%>9D@E~8d}Lq-=#74wBpq%XV2zdB9l3#G?WL`QynB@f~LSlvC>xGpDu9~DelSj%buA@M0Vk~2Gq-sVY zljMTy7F3sr{CXU((tK&6dy{1?dXURQg4dsnqpiK^5{D+=z+eq44h>)#BiEft93=s~ zk{Jd^yy-o(47sj3AQ9D!iQc$w!)dQ8x%M&mD`7c*&DiLZ9aqU)ic)=tdjksWG z{DdDyL5DGPcE~E?Ebe8rkAabq(ZL+%!x#$=Uf9ENj0dzvt$8ihY7D21=sr=UmfNBT z#$ZlQft>Z-*i2gnWNMQ%r-=`4EvL84y{pAlVLhDE>=IwNx zq|en}R8``DU!L=^V3NnDwo$!sW$nWPm&a!1RL^adH1%e>J;4Bd?f}{ zp~jWb+AuK|1x8#QJ08jP&w4tbWi!3j^$Zi$)(F)bKa7FzIqAaFHlT3Vs@!%>Wr4jF zr=^l005im>K$Roq$Y+U}d1caAF$w7c(%Cw1S6nCvi7 z-Q~@Ah6kZR6^>5Y+&2GwHNs&u5*Za$4`(P`8SNa1fU>@X>MeRYA1@pn21(t))A9zI zQ_qVC%H8$6(s%hlDueA!HOKhdDWDjJrrX=Fov@Dx4j$~E5)4`fn*cG=8%u>GWGz~2 zC=uw11Cgw#6;NIWMhCSNRKFzZZI4YCo!3l!7|X{ocJL^H=?L>gB4keDBQgYmVAJn5jS9l8!_uh`m zEIzrnHEfxjEv3su_v`cWGCf}yl&RFn^Azq}ln{+n>r85ylJu4RUt$t>2MbS)Lzx=F zE)#V7UZPbdF}1aXtHGU|8OG!TDkJn6*vsM8Kwf-=7WPJ-7v2lp5H7Vu91nzUung>A z`UqvqbS)0=0lDig2o^gB^;YjwG2|?Z?su5wNQdEwk9R|gaBygRtn${tk1MM5sWs;wZba|`;gGsbwDFtOA8T7 z__foc{#foXODLfOtRu2Btiwlfp`~cc*eLxOUJvXUHV)ID!BUP%O_Zh2Xv&HZM477+ z%`!t4!7{NX8fg#qY-}2sE0Jp8%i`9+6QjtLP*aRbG>E3|_E;ri=(iCqs~f@#8gX%fOOj7^_H^M=|hl=i^}h za(2(RWoVMYCj5=9PKCX{BBtFL{)J(CsD=%|^6KOOR~L zusumI6iL<+O1epuA|fD)WeKZ-l=z746(*?0NL&DN?Q}~)Y3C&tHftzDp<*&I#;WJn zN?0l(OQ=j$5NN3NR<~HldSkw%BmrfvEBg@%60dC~&?tJA6r}kM< zXP>Yijo-M(&-)x&dZXrk_nLs7>)}IuxRwwwBZn@+mJw%Aw6-qLQ^4?7+(TG&h{HNx zaho5-52imhpnkUX?X|nU#M63$@{~(M77Tj@(d42r%aZ{T0ehrCO4i-<%a(+f0oke@ zO#wA%#MwEJOA(+HzkNktLTHWcS4g2^=-Z+pj@oyk81!-*y{1qfQOD{f1QBlPed<6hKS8&rO8n{jo@>d?D zfSYK{GAci*QfT5?G|2UIg-9^}q@H!e^fXKq5(+U`0Q8;qow`WSSZjn3?|}YeCzmt22$J=Z8jDqzo*J5)=ap9Z(1=$D~qo3bOg_^Z{BT=>K}3_=XNf-H-rU z@CK0qV2G+42($zY6WuzTz6G>MNEDVQRQ8#qj@IGRq}0*#98y^f16^y_#LD)rq&>ML z)c9)f0a+JzAbP+7!BGAA3`tG^NMVl=vM&HS2@fC{`%B+_#%fl3novI8zX$^3htyP= z3<)NUZzi)dn`z(-fSceUCILwOYHbT7dg7cvcnSbIpy*x{1v`;|NF^ruEmD%q6Ic>H zU19?rsS4p>LXu#}6IKRivw7sJV$-mzR7!fy!4rel*JKrdSZyo??6^T?6V4DfNMc}p z4I5_~FTgM$;8^L(IJ}e?q`4at_~3`zCjpS%lK?S@08q97TwgPj1+XQ2fH?^<67~p( zOvWSsP5BSvsNySHIBHbzSOeetYMtYSkL$smPD)UsoIuNoBzLb2$4mM~LJitj*0R|` zaLhhAFK^XXkj%mgQZm}#anW235Y{ol&4pb$tG7uDqer=-@wd4#=G$U2tvCh{*Q<)7 zk1|doQVK-5X{Br~WSVNg6-M+{2}#~?c8VO}Qh=gu!&VUzW8Je=#FQr+ zmnml=+Vu_*!vc@c85WYoLPanVVpymkqmY24CMR0iMAh0ha&I7WngmV3QkgF}_hZ3a zyTj&#UYC^0Ala>So^1R0sf_pXR{U6G&MAam&FB=C)~s9(p<%!m%}{OX<^5%W*hspyJ3+3; z0m(vvI>qj!V=soeo>iahZfMOKG*r89Q@g7KP6q2Fg}Pa62+2x$Q`->v{fI5A3*54D zlPuttViz1SRN0t+uG%NXVi4}~;aZXH$V^6cJU@h5SWZ%!}l(~sc|Ll}A zi-**6BauGYuQz*brqZts=BcGc8tw+N7Or%vb{@+;CKNlHC9ig< zTpFgLt61`C9=0bRVHK5f*WuAm>5`+>ch#+RJpE;YV8k*6$LE!v)oNYh3}^r(0+{RE z%tnK!v+-gGarDjkPl}Uq7)k@T5$V${XRpMiH6G_MiAD`J7p1E*y=0Y?&}F7qZP6y`r32EsIF8^hPVos)rG z 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

h2?BiCTOJuD#RXqW(#6upGI;5fGz3p-0Q( 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ÝwD*hJ84U)h5V> ztwrQ%RVVYtEl5ram<(`P0>@YD;L!<%e=z-W>B~UC9}55`gpCM$PV_<|*{+aK>++qz zSd#A)A$@R?;6z=-LTO!LRmRzhWte4^6l*{M(IFz>w#?osmNfQrOl3JKmvM>#3Tv6R zPR7iXmbzABwG?QXwNlqZ=C z$TVaPMC^Azu^ZIYwHD>{PHa8wbNSkt8e(fjsu9R)5;!Y{1I03 z8q6oFz$57tBswP5_F*91XfYf>;8%MGet>XbaAuleV80A2Wt;LQ2VBMm;D`JSxcm*E zB1wz%aDz`4*s6OFF#LWO4k;{dqIkOk5Zh&-U-+{3HH-~{WM}H3m!X(RjTJOxjtamCs?dP zus4GJ(MhZx18vyQnAC=brD1YYpxu3rjnFRT@JLD6WUh-_LT(tTEM=RV6O!1 zl>{5|HkIb>TA;m_(7q9{ZzR}T0eg#Bc8n^8N9YZxb4{IKFRIzTR_#ahndQKRRlE%i zCaqmk$DF#vPK{AuV`mh*G3szgLNB8zVPXPCNRYV^mcFg6kKw2zhtky2(z;RO=G15r zYoDSVm`5RAVv@vAN+En|6w$ZBurUQDx;EM3hni)V$AJ;!7K&>&Fk+pPldXF&3=s?W z<6YeAO-59N;$){iG3>Z$ECrpIVwEsCfQbu8Zj`; z#kva<2E%C$hAws3lEwZP;%HA(2doPf2Fqy;mXN{N^h*m%oS_%4F@}XD=4auW3lWCQ zX$_h5n|{G+j0R4g}a z0je6OB@yF%lo8cBATgG3+V&*026Uqniar+iCC8fb4Ne$D{fF|Z{UIEsnVodN;C6=& ztDzobL6ytdx8y(j7Kvw<%mJgY5!8@A){F$JhZ$Rb@fwMGhtYr z4#O%uwTwaod^5DEH`#i@02$**00V;;WU^@-�SCzY}QRAuVEo-juR=NA}waCege! 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⪼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

0IKtXIGKG?IF`b zhp#J0=PFDH$oM-sov&Qw_|2xwD}a_LclKU{ny=SsqM?@q6n=uY43>XouQt98kPRwT zX-a56fk&Pds=yJ719TJt#VKpuZ#@iYX@pb|rvY`jJyoSI$Yt%oEO`MNVBu$xU>y)n zDk7--4e(U}TxEa^Nz8h8V`tjNv|w#$M{cNAYCf8jffR@VtpU(#17Z#`33cFT4+~f6 z3B-Dwdw}dQCbu*)ZPf#jrW-NRoWa(7571WHnng4Vw}x~JkWMzFB9jJs@Hh;~K;=ag zTd*@pk667-dm=a&;Aa#3fD}sL%2>`7rvXiB$--iVL zO%OPR0DUl!ouksf82UH@(X2dfQ?mIuaK44G2o$FiqoXh!F~rhqaNgzZ@m2jS!q45m z0~9zx-4&nKX41xfRn}1*IZ>@_&H`#lJmGAV;8KlnR)U}LoTS4c^2{ba+dI`07ks&2GnPv)EUdK2 ziG{IQA~m}w43^wwwqg4|AbTgtl|slICy`9Q1GecsZ2iYxlo+cC$0W)}kvb9I{UsRws|D^Q(B@z><;<|1pIxH)m3MFh3I8LY+Rd=EfR$g?H1{gC_u zfaP?;hF?XA^6mRK0VTKLVnAbCvKR+{P(=05WCBX0?m^xM{XeTZ*W1Oop@zNJH5y zp6&HO+fgnue~LcjGD1RoZ#g%TR;r5ICcX=_oZsUUTXbRB;Id|0!ELbnBF|(t-T4~T zDFEm6SF#^*O*@^VVkT-RF9QmaG5-j5IcMPOY~BdI0wfp9sVS6{bq)Ba0CSP>^Jnet zNx~FDBoES%iv8^Dn}9y0%x2dehnrxV^FZ>ZN=_ZH$<7>KYXIsNd-rYdyBi#uC!)-` zZC=l{DnGz7sVB-VF0vX#^GdmjI3w5i5RI*f>au+ z;#=@Z*>>)~!}Bh2WECXyWlI`k96bp{N03pNsPXm&kcr5MX-G)@VjQj9>7^9eZ3?NF zLdFO_tDIn5;bH`D2Ek2Xg&>EfvA(9qh&^^PYI||cOz_VFdg|u0(hBoos1LX}x-vU6 zbRQh9ii!KlK##0!=wTkN18N#8sHY6y{%zPG*nxc;&{99DXfis_0)Py&8PNwZdb?>< zF1GOM!PpQ4~;{vT+o@37*-IcRCalazd6B?mlEs_2vkAzQP%jE| z#49_ho=#EtmBi&0BK(PA zb^ylr$m!LGA^ZUl(uCYckmS_g5p%Lo`SW6sNYB+s$Y3~&ZOV~m_K8BDO`=lYaMK0C{1VYY_a1X8`cHfh00(~wkF#s}qT zM+(h|%AsbHZqPRQysV+6RT~z~??CX%{3?1PB0qV1)1*6W6^Nb#Wj>7OFI-Wr?20Wx z%bWv`)DpYbQJ*irm%zvodi)U7;Grd5-zHm zuZ;QS?gY_-?J=(qO=pLO&vp5A#AB`u@=-*IjjC{qc|K-9wBYr8cWKQ(^R^!cQXvrd zNL+~?NW^{{zzc!E2hX}>agEY1JnX8Zr{}vsAJv*j`J_w;Yy^QqU>HWA4fdHX35nN$ zMA}xe^S2o3AJWeOydkfJ+J*Ah-GtNC%d?Pse8iIjAwdbLb%YR~1Vq;{_eG|N+2|2M ze>u<#X2iB9dmURH(~K)5u3TJ#lkOqGu&4KU{yO%n68k;~7c`Bv8^^`^AZfncG;Mt& zAO(GG&JG}RM$w8)Lp%V)G@Vlx#3^cVFA?<908Fz=17!85?fI-39zNwIygmYNisZFI zGdNj!sEG57^7)g1mKOBG(0t{X0b-Crp{ti;w)I6IxH}JD0gMq}TVDXs!kPGs@5C|Z zU()mD&`vlH(8Njjry*&)G4{3aYN0IEkXB9yydG0qxqiHB$?rZ84eVQq`kOFL{tu7} zxgIs0`(_ZQdGm=i{)?$1FA+GpC{ua^NQgZD5@ZUBKr*xe1`(}(*e~{9fH2VvFs(Ld zp+np!b(YQNYk^eI9z*J2HP!~U%MSvf;M)~J+=%~}&Nl#F@a+n2ccv;P|3wTBYy}Ld zh$?r*#^7F{6;fV93mu0c-wxy`yG(J!6`6h+>M=9H;}|QPtR~~HV%i9q$TCGX6x9bz$OG|C-m&F5+DY!~s)_&69>(U2+Scv{a zl)*~2_Qh_iR|iEji(T$>uO*cr>(gEfltO-`)A34|IR<6SbUS++@Eo8Ql+a$QQl^A| z57e!B^-z}~Nk1n_q~)O!&Zruh5>14*dDvkbtB$0mpt zN|$W@YhwHmfKSMa(N@*~_CtUb4l1i=vCP-*ISsu+R<;6Xd7z!|%TM zMQcn;vcB`s?#TR>k=K*&SDpldLykwKS4Pl3xGcvn!vg8ejgsJh?fkXpr|G!gRm}Q_ z+d-@l-^0YrU|I`!D2AiStm8MJp}iT6PJMjkIr#Eu{c;lL!8sE9`mOkSRq=^yw%=)= zG;n<)n`68zxmi$r3}~D3Xgg7&F{@+ujMr4WgVBTVx2!*{q$T4oLF`N=#`WlI>GYYM z_`XU!#%6p@Pt~bZu0ePeL|u=fCX?*P(6KXq_A93V@H7GRcOmYJJ~_MQIRY+BC}nls z9P#R71(W~v0AJ1<7%r*cWdZbEKv-8q;A^wyK!&Y-e#<~Wk}_q&HOZ!}ds}E-%7{)& zuZ_7!NtWg+XZPHx#oo$qL0cxqzDEit z^*y%sc91BMKG(K%M1oS!JBQ~3eR~-PY`;lUWS`SQIt1k+7UMou&XX<|LqB9OvB0n{ zD!R$wY#@{zr6QQ#GljSs|Koc zn%2A&)Rq^3hxJ24*Ej`71y>!O;5d5viUd;|KUhKEdT5bqW z0sKc20gJ{w*E8ZTN4~ z{bhT5Gf~EtVZ!I{VEpMBqZB*P&R866AJ9Cb z6tqcfniZ2V^9g_ztgU?Yk=1LO;tRk9>1{`?mcC6=EI$*et?q05_5>8XShU!w09USi}nU;}eb zHaZmOBmWS{2sSZf%WSwZUuQf6fwIK$@4J>i)1?h@B2w3e{Msg_xWcfL3x` z#+%O1g=GFt5ZPp)?Cj7tGCgMyvTsJwzHfsVin^Fgwt3r#B|L{eyL3}N317I(rc9uF zK?IRI#)q{k{~myF7Q+GaYke1pC93LQ3i&%V7JoO4fW;_LoN;$1M&Q!tlnTmcSP0mz zjmQm4B|`T`z3>Ccmq7$wpqLOfV6mY?rQ+{kutb`6ie|i=^v9)+qe#Y37l1kf2kNZ& zq5*x#!uNk)2ALA|WmB37Htj>L(HApyaLaRtaN?6-dLSc9c`{dwPR0aZY?}8#X2cC$ zhE4Hc^PIdMBubnNFI0yAB>4MAB_c&+_y@p$3L@y!#njByOV7siW94=fR6nqt5 z2LdI|US`5MhAhWhwvG96Ui2KyTJtCJ84y^>ZYT>Vxtruj%s$sHU=M&QwGEm|kF810 z{{ZRiED}NIK!zy}DLU)^bvIP`k> z(4~;kSm$fl86XloBt1o2?^1xC6k1QJI|FwFylm;dcm9`!lb5p7CM?TA|)|o0ngE^ihreEPx-p4R>RV zn{@DEns3C%$M_G0vrOhQ%IcNg3V`E$0LI&F-}WYCVeR=3(1#40Ja$NH`>&p}YA6zQQJH_d2RF1E3!Mr%AkO5W;ck8jwyh{;dbDe1B}_W>PRrV@rg>Ka{g@)U z(SIrc&Qt*ZI;H6BxLG;`>C(Rth^Hwc^D3K^8v|PlP$uR=Olj#B{{i63!{AgVHn(q+`KfU4qbQJH{GIyJ0%fv62Pi|1Y=1H48RbiX0=fH?{bXG%(!l=|;Mg$T z4OMFZ#gn;6?RV1M;g&C5l}`SHKst^{90B2z9mU{r?w?mHHG-@h&K`T7EYA#Pf?0n-Uk{V0A*XpGa!Upg^mk*F?W z(FS-H01K>SkIsOn01TOu>aeqy6THr-lUJ=|X!bG@62A*#MWn!tv$jndR8^CgWNi}OAw*dsM zK|)B!we9t)j4ibMBS7_6I@eF{tn)rHi^Kn0hS-Q9(v!=thjt*eK33#k#^5V~xGMW5 zOj*$nY)qE3&h#drL4}HpPC(ju;KTn4MQJ%O2l{9dn!gx>X9D@`FtYzL@6fte0yW5_ zjt{Q%1o5I_z^8k_p9OGGYD(Ee?XPji=xF|Gm;7}^e!3b9F@Lnm?}6U{P{hFE7Zs$EWY5t?8<#`azi zL8egD)I0%W_g`b|@)wht1#*4ewV^%yZ(Lr;b{4xzJQT~7W!!?EfO6*NWB8ZMw)&`$m9Fye*>eE8*@8@VCFUl4Z!8(rSIyIzFalTz)gLio?c1q*6$E$O zlLQ%lc2~X)vdz0o*5}%i4+m+a{F-R- zU#10PPF>nA=J5diP<{#!;fP|0@{*0qv1T?3ei&%TiNa{o)?tRpvdQ%Oey>Jnr3}fm zT~}m8mtVw?XEaX&iRiliK~p_DV7d@X+RDnO?+W5sSn)rX zj<^bFD=S}G`VLoB&Z^w9bTqR0t);U`w3U_bE`7bnfz2NQZA3lQgV1+T|FnF?SV{aV zpheZY*iJD+5V!n@*CZiX0zlU4=*dl;R|9mD;b%c(pJxNNdD<&M3{^weDtBOAJ_BOl zF9LW}!R@AAnKi^4%hu5&F!0|1e2Q#!Q7=idD7_8V)e<#WrSwteFz~SS;w6DUugTXX zu&mPBn~z3FfojVv`&+y&=bl|=9E|w6>@1dWiOD^;6TVfA^=Y;>^ja)5bNBY5zX-v; zqEw)MF=%4@7M8mFo?gnxANg9mzhtT82``Gm{$ZH!^&q@tt;!M}MXO$cWtOZ}<;&!? z>MK}c$y!yuL|CgH{<^!MRoR6`)v8@sYROtPY$?;K>pMszffMcwqubcJCb3$32WE&SZbC>cz5s93A#f2P6+J{AN=vIrxXwTE)@PX+mr1Y+d#$6UU^7qEaUIED#?D#QjhW#Zq9izel<%H4Kx8C`Yz-p6p`ACFP$u!`SYo838f}TZO@0>SpFE20jz&Ig zjR(K6TA9D=i|j!B#I^=YUj6%9GB3s#V!4Ii-*REGehrJR8)Z@6wag=* z4JR-4H(_jlDP$&)7W0BSOs)fRBYAn{O39H0OSDEgY?`Zfn=_q@6H5MAlxi4j*{BCZ+A|u)RQWgo@#>3t^ zq9SuvfY+hY0?`(QybOXj3!@0{iCAo;Q(Ed`c>%r<3%Rz-uw;f7vfvUK8yd@}HJ=2r zk(_yvSSZ2y9mtK8;7E%`?r4@~Xpei_h;}^M5_#z^fV{hB8YW#GHZtzR@$I!B*c-(` z7YV8&wh)au9HUq2qp0I8Sazfw>aH)F7v1r1AJGDeOY;47yhPNI)$(-yDl9aTD=#iI zis)Vp@*@@K!^!7G^f{0osnQuvI_&Zu`1g1D43?%}+p*9{v7)$>_(FMcJs*oCu5Ndl z?NK-6)#KTbVyTokg~VyF9~AhuQvF;6Uu%FD;Lo9WQe48Bl;M4Od6K*U|)_~Qe@ z5sB<~h}l8o)8A2o!idAQvMAR8C2>M|R=0zV9)cCS&U2UuU~0`rd?}Oo-roU&r-b*e zBrN~?0f1dAzPLvM=LdLpyfX@J6QD-@F904n1_K|qpF2Rrwg2ffC=jy6xgVS0JWv_K zcl?&3q3h(m|MGVwx3Oi2tgAUU%9#Ypc{Pwu7U{)T+W_Y^URejwM9^iRWVBJaU=(29 z@6!Em83mXzxewr-qX5%`aJb?!0J|INGMV`A7$iei0Vz?E_(u6Gs8r$YQ5c$p-1(sX z0)P`EGurgryl$Ye@wH7H44eQXO^37>C`pH>h(g8S^o)$0GOBXcnV)gCURCq?AhA7v z%DQTnggi_lkEWYRT!4N9-#;?z5xoUOlbSosm#?rg_^c0(QS+3yv42R@wBcmvt$1_7 z>nPfWT~jH!H-lVKG=|7!<-k#Q;Q_O29hNk&63pcUL^C-|AVIuPQpm)`ejCUnkz)8s zirVTME+!B~iVqbodw0q9s6X}?q&_3X2|6XJ?*nXsOj1`A`N|7hJ34V`?FYH2Z5ES9 zyNWI2@f{$Vq%a{K^BJiT6%R56Kf;uMKcr~CFq0R=KVcC!z!B2IVv<6SHUpv`0b0~T zi)j3L5E;>Dazz`}VwUgA^4SB4`>R=QD>b;mf$bJgDrl06qBugrU#sBV=#Uv$VS6SnCx_9 zdtU^ps7K3_vP?E6tvf(2dc52QpHHV&ax+uudkar|Ux|H`IV-f~MX)w)3BWXi@_gl`cxn@1d_*<@ieI1@1Fu?j2=H% z9i$H`KOUe_FCw6(B`+?cE4Hd>!RyNC3Mgv^akifX@CmUkO*%J5>p$!RB^ir$AEux! zz0yE^6v#vmHA^NOV~z)bXmleA$J^stI|KA+1!L%C@%1Gjk<2Rcj=iGPl+N6*NpwFe5x zLXE#eY3scJi1qM#hL{b#p9adtFbX4KXn!&9e6J6oJrgID?#6Oq`&rVX=I zDnN|T_2q;nfy#z~i7`g#>mY>Fm+XN33uXt*AS74gQ^WMF{BJg+IO@aIN{xsd*`y{) zvAHpQ#Vt=_6@YML%(B&(n4u9otL9{nd3v)lr6_$o=t$ zFv9)$+145$W81Py7MbQHqO>3Lps1U16lt+=e|+B8?BQiV!O?|Q(Vey2G4>NV>a*Kl z2I6U9L{g`CnK@nzw9OF6xgUl94ujL7Xm3Erv+eh*#B&`0dMfg)Fg8JU>{W|)y%m6` zgx8sXx{POx;d^mlYYNbZ(3@=hSd_B(SKTs2ybr*~gxR3O+*tWn0IZ1t$RV-t)gHNq zcssa*{{`u0jDQYDNvBulp)UhM3;{x31#~b#Xk0v zE}+LnND?x-=X1XsXr9E5TmJ>X(k<%iyUeB@`KhQ;UhIyA??x*#$}>P9 zvWs0AH}%H=j2NRnCb1D}!L_Jt9|m|t_E(`K+yJk}aB|eYM)gI&xK&0Ox~gLV9C08D z+ye{z4MFk2j|M`-I0S+Dh6M35hcP0u7mYs`z!6ypUCMqB{wGhZt`G68zkAA9B0pBO z7tGLgquUIGRSfie#)P#-{_Sw~mK({k=KwpXyaQ-wYJOnv=&&bV{rq0cMc#<^5g?vZ zhN!bQmWcT16F1^j6^gE*ZX9R8Q|MK`jIU2AI&43PnnM2wz}UKlNAd2~9rHb=p`G(- zoJbLk4kUC3`{5Wk&$oF0`V)XJFH&bN?SE?QocM3SUD$82g?F(HXeav=W%E|o*a{y8 zXkf$PQnXk3Ux07+DQo(oDU)O)o7{mhVUkEdh4is({dJ$IR<8BG3KL|~&%{@LE<|5t z!XU$3b~FC3WV7Qgr{(ATRc>mHPg^6rE&qpDev=OpUVfKbhAD|$Jo*?$>^`4$VrTlt zjGLJ@Z;RQ`r;ptC@3Al_FP0_ik{%nS*9Is~C{MMIPM+pQQeenq#(QJn6dqsE zO8QLHC9FIZ;84jdb*3J>UDnIDT(Kaa-AKFtIv~Ibham{{-vAgEodveXkq`g(z~bCY z6DT|^^6YQ!p+JCDXX&Yjl0)L15yj@C9T!@MF?br%SahpNEz8elfWCYeDIA_Y-r*VXm>r082fE69)fD{T*bhZI%BO!zh+6?}KxPu={v zYNf{gQDStsJnKcQF@Q7HyRq*B$O&4TCR|YanjF<)jFDtr{(bM85TkugB)Vpj4Uoe;CYd?7Ls`e28>KE6eU8SZBR?&L$CDw!}}T&!wWyySl2=N&UL#p4I* zZD53da|IpX_~aLy@rQxs1v*@F^B0}W!(cqD;@g@(0u(pwTt+la_E&t>CH?XB^Q0I^SV=O0mWH1Zd(Bdb(O#MAi9e?kH)1~pu~OB_ zb7t}}B9H!BM!X^o_TF`-Z6{XGPup$>5^8>xNmzsuWyav&SjFrE>&?nFKtveNB2r-1 zhLCr`?tx3^(|>c7e*y{|dKN`=jNX}{wBZTm*8oSb2!S(Wg8lrD`>7{ z`r;!!J%&V&A%-Y3DttOf4f69qg8wzP_-|$-3!WWhRg3Y7=tktwZ!Vcg@gz5a2>fw~ z6S0Qa7WzQk?YuqKYZc;EX5Ze_AEhGxuqTo-LcS+WEF-JFys zlsr>!L8rHv#3xd=Ft?Ou;8(bn;Y18w$u9pES__kv%OLx4xT>viiQDjRaXYz6oEHEx_oChBQvjrjq<+%ILG;f ztGA^llW7G5Kl;B5j7)$sGpnMP-v!_tZT{xF{73-f3j10{`%M5pIlD=!lD+EKKyN9s zu>)J&=TdE{xD9yaci`c&bk+A{oulss7J!tKxNfj0@sAdPWj$*E7(3qt@EZHt3{606 znu6(>HN=g;eZPyjsZj`sj|q|31QM%5Bxog;`3Z#Dvl_r+3|U$qk{-vHzY)mrCPg=s zM-~{{^`ZZR`ga&&e8-OgdZJufvWj~XlK#)VP`)O>Ow~m zvWis<+ph)6#w^Okh(aw)+0x|l&k)h6gr{12m2ZI5*+Podh`s%Vw$_Jn@)P#%Wbj6Q zkU^ecd(8Jzp=41dBKSyC0NrG(urYZ67RLmS`aw(PoA3C4hritWEg+UyB-afS+vr?H zCzbOzft1)y9Emvr{QyI6KD(OuzKe$13<|HRIWskhzdtJ*va^0Shzw<&WLi{m_}TB+nr< z;ZV=3S9vuMpzc`&sb=Ut{8x-~f`MknPyP0_5xX74;B7}CR*Wqd{m7~PD9GW}pA7xX`d@`#tkE=iGc?&5CGVY;I43lpL5y-oFUWW{k`SKqhybKACJupq?W}?EXK-C3>7EzVEGx?a@N$sBG*eM({!qEZL;!1TBMY z)h3)$_(_}VKnB@tOzg$fD@N$U<@_+OW?IIxlzG`OKfeK)lk)sn8_Uy|+g%v)8E5F3 z#|$Qetv~fS4^RZVEGUkeO*8B+&b6#G`41#f_gyD%jRE>qcpF95N z1@%!LtdO*|rU9Pw7?M8vorB?regnwlPENzIVE+e<{ZsmUEGa!IUMK0;ZbYu{Q4w~nezdHG~ z>>!Jf4WY)~lYiyP8XuTz(B872kpT0b`O3RODCY7*S^3vOC`K{VwLbdS&O~EO=-4N7 zNByBoY1sb(5D@}mh%p8E8=%3mV`vjNEor1t2bwr3zc~Cnkdb=Ck^O=@&$=GFmfi>d zrf}e#R#EXQxSiny5D=DPt4p0nvt`qyS$P$}QDn!!#p(x8YF3jpzJ4aEeI4lV)p2w| zpwBiIr|u}-Q!%~#0uWGc$5sg`*%`krT|-^1F*OT>5<%$dwCaUG{P_!@mnd3x9Kcrn z6wu%hV>|Q1;%|zete*Dbe@$qhAKF*{u3#>CJsSgp6wdw{*8?%9Jf`bRf>`z#_unc5 zFCOEHI}6G(ye-!PQjR4(yilBccM)6z+X8f0rb287)yhGYj>?~UBzFg-EH|cF5YbJW zTN`t>V^AtxNn+;#DNPurAo9zJ?8Nd(>eW~Ao4S=Yn+eo+KS}SZ~Kd!DC@E z;O{|uuFPWmj-m1VOOQ%)8QY#Bnm82Y(f2y2vSXA@GSBC0Jd3a)*}W2EpIihj@-Yh8 znB0yy_@K(0GWpj@&15A z4ys&P1TFGDoM?>iXJ84`O?hsLOGq`PpXasq;~=v(P9_gd|HQI}xwC3-ukwU@2OSCl zW&kSny@nFYW!rEkepAT^wm~q!6;WAK@L;lCWPN7UFTh_7BDh@2ODNBWqSDRFZ<84x zp9hJ{hm-JQhX(%QGMbkd`A6L+7)A1^#+eA613POI7_XUEA#byGGXX z$uQYBgX{<=whc~(R+mj0ZUJ(d#K(_Yk?pvpT0HpBgRF9kqZiv`p^2H(KrE2y<;Bjo z4KSWd!ngzfX5`|w`XCTUo^%LCo9dyruH6t`TTx}wlJj}I)8j_-H)pR0fwV3$NhksT z=)MlnKyIm^A?g!{1yM{jilxTWfD(|Vq0ptVMwK%y79Vc_feVX1N)0A2P0q`=onZX; zpP2R^f4`tn#mIGVqC_@7&jndmGjB4o+d+2g=v*pUQD0W3MUqbg$v}`O|7(8Ot$(N z4;`6xea(X*Uk~IV2U)c9nC!m*VkO>) z)sVKG>wp|+Tlsp)dYvhxW>B%sycMK|94blmBb@yAaCC+T-kb0+^A}o&KdjVKP?Uxq zQmQkTLV#1m(jGNYE-ZyWNH0GI0z(97Tj0O4YF&AFY4piTfH$hf`td*=;se;GVhQ2L zy9Q%oyu?z�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 JY!P&H{|Dw!ty%y8 literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.Xml.Linq.dll b/SOURCE/Application/Plugins/ModellingWizard/System.Xml.Linq.dll new file mode 100644 index 0000000000000000000000000000000000000000..ca607868d6ca5f8b50ca3f5b211b2bc0ea9540b4 GIT binary patch literal 45736 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 RQ!y1*KVE_g7(t0s{0A2cX+Qt~ literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.Xml.dll b/SOURCE/Application/Plugins/ModellingWizard/System.Xml.dll new file mode 100644 index 0000000000000000000000000000000000000000..1ac0ee401094ac6028d0ec6b7216d4f2b97137bc GIT binary patch literal 925336 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 z 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 Udr~?!gRp5v=gX#92a5Us0B@o$djJ3c literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/System.dll b/SOURCE/Application/Plugins/ModellingWizard/System.dll new file mode 100644 index 0000000000000000000000000000000000000000..d8f384084cdb9f726ec19e362479cf6e97acbe9f GIT binary patch literal 1475208 zcmeFa2Yi&(w*J3oCX-~6Od-hxW+s&`y+Z^kN)e@ZP$^Ob4!uZK0s;aeT`3}hRFMwS z5m1n#(gXxWP$|-pDu~GcS!IrpAh{=dt7lV+U2eDrgn=7!Xbo+ z!2b^)3b7tP=~J2i{kQ+g!e&p}MvqwI`Z8m^t=5+rjXHMfo!+BY_m_IL>6+fQO}B2{ z`=r0vKD}4pZt0!6rB|)nFuiN{cI}I}-7&e9>w49MsAY4AxeYe7(6xOpa;C@HiV5+( zUx*haEpP$lbSfv||3(A3Y?pBpjii6*lZEZzU;mbbcC{WMgpdCV|5U$9wK#U(FY0nR zNu;+@kbYE65~C{OXX_*pXTkq)FinAz8pl&kQkvJg*(f0Ly+$}2t;n_W0X zkETM@s~9g_OoiC?R=mj3z#)$P1f5O6f8&S!|NW0hD5kR`P>wO#u$HMSt-t@#CT#yd znXZIlu_pGv5yv0eY1s}QwzIa&qOt!y&EL~oZU5~u<@N99?~mI^`|rp4Z`b!|>!S=j z%D|%x{0lPhr+vb|z~dtq{|hqk$9>NKf`I;KLcqQ@d@O_z{`~vDAJyNQAO9Kl@7MT9 z@!yewztxBT9rgYns>3?>tmQwShy2G=^2g(D>zZe+&szQ)b^YPk{XgjAZ@B$i=#TMA z1+nlNWi9_L5C4nVzmdoAxsf%$x-Hf=|E=v>_mBRx`mmP&J^MeNms!uz{$BatZr5Mc z$7@d5=C8IJ@VCZ^*@(T^zq8#U{Xbs(yJPbIcwQbg|4{}WW#IpB8Tjv5_y0TU_($^o z*Kzz|E&oScJkmVMz#lX4=VR^gaorzv{}2E6=Xv$#-~Z{R{{zROf2)qaX8%3&`>*T$ zr(685H~0r~_^+?@k;g|Fc$9(vk_^y%c4MWHpZ}679y$G2W#A9{oxgLv2%7M*g0=jw z3gVyh^T*?uf6ms9=ODt@8~<6`|581s%m3Qg{-X`&HvJ>l{QjdA{4cQkQyZ;w$Xfmv zMf!*N`Y-bN_uc%dZGT_*e{#!zZ(sZ?Q~ao3|CQN%A!Y|G;?rXRG*Mr~jX5vv{)MGf&#o z7wPD`dM}qMQmjbHVkL`b;un1Xt_%JxH7Q2qdR2(o_?h)egviyfPp?khUg}MXbf1^M zSD34DLy;e4e7jNPs?oS+Rs1Z6-*Xgkh+I#0>HZ>#@xgccY)v12RB3b+e)-i_lDKkA@xkg1*;zWus;jiaEr@QN&*AplwT?w~JmMla~|O?P6dP2TFUo+l0Lhm41zJ zh?%7#P+AQpw>Ijdx5gjWo-du(5kxfAo*xd=>`Iz0O*a=-XOYEXTAIfvBWx5o(RBx^LowoSko`ZEUV%0AWac8q# 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 V{lv0#y9X53`olmuIbPrQZeTIA;=F;$Tt z@vIt=?I6?GPr*pt(y6|AOm<^^mbFjyEn&|iYDqs%SZzq4HKA{P>BlKn5cwCf_F3Bx4mN&H2d9zJr`+ml>IxeMh;jD!8^YX)UcSn|;R;XstU}*TDq) zCPix33zM5{RdKPl`ox!*NLIJj*_G8P5E_}AJ`0l^tZCm$`#I&y%_JJ%j-lFJ;*_s^ zB4zbqS83%0X~3EYV|8AU%_g4nzE-T6Wg%S>DPzSJ=?KsJ1~55>^+&e!4hYqC=o4AH zQ#i8?U_T30EBeHwf>0|um{z1_8^)SF7R@-;jJ0UqVlo}8mTXsQwmFH^Uq30U_3*ru z{ai5_OU<@|t=3rltYXb>+~w4MK4x;xLOx^9x#xv7d%2|*a84~-nm^m;Oa>ZKQjxPb zvXYuIinKPGCqQTpp2U?~(zr!UMWzlHiqux*Gu%^NlmOGA6L>=af;N)uQk~f z8D>Zh5T5S~WGkE^uhPsno{K56+juUntX?x#Wt8T5zf+@;w8C>T@n5l~imD6G$;4mcF@JfO z)Kn8K6lwQ@^n>SwwvRmo%_GcgOln$)E*=Y)&dpQyUFfuu9}UXdLj`I)pCGL)aVxC!wUnS@mB zi6BogDXK^gkcJ?5<{f8JlzEq!5Z@w+##lb(hsX;_G{*Xwz3_ziHmu1|eq3UfBBd>) z2iMi-DTnCY3g4WIn-%|Z67|j}Wo%5GVs88<*3=tpXW|k|6?slsCC9Cc|2QcN@my>p ztz2SV{4Tay{Fex2wLbnZJp07&*<@WVu|ED9Yf9rv7u8PW7PsOG_T5CBAa|2!7JP{3 zf23v`5kz>wXtu@w#^ey5Y?M}eiNI>1vZ@?+5QN&bb*HS|DGtTQWG8Y5cQB>ZQ4nfH zf7LFRI86jGw>9lL7ylS*f;c-St2W|Xe9`PQHu~c@ib(6YbMYmZ%(9SYn6$^e39WgN z$uOKRYci0@{sEG>;CT|0;i-Z(L}oGhUd6KrWL|d4#_A_+;#oYS-~?I5w3 z36+`5{zb-9-&Q@LD#vr)#8W+?I%|A*l39DM$z+eksx}j^C7vcyW2wCblf~P0+p8yZ z;JTcay85tYyUAhogrTgNV9|_a%^{PG>Iuu3_$^jj*{Y1iY7c7;T3T_CH6uF7cwETX z8P@c+#C(Z0vn`rytQl=->2>MZLVjfuX{qZWlMZH#RZob<*C27n&=RvhKqH~MCFUS& zrdr}j!<%$`;t8x9weTH#ia8IH_PA;-$;0 zHsaZYn)J0yk%Bi-5OIPuU=rO!le$Du`#`J!q^as|s5FW59m=XIheS_3=m$QKavFBI#lG~6iq$^p*{Zb&62pqIz{}y;hG=na*GWhRM(hi zByoyOid;qSkj5!a5sy9EpIJZJkN|Q zkytfEB)5fB4^i6-;F)b%dx^vvA@WlW^NWZ}JV6ASjRUpj$;5`Nal9%u)kHNS(44O% ziBq&qoW!K!08J(QG~_tQP-x1( zDK#$fo$_;Vt@iv~;(Hu({hL~IMv?6~!(=zd{Qg8qoZ?L4Nw#{~oZEQk;jk4rz9;(B6vCUuX6NhKzoEt;p847QLOOgiM1c_u&4GWqgo*iT(1&sa1K znRKz#)igN^ZEtl*mT2>(`1ui6$Tblu0%SJsmTHnSh3e|DQ`Wx7WA{InLbGxezCA=5d`rt;Ernv9ftgFB znusO>&2*gS63GN) zq7;GJ51E)<{^e}-J-$6bZystXV*G2E98=^)kX

3yMd}Hv-|?RsKUvY!-5uNx(vm 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

  • vlSA(LnW2p&5$9*7Hj0Z+?9VJMj`9&_ezrE6 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%0AW?I7>z&9@Hne1hL1nQt8; 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%0A~KI+ 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
    TJW{)LWhDrg8@X@|d(I2*YSG{weBsi9rc{ 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
    g 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ᐳSaVD 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 literal 0 HcmV?d00001 diff --git a/SOURCE/Application/Plugins/ModellingWizard/WindowsBase.dll b/SOURCE/Application/Plugins/ModellingWizard/WindowsBase.dll new file mode 100644 index 0000000000000000000000000000000000000000..449fee4f0fbaaab28b578f997cb2a76f5ca2cdb4 GIT binary patch literal 665240 zcmeFa1(emtw(eW2n|4_3xHQrvNU(;+-6cpG8h3Yh$-)Wl?(PzTyGw#30RkZ*kYK?= zkO)EUtg8R__1d|6pL5R{@4j)yd%MTkCm+9>bJi@c^NPDlmESYr_^rw zul^}x{{Mgc|2$Ic&a~I9J_|aRdAF;^xy*GtbnG3|qgVI#y;^pSY2C70x9)vnTD6Vo z)wf$r$8IqdY9+*U?cSzso)js9vpJz_S5&Ho%U4Zlu%{7fyQ#9ogt+o4bt6crKuZ_D z5*?#;u>7xP1EYOx-kSRB|EGV-NV)KRU4x}vEk-L9X8tefzs^6cwW=X;YZ)D^^65^% z&;1}Zx0L)NCRim0`>*^rhN&B`K>2qSFaJD!+79R=|4#qC(=Ods$=mxUMyVEgdiCzr zTA3{oC#_@Dgv{QXDlBlCsO>+i+?>fe$1l6w7L+x*w#{*zdeUy6U8 z-+wdre^ST)SoE*P=KrMs|K6y`e3&&dm;Uib`Z%fVUuix4|5cec|Hsh(WB>KvY0H1z z=l_*H)8nG|UHkJddR%PWF!}rV|5KO0$Nc-h9VdzVpYH|#w1R)b|4Tja-`mswFD3Ku zu>bCXfA_#Y?}2|fPsHRO{{3Iwum5=!|EB-$fq(bF|F|BIo7jJJXa0}M{>QcDe@;UG z|Gta}GZ+5gNY$@>3;O4|Sb$TN-qv#$A<WOG%%i)k z^%B%v(ee~dWvyJVY6bc4TKRWWJ(tQ_u1oh;+E{+%*^{gOyB(!JNhSYy<%&}&m8t!e z{4~CTV7of6G5rP3ONk<-fnm|K68pdUO4h z>LFS}C>>t&^zuL5I{kPtyQA|7$S+zy4^`^?e6-(R1(xEdxNb-BClm#^ zfIJ4WYMM+dt=#HTahK|m+((oxR;}gX z)%jFDDx-QVHlG>0c*)Otl&WEszxqa6WJl|sGs7No{-ss5B?Il@ul6{l8Pzgbt2$mr z^-yM*RkdX2)XHCtUF}j|5Au<$CZvGx8K>8Tr3UNHHQ1^pdUtw#tlAB-0_?0SD{ITn zp$-z&Up6n95qU6L9k?2QyXR6l!t{!&bQN=Be_M!Imb=Hhq4HDJbtcqTa z@>jFSLM|(3&5V4Ec()ku=4s50Mf9jAcDfF?S|E0|wmi;S2v(oJbE#)HT=HJd`p!N^ zN#8rGB3ShrW?8TrTfo}6)h)5J^KX>wKDG}kZh+cwUO9VCn~hkPV>vr#o{?R^?AfsA>zylD z9o}QJPpfjj#q8`WEwZz2fb30H1xgQDb*UiOS|6w)vIf^5l@U`veh4;>Gw0Dc^uZU> zFHeu_S+`j7v+84MuU2lQ-wLubJ6lzkSqpAeF{6)B{%R{vp<;4Y=o#y;QadW88g&e8 zX9M(5;{>}?U-xM!^UUtgBO9UgyV^cZkC(3x)`3Tupb6PHYC)qxk2exf7!fcc*b)iPeJg_XH zG3-i9_SG-y_AZrOz^c!F1iL1_c2$g!tgK4GcxTf4IPtF5LF6?Ynft=*`Y0+MR&{5e zc9#~}crIy&&B{-D!?N%4+8xQQx(l=CY6dw2>{?9}Uwg8Tk$9TPnwA#XF&`oEZ0RGX z)UA9adt3U8#Iw1aaP0im98q>PelC%1ZQshR$f~(c2L7sq^r`M4w|Xco(xv*RVWjzw z{6BrO^SHuPw|Or0CP3e3K|T%iamah-eke96l87uK@#;X5JRqHkGrK2j1_z{e>Btkj zNIF9j=`}1Mvq@-iZg@=!kRgzt8P9A!>HQ}MNH+TDJy)QQ1j8`QYfhwbXRIHHhE|1telig4gKQ&W`Zbc>8jWv;dK47>Z@m^$_A@#k8 zT!+M~tryvDY9HkgKZ$eN6(}}y91^W&2Yf4DN)=!}a{?Z_bUtI{E@JapEJR2COiVRt zqLu{wX2>cpA_s=peC0)CpoIM3MZyi4lALeZ`aNdSv?NO!lNWznM{X4NoF}n#kKcmMGVyfY-(= zGBnBNow3<>-$p*}cPT*m>T&)U{o#%72YNo&ZbUL=bl7rjV+LmqgMVkV!I zWsuLe0i_L@Aj=hXl`~|z+&e(3ns)6>ZN1X_e;ZKCkVmp$VAITyV0PLY0iT(kkCoSjhh)=DqizK3Hl&^x*>6ZGFLGE&n2MBf*Is_&b=;8h z$z1A!+@Lf$X~;BrwO^{Lk9=C^M!;D^ns|}(hUAP%vbkhP8+lp)ud9aS$e2WKm{z>l zZ;7t!N3l^VN;1@5x)uJ(bcS0VCD{Zg({r^>E+1o~y+Wmj!_?~vNjBleMxTQ^jK_*RVQHta{*()g*s7WM)BlsX!a~#$gaYhq&n# z=#ZCkTe6Ye4!L?2UeOL|FRwwZO&TG(?QQa-T`@uerS0h*FF)1BAy@NRFF(~ju$r;C zAp4K)jrM^xO^>UWfFl19HG2-^kMxTl+DG9GU@g(jg7UgM8D$*q&RJwIAken-zG%Qv9?Zc_^Dlv%>vpSa7bJ_L_X$_o3%ksJ7lb^ zCfkY&LUiN_atF}FPaO;%W5#_{kdGQ6H|J<|RES>7{pHG~Ne0*P;F*TJxZ*OzPaO|l zAaf&3O%Ap;M})}J03o4rE^Du%;NM0L~?{X3emXjh(wUQ@w@QTteMAV^mmc&Y&l!ipeb3$zst1fCHUa@jduwGXj zn+Ecf!`fU4F7CHfUQLu6Z;4XZglMl(OD#Deq?{pdCLqqW;5vqU>_yrb(*CC;n|_95 zm)nJ{{aWxiLq7BJ8gEFL7tyZ>!qjjlA3v#mg&`k#MLuXqVHtNszGO&EFRvdA`P{1& zj|}PTMU=np!z{&ZoLH&L?XPP;C{O8a<|Pw0aPHz>p0jj~${<5Nq>7i0=6!Wh{wR ze+toO)9T$eaR1|h#2ufdGmAmmR&%5!uYgrpD9b9F;9%#8*i zIRbRfgIXk!(uO>7;^?}{8qy|pQtg!j^!&*wuR(M^N^GhG=y5;m)OAisbyHU^$41Ag zW5_PAd=d?LD{Bz#YA8_u=YMev`x4?U+f&CN2gCnUlV8BB9|d2 z)IcE~X=yQkOZI zz0{@DhP{@=ip`hCtApIQ^;1tjmC6vM=F7txkgoz=;#G8xeWn>JHdg|NOYQ6BHNJkz z>8H{Q(UG%1u{LSc`|f*zE*Y<-_w7^4<9_eE9~$y1lYOeWO>CZ<$id>JpJZyUKa9;A zFR#~P6Q;Jw?MvGn5u0Q|I`SAVn;b#QWX_)MYHj4bad%!r8p{q~pOL=ru3<>^UU+Ky zzWc)<-L8&jEr}JchQ{V9D>_cBc#RhlrY<>8jDuWpLV|?Ua^gg*g6^p%P8H`p(44BU zdx0SxB(i=l>bPGK_o^U$_nRg+H~qespDN#?>9Jli?lw*__YbBOzl^aqX;d-y;~>5J{pn|k zpO9bW;c}R|EPI{y3iK=HeqnNcT*}5t?_bO-4O= z2C;QDa(`}e-c|r!P2HD_&DIgHY36=n@@W|0)TLUwqe66VT%8WmNfXKEUK7OWFGSb1 zvJc|)cV{$SC6mKzfICZw?y)}dy1@3vP={Q6ZArLmn7dGjp1rH(iIBDl^Bd+aX5zFS zYe^b4%-uR9D07(FDtA%au3_%>A-d;lyg{51ZjZ6KR0lRA+@p<67ut++FEutDJ??^Cn*=|84zC5-E^e&y7v;ddJ3@=#DewG)HHOTl!PR;?8L6l}1f-SCAeK zQyEUlZ>dRSKOt3;>+u@Q9-Hp&EH+VU#Rlu;r>48R%jZPob)_%7rn~!?$mzVi1|=UZ z8K(K!dZqWD?jC09IxcHU*LB=)x_fSNJr*tGguNvDe6&PfY~pN}*{ew!HP5{%xn8+l z9$4ZhWSgnIvb?{nZ8SM;dgG5t)-hyWOqVJwvj4k*9{}r)02s zV@T@fE)xF~dagc+vLssSN}fXZYBG5WsJ&v<5_dX7CP>aU&PE}6bc)N&)FfJMb9Xo7 zmscR$-95!iR(B^Gr=HIacV9yy<+C%|Yn$5X9%3SwmUBmwG(tW$HmfsR8$TfQ){bC%ykJ_cBAO9J558X1G@i2~!oF-pJ;^&wbF; z{!&KS*1peu%#c*^Hgc@m=RTD}&y8>8w6b*_7UB_dDjJZhrGJcBwB2u-FkEe%j(u7+;!Gn+pYU&s_d&RbIPvn zbJkr?Y?K-=JNDvsdY?b*Ze(mGh?geeu34dt+`}c#Lz%gn$UAhQ&5g}!iDSHcW`(vi zaYE(Y92;j=Xgg!`LiPk3XMsa1(Q83yH@7P$OciNqz5LXI(B3A_=F?7OA^lC9R^m0> z$FV{d36Z;B z18WoHS}jD+7JoSrv`x5>C59Z8Tbw3-YIW#Jx1POIGwkvK;U={qiooHS&xm(5ur@=lH1X|>mP z{;NaJo4P_AGE`b|$JF(hIj;*%6{=fNUe=(;JSAQin#PbkpCpl(P(6b8&)H8*o3KSvI?}#HX(_IjIM5ppOD6ev@4A` z>qFay>e(A5&%SKr&7tj$&4hZ^D_Ovn(6NT}qt}+u*~aUmZ{W2(bgm&84o$#wb%Q?dc~?e zq5TXQN^;1MFg07wZd=z;$0mi`>ukDQg=Dz^MzyM&&XedPBvcW z9$T9<>Y^s%m5ZZ%F?71v$lAG&I2S`_h3Pf8yNyfv9MH4nV(3oe)kJP_ZR8o5pSm2n z-;kCvH$aXWvP1SmkaLE_R!Sn*49Q+Oi99xBd&MO3n;{!tCXu(M6&>Z=*O6n@mC%rI zJ*IUk*xKbuphK<|hRr=qV!~9)^Omerj~tsHgJAP0G&)@O#uRxiY;&$2CPX5qn`=MA z7^|v>r44sw4pa3GS#n0z(nR{FU!o=TT(!d9GhRL96_EbqW31TZGUWc(AaxxQEA!mi zG}J^QpFU{G8P&|#gsG;C+$^kAxE_nZoA%R&eqvK8T<yNQBCq7i5Yi5_!O0OXOZ>NSMmK8f11@ z6R`=kZH?DjM&23L&UkH-_d)cJpE{|Dw7u9$OXSHwSO;U1Lf)6rKYr?KL&DV= z=KO6~N3n@eZMVYaepqLdb4}U9^-mi0JgiH23Tf$}1F(4>)HI@swD-&2OIKvRgn1bA%@(cSCR0chRj<5n-bx}OiN#Gwj@@S3m;=hCXQDhA;GQ) zRnlo`wCWQ+-o$A(9dY_=BK?zD-jCBierj;|1Y?sR?``RyXf-N)qOmDKn+ZZji`Nu6 zoAi&Lni@VyKI|gzTREgd;MDM$h72T`9zH*Ogg695p~q&1FEw>}=9w^hMujg6_Y<4K zT`__yh3I*BzosQ}mk3{Fyt-|K*LsIEs{pdmA=N(s+2W9?^7KjnM5`S_B4pN8cG?xK z_BuAr`@!ar5M6tV*_OnrV-BfG@}rOxu5i_XEAFw7RbleEgW5J{rTz$CZRTN#oHmZ1 zkhO;7eGlYS_&VdYyNvB0rTz+EZ*0EdO!zB&qsixzGsj}(*DN*}(zh8hOf5vu`4{v` zFGP>mm+5UjIaKC|&C<_ds%u6|P6uX=*lNhT3`t~%Av?Wn_Q*_#P&K%AGDqw;W088X ztvy-5tUM8Q7)jxi!PQ*pi8$Xt|BvvIvd}(Z|=e8tT)pJNPc_%{uM61Mz ztH!2Y0o(RyRX^goA-&{jsFhs{xk^vDC7lR{ER zA9i!{@l$7o=$t#rrz~vbYZ2cWazvg`S#r-IGv#v^mb?(6Q#ml!)|E#6>5x(jjEQ9U zXT;6$aPd9a<6QkcYKFqJ`+lle*d7kl$5uNVk$n zB(1S|>1C7IkT2vJk^M;@nbnYAyhsj1>Nw-2BbPGd;zHz{KC+%6Yvg$p;xsg*klgD) zni(?CIa73;R)*+zMqty=ug@s@>oOu z40eFT8D~fhd1VKi(-C?<%=0M8>wzIT% zB4-%#gu7_2$T^XEr~RUn2_tpoiku%AEnYpxS`w}DMJ_O;7fGCu6k>DZ5NzUw==;yw z(I6!plB*cVM?&=My~Ooi&#@WJy|=AnlahCUjt)7;_1-aZiHWm_>%Fr>c8)=Bba6;c zxnt{}Sk>JjQ|Z;qA)(wQ`XCPL>gSN3X*19v(`oauLt+?tltbc3#yX@iy(T)OBW-3l zAGa@&ge4(Y~x7CWR`2yB)*WFvcHr9;ZIH`X}hG0A#|lqrMSH#y`F zX9Q!_Hiy)A&cRr<%OQWVU56ZUljMj)8ZqaS4yi)&r9KlX$!&Yp+i=;26^I;Q~N=lIi$k` zkQWa5-MI-ztKS?FKLR$dh3K^t!*%gih~5+akS7E7$2V$8q~5WYjI+HV=T6iLL;A?` zRoHAWWQ$57dkr}v&&FVL*pO^@k|JC3hP#$;)G=eTwoj7HaYL@ROp0^Tkd5+wE+U^b zq*j?Ea^8@O`h~3d@r}A@$lLdm;(TRou=SBJ%n*vF*FVNtu;h{HdX)l zDZi*4QTnWGBu_#0PZ}Y+qVyWfKhXfW)A~j2i_)i_{(V>d6RiS;Xqzj2U=!+)Gd$zM zh3Lq~@>`o&mD(XQdC$!1cCsj z$oB{E9K0Hx-NgA;o}gQ=>q7J#>+0P3qt$aEdIbICy=?vCr(Qtc7ttP z164=v12&4^Xt2uCqn72>LzJ8Zx__%@&l8Uc1v-odfH zcNuxwU9kBVp)xV@^1NV6<;G%tGs|bltg2TQ>eOnKu94TPw)AtSj+AOlh>zMTElR15 z$kQUL>PcU1H?7{$1)!2F;amuD-jD@XMCpRTP#H%+1-5`X%KVPf?i5G5M=b1`Fy}5Ez)nnq`eZ58v$jxf_Pye` z#ml=~Hv2AAgXqzTy>_n~>?YFg;wrG(WXtJ0h}oCo$b7}D7E_I?geXH6K#gb!b%cE% zu@>w%vbC$h{@4a}i)t)O4^YkN0=w&+*?n0$i|TAv*qx4riq8U7FEiB1xlkXjfGV{P zsuk@%ssxtEG1^%QtPp*>_5y20)u9&HlkQMIjfSd}66#7cR0!Fs&%ioS6{1R?2BjbF zhI-f+D(51oxIs`srJ+)C_s+2dtRvU{%vNBFcviF-3AT;xUC3R)kKgZ?s|KxgSohSpW6)fac-!q+^=r3G-n-@c4V(* z;*9m5jnZE^hk~<$O=W2$vueWLi0TNt&jv#MQ4XqF52(9)pq`Y0iu6FO-vyPu8PxA= zN7WHv4>;1UrC=+UK?UrCdeaoDCr7Xs=lGuuP&(v8sAn-yRk$i{&Ic>S+J0qiH^!l~ zXep?(A4BzLKd;&gHe8+&+udyKB&bW%p!^e{nl*uHv=izXXH%MrU?n(<3o+A~X;C_d zEZr=yWF?_eQq^YUr<{|Scf+pFc&O>TM_d>THi#|%leImd`hokw%Q$$Pj)JPb9qL|6 zsBgIT-!Yeb%q5y_d!Msu2Xo2ES@PE^#7jl>j;rS=M7C*09#A7k1A6Els?Q4ReB!OG0vPX*MKc! zpC-@c6bhRM{0!$rnRaX5=IN!MO zBcw0bdyEpsU7$`zlzz`lZ`TFu+Y%}RSM6SoRyV5q?D13e;IWZv5l7(@wmcX1n(if~J+gp(ypY%m(u`N(XKZd%( zUFtW^x(i)U`twStaGpmycnX!=iPA{}pze%;n%4;GDR=aE&ahdZq4Z2N)ca&_$(oW) zkAhwFcBn5Rp?Z8uMc-qzt4g+ztTEYUvft_;N*F&{>gQpPq@S%Su?gw}MP3A9V#U9TBgP4-5a9q?#d3F=4A z$zMJI+u8)GO%13#`=FK`hFZ?^s0T-STtSqsZ4Onw9@IjrAyhYcI^SpuyDd~_sp|74 zGnVWz_k-WN!M7;wnz4>OT)z`IOYYBvNAlHB7aBrUVU#J0z<%NmvW05O0+a@?f%>2@ z)K&IwbI#&{tfMkd&Li{T;ZL@Stie{4p67W~d>~jasVQIl?V0*Z;CR7G1 z{vK2x);7Bg*xl4n*V(6m+=2fpjnb|ypr+=8+TI`PL}sXiu~2VDKNNT zt!)RprDO*tgZT}DO4R_W811g-0_(F1>QDNf=?iv^nXV)Ioa{7baTBhTyd&Y8fuo;1 zJ=jsIt;@mUJy4Cq@e_LRMminAmO`ziy+yc}DZmu-8Gxtz$3cObS2yieLCxbU zxsp}EeyIX=u?Eyk&XSE;!RE5PvE{&SGW+eF!7_5LwLJnBvJ>hW*($~>N#9_ezb}`- zV?I~>oMm9QhC}^KyUw&5PrGE?C*L)JN5-X4$7t8Q1K3PPzRI1eF=z4DjbQf^RU^*b zSgJhS(L1)HM=VqU#tWDOkfr$)rR{juc4rU$&KCX5n_B~}#xASjdzYnA+;dJ9N2wpzWdKXx za_vvxX|Rwh;L9cO?Z_UF$pzM%C;LdQ?gESw!&9RoZwigbW(`D?l~hNW-$kn9En)ZP zCa5Brp;l1^b4{11gwjKdyozI9s2NJf4~9BB6YA^vP`5ThWgy$d*%Zrqv$D2aso@d9 zQN6-l`Q&FPy}~Htm|r%|u%ny@E6LvDtjo<6|5Yu-dqP!_nQlsh(!4M%lCN!a}s3AKvzYH~E#W6rAu zWUt6VIEPAb4wc|evuZq|?4l|^0W2?-{)1!o6>eLOM>ttOvTm$xIBR=N7P<#f@>GO6 z#L})4PR`Q} z!@>UO0`;O1)GMCs5nMCdIXB)Xi;ss#u^v!Y*e{Jof#uHE;+XAd3+i{&|PyLiA-O1S$&3-wb6Qz}T zdp$RE-h*4fF1v^YNoOa1*cQ6&~zGl4rkzg%8g?c#z zsxV(+JUXT&SI`p>BK#wTw}^aRuz+ z+G@KEc9)t!sW_;5oa1A;&U-NOC8`2ctvKtRaX;P7Gw)~?MD`yEl`|*Q8MbH%YpXzy z9o(}&=?;(A^vE;-Y||L1&LyCN*!L$ofF0)i>rcCE!%_OpUZ}fNqiL6W6-tAc{nQ;` zeb|4ksj_)c`ikqL62~Kob7&M#)1xcl@e!k3WF7BiMQPPdP!)IzjoS=XC>zxH{!r<% zLj`fwMpJF_L22P2s9#t|SFZg}xdMjwhFx?Es5|tSoE|KOb+lgrcAHVY;d;BqK26Ee zFFD8E?3WWfqqYxKYVTG3+dreEZC1_xM83tsuq{-zWad~_fT~D0uv%hgZ;U_ghk6tR zmA-~m@v31_`&%xFp44plX^vp8zVMh{7pg8xi_HM5#&+DA1(uBK^3y?J<=Gn-+k@Sw z-Rq2C9T@K-eV21bTD|~wKQ@JG#XCsbM6ja!pz2MA+T07O)jX&#xl&@7OL}?~=4i#v zfk!E-XwIR4q{g`~aK?kkxaR&}fjHLw~~HrWYnX&BWN>0Qez$#_^* zfl(qDB^#qWm3COWovER^G0GLPKE+Uaf~+jW8UN zFQ`_}1}n|%Q!x8XjMs&wF)Z!J9{*&n9hn5rHD`S!c!Cdt9T8u>TO@e0w}Lu)2EhceIR_ZAbI*P!+d8<;w-NrzBK%uCmN*+ZQ|sHw}T^ zR|}zfu7PSKqh)I=z+5sizi~2Jw)A5U)By#h|7x2poe=~zGC5QoH`I_&sEpxISE&w1 zfYpeE%AOW#fviSbM=@tcBzlUmhd!;1(gSs%j@5^H(+H{vN53IetClF8$WiUu6|C$~ zs2#(g64|?*s63NUy4IPAiJlf)!9Lywb(E^;9 z$55YgWEygxd>4q)nj9H7N2W7JCI!di6xB42Oaw<};X%a9oeApI1gIVhp!~Qh;`4*e zVOCL`FRhtX8fMjxS*2z!Ur{Y&R+X5Qi!DzOY3EDE0H{+TP#IG|eZ$(Gv9_kHBb0T7 zuns{^I?A(-)y?3MsUuY5rBJ_cCKk&B_GtsCQNy8r<<{v)p6 z#Y0dU#o4*CDcEkR+KimO0!jnhLoHtjb&jJ|pQGhEfYQf{q3UxN?b#OWgLY8k>p*qg z4|T8$)HlVUim|pQPWB0&#*S}-=PCF0Q)S_CY8%vD&cvVQfPFm%s#5|~_Wn?n%0b0( zMWx;WmYeEDL$KuBOHwZb%TEQx5JHc(QuU?BUiM#hvYj01T4XQgA>Jg8eloVQS67sd7zTBtCDdT{ z!I8~imwAs!>D*8fJujJGXieB{apqrwr@a#|!84+mEluz&=nS>50F-}YsMgLpO7INh zNLT0l+s6LeHqv?|dTO$FM^N=*E3T}gVpC96#~auDoZ4u^^w0yU0yQEkAov9G3a z&uQBlrAzWcO-T)vxdhbvxuK3ufI89x>Z;RMiJn)fz=9YhKlg}}+&2nvEUR&6ZGQ;9 zr?`4v%8J+b-9%4FPpDP0jx0MRbI9I?r!lJ(zKC*rF4SP&1fP?!n&=Wn7LY&cJxtl?naQ=Q=16R{Vi$$8GqSpqiC10`Q1;na4IwWVb)-*!T240q+` z9Q}t4P+F1ww~p)M)^?PRP7C#x_1@v=M{|EZLDo4ZJR0_e@~;iGq7hU!s*Q)istPu}~F?LcQSLo~aC2H;#T$*85#ql(y$s#|D&+MEq46X)O0+)sy*)v6D>QdD8Zz^-uLEyLdJFdn7PXF(O} z2NjtQ>RuM8a*LqeEQCrVi=sN;45izsl(gKgr~vlWBJLK?I1kEXfN!~iR>iAd2FmwV zUDYeJc}7I(kQH{bszL>`9XY9*IoT(8k{`iJ-Yaw0uIc9z#j4i}5P5~vVb|q;=hTQ( zr>f&=zzAm+d%q6Fcc~#eQa+PXr_B7TB9X1i zE-T8aE8IbDaPICV8|2iM==qs9g%I9BQake{(UTza&*uEv>C;5d4>Ip9JMXA?bzQzS zP_Kn}^~oftrBr$3`|xb(XJpl>+Q?k9r6JPKR`t#f6)XFsWi?Af-H|;^vy^Ir%r#rO zg(^^Hm}OVU&Qtt)Nm;#Zi^*Z%dP@19g2&%Y9Wo>D{lzH%a|H z@^uq=)weEX)mKzHo@KA(FZx)OKdrT^>-lEC&Ci#$C3yDK0&5rUqkb^;W|s_pGAb!6 z&F%^FSIgx4<{lcg%gH%Ty)WOf_0)LGk#E9!X_WqJV0vVH)!U!#7$s9nugQ0p3QMMH z$u|i8WmHG~O^?EpscJqhM>WhSf7L@+f@iY)wF>=hTM3?AsjPCTh}JHZ!jv`|Ab+9A zsO~-Fuf&V;?yJXgS4kx-(X&xbKdXkyYXhq?549@6v#O5$cCiG{rj)2{MGvU`RF|oO zd!qCS*-)xF1MD}1C3xC8-;I{w`Of*)umsP`wY$# zl8>WieCcvj<1J8i<@?vPolE(Suo=i-@NDU$vK!XS-=%UIh0(Hg*tNPzcA5{Q)SIRL z%B2bjOZ50>x5~TpP=1#xY)U^IpZmZI=wBPqO^51hQ%UrBV{jra->ciPCM+H;` zD=Jyp(ujx3DDQX|kGoVQ8}Bewnx0TPXI<*;(NtcPR5ulxo4sI;$Tze#OY)ss1H)ds0UD;ve0y4TORR3j5bx5KJ; zSFG~3o0dYU=EkmHKbNDj4umQt8Q9Wn@-6aK#dL*gyVveg3GxSMum-ov&BLz2Ma7|> z%gJQf*;Y_1P`+axzAYxlF9WmZ*_yN^|q$=*skEZZzM0IP1Z-aIA1 zj5PUZ+UHH)hx2ka;vf|foh@L04%E}_XDf?${AqQlYUUO8E*vRRb+4cCHEKW zv3(;{-ZfCI=sSp+x*6qX_Ftr&$u>&ql2DiF(U2aW(c=*NAm=CW2RTTkN6s%wQaQV*}X?*7kxedY^sp9oeK7 zHnP9c-%e>x)3AX9?783@)?4-_-G9Dn7D`otnK*T?mA1-1Y}0)wO4z+0;4#(l@DIBh zXPJN4xwF>JSFKF&anA0p^7lTrN*(@TFETszsy*^O^g5SFRb6fwdY6w>(R_RyjR_RyjRxO(XrC+mKmbWNWw!=^ZX{TSuTRZ*g-Kr?L(OQ)# z@7!9IRbIVYm9qiVd(|Zs<-ZO^)#PL4KON1c5kbikad(E*E7st z#dWi{Ab%y7T!$6%cU0KBY?#?CVjZPMbZ}OMx*YGLhUz-J?(Mr)C^bS@q9^NWtGr8_ zOX*ls`g3!rmmVnp&QQ-wS!I3gjVD0bJJI-V8E%z#>9lo9O*5sDQ=xvB@wKd$JWa7` zSr@1Q)1jVJfQniOm1z@H3Mvol*jxsssRu!ItO&J5&LdmfVydjHZJG3eExju(vg%!a zs6w)1YWDYDn{C?GS2D0FpX997-|ZIA&MIxE)!*&(>xe{8X?gW-)r%@nUmk+0$I|iA zYu2uz>>E~Hl{I74@n%pf<*e1rdt~&OuQIi*kRGzC+X1K@IiZ$Jf*PvlBfXb3@gp^2l0E zn)h~grjlO!%tWqV6Y99kam(%&fLbs6hGku($E`ZN80s9=GugvzX(ib$tQsVlTJ?bJ z8S7XpbJCW^OTSo^sTBb4qJ>+uCuQE8=S z-jP>#SL&dN+)VZes~S^Xl@)4P{Vh;0>O)nKmfKQ2zE)MC$0k|vmR*&stoky8Ro)p? zl5^ph$)Kq8y;Zvtp^lA$s_QUs-^;RkP8;93(vwy-UtpEBv$M0-ex=SCyPUEkSv965 zRAuR1&AdITipN*Rqm=sb{&;e`}Rgj#-j-B+RRV%5A%AL@%N>r88ft8|4FFUZc%Sv^90@!V; zYTLjDFssp2BX*#4o2&&J?`LMZfa-wECR^HmAXK9sP%Wt1)&}cBwTA6TpxQ#!oa()% z@GU^~vKg35)`!ht%STWLsFtk+iq(VABiL8tpq}-Ds?y0S z?-ixbw_9dK^_Ee!D)B?8+GJ(P^i4s(QcCpbTY**jR$!IB6fmYu24w)l= z$KBLhzY(Z*9$QDeq%-iF%^x9M7Q8^3L zSjoz=bh)AQDQVdbX|GoQkaI_6o=zuvmR5wiE`6Y%SSNZ$)`XfTbJDUFRiO6Hh1x_l zMotZDcS&{-t9-XY{UPU!WuG>J`eHRyw(?M4%J^Elp>kWYD!Mz=kX%q-$$OBt^foheIVV1QkfT@B(1xWdyCq=E_i`sD91>7C#K?Z4ao%%sFpo zusZXghRIyBk$-1tHnKWY<*5SJ!sGQCsPqS*LaDYggZqrUUsj&2ZK#}YR*j^`_5`p` zW1uE|0<}Ih)C!r|)^`hi-`fb5m;JXbH`rJY)F?*I!(1|Rz6@msS2DrleU8lcY|(S7 zrkuN2s<-w}L%lds{CA8^^597XiCQyE(G6+IVZJ z_E5dti_#Lyq0;Sxs=^U0@ex>exx?9bGc!P?=a^4mkB4xK+A)_Hj!|`%E@o*5mgZvV z2$oi0>F=#kZ)e)=rQJl@`L%&vI7eX`SKcbFt({cSTv2H_S}|OCZ@Kn=l2gt0!Ab6k zTd3Y~odbn89_P2FuuvMV(+5$CK$e=f+IVjj~+R z1v$r8GJ`=C5#@23t0 zOTGYV+8n6#A3%jr{h1r=4%J~QcL|iL9#CJh^cpi*%w4_!TbYCNU=UBWcPkL35BHbf z*$18JTY+julHx4x%9Z?*v;7!ZZmy`$$TE`UYmW@RWmFPdQp}~^u~a`juj83n#z*;ntJR7}@;qOZ zuS$DasX(Jb$NQ+{M%5??-!t-8*32_d^Yqfba~pm`-VGPKL{EcTR@s}N{k^ej(_Jd1 zDc!XWsz3`LhkZbms(>x^zD4Ggciht%-`Y2;C9<#oW$Egj)<(*~ml}}>ru}nT2;HYHk`VyDQE2YWQ zgJo8^!p`Ngb}p6giTxyk^kO?7RZ#3)YKSoXDHWIMPBldS5}&@eyHr=_`LjzkrAnlF zCG~1MU&ixQ@&5LcA-<}3Fw~dHp$_eKsiIP^?Tu2R5WQ*hjUyXNmPJ$rWv%iln+GePuJ9LN-A9%CfFx1*sZSRc1TdI?P|i$fqLoSo*7%!||?1(t8+b zPuhO=_j+IB_Y<3p=t2Cl?2HtD%WBJ@eW9cjTwE8(^l&{(%%w`(-gP->M zCOvmsh)1NlaMXT^D^i_uRD$Pm7HcQJ4OrUNEAOfMLA8)i`RH~ecs{uRyG}A%miasD zD8cjFZCkJGu{WVgUV$p^fk(54h_X-i0~;kU3JUL*CU{QCyF9worBaV_skV~6OR3RN zr<}dSrDm}utblquk0d5rRnSAs6?usES*ZV znW`i0CQ%)WK$Np35Lx%6twXomD&6B&=^nRA_pVjCH>^r6r-4=Tr6;Y@y=Ijj8LM>f zTBZBXDm_M4>7KMokCs(>w6yZ>m*+2CYPji*`tqinRp+ij1s}I6PBoMk=}&ORsT+N< zkK?;A6Fm4X%mfd<3p2q}ET4V1FTr!86i(fH8KFLwn}SvN=Gh&!gp&Xcq%pk%d!q?XECTM34T z2jA71;K6rwCV22&o$~3iBk&l}7%QN63o!leux;K z;91@a>Rvsl<9ngDQN3a51^U)2jd8pF4l3&usC$yLKC$Jq&axv}RV6h_7s-sU?6RDa zR{7KhJ1ZxIW#>zQEj|G@eE`_+3!pmRgo>N!K2q*Gn$@hK<}+?mkxGFP$cM@V7^0%;gSZOD7hvZAc~ydvS)I- zSXH|V;$_SWmSPjstEN!d<+QgRo1)<{(dpAfPh?A!_Mz{cMx& ze)&eQLxrIxH-lQ;8tVQzs131Dh08-#mi^Dk)cH(hqNijDsCK#e<_D3zg>Xc^+728gERI$j`a0bDE*y((fAAb zq@vBL&rL*G#JSds<5A~(ly)8pkEYD;{zH_OBRfUbkL)_tu~0<0#1^%2_NGKn7LISB z!N~b|Bs`LFCdM(V{y!sw_~h_-%|1QMS=XDZyWeuyeJ})(pU5ZYZEti~g3_;RLH#Lb zye+*+pZo#21U!Ly$ys+P z4j%XKq4XQhh`9S;_sDikL~Tzw`jU#%-sbWP%C_YXx&Kve1D2@?>@sjvVjzgh_(k?w$Z5j63ZLagXchRQ_ zEGp`vm1?q+KDk0JH`U2QT z&a1XW&)v0Px8I;|7PVRL-Wkavs;r(UM=ZIJSCn!&A#A`rRjOy0{ zh_ag}-R~UpaqRo`Um#uw&eIW<5PAF^sKfHg(Dq~^a~{_RrK{yNqAk5v45~ves7~3T z2D9()@znT{tF|r2ts&RPc6z*}TFl!R&y9)78{hC8H<(;P0MdbXLcZTixk^MCJjX67lqvpc*cdpCByoXJY-wttB z6!*?5RCm}ffsCAoH{{Xs48Z!vY(X8lk3vK|SX#@KHsuvD`5a z@#ayDv%NL%2d&n_BQ`ZuUHPpUo8RK}U@e*RksrXaGv0~gXwf~MwadBQqEaJXf6mw^ zdB76NKxN^~E+o%TYzE6Y`u&ch-tAPMv$k-q>E@@9%OsXgV zZxnU8Bkksl2;mroWrgn=&Pi1OYzTcTZU&3^2K5HB4XR7x`q4YST_*F;SGRbeoI(sMC6ZYg!+}l_1T=;@_pYqIL zHCw)l^`>^7j3s*hVh?>!^$lNFoZu~Y*#%^}fb$^pUtqhBKt-Q{szFwRucxzXKb~oXg77Y1qDsqP#@8*6xFZS5v2(2p79Kr%ab!f-hHr< zcXKAb&sBSY`}j@Hx)JRA-hA!%2}iI_H)It_)_wu%Sa}Yr2US{*R(tN4n|Su<&-B^+ z5>Lao4fD&z{D!SV>F2zymns2Pn9rqJ)dYJs2kHRTO=fzX>_$3daAq7l0=YZ3YXJ6? zb|qNajQN%2yy{35_X{Eq=UnsWz4Hyvw`IIPx37iX%|%s#Dg)2FvGh2~r(n~mR#8pk zsdhOX+R^PDvf9VU7kMHs;nS@gyru1!2ajcOi1IckGHvLBD$i#brCPwQ#w(~nygMEk z2v&`EpLaYpT5_FFU_Z~}&2kx8N#4hA@J8E!Ga?_KR`l+S{O+AbI}ZMc465=jpLh`7M&U4N)R1(lY*f6!wjSwE*<@2vDE2PT-T`pD|GYMrb%t2W6x*D79Z7-v5- z5vd*ry3|x*kt#y~RDP;YSelILGnRHByGT`oY6;Z~$K&sr&N7)6mS?Y4t@u+J^>;h{ zi4XZMWqC$sl`Eb7JcxWJ7S$TLRoPPgoA+A9EB$W4d{Oc_1!wPcsb{BMYKdXl^O6@atb(*>U7ini6uT#~={dM1a-}l~!aLjWK zi74}!q0Ccel9?i7R3tOUn2d392t_2xSTav#I8q3ismPEiQKT~T{?=O8b={lidEd|T z`Ml>JKi_?=>00yJ!%Zr)sKV*O#2!b9tX=(4R+Ux$i#9Kgdh`UIfG~NPf;nKPQ5$fA ztMeRERmR(Lgj7+q)9-LKqz>X;)k8*29vN20jd}?&TU8S4h#$dhPVI9t`a1-gwMeXq zl3Ue6R0FKhEqevI(ki5;3|Gc~A+=zrQfCbtyTPim>LqH4_PZ4}r$6HB4bK=m52MOO zD4PS#S|mP=HKt}Q5{HW_zlGT*?27EwpTA=@H^Nu{#NA*)FL8t1sp1-|tu!QWdM%JM+O7p?mW0CNG^ZLs(Vo z@i3_*v`-_Gk9xZ(i(rlhx?q{A|ioHJNEU`)rD~v+BPw9oAmeVXgXa>_5Yz zT=e~oklKrr%G<~(p2LB%Pv9&*8KNGgzkZ?X+%YZjp0PWLSxrA>5mFyzw7Czd<_qkT z7a^5SRHG7nbvl(iq;^or%PKtzgt0d(tF$Mz3aLlehLmU280A~`K=AQRt+3ruR5wSPP}xT zH%VNRid!O<2h^G>c&yNUiFFjVWFxbbuULJDRe}CKjiX8+2Ri0pu5?WoGr7`V)3B<= z7*^*o>REON^g5-iP3g(%wO*{A$NXmFTQ`hVtI@1_i5fMD*^*hT`mAI%@-tRDMIBntY|}eS5*J^`D&u553uI4x&K&HBN_G9U~IQnhYev>;YU_^2C-_3^A~G3 zNJfjjP5A1+GODDOaU&h(9vkA1ajfqAz-qIMowKncwRSzFosN)Jw@q5z5Mh%fwcKSm zSEX9CNZ>iMp{bHQjLaFIqGE%pcI{#Jd zLQ?ya#DDjMWtBQFBffv)G^bk-Gpx}xHXBq8cZ$qz}7swC{vagJpScEUF7 zli2%NHBi_Anf*%0n0-Lftstz~bdKfFBdl5p+blEKcfI)P#y41fgVmQ!_dBe8tU4;C zJSA*#VGhwx!u}QEl4qB6FUag%hP?LhY+w4MUV|(_ySGYzJI1Pm=rdO7FUx2Z46EnM zr%l*4XiZkNc$rn#j;!>2X|L*8(keZ3TBYYpt%5PQ&q~sAE*~ z`ytf;s#)T>LcAW@pWp5|9n~{kNHxV(M-9glwf1X+bF#4d8hg$c%+;z0t54b-wE?3* zTf;`9jx3w^fn5^@b9Fi?q+Wzwi^Qv>N~yMJ8}lH`W*?Y^g9w-1;gqUSx*!8jk;l@f>-sE)vuYW`bl1`f>-rdBKw)EEvkk{P5VKS zs#%v=cbp?xyDwp_RWO#OIE5W#Vks@^W32xybI6k|5+B`QOI}KKNNt}6$2-CFL~V=2 z2{>catIbks+0Bp|{!kjd>W9^6lZO66omRmdq(^Uj+g$w$`zWjQs>-TQFb`VwCf2N0 zRl32dbc!Oj8DpKjx&otsRgJL6vFh3~R!bxeh5FD}gL%^eua}%CpRt zN$ro=!SQVobwpCrJ3||`2j(8DX3EtW4#&4nSQ_kgtz9~-9;|95IXHz;-m(tZV_UUd zT0|D9qntRCu~$ErHklgZkY#U4*v42PTb3Iqy;k*{vgW(KeJPUa8LvJB(HH8ly&n*{fNw(%NX)5->gbmkND~ zm7Bdf0_$OLB5*Ut`_A)5NzCS8a%USSQ-NtZj@p zBF$CY)}^Zh5yHlY!JE=;D>0A6+VMLR;ucD2?G9u0Z}V3Gc|K&WK8q6BoOXlKSEH&2 z;?r-RMO7KBC#_m9tc|ewuZQXCyI6-=yQy>z7gdeXD{Oo{3*vkisYO*mtjB*e>i>Q9 z*Pa~qgN>|4V8v+T+g#0_@kG_j!e$HWBW#JVk+0G!L+!+@W>+oxtt}m&qwe@PLq@Lf zW#q{?LpDl(Q_)Qe=)f)Emtqg)i`WV?A3vCH7n+GlY{sI zd^JA1s0$KbELWZ3U7P0@M9sj?-^OxNLOk=eya|U{O`kDF)dH+{ZP*?^axASl2kQMr z%&Jx45F0SA*|1fyf3sn0VK-*gDYSO0=A-vmHJf^9R8>Z=u zMyhg{CCyuss=BD8oou%O>kYGWP#Lhw(D6CShbQg(lBci>v??hLU)}Vojn7e4@^Y`O zFC)!`>&(7HkGJXGzr*GD5X!PtcRA19WUM=$z*nz8*|N>Uip+*s0cDvA+55>+bp*`j zevh=PS214Mx~z=h)~Yb}jn=L=R^~Roi5R7>nm+w*0gmMcRvz~1T_~H{bHJ{?JKVSu5Ld5IZ(z8J{UcYB;m446KD*c|dRYy{Dh(lO&+0^c0KW$?Pp*Nb` z$InD>wCY#Pu%->g`{=b+rGcGQAL%(tx4QTa=(SdjN3XT&DfCsVE{J-OTYJ2BnRBp2 zdf9O4WiLt_U&y^IJ|FH8+|d4u*Q2tTx8n6kZPg{L9rYWkQ8fy&*pcRoqFk5duxB!U zj<1*AzR4O@dC+@o$yZ~}Gqn}J618e#iNA*3omKO&JJIikN8?)}tW~kpVlfv-8uluG z**6-m-;cMR)T5qNdepN@k9tO_Fs|x1VWY~!RigsmQ+2*l>K?A*SBbl`DjLVC0DNz+ zmJ_uBqoZX@HnDoXCM*4>yuJE#OIFJ#u&UC7Rq_H>WpQF{L&U$t>LaXaEPG#6LCIAf z$;)EN%Y0E27ID~7qV^SF)=$#iBRQQe<(MF9RXz@(-}twAsVZt^QD*up0QPE^oU9i2 zWOcYCt7EfST@kfg)OoDtY%C`wr>!Ku%#zdjlD}$AI7EfVS^fGVtKNB8E$wKPegE9{ zOJ2!D)jP$w6+eN+qa7`(Sn; zvX;F>%2BI+!M)j2dak%gt3%853NOaWs%a5BPL@@@T~>oo3)-h;RRnujs~%~?%FV@U z_F6kSmQ|0=U^NS~nhjA6Px#rI*?^NkGp?z-y?I_;i>Ed$D~FzJ)fUv74e=?fK%aj4 z3VJ(A)FLs>Yavql{;y@w>6j*Ctg;??7k?) zY!cdrz4{x@c&uuPQ$(w#;Eckm+Iu+W??hEQ%U7GFr52_dre~#RAsaT9?w&d!l^UhQ ziV-XLc%$lGRVuSlcaO9G9?Ql4tG12(*AGw78BYeh)?-0PYAd30n2FsJd7aTGmF?nqwSd=uuXiu_~~3^N%o_C|4_Ew6#~;Z?ac|JL?u` zO?iyh^8TzyeLOr&Y81{L?bV`k^;}L4Q3fZ5_UgK-Yh&3`I%8Q)8^&sU16B)P zV^yFxtC^!&&7IF`^cGglV)4~s*0nFIEw8g$Uy0RPQEAID+lraa=Csc!R;}B!y4;=B zuy-JtqjpjFu-d24jGfv|oe030dsJ;3g?rT`}KdvIx|7urF z+Vh{X8=F~!eQ*?g)vnxn;~595vTf$_Uc=~UOFj&|KEIScN71=KDB*N`_!tKPh;tR(}409e~0^9{D`lK1$xg3w5IYV_kUmq zZfho{HefYu%X2wNvEPVe~!9|usWxXI*c8VRbk!> zssFYb>5UzbO}7nBB~7jZdA@l8Uxq?zEfN>)VdZqgZv+{3$YG}M8CrI9GOJypj$s#L zubvlm8@oWu-o&27s=1QJYEgG2welEGt=-qcq8Pa>3&Af|ZI-Z^#V#LaQ+u_LFui`U z?4>h&wX~#hMC?|d=Bs+0V?$)X3})4JvU5~Rtk-nC;VCohyRCYcc3yZ=46~47@xyP~ zwu>61^#)dH3AWCi_zpw4-VS!>SgK$hVdHB-Dym)?V84$PRmpO$@_q`<0j36Zh!%+x zD=JmX)YfkpS+%kwoV}X3NvY?|)km>fx9TQ#R91Dv)2>#nLOHCe)tS``Sgl+3rm$pD zYeXFpH7Fm4SU@V6m&-`EvB}F~q-IqX?Cpu67OZNITv?R{dA6z_%3;+y%uH4_pT?>_ za%$Npm}jgifLvKsR#Xd7T||u)^|7cFQ5Qu0DJuFh$DBn}0a0Z|)e`jtl_NO!=wCE` z-gra*qOn!_7mc+F+7)i2RBK~bNmPAOLAza*@f%gf?j2E!Nd@;-`b?{{P9w0Nc?zci zcKkcYyCPM$FrVVo8p*1q>;q<@Pumf$)r&k^wS0>0hCtb?6$kOC7n|R5V(s|wICQ5X zeksS~{L9A>AZEW}G_!V{FiTpM?<{`P$HbEM0IOo(vFfmq)u~;qHj6rs*;I%9 zUsk2I=jm0cR`?CjmNfUMjW4kJw*~*kroL)d8TzVK`l>!PbyQ89x@aHZi;&oT+W6u{ zeStjN5Z`^pDt1az5vxcYHmWMg4!q3a(s%1NrS+7M^b3OwItgqfGieED_b$+NVt7nU_!lN>DHPxf6y3b~{4K3S-eZB^( z^;KAHc!5=mZmc$;726P<=dzmKoz+LAqUtW{*Pb%PYO92tjr_NDqKh<=b;+e{G1VgR zG)gqvl(G%Vt5xu7GOo@uSJUIFR>7U{Fm?^lBD4x#eG6Bwn5z!1Y8AYCAGyD7u9idYwF+MS2Bo}Z!%kq8vx!wf zyRESM$Jnhez$!grwrp@qR#PzBYZeTPm0xS-!MdCtu!>TD*Q(HB%tX08SLTJVMefSoM*&DE0m4#KwXIahd#p;t1 ztbTo+Rl!`W4s>Vr@#9tnQ=10=Wi+XcugtH;UhLJ}AF#UihE>5>4k6}jCYDW) zv1*J`Y8L&kyV?Ks1mn+~VbepS%E7##dt+2Rjyw3Kwa53uiJU#z>D8Xsr#J8N$%H<; z$!&751?L-f@2u}PnjWBHAtv155QFZpTK+A1x0&-&LD{f!w=cdPo;HguqDkFcUO~!wOy}d2RIw*T}H}2i(Ru@$_vV_!AChSSD z5>SqOpW0E?uG;%=j_P;K<{4*)I4jlhIjV17yZdaGIH`{>IN+zlfoU-4djw&72) zL>es;`{VwCRd0(bw2)b~l3}{qNYsrKz8c=eY8FnXZ7f&+wK3yPD?DWGLa7sIiB@S} znX_E+hW&L`do?62X9h}Xy{pS+J^ueJn>uzjq^g)Y*JlMawF;E?&)iDYGv(bS>LS+E zmX*aEWmQTdt70QqO~aUDuhzv$s#Q-&*y)p)4X?ffVx)sSYkwY#eS z-(0rw(ia}-6nrXMd#FWX;Y%Ua$mIDDYTv3wjg(QgY}W2Q+|kj$2Hzs_0CqN3op6{{ z@54-=6xpkf)g_+peJ9z{zx6ysU1UKwdy$5=vHmRDVWKQMD2EvOBin7-&1}}^tny0!#tKU(tgo>9lG6*TIqVIzE1SPN!rXtD)e-i?U(D`^ zUmp9DS=ui+zS6>Ktz`D|b+#)iY>%*ZlE!sOBfrE~N8+n2tb?$DD>#iKzi}EZ#cqJu zEs}H_V-~XIog}Qhu%i-ReaYWtVeN#ikUVb@|LqobL|C$fy&?HqEG#VXy(~UWbBpuW zSlB;Om;KjpdCyB775R)=uHQNAG_kuccGJW!({8ifKjMRr#0QJoaeNJDv#NpT<*nDI zOl0;no&~dPu;lcSqkJ{5lw)u!wu|5t%!a5cEF^jEAwBAll(%VH4%!fqE|eI@BGk=!?sJU@xEAe+<7``K6HaQ151+0)D}i2tUE|Mq^&VYf<6 zmzA16EvXHY)OHB#EG(ns^peD!MN(TM@hM^Rg?%bvKb2C}6V_DNJHn<3Yb!0Mr?i|O z#qNsOy)LaiEUo>5j5J-P249r0T_tQkX^DHJhfWnAlo1~cl(0i3Y^nq7-K+aqoyTl% zYi60`{&}o1sjZ!1Ra(+mA^F=bA-YS5>Qauy9k|ZB$=F#~LKG7Z{UbS@E+HZkBAtZD zA|W=5T~DdOY*N$Pgmo7-PCQ;-JYIYsmwdXk$x+geW{4*@-(tHTig1a_{J?BB)^OHW zL)!7xk0hsah3ynJOVU^>X{799KVQQcnT_wZw8^75#kQ>4Yn<9YI4!d*LE<|jURy7* zye_evmvQ4=v738<)BQ?vnpNuZZy5#JiPy5r2$Cf2Z-%6nMN-Qw@r{#Ozh&an)e_$`!WN0IvP#=^qy|Tbci$De6XMgJ65l_P``ME2$KsbU z!lnt^Enyo=UUD7ca@3RBYA3bzf{cHIB&Xj9YanCi@FN_{O1WA_uAY}s-j}@8l##HG zq;{h=$8zE@tFF7bX7)>q_%@lZ9vAgu9J4=#Eg#2hm*n88l)R{nqR&aL;)N9xwnD-l zk+3T-aLh~lbDt?FC9f{NN-OLsVLwSJy%`+K37n|g)-+3Ez9Z@8lDuriNs+ZnC*{o| zb6Jvjd|_vfZ@%^Wgc)@qU1GmBOBsy?S_k@!+UJQ;jKt29rr(qEdgtcb8#qMjGE zTvT^a1qyN4cA`ef)!o9f2zy%CK*`H(QF}#I7d2l(EEINK*q2ex!E33l!aMKqi~Zi$ z=hyJo7RnoJ&t-;&R43!fM@9WRgxQnA-VyfZM0+(DOL?3fb~CZG#>`|@lVM>}j~(Qz z&*HqqUi}?+53PDmSXoiSNd?mwuo+*FGikV3zgYF2u(70qA@p5=J|@J1q4;eqqcUX+ zk$U6`U)?asUJZtAiP^M2LOANmr+i=Xb12<%95qeUrI-0G=sGBSb-JkfSg+Z8nnfD1 zn!20cxG9j9St+z!*V#+oH$39jK7S%yi z?|1QwSjO(eJ5~kD`|=|E=9RfxdK#kv8tbR<(>icx8KEx<$;~VKS zs}s*^i-d>>>q;t^tJW4_J7nKJqczv~T0t%^;l>Wla1pGgwngqyH5Jxo) zkoQ0$su_`Ao(`!GKyZJRNSChoLL*3=dOkpOJgHTS0MYTJQ7;%WHCqv^3KxQ;RV@uk zR>$|_tAvKMBGUP!CFxXaB6o`_wH!9_stu92VwR*=ZHb&s6*4xc1pFncq=bgW!)g^m zWmN6RM#r-OB(rKyM8~5^7S(}BHPnPASrLnlCpn=4+TvD_Y(hGf45<{5>_Te8<_Jh0 zA&qk2jvGi`AuruUTLsB4c17tu!+(7{;D>e&W#kWpCDhug_yc%WRO2s!xK3 z$*LyenGf=k>Pw^(=4@SxPTIiKMK#!H(pkvLXTs_eke44ID?qvm`Gjn`3mFG*=56r3>T8FZAe`Q8AT*1 zp$wjGx&!jI*u>*LVE8Ac@PHQnbgS!%P-#Kl5%SG?e6bH?<^v=j$ZR1462q!6$Or0; z1PznbBMn2UB*=%VpCL&q?(vW+4>DgHn6#eDfT#RH76=&wQVZlG^=5*G$?E;|A=MCM zA=xA)q^^VCCk0t7q$iD9%T)ga4U<*-S8Q)uPBzI2<*uQI5h_M<;(p01AS=aYIE7lJ z1|(>htRAD5uu5zeVs3g9p}r7OGZ(xLvQ`aD&@fpwAhJ#kB2t#(S+52YQK-`~2(>{C zA<`c@);@L|s14{}n?b%+!xJ=2Qa^PIo8G-o zB@#(9BBXZ021_9PB_ielyAcB9ppaG|2S5%9$uS<^%KWgpN=Oz#%FDF zT*%@cmYfix%Hp{m*q}k+PlvixCalhYpxG1ot7q86b4ExN+(Eqpo1cYr1o;ExoRDLP zN7oK+<={`pybDB+2^WPd#ejMTHkX9de><$))A%;5kk|U*ohXps9w3=P{&;}o0lEDE zDFkvy$Q-0q66D_pNF@+#0P&}D_!8P!T@X)54v=Ob*mRQ3GDNApnmRNhL9-;43gyz| zkuKKJwUK9#-EO-0!UvFm=c+cnP@Ob-q6?t&63qrB9Dnp1N1L# zgJB4NI-U#I0qC@_`7sV`(EZ0>_J35`oo_)Aia zP?_EtoMweOb%OQn7?Ts-Q>vaFZf|y8gDtmV!XHa(CPnjeo+{NBbueC6Im{3Ux-=a}e zI};>*iS(3sdS^#(f(<4KN^1#XZVG}$50NTJUH6^Ap-BmvC9AGDz16K{NN6&Vch}-e z<{(2uQ;6slh$h2A?--J#ilksiikOForV?qb*FPX*Leq%ocyzhOhmwf&dKS;f!e)Zx zXBP6KZ6=1^H8#nr4}7RsJCj1wiS!^cIh0JK^?J;2fWkZB2cn3l+hb$D+Wp5G+o8`$hcsI5XK;z|9(AlrppJQPx=LEvr^Pg26~ zsQ0TN--JF+&@4&)L1drU%*U8;3pNLZv_;ljOdm&yBqzLvQ;m!uxIv0Po#!DS+8bDM z5$QtYtdPQ(8E3=h91-lK5c8vm=Yo*pXiaoQLd&ScZKx2g!3+tdqQ%h#d;n@g>5O45~e2LD}Nv%A+_OEJ^uLNMG4v} zN%?3SZ@|V6e?lYzG7Kb*g!&z+j|0gNUQ9N(h-4I-j(BEz3T!fkKP8(^Ak#szgqIN6 zhfuRYvW1rt$@wP6UXWa2g}+3Vl&~F>(#i+O3LNEbu{vPBxAqQU% ztLz{Rg zR})EF7i$ubZs9dV@)E%!41YQ;J$tr;%_|R(t{@mtj7@UF{4sVsd_%}Ykk?_;Psl(J zy^0$sWCM*hgC8J+5Ne2!e=3DlBFIo8NeOw;dfx&WE~Ex(Fd1aDkbBrc&jT4NWFzW* zG01o!qfr;1gG?floG>Y5PX?xn&9LD(4MK04CS(EHm_C!47G9g6OP{2^N8{2bIZ5Gl zM5??UGVSo)@OmP@VV2o|w5Cfu+m7H21SDBfuZ|Y}4aj>!UINjh@f;z=i`uos2SQrq z4ypYJ6(hsGMmh+!FucK}j(G?E`2jYIBvgA4JsvI*G797}Y?cy9O2~#`<`0mSV$(4b z_OKwI38@1c=N$Yf;P%-icNM4Y2VpFC` zNEHBCFJvNmL1~c9LN-1UHlcP3NyNZY2R11}`p>`@UO{#V8T2T=>I(9;kd=+Xsx`>& z@Ym$Ssu*~5OZYatn@IaE_6+3P@Ha#Xf#_BDp76I!I)zmy#IrBF$B-n|AHAsu$o}wN zvPs_r?>&JW4DTay0(-r|Acw-=5owIIgpT=0ct4R$F1}+5n`7YvMCyR(k^e;aAd$8p zlVEcq{JkMbsx11>G?0_wLqxKnf4vX#Q}{5EVnoh_k5D|5irXFi+3-;!?;KaA{hSRS zBl28MI|7^wAE$VhV&SaMtj>o|kj*3L?~9Pu`S3|1_pjmf668Yo6p=e1dM$A&`~#6Q zAbMWD8vc>UtIcd(Tnqn1WD{0sx>sHcpC+;z&-dyU{#*DAk*4s5ULRf${~RD|kot}A zSt5t(gw1;X_wYF)!}r(`;AZ$dk*nV@xj^K?w^;iio}1xch-^gJbzR&HUnG(OqEo*a zzGO&}`WXXZ*`M)tK=?A*ROo`=$3Q%{!&k`WE6j}Ahku8!l1(4jSn?~84rrPC5bE#n zH6mlNw$V0s!oLxjM>TjSe4WVS=Q49uk(F4PYac4-cOu!dW6T5zIe!p&2a}SH zIqcjdG7t-vpAb*jxkcnue|!%a#Bu&KBuVYVc1`yk*SSrkCANm=VdFY~84?>4qR!uj zj4~&{S78%%{xKvaG^I{R>BW%e+_5$)^&tH63T!;*E|E2ub8mzA&OIVCh{QSfiL3zm z7!jp%{xu{?X>u2#QadWI!rv%$AG3pV9=mKOMC2H3bXpmlupzNLXLMXc>{yo?p)xx0 zhU`!uV#^XjjJcikhQvyd+sR-<`L%Q5*EkR=x08{GK3~jZNG2kei9G6LwnX)rjMXyo zlgG(o$S75=W7v=cCo9>EAe+2SHbat>-UU34nDaT=iRe|FCXYF~A?6s-zaGpj{z3~7kQ8I+ze8If{r>OBpN~rihxMv5Onoco8M$6rkT266m zN;hKuz#L&$`N7zG;qoj zVgEFAo+iTnY2;KO!v1OOR5WC)(&R1VxrtMWY}jK>oytVmV@;iBh_J_+JI~s9#6QiQ zD%M8))7+^_p}74tcd8L#|2*$hC&K=D-l;)^{nNs!Nre6Lf>VnK`=^ytn+W@-jZ=pR z`=_l_mk9f(ol}np`=`D0oFOs)ba3hi$W(Z&qtk#wvBzF?8WLfTz34O|!XE47G`8`G z$2vJptc`fAlhc$!vBx?&&4{qaIy=pYu*W((&l6#fz3j9g!XE45yg-CK*3D^2ggw^7 zX+?xR*3)TCggy3((}oCpte4Z)5bH7RpWaTp0GSQ)s?(lAvBzF>IuK!xz2GUANp6~DUB*LB_;JiYFJwM3lMT9*+#OY0hJwMcWl?Z!&nDZJD_WW??bwjM@ zwVxB6J^`{CWQ5a~Lb2yZI&TnR&yRHa5n<1dcHShyrm;W>kO68A>G0Li}zWLXC5VSz>BO&ne@b;Y7H0 zCOC;ixOOHuBZzSAOms#P;o6zxj3UByF~u28gzMrRXAF_-Z`e{yb;c55uTFE`BEnvs z=8Pkvy}A{3@vif>C8j-VZ@lY_4-nl}r#lk@M7PysXQCzI)fvttBJ9-}&SWC&)tSx| zBJ9;UY+O6Ai`e# z(3weuy*l4{j|h8pfisH;dv$>`n~3)6*YM9mncs_|jU9M^+#hM{YmwMg7!<-HT&Yil zyn{6ffLbi1FOC3@A)XjH(jcVHfGiao-3Kp&EN7C2J-@=4V{#ZOwmZuWiFs_h zvw}i#4!1iiiEs{gI-e2Y9Huy*6X6{0a#j)H9PVnIfGaIdqT23ka1M_<+lg=vPdGb>a1Kv8JBe@(PdX_?IEOzvyNGZOPdi^* zA~`(c>^3Bp!!yn|6pC|r#`%^A=kTnvhY08JoU@k*=kUC%oD+t`#*IImlSJ4*x13W%*gt*6Z#zE{;nZ(CKM~>7|8Y(e zVgKB9&R8P(x##?BNX$R?oU@jQH|{y-h_E;AJLfGCZz%Ty5zdcte<8y8aomd(50A7F z7sK`gyKE+Qmwg@Mvqv^5A-&7~3nY~gy~}nlD3#8=WMh_jIo`cYsq@^F-n~NP5v&1H zAyfwUDiNLsGrGSL;kh!CdyR-*&;N$pW_EuIkaUPAi+epl^xizHdm})yz$UBvI}xtI zZ0;XKN*=_C2W+yrH;M4^TysYz+-Mwu{l3I#$+JcBDhx=E6lmN-) z{v9CCfaG!i36Q!V`P@4J@&ZT!_ili60x9g?3y?k_#oYTuhTs%*I7n&tUqfR3tE{W? zA)~lE&<|&xZ^Ndn`v{R4AX7ogxoL=u0htL>-c3tn5s|0ebcWc|un=ObU|It1qk1Rq z;dinTDn|4P`9hG2ZoCbp^f~rgkScC^OZ;qU!)gaebvFZ%l0q^Pd3*-$L>QY)6pt?H zenT=7(J`L@sp)13kc%L7-K>_#4yb{f&5-S3&T|7dzag>nv4-yBWW%Ls=oWY=o@Q>r zhvI4GKJidI&D}x|#nap^tVt-@Z~M4Cy=>(^N#s@*CQq4ANowLyoFAeTt=uApSkLQL z*V-*=i9ew&zVwUAXyX@a7ZA0w>}ZW%)^$SG(?x2z$_sz@FDS~Ftq=$0e$#1czha?2CRPNcK@ zG?9)Js*78JNCP6>+=@g#D1qlm5OWW=5|NbSmh^Nh6Va(>h0QDOGXatpq__KQfIJEE znp-76%7FB7s}dPcX}#fABT@*b@z27hpIeHxQv zA-JE5)$((&8Q|6qkj5Yb-8uo%0%WjT*AoBTXKmXU=GG%J7evQ1%zchRUB;c7b|Ayu z`b6@+8CKmvMz}4BJX;OFk_R%%ZAE0-9NY^48SAz-#I~_9AmiLN0WuL}yxZ0iHEt<> zSqfy5+m6Vu`fMJpZj#%c$V}KQHKYR({iL%E)iFS3n0Q_cgwki`liimBWDabmxSb41 zQe7i>dIV&u+u7Rq#X)ph)7+OWF|GF#*i3V~P&{9~9a1Ym-gUbL$QqF8?i&HJ17wDq z7$8SMX1NoIM915BK5*X&5FO84cTRxlcs_JL2@oC6NA4Gf#73J>+|`D}debNF8fzmx z?h|*djYoRrVt1V-{$D89HN?EwT~Fi-AsY;dwZp~kMnjTRtNnP=(1hAVWc2`iO$X#t zcQcVJXd59MA1raV5Se^Bq}F8mD&N$5yBN+@k?98(!V#9AML z9Ucp-c?fmUJsXH;p&{pND4#=JcF!9UtM|+91w)e5kSw@=icpu`Ux=hig*OgBuDTZu zvE#h1uV39umiYba<2MsA0$g)16M0+66(SeV2R9?0YwlG;lKdlM!)liyzmiRqYUi4J z%@VcXT|9$lY<>%nLmNwwV@Ql}8=hWiJRF+_fMZxWe* z5^oQ}<_}X}X#43(zG&}K-DKi@1acKNH{Dw%RP3zjPxntltbhK5&7baVL$;^lcy7CY zSrX=WZo7XQ63g@7?mvda)=_`EcMM5Z`F;zjdx-gO_b!ogMDDovh&+E4&(mJQ6L;=? zB5x7-*ZtR!9V*-@tg^r+6frm9)DHDTAN)ci+E^$OdJO-7 z93uIML?SMcirw*CE^NF=gveGRsUuNC?3ke2Pr8U_NUR3qBfcTlhq~{?N8${L`7l0` z$`bKmd?d9Y$!1Mk7O7{5JQ9dUmn%agO@LH_O~!~Wr{06)K7cQSfn<)PwKk^gI`wQ~ z^ZWUbn)m>D#|^6n2$fxIhJxr0pEHuq#1m^9xnefG@WvBD#faYwR)c|Kx(N=R{#k+3Nuq$`Myr?`-;Ao}@)5<;5I z!@G*GDJkU9ts(U;NGT!Z|ASPU8&b0#u*vM({FI5Lf5;nUC7!p_*pkM`sb4H9CpLXx z^ATb$FJ$aZtQuTsbENLgw3-;8g|216+x;B=?bDfRwI((p&Zr}n-A;S z))FJnJb@7s@zfHVZ>eq67Bcp2+gj>GGCmY@-AE=wl2l{tmk%PIx{=I8+JhVisTav& zNNkL%AIWNM{L}aClRWh!*@&zZlAXxcLUIr}bIh)P>PK=~q9$Pfbp~nGkK`h9xVj|` zBDoETrQR^|s3FPf>xLn9385NB@(}stt+2Wd(kPNZWb$l02Mf|9l9$NQP9ddtNzEep zh}_34b00P>B99U2R?5cHI+EXz*l64~^0*;M{u0dZahI_djubFtl+WwuwvmEFc#YjQ z@&plmR+-L(Dnvw|&SeE@7bzUDNdV~(c`{&A2;{}cQvsV&Ae|#c0yY&vx9cUWt@6BuR}2(d*S$BBcz8t?OQilnxL* z(!LTYV~OAG#jvW6n0rOa8j=#yXK{M8=@ltQM5nGv??`z=M*Fp%51UEp)yUIC?ovFj zMk-jMwo*K=Mk*4y);_G7Ag$LTm5AuOUHY`JPoy%DBG}#NQN3^E8AD>F=o@)9Ky)ek zMygn%MtFF(2Qj}9scOiXP#KWiuz4d=jcoL(qb|i8k?NMnIc>j44MS4Qojz^TFH)02 znI{bp^P7=cWW(MV5UEWz`o5kn*T6^}OU(MP6Ug95T|>^qWp8LbHY8Hd+W6&#JZH#- zP`R#lPc$S_pNRgNg!aaeNCQLcoU6}&hC~`#B4Wmu%C zA$W5W_0=7D9u{e4i9hP39RY?#ni~@9-NPc!8hCKB14p2;Lj#D}vZlLJKi@Po)Z z0iu04FES@Uv=0|VJ_!)*!$pxVh_DZrMpg%i_Tlo#ngG#0ToG9tAliqYMb-s~_Td+i z^_GYa*F`oEVIQuGY@|@^!*!8OhQxfhF0z?IEqc=Wa9v~zk#$10QapP9uG`qU$d>`4 z{j)K$BS5r&Hb?dci1yEyky8Pp{j(!-kqG-|cjQulX#ad0xf~$cKYJoq0z~^~U*u|l zX#X6D{A!8#=Wyg25%$mF$Zr&i{c|{S-H@1n4o7YnVn8`^Q#aYPfn2QLO7mVkz1yuc3dqCn?ECe zTB07u31>NwzazH|iH(`}BYzo^q)xTLN)R^pBYztbJLL;S|1l(X5*Ui!c_^Mx^sXT` z^+t#%6un2GGUm1?UE%0`LsIm&+!}d~MAI4)%X1`}&X8E1Bhh$6VtI~4(;E`Yb2OU4kXW9h z(Tssm9g$WvnkhiKf_Tx)6c0ar9T&}FNUSBqMYCEPIq!{&W-}y7UD||qmk>{?Xm&$J zse@;1EvJs=AhNYYNDYEb>S#_P=gH=gXf7h{Z{a&Puz4h!n@B^fE|#JNq>VmGj1SM5H&!6_CfGm5HpZWkVH+K11X?keje67=4z=J&-#fPeiK_DLD*%`Dg6A zqg9C%#~E7mswUNl#McO`^dL_~s~Zw)&qboTCkMw~CU)%2hET=G#*V%DKuQVGV_k8O zr=vAY%(fSx0#$`*O-uav`go@gHWi|^h&;8^-p#2Ht!;@Kx!bm%3eh@-#9DZTXk9~+ z)SX&kRmsFtkH~GzAo@+oiqZNu9#X;TyX&miHq#njzO`1es zB$6e;lBUs@i1g26Nwa7tA}i3FrXy7IXlEj~&`&=GX%l^!NR>t*^%+R}Xcr=XZ^YA& zAf2OKiR3~rI0(`s+KtF=ke@(ak9H?=>`UAg0_h*^LF5ox_+5~p(Vj$-(Z8aYGe$&T zAyTq=Sfv9Q741bNZDqUx3Nkj@n@B;B0wCj~uM*kVJfup2Opd-rWG+ZGkawf66WNWl znt;rT_94<3BT_ez`O&^a?iIq@XCNO(-yl+`INp;2Ssd+0B+apqnhdfm`X-T&K|Tce zBHEuw2tDO{V8 zs>A5-Ap4@@h?Kp6bJ}Zo_bvK1ksnYOnLvJsjwkZtKD>bi@>6sIk)0p~LC!@d5?KcS zJPmRsI+Ms+j4e9Px1#S6NrX*9*!&fpMdWy@u<8JEFFKpZUqr&*93sk%f^B{WGtKw}Ya;}t(xvIB?$ZsIprmDA<$RqFLJ4;Bbn)fAGo!Z_vfl&H+?AqS9h9vs~YKB!2gsS81u{J7k0iHYp zsq5{vHfp_txxkQphQ#(4b-nM1@cyEnx8H{HzZ`{k$q}lacYw$qBK5t4hQxB%(EHvH zTQ0qRZs;Adq0|-3di4=cBk!=a@e5#2{Q^i+?+DqH0%>Q+QLzvhkR5bw*mxdp{7-<lTX{bdxw|){dL!o6-q`?o!;o`^#C+JsJ8y0L=+l^C zVbjLDK%w;A3f&9Zc)t+20fO!Waxp-3>TSJCMEGgCcHU(}V)Jr4?}{O@xx1Zr)rOKM zAKH1p{s*~ch#faZAcyU|-we4BT9Xmayn%G^t_R2zLv9eMnH}G10O{!cPDFpLPM52r z_Xm-kLT(c2a1YPCnNYWgY;TM&D;n}Akv2H7Ut-8@A~*c7`pl5Ohzu-==i)$K^!^Tz z&4&C#qy+Bu?*e(ryJJYKb~<@?4M|bsQ0x0()5*I>WH89jAYHxtME=IecMqhu_b-vt zr7`|o$N8$K9!I0WcfU$vY{>@F&kGT$j8Y_k^!LJs#72oBo@0phy#6hOA)afAx;_xU zRs=HCiv(5#8#h zf{gW26ZxyXjc1(q2$78k&;yXx+g=(X-x8VNrM1MLf!%~|36s2ZL~>UQsg4LW$%`ja zd#K$vP4dzc8Ci*KG7u?*I@SGjl9$ntQT__}@MRNECL-hT^oX^|Ok{ovz6fY+vKW%2 zdSi^zXM>ZxtV9Ziupcxw*$mmCGVQ|p8F`-UWw$o|>N405!e+9U!;n~One62>Bvyly zydhlDxb` zQr*K-MIh6?e1^pGGsAn#5ZiuM!)At;-;mf`@SgWL5gs#Vc?B%-n|zDC7yLZSD`?~K z*{id>Cy21;XL*GzF(Zj?b+f#}WV1QRo~6w3o_r{tIo?x5IzDUbbdFaf5YJ}BGsi1x z$b}G(5_7#`M0os}>lF_WJ^sw~N)X}kXP#G*2#-JWyi!DXw3+9XCc>l5Jg*E99&P4% zWr^@;GtVnWgh!hXz48H~N1G45r-|@rGvBLVNUR+$@G2S-tHA|cB|~ft?t(WKc$E#= z9?tj`R@5L1y=SbA>Vf-%dTv_eJ!^?y7DV@gMP3y{E`;=4c@m)(c~yz%dOr`c*sEqp zto45CRk!h&I=u>;PrVw3q$qAJOTC&zcotsj)iT7Ubqk@Ed9@8mHnZ?ukmX(-B6=3q zWTjWvkTanl^Wi%l$n)o3J&H%C)g0st?>R$aIb7}4H^e?g5WRtC!@LF*s`Obq0<7^G z8j_;Q%n7M9uvz0ZB2ok-qalrnB%&SW09orbArkF{=UYJ5c}_P zU5T6p833}+>qbQ1gB}j@o!6bnr?Am0qWxYEB84;I3o5WV;PoU@Zm8`k2fSB^aNjxL z^)e*3YC7QcHU!UoRSc`~CZ1PqD8Eh-d?^d$p!b>~v63G2UN5uruHJS8 zIOGi^GF-?YOHA)xWkL-mo9W~6Yl0w0ydeRbh37RHYDnx3?@@1@j>*sdd!<>NRof6 zyZ!RXF>jK!QEiYz-3yL+lZjLkGKI)S`1uc{b){!-F} zs$m3xO+<)3@pynl@}o{~p9|PT&UOi@aR?RVP!a7_U8kOq#_8-+(=l=dz`HP4|zG3nSkqjU@hpGI1_|CzN>uhQ(0!~fin3vpZ*Is8>bxGr+|Usw|2y2#mrxG zmI&8HE`J>nu8Z9MdP9=b`hA#_k>@=A1|qfbwBdG;1b?F;qtpeoa9zv!{7shlUrfOl zv*Dk7{$?T{jR+IjLS(ntY$bABY`!EiR>)UG@{Qzpwh@_$Hm}=8K7YF*u{kB5zr&E& zoRZJqX-Leg`TP_j?A3h!E=$C#`TVbmuvZ`RcN1Z+=J&rL!d}hqe@leD`nbQxkWum^ zPeFgLA=b}(;njlvJ|f!BnmpluN1@*9YukJwf4?QFGmUkH`~yT@2hp>6VgDczp7Edb zzbEq6*^oMdn4j_w5ea{dxe`7s;vY67=EEZX5kq1=EaD$EBuVKU{(yLj_{WI+h5g_q zkYfIELq;j>pIaa${1Ze{Fr(cCDe0fI#Q#0NJ>MwhpCa-MRu0Y|xGUuUK;&o4!j}9< zgy;8C{!c`>221&;i7Z4(^{7?KKSShg8plfcKNDFY?l`NUll;s@s6r4sV3F@5Ruze@mt{_ z)%~y`qx{@q+s116jv=vf)$m+Kyq>9R z`Eg{!C9UnJBEluD?WZQfC9UH>LWI8;SIm%tZ8BUC$uR{47Mc zS2pvr65+nw%+E%I`*JfsI}u*tH}i84;nAj|X|J=WfTiU_yf_I?o} zNwiC9?-wPq3`Dop_I@!UTo)bu;zSN(|J4=#>EM?zB*|Y(`+|;sNo%8$@U(_ry?69W z5y^}lhhD{X@=F^M8#6omWo$gA=k`X-o&EAebX~k*NDYdI=cev{O-syuJw1-~@M{ra zANKHT6Ja0r@aqs^ANKU?5}AWJMdz@mUylfT^%eg)B0I?D6~DeAu~U&=egi{d<3=yP zArba`FTar`GH&$p8x!GiqqpCL2#*r4`b~-ODDkS_j0lesuldal8Rf66Zb$V#{_}<; zsnBvfw*w#c@mp9Mbs#^U!2{{%zYrivAaD9DiKNCoyO|*U{Z@v=`pzJ~wIQ)J{~*5& z5nl5T^4k*OHUA*L9T8sh5Axd+;WhstzXK6o^AGYnS|V%y!TyUxc+Ee=e~AdM`G@(P zi13>Ci{b}jXkA7UCi)@7-Glg?I5%Lp+xkU@D0cuf0zv=>(#mba3Va~%<~g1 zF{6ZDi+<>jAo6>BNF6m~B$3qVL+S@ZMiJT4%B~^j`=g2Q>U6$8hR9~DSM|6t-ycha z$Cd^DTSRzlS>TT&!eh%v{@X-&Z28C^Z%Ax}TW zK^FOwi0}xx*q>}k>MO9(W&hNlLS!GvUxvIxM2}I{W~w1c{`Wobj-j!cW(b{~-qi6V z84}xZEb-s9q0AT_h0PLwx*^-coWmu4GTD5O_1Gh@S?13m8_x4`f2Jj=I6o`=_lR&Q zR`|1QJbqT(yU{sZ;m;=00j02H4v{!2#R~s@Lq_>IL3Bx1_#Y5?5+sEDtnlYrV%nkZ zrz`z=hQvy`(*Mv9+cGmC)JlK8A+eIK^cN7}a((W9WQmk(mA{Y(mur>(u^~xPu2udb zLvZg8<P{^vw^)LQGWBEqBATK@|oJZi1=R}-W zHh+sDNh%R*n`~$a+x@LX67qyq9*`aWmqgkT`P%=A$TXZ#6^6|oe_Md)-$>r?Zx4{F zAcy@O0a732xWALgQk=B61o_cVAu^*7zQhaiv%iZ-^dx>!6y%)$H4(pASPcZZ?C-Y3 zZ-)1+5<#x`-w-+Vc8JKghQxZo6@QN*XF_>#udNPx$`yYvk;awrj2XzU{yrjOQrUZ3 zzxm%85?eK0_xBr;vZhK%yl zjkHfgUH1=LqPo;W-$A*q`$vfM0~v3~QAm^=B-Rdd$K8J@RPMNc4Y7INhfulW@ROtXv*aX5LR`p@Sj)^G7be1WQ83OS!gWz7 z&LzS%SU4_1glnfrT+|Y|Ur;2@Bf@?z66X_PKNpFMBf{;uNL(r+T&G3iQWN1iEgJWT zAu+EOjZ0&QEvX*Wi^Zj-P+afD4<lz zPC?Zsk^56njgZJ~6;vG(xrYT+mqhMiK{bUCMV4V9H6@8G!@_DR64@pcQB#x1QZ25g zA(5q8N=?hfKhjcaIxhYj%+hLllCsI7m3uhLrPX)1#PKg%UvPPsizuI@SOUJZnjs(> zq>TEW5dIyj11YO!B_{?JTySAF2Bmu(4@N26DNK#>z1)Bj_M=eN_8Ny=f zsD(%l4izzV)%QuxKv+y&wJ-@=pTsYOW^9TodiUoA$m9>QYktHnv! zy^`hAKrKPi2Et+*s3l3(6cgKOsFotx1z|A_)zT!%Hi>*1sbxqU2#aZ?mL++L*&}RQ zjn#4_(YSZBn8s>(l0#Rpb^=PiiCTf=45Sj5iX>T1iMA0 z)G8#MAZ%OB)T$)EqupiOYOYozc?4nkG*_#WY;natw@_=49DuNVTBtQiPTv+WE!A2i z*C8yXrCOT{ez$_=U9?i`kjQx#t<<_);*~YUP@l2&R%$&ieqC*&))%QlVayt0cZW7= z0}|P{X`?nIVdu0N@@bd9kT1Y|6vgW8f(jmjss)md#t(%+L0NJ4nNU~d^ZtF1|%BoXh(I;(9+ zD#u1CUnA$v>W3tG@!iC1E^WEQhm0rq{)0lUmBZg7|BCoH0YCjTrz4ur9lgR76zdC?K zUhf0cfh6*JAD|8*k!|Kc^-Gx#wV4Ce!6foJ9i$E+k=N-Ubts8!55H80k;wM&OLaJj zY!e2nUy;Z*VXzuYBHP0u>If3q9u84QlE`*-s2WEi+ts1!C@%iJdzdP&nQR{}Q zV?-*iw>(N6OCtLcW7TmavM(`S9Zw>A4inS~B(jZ~tWFf-^~WZwlSpL$XRT|&|Y z_ktmiCF)X=olEemg^;D{GA@35xJ+G6F_UoYV-d4VT|qJ%vKq2lT`44#yOek~U#G63 zn3)ik^E!1k$q5I)T zZ%lk`tWS%Wx8>exSs*`}@!NRsD@vR(a&i~qc{Q{6x!ubn;W zMiO~_?N@*1;@9T`>LxBXqU0VPR5u5N?cqUn3yIvrL+USFVndgYiBZ18>Q*lPo#?Q- zjf+33c39m`BCpfK>JAclogP+qlE`cDu)2#xUb%GF99Q>~$P)WaJwPH`o73t+F0sn7`Qjb)Y4wm0-n-CnF3zZj0}_FpQ;%@*%lU$O zRK$exTe`^C49Mn5!cJ= zNs>YkHU@h|J;mi})c6xoN*?5VMLo^Mug_Q2GhE`8`(2}y_YredJxh|dFTT@+{H~rO ziO1@B6(HBtM3N%t5mkr$p`Itv(PLz(uB#V>gu0}`IxvtM>P3nf;K?N}er>s-UM7*X z<%W8NMAnuY>Qxe1TW+YolgQd~L%l{KYs(Gw4J1Wk?c7ptlF0gV zTm6$n)}O!BTU=t5!9~SfwFl~LA)z)ja`HgEBZSwVW+;sZ>Rm2=ZFwx)4I?GSMOnN0 zME#4$T#Y(~GuQ;J#1r)%7yp})r|NwY`4zx3^#PZ7{=TULw)ISXNW#`N>IV5+eZ<9I z@$aSjSmYCuTYsrO;UcbX_U!OdeHxH?kXPz6k;+>yfc=aqj;^p5Ha4i z-l#9R_}hA;zM_2Ow+u@79}<~!RQO*me$G+h*IfKj(CF|R5;>lkG_2%g?X%x%B@0J! zxuM$lN|ZgzBnwBAJj);@2}zMVVvWsY;iO#RLvQ2PuMRus$rGH@FYx<-4l%@3!X2=A!jwL3sEi%6W?j7VS}X9 z=lE(2G2yUDqCvia=wT}$^B_jpCYgbgz7%4GBP5-%dc$f+BLto$~nYj4ZlnB3rXH^29o<%@f9{=iiBBR8K&Tu zc`+095u~Um|Ke-PH;|H^EJHr_-&i%#lN}`0J$Xzy*XP3e2^n!IWkRY3o_vRWX42G? z*A`}jLt1&_;Jt83NLx?XFCW!_eC$a^NE67Xp6tcf%B;W9&6C`1MXS}_li7u$l@F21 zm*KU!gc6*d3tTg5zX0#{r*vES!k9~qCI!1(+A(bzmlT7wv zUJs{C9FxKyhf^(`tR(X=0 zWQ`{dBn4vDdBVz>?cq}*!`Vq>PiB8O2Z`*-91Q0qkv*A1 z;anuLCv!BMn~UEk`8Aw}i+Cz&fg?Q;&KnSRM>`qLCq%i2^+4Jq=2SR8$?R%a`GiXW zlKhD20XZEmNHPb~A95yKh-3nUtub{j{65JB%+vb{F^S>AT>LwAVz>y2yi+HJi;7gC zPw*B0MznQ_;bIgc@7;;v;uO>II#x&FIhP>m2T9;kl8b+TKOZi|#lOFw50@6HlvQ}Y zJR7MlhRcv7LmR#bayeXLxQwQzY6!~2InBGt8U1ulM#x*o1bB5Tz3 za3vC1qppW5lgJu%JzRxE)~M^@swA>TT@P0i;?<}d;p!x^M%@V4Adxld&u~o=S)*=+ zYmvwrbvIm_i(jMehwE^;8nu+o?!(!65Uxuy3%%1RkcZ)VBs*}g#7#zd9Ij8&K6$kA zHJ1h?B|j10$UhD@6r%Q9D88eA5^h9t55jVO8g5LouQ+}c9r8Tfgk(DI??RfA=`X@9Npdt5>z%#`w<4L2+RgHL5&nSk zk!!TR2)E|q&qI3=ZX<-(jV-7fFTx*EOqn70UIy|q+?I%7B=WpRX&p)Ac~7E!Od_9`lWLuWc<-{4YM+qEI+j%HOd@M$jP@ys ze5V97r!2c zw4Nfyd)KdOy}0;gsA|1QWEtvO9}-!Hmi9S`EJI7{OCrnA*1jN-W$0-ANMsqhT7My4 z8M@j45?O|>HjqS?VG3;!i7dku+Lt7<3{z->Nn{zO(1viK@l2Fq3T>#6P*N;|$!caQ zZ5YWOJgo~EE<|~b`pmA%RN7Z0cRYy=2%DjuN*lq&pCy=D8_7jH6WzwvQ)_Vnc?3zT zjS>>tiFbC&OT7KpMw6U`B;zuMB-dsUlR+CxQX0ZyGHBySo=`sTY2!(fQ_OqX1Q|nb z%`$2exg;o;(Zw~8PeyH$h*2)0RZj)Uq)jFnfVX(>LNaSpNa9GcXj8ew^L(-*CaV_D zMU;F2NOo+IPc?&teZ|itxAqN5w&i$I zfaKL?lB6QZuYF5$e42*IYIC{Vi2Cz{7^x_#&Ew+V z2N%~Cl5ACF%p#JZ+oUWeS&CF5 zpYKV2!aEoC{=K-igybUDrKyb4D4{JSIWh+C)gdLdWh9p&Y^AUq(|+LMmrq4)4aNLBFj{Gcn2Oqu z|B0!jt>q%Fo!PhsD{1Sv_^Uuv*4C5Ak(0{WPh3Q8`4l-<(Ke8<+QOuowvmhf#;}I= zGnaU!>}Y(|i_Yt`5;k2fXvH=Sj7?SXBV28hEk*`LI+CJxPicc#>YhTl=?U5cavLCo>M<2@=xW zld`n+mTyTBjKF;0$x%wx#*@qV)q{@^)7BGXc$BgSd)VHSwOAErEVk9blWT|ER6c3lkA zwvw>-7te1n*%puu$Y+qYT}bHB%_wCnWU#h_i+@fBYda|>=7qRU2Wz`XvOsF1&JWgh zlT7$q#0=5)kSvF=m?7F;lIG7v%usC~NnZ$y8LI6k`Hf58BeY*hCeg8v&`yxd zrEQJWek0jJ+Zw5zB&kUG#A&BUKA?Q!w9_QDsSHPHXGpqI8IIDu+IXau1iQ7_p-7m_LKUR`gAZc5IIJhUe_} zGv{hbE+kgOuTb4ViOtobNZ7AXF`2JLldxZ*dJ0*fB_UzILd9f}mXwSCD^%ZWF(mR= zsJ_>dk;q@6TB0TA;@=sUYN3FzzVT8`6%u-tM)a|lXY zdhbawyt~p9w%)rAS?!4|v9+4cbM{MYon~eWgw9&^&QjR zBatih9oI6F$d&p|XqialN`1d+nMn@)D%S2hrDY+>kNFAha1>{>tR!-+vvXQDE^*$P zdx=_h61h5DqLzc?yS-w~y+kdi$R{LM{7ckwk;oPQ61ChUa>c(yEf0xYIWSSnOCo1F zC2ILdkGOwf3!4U+0Wgw!S4>NBt+C73xW9X1Y+NMXy85#1pcuvSr77nB zyuF9VI{rsu{`^0w{NGeDo$xN;t$bqYq4)l_~3 z8=ge>5^~d%vcF;do9p-;Oivn++>#PAAFCxCMLxHs7%BRTlJ})qpZ|*af07TWPQH~- zdB}ygq!&`Lm^VCUkV%sD1MgsqL~OBV>MQNDciUojf~Hyo0 z2<7|=JN-y2&s!VOCrO51v3;af5E5FDMa(&Qs#PSBE&o%k5=l<1lFG{YsaBbbKYQe< zR)xz|wdF~?o#Qc8NoJBf)2eaVt;Uf&*Q%53Bl%maAtdSr#Ka!H&}wpt3mwGDfhi#` zwOT@ya}ZWOFSXhfBU`PPS{;f>og$1?DI>X8hDWaWa)@V7UnC(1AnRq_RDt}E8_ojFCu3WCFZBF1@SRDJidN-2gBpLMX zTtwUTSC7)gYf{R}>v+Mo1h?+STIcL}Vldzh}B&R-rgw@Pxklgw}5>_*rx{a#nhm;lNI!-BntJqE9mhg zO>tbT+Evh}ksOA^Kq~6fg+vX-kv73TSJo3qzM~_pqJK>?3g?2g09EuEBoUM|OI20> zhU6$pgXLUJpGlII?v*w4Z%N8hY1GtbF^NhDZAvA6eZH1Hn+`C9s19uu#;v@!P^HLA8gkH`2|K^=WQmtER(q+<7rIy(M?zg@}y#`DEbNL5Gw zj>q_Sw0imiE~2jfg`=paFBB5mRtobI9^jibeG!+v-s;@-^~FNG`H=PX?@46a(m-Fr zWmmM^dINo_kg(jtM*1=?{?;4m%Y}p%V9j&3^~U-NE`D3rSYJsZx79>n#l_!N6MZ!o zzkHhMKX6G1T}Ud%*_!EVNKBkQHqO>e|B*|)QUSuwMRR>E#bg;N&R27N9Z3@iOVwOo zPpL*yObh)dib;-AXZf_yH;@!#XAh}b=o=~3#}w02|5-?AI;t*9)l%O?aumW+wbVCL zKC>%CDcg~)%5)S zslJoTh|r}nXb+Lkr}{3E`WPo+Ywv%m@8;s)9X{3f2nqEss_&y1 zc|ZMB-_PZSSD!!C50J<@_L+WAq*B;XME#2uuJl7(VwJOBMJpjl7yU5Buu+k8kRJLG zlA(Ab#-x{ilv1%6wnBa%{TK<0VbWJWE(N_Wma3orE6HS%0s0A&r>(J`9%2URzmX)v zw=hfw>nBO#J`(v1)lZSIt>;C|aQ!rwIE6_ONUVN_V$Obw-*bVC)XxTlwIrkTb0mLL z%osf}AS`B_ex6I5k{da*-;$W1UkFGQ_bilS|>Y?21 z>WNi;Kt4kt-{~rsT}k?t!`xlS0zFL9hGem>aoNrL^DNa;UFWhVY81A`j%%52aEVn0 zV3ar>vRpRoNAu>ezbSrkLHRV;dkp=@E)q789-Pg#4^KA|`Z$`iDR3 zE=deV^%tX6|5;B#QfsAn+S;V2Bxws_F`M*MB!3qccaY6`YLaY4#G1pK^)w{A+l!bj zdRmfe5SGstJsnATyyaYh()>kFPx2vz#r&ebLvjUuEf%v?f0raFZbK|)tDb=*PZyET zHvK)4`VbbgP0vV@d8mllu4f`?2w^eX^~@x{M?}mHJqt+)qmC?Qhn|&7ypkKoz8|H! zQ_n_n2lX%!vQN)Wk^ys)|AZXWbBKJD?pwuC9M*G^RE0c7%watjmt9&`Tq&#_JF4dv zlB6_*{ldagJrBt?lH+<_lDQCeHJ#A&afwwHVdUgrJWL%%}U?Ab)UB*omOnDcrm60?bjIj@%% zqIB9Lo>MO9Wk~9HQkGI(s3Xexf?kfqswU^lnZ(Vl1E78V4pAO6-hGV zxhXB=qF#y1E^XasVl3{GUYTM}d>ExK?_2w?ZF59(uy=)V(3k^y)n41SL&z{89|$xn6@yywVu=3nqW-HMzuv z*e{*2`JylMS|ln`vAg*Ty*9}Q=zX!f=L@|Ki5xk3q1P3nWJe!>{T|Q@y&lPnu6T~a zwqEM>x%jg+Ug-_E_|Iss^oCsg(s-pe;*x-?ElL@Kd|v5|12PTrT5l4N?;z1eQ<8V^ zyt5XP+-Me%9T3fEPO@i^h_Q_p0bwyIjFu$*PT@C&AZd+O0byHz$M_&1Z0i|~)?8wh zeYnHUMyX~q+Hi?ecA_V90x{W*4+C-@lGA8QsWu?hO-LT2T|n6HN#!*@qEvq&pL>YO zXS5H1@+Jh8=sM+9))@4$hol5g(TbOVs>a@qbrx#P&@R;Sld$A=tlAn>X?x3B=36C zgQO?wn26~~k^{45g!Cf0gm+0odXwB4Ca(9wMjtMIJuGZ|&LvLiS452M6gK*jbVBc9 zJod1N@r9630%{A(xv0^POKj+K%vs8WBQ0w57os$Ru%1j&V*tr#xZ+qo#f*Vm@EnJC zb~%u$xG{)}Kf|r0@g>Eu{V9l;lEz??qA0`SkkZBwF0tMlpR&eK68XlbtT9Za3e88G z$-b^CXACD~6l`~?w`0s$q86&v(@7l^4Be{tFJnL(fGvY*ySHsI2 zqeP6Nj}`r~ipFRW!$-raVC$8PF@b#QLaG{L1JV*w(-;?!j*vRWc#%)&-YC)MZ)8jm zF`vf?$!IUYDFUMR^K9~wI}SkaslK+Pvjf<_QrR#Ka2X}J3GX5 zFcy$hhHQX*Y%C;M0@()n#8^a95&f}!kWY=pB-Ide3ev^+o{RrH*v(iH5Z2e~W-JvF zx>Zi}6M7iSNaQbz^)QwT;j1cLM9w{o6(sCE2$SB%N=hZ)^z}7XQOsz3S;l@RtFN(I z2)_zgf1{uAgN(T=YC=C_O(2Hl+|T$?NNC1jyoJDBc%ZSCWc*N+4RRi6tRu;SnR2(0 zYM`;6i$6{>(D;dqIHwN~GsxIL!pN_mNVzB0COiC0XN>KjO`@e7v(Wfi_2N`~In2xBYBdg~WjJ5+ zDlKG`v7L**Qr0MA2gy!6?}(V4T>R10QN}J3`DTBVv0F%#T;Xbzv4@0>rsm|^+DpRD zX;H`+V;{+Wj15+Rj5YR?uu)kSGtM|5L`}emB0Ki+#z7KektneV#-TtytPCd^he-%m`#(V?xv$_>Q9yWV&&jWF7k0t+@Qk#jo?zjT2n_ zc7D3?8<%+H23oE5Jk?1qeyjeqaVj8P5i`R$9gr^|GmSGsl;rKimnO4}vm}+!LQX*q zpJSXO*@1D1VMsO4NF-^D7uW%BZe!DdnAb{F%fg0hCRQt1$G$6~6YLgKoBvkQVahA6j$w;D6d)XSlTa4sf#8rt?0SN`<2jsKGP`T_% z!hYRv1LPMYOyc70z%Ix(LnC2hm3PtpY%_EcHp+JpF*^){k@;PFpA<67XS}uO;cf?4?Wv`Oq`zYla(j76c^s#3<~W*`!fX%2^{5Ner$pA(=@QVB}3m z7LswEWEB#+jJpFXjk88Jig^WL$9~qxPBE*IO2p*g5*u2AXAmJdDJJ8uVg}AxBNs_t zl5<9GN;LtkADg9tt zNEMY2@(lIxqEUck0?8$#AW7!(BIdGDh$I=w72|!91xUqKZM|v~Cixpj!Aj$IqX?G~ z%BJ+9e112IlI-)O7|D71lIwS)ILRd(R~Sd}yHO$_DIk9sCAmyjSjlIC+%!sYxvCz) zdvjLKw~W#x^JxtBmQhAX)I@r>e#*sn+ZiSNA=miiiozamWWoRT4Q8_`s;f#lLnQQ14yT z`P`@*QbeCW7fR!i*TZLh{!)} zA+rI=fE^-6H5-x)g|HaaY($bcM2rN6&Bi2uKv+!JY$EfiBE~>8vnk042#e9oW?cMn z0NrdZViYzn_Y>^1ZnofZHEJ{jODHIY*^*1F!k&qkSY|7cia%d;L#l}R0hff(X{<)l z7n0I!En-6QIVGjph9v(^(bA?gKjadtw7|QzK|EDkE`Ci&W47bsx1wpxk4R)In$B!b zB3sdS%nl^76@Aa_$i;6(vzQ-q5p^Rq-g0I!JCU%u!6cjci4a~lnB*`!bMfm&F7s0^ zqHcVJqsVQ3MlrH(NojKc#iYgh5=_dP0|PP3A?3|Mffyzg%`Yit zJ?n2kDw~5TW+O>ea|p%suZkWBVyc@%19BKr!yLxNuRk@-;Uu#D)Hc5&k@csp8A~GT zPXluV7r*{AF-LL{^`|K6MiVoRgw-D=&CF3kc>Q70!W_-TuRpEKFDF8 zAn$PbhJ^hZNES$Ub0$e`2-{Y7^IHS@j)kylesb1n&M zX<0tK%y}fNrDa!KFLS=k2kk10>1}>T!dhAu)7xA?Qn|8->0>S=iCh#p_c0fdJojQ2 zlMMV`#(YoG5izWM`j|^d3S(PBmXb8}VwRC)@nV(>QP_9_Yoq#@D*}=WIe%`h3<#@- zUzn>%4i3ji7o?xLnuPs&cmbs9Z~nj~L19u1GQeCzG3?jFSV!kxj24dJ* z9%8Nw#8iR|HP=%NYk%rNhMPYHgtbUtnHwk-i)o6O5$48#d<2Ozf2LHw*Aca4jJYWw zET6IFW=h3kx+2whb4x&2J`>GfNXjh5aYLqc(;NfshbewS%406Xrvb9v8&D;Dq@| zh%yOpiqU~Z%wsMI$}+TC+i;{O%qJviR$wFpa?*S%By@QP))s@DHlI;GGi!@{&X~_B zhV_U}Am)tuH|4{|a+#bnUr-F|5ivP$zN8q|BVuyVd=<#&66CV^Paq#ASIvJZhV_VU zL#~;xDTeikm|QpC1Y({*ZkkG795BAqWHC%`nNdPQ*3Vdl4|2zhrkF*lkiX0%6vMXl z8Zr0Hq=9^xJTzkhF|5QMo5=z(OrDy_NgC7;<^0?XQ7U$Qg|Wiv3sVh<3wddVx%gMp zD^nwpSJS_yP9m?SH>N=%ucm0r9<&dx|mx*qfswqh-szZa#c+WVdI&m zm6FSisN$c9F)PzbMIzTsGp*E=kDTdkT4}h@NITCtEf@a{oo%Hfk^5|0>A8q~E{{|Z z>m3rd&rDqFT`qCnyU~eiD{DYHL9$xegoNJzNQ@-s zu(Fd>hOnG-SUI@FhK|y^{+w1$A<72Curbe^RxXkz5H`Y@+se%)UP+xkTIq#t<+bvV z6ovGMw=>wWEB-L3L62QftW&8 zF)q8KDr3B5KIDC?IK`ADDPonNm>o#f0QnTNN^%(ylGj%Ws}!YT*C2~2VU-pV`iR~* zm$J%`B&V4erL3|fsUhqQLMf{p<)hL%kHS?4tSEfg}LZ_57|hv{L01``ISvOs~Jx>k=2}}86-WVz12c& zi^pVzbhKKMu$X+1PF5=}BNX|Ct&d4soD<&{47NIP5#MgN!nTH3pOCQco0tr@I&<;AZyI5JN+L^s zg!LJTEcuaE7cTy+p*X867jc*AjGW`FZd~F*$MA+cJ;seESlvm^Li!+Pg4Kg$x+_Lg zCt5v8=0n&>=|rm+Nwozyr^siL)tjUtgyl2I>O&GmF_W#&Npy;tZ1p9nTu5wdiuDCa z9SGaj6ssS}m_B0UcB<8%WGaNkOtl7(Y{cqkY!+p_HIQTngvG@F-&HxyyW-f&75%Z# z37)X4@+-&;PuNvC88XWn#B=tq!MWC#ToOVpS^JFhKGzydax8)rNHy0Q!X-Ww<474w zk`wYBj~OOXDSeO+TN!4aHC)6fT|D`UVn%urOEH5z86jdS81Kk@Mv{z;L@DJivz+6E zgzn-k%u;N9zBP*E70GwjXp+^~!_|mcV2vT!N3zfwE2PFFl10`y5)-wBrCMx_=Ynqs zI^sJi$oJL+lH4B)Sz=8TsX}>i6l{N%T9ZgBk}R_(lf0QMVwPJ|NK#PD3TrBtIDRfx z;JmN2;z`)K_z5|$w5E~VhHT+7T?j9Ec6V51C6KUk7VLH|BW6dIArOM<-Yc>fhRVHh#IV7x9nXI$s3Q>}v44JIA z=8?Ql@{={6Qn6BHTi;-PN5V>#$wq4d2`g15KU)h)SgA7EWGxcn^(r^>>jF;-RkewD zYQxrj850w&oQG_YF)>%qMJYERTcsF3HNY>|K(RKC{;)8$I2Fv?J}ln*5C1T z2-ztm#@Zm>^zD{X_3wYh+4019I3CYTNaab)@SM?ne|B4o1INWa7u;igPscuMM6{9| zve#NdvJ}E%_F79xCNwRnb?zxZy z)+&Py4_RwT z_CZ+AhpcrZ74Y1|wtm=JPtq8|Vh&qBk+fQcX9CC(YXeC~NM0@*NfK#WN3EYp?$EZ5 zTAN6Q(YB6Rn@Oh7wvJg_xcE<_$E{z4gw~G~=i<1vRfrOcc_78H_2bqyl0gtw8Yisn zBnxrgh3p_<-#D}5I$`Z3d5Cjb4f30{i%YChdNsZzg`Bc>lO%<7gPgVY2=T6hL~AeQ zlWhg|=MLV{Tl<8B8VY78()$(e$%wgX9V8h{^1F3N2;bHO#9Xru z2jpwWb?XSF3gKL^x_ZkxO7bo4j6#l)^zKOS#I55b(>?i>q|;qde{NYPgz)k31w7~9 z0;usQsyYW9O813OI+v#uDFAcN7f}FN|}7(De{qZnPeh_wd#+o zD^q5k07tC2LX8ld2Kxmh?xxQ_}h;Hk`|KGeoVsp zS~(!e?I!`r4++^%15yGKwx0#0D#Wm#2c#(^V*eeG_7KN@5s==H6!y!2jD)1NUy)=u zfL}#`q__VG$U?|F_P+u70g}Of9guC1O!k|A{0hlzEBSEx@zp=e`35Ab9Yw;9{WTSA?U;b%gA}%t1*9~jxSc#8wIOBfP(YeM%Gqi_+CeJX z;ed37RIxQKvC6AictZuLVe1q#?+d&Ug4DGQE(ywBw4#%_m?EaetV|dKfz-Dxk{xK- z=5Vn|E|D~_BSJ#g4x>IJrlIYSyd-I4yIf*Jc;x2eevR!EBswlhHu}`qPDzqBnTTm( zry|J#VKGhY)Fc_gBBrUGh9ob9#Wc0klC0N7Ofx$j$u0Oe;GxNlgfgX=P{O z;(y8Yft^*v@H@z2l+g!vHX%xC+)r1aoLk%3Nv^cT_l%Ga?Hocv4xU(9s3c}X@ySS#Am&PVb9rLh~SI@1-F^5~uv}GD=B=d}bH?Pt0d_ArTXLeoeH!UG4WN)#2)*RqtvS=5izIJH)W| zr>k8=#CUh}Zg$atT*0=w*~J3F_NTjDoXcKiBA)nfLVDUINY;0Z=F;0PDWt+DRil;r zi22+uMKK33%J&@7&o0eH^mhK`QbtH98h5m$Av}@VWl8j1XbZWZ*xvdwvA-=uj4auR z8R!XX!_z>%^hAyl53|dOoNJ8jBzpM6?eZk^NxrfxkZi}OZC2zHYgZ&WNixE&M3N47 zDi$-+u1r#ZB+jlvvI-^7Vn*3jN%oM8wyTls!1u5$W{h2(<^P^ zb_0@Elq$h)$mK@Vq#B}z&#)VD@%uK3WG1!NMB=}yAh)fG59>+Bv}V!f|B*V#QuE*->gNj+jQy+o=|7qnVg zc&gqcYf;BoZ*ZO6hh!Vcdi!&dSkzS(^ON0|WD3a!`wK3y3hRNe+OpB^NAf6}XdyS+ z{kiOps#Q+hWj5LaL<~RgGjLoR?SWk4Lacn2LN?ojgz)lN%jHXoVMoE9zc$;0x$IVC z&YP)460IMbzbZwvV{DB27q8WlBjj5>VeQz1+vw%nL&UcD9Bq8`Ov568aO9?rMrUrqb$ zuej`0(M-JKJDAg(SwYuZk;IKWOWH0&vto9zZCy<<=Ucq5|qR59I*KQp95js2mIXy-q z&go&q{OSoirzau5c_QykXY5HLXMRrEKA*KG)7Ir4p0lTrbjC9^+rxAARFVM@*4mu2 z<3&E+9wz?Z9$xUa&aR6q*q=+Dus!?}a>Wz5hkw}9#J0Tl@VY%cAncj(x}6Y^C&=f9 z{dGWIL;kd92=UI>UHco7_@+A~S|Q_0`8za_~t9nV85o~i9wBqbp1ZP#D+Y#~ZM ztb)a^_j~pnk_MMV3vkb#OR3u8JrQd+?%DH5I+NVD=aVSiMVs)z{*ELBVOPNedjXeN zWne>*^Fw%~tD~@U`p{lNQkB+Ad1x;s zVPjvcg?wZ$BPmVaO+2!flhh`8Y_A~sGdh~r@F(_4E_kwkFsW;Ohoy`IbN zs9{6Jww~KRi5SJj8(vn<&+QEq!^FjT|J&Xu#9PzyANyw#xu)g6_9jXt*R*_XZzick zNBYLzLh_o9^o{)s7ynNE#@@=sZ*AV#+XC_)_UDbgol8O}C1$zjg2Y62h!|xagq2}T zWT%kO6bLJyn8+?l#pco!;Hh>C;d64BB#-Q&d>*3L&1Mp+k-a3hNWzhQBw6Z?7)kc-Vt)90k>e!SDW6P{UrE;274sppL{5-=Pchjdzmc$6l$EfDIU*+m zQX7&paw;H=A-N)_1JW9jJ90)ys1D{Dv6*0bB4^IZIW!sMNHnv9g=(y7Lzw}mt-mBlP~fY$r{QhU*sN1ZOSKqTC8;LxwK9TGs^0@j&a*)X5>KDn$#ozjXNG^(z$2B05 zn?xShphzAPd0c}dc}e7P4U6RClAt6*>$eX3JR*{xOT5wmBSM=YBO?X4_*;*Q6y)O9 zjkri5E_)Suq;Zk=N#v1^jua-5M>;lAghU?c_()MM{! zDN=%@K7{ocCq+tjrZUZg6C%=x=WH4>Tg!bo)z zne*aE4K9ApOCmKXM&`UEQj0|9yev|iMCQCAQinw5yed+ci=Xokk$My(bN(SxpG4;T zW26Cz%z0g;A&JcSr${3%e$E>sjk&}tov@P6F`UzlktQT&QM~1Y{2XaYa6b`Ll9)aC@)a>#Bdr2*2eLi#0m;4Hc(()D z8EH+@X^{A}xP6f}BoDAEMUpVy9Y;PSu@Iv{4o2E?@vo*sk#=0fu{(%46!}OFYypl(J|>YZz;BUGT>NrA6ZwS8ji|#>(aL++)|p7> zfaHXnjeIIZopm2~V92@1XC$BD{XFZ>pNn*%RJk$EhKmx?l_aqzJ?llfQL2{VXk|H` zSkFbeQ%niu!`A6K7wN&p-^0X6PcHsbNn(WEr|}#g!{%@n!~Xd40G*rikPBW+6h^UX zK`#4JCrW7sx#mgLzoL|OkQ*d>V}8aQ@-C2DkzW7V!@H5*Vh@!}*!mZU`76@rKl^+? z@;Mj(eBF=qC6Q<6VdRVdqGKgd_)%oX#v|3=k-;Qu{t@ybGK7m?Ghg!32+nPmB1Q(LA)kLJ zMy#jzE#$Q)?74d}B-&wTE0|AG5|Pg;#3b{CJ-@GqggjySY=`LomyhYiuyFwPM#J`m z<+C5DBA&=`fE3P9ex#y~{fd~B&ai--g`{$Z2jq818t1EkJc6WmVudInyhoddO8>4i zf{XYySoW0ko->l9Z%aIBA=P_MTtJ#3RYqr2K$2>BJL!xjY1>>JR~BbXK-l^=S)H)~ z2_scDXB#g`{v=@jRH*nM(4MR%OrW#B+%YeYHo7?c{W(afuDJLYwdxjv|*cor_=Vaybbi zhL6&)vy;pDn#~c?N$%tnzZa0(`IbZ;S8it( z$t$cG!j3ezGn-^lJ5h$YojD}zD*zEQmqeCEZf73J7gS=oo%tj`)Dq>B+xd>95XK?d z*~#rJAbJ0HytU>>v5;h8bQFF+mL2ILlG;7w))$lH!i?YSJm!0nd$=>Ql_zsMOGxCo z$n7j8NmwZAVQyzxKv+%4<17ydtA}}=6(kBh_2+k1lEgO@{jvPcDw0ch7S4-Q`JL4y zvTo#eejw?BtMYvwvqp%*t_!yH{LYU7VOuZYtPKdeb_zM`NZ573u7dZS^#Ng5L1E{o zfUq{9sI!4YUKhojjU@8ADCYc3@&TQ%V$LR#BS*xM7IQX}u-WO@Wu=(2g=EqNDZh}& z>#LZvmCMzr(|x1)krsEhk^K5TzKTXhC7kV)Dmjg}lyr8GEc;N@!;;QUF8;4kmvnZC zn5dDbL`*4Xw-7b!HF2Gma`uqCcTmb+E+ay>5mN#sR?68&@)W|ZxKhr3F7e8xQAmY8 zQfcP^Nsc^tN_d9fCU6dN@!#2%T44-U z2pE5R4f)NHe-wG!iWb0^vRLh>HOj}Aj2Nlt^p^M~cA9T%SCZ8Dtprwk%R6Vd_aoIlpre^>EKq7IRHVNY3-D@BAV1QRExm z`p$I`qvT1%nrhfqedh+rV7ygi<9jJ+vhKx2+2Ae z7puL49f!m`C1i->k~E-vhB_%o_8=9@XPA?cWH;ufHo(@0JE=%|V|}*fTvBtv9J8sS zCJcAdkUVP=t$fI1(vnogw%GX^?xYi<#Mc)0?%_^)l5_Pjr-`R}hom-IiO(Rh&buVT z(NAD|IKs(5vNAiqOhn8`=RJ~xqr|pGIT=YN=MinoC?^xi>AYy?@J@V`lbIw(yp$|L zLak651CjG6Co7kDrc+T!D9II3 z8Z(_rT>S5?W;&Hc48P)7D>~Du5|FFd)-0!LK-l#)*Qpke+mQKAbuMwCOo#D=4O!&W zAQ=F8&7~%Z?4>MnY6($dzQb|hTr6^G2PCP%@~IP$>4;hE)a4S(YcET+#Hkk$b_ZGF z)DMV(e3m*5NLUSLrMkjtNYaO{ixo~I5?P~GIE{sbW>Ae<;WVL`zi>>fkG;ZaN-@Kd zVfH?@wbE%OgqLbYF3kgy2l9i{A|NFoYn_$>sRr5LvNG^eZkw9{1xR{g-}9gpcoF|Y9y$?iL+o$g#>l`L~bJv{C7;1VB7 znH%@G-xb94B*}vwh>%_+t$vZxo6BxKn~vQFPdk0Mh@ReMZ2gS$c|dMJ&N_X$#D(NO zCpuq{$m2?M`f*86*x9*T^pP`?Vr1QT5B2?a$4o7c zzC2R>>&XugRvL~&? z_m#w*EJPU!VaJukokB8`B&j=<1vJBy3B zcBVYRZ*ID?1F{=AyY8HT9D}5C=W>Y)S@hhL&Yee6x3uUZrE}+#j7198CZuz}Ba!#7 zbnXH!yQ7Mu$-gUpH7+F`}bC(2! z)z!@IQW9BLv%AYkWL?eSE+>(7HHW)`MAp@u?n)9_S97_mxWtBb;~Hdrq}=Xmk|vmY zDdY!|_7K*N<#yMQET=g_dE6gKx}j8?VW0E3YlSHFaW%0TmB(F2BCpdt?s^h=E$4B6 zA}Qmg+CZXsvXP5_FUaHm%*DS_@=!VNHO6Na=PR!#2@rN&_>!u;81u~M#bk!C7+;Q2ydsh$-d8 zI1m=&%bH@MoJ)H#yC5v4w7ZGdDF0ns8Fw=m{}%+xxLZgrCyT}kPk3&0f8i3xe|JF0 zRxV;p=1(58O~iO3Ic44LBuQe$*iKn@2g$S&;wZ|xJ4yaU59K-XDeLYcVY9DUX_R$$ zlgM_gth~p$z$=6bnxamEC5hDuG;~jqjG|PH-P0uF5K|s8 zP24ji`w+vVnR}L`C$?S_(!xDQ5=Z;f(oH0(Lek1T&m}%o5c#l@|G>QpSgFq>{ev2=`;5(iR?9XbN?cdy{7K&Jrdb#>fzoe zk$t2d?gJ7w=E>@F5BDJ#Q5pkLVm;kQ0T~17>ptcZubj?;EAED(3~-;2G((@C$w2oh zN%6x`%GXFW$bH7eFZm(vb1u6TdB-2({>?>feKArEb6*5x17xK8G9ddQW8GImLT@l~ zauqV!{f8tk#*t>DHJ57!z86DVooXFmPS$oQiF?55{k0J9sk?-*rx+!_iaUoV3 z^>JK_+*BkltBd1W_4LouiDUS<&Fdp9k~eUc?^I+C>*pJ%w*RBGpp&9g-IqA)mnIU6PeOqWS7NOWh14TOn+9ou%%3B>8bkvh%*o%}7!K!tTP$ z+)N~29};J9xtp0}CFE;tYq^_+MAn}bZdMYtl(?I(aI=w|{z=?nSGw7`B!u?k4$Ge3 zSGqY!zQoprn5^3dm|VPe6Wwta0-OB#)6ZJA+%@vH?jK!CWl2TtKowwz=g=`k@sq0@>kKAlZeQkOJ4&PPZaS2gIOI zm0fNnk~)>Jf*Mloaw~I5s4xPxw+dvpTZKz(NcJW6xK+8tD^qIX%W1^yajS9h+q%7O zb&-!Urw;C%h}rAb2*`(!eQr&XV-$1Ptrd`-h&kfcCfWFo_|>^%ZXGWEwvM@VxrnxI z5Kjh*a%tiED=JQld z0wTWysJc zvqJGfAt4l@q!gJYQ8b~*5Fu3l@3q!m`#I-1_jHT=KHvZM_0{WIXTSH_Yp=cbJUn|_ zOukJw)U@@eW{7WoFJOcwxIo;sb8XfCrnbp|7&ozBZsXIf-hcWEJ) zr_N#|n(r)6bzx*=!Bex5Zb)8{>dHv8y1OFPO+uMT1Eq~xkvf}^DE1Yp?u?8!zjpR< z0*>VLu*e*Xe3t4da@@Ms=c!)8Q*dE_*;`+k>TQwk_>P|1jg_fB7HNoA%szwUm8o+q z@&hCb&$$+v=#ajQNZY%fL-iBHRBMCMTp6d=QvD?q*HbFtYf}T$5Nb)*rY;wRYi>S5 zeUTa^NWr2Xq-=bZy4E5e0HIOJSE``4)(E%GCf`!SaIIyKfJbzq-D@O+cH$s!Ym<7-MrZe?Tv z->FM&<~OMcjEH>>W}Zg{DQJ46+$8pGYKld=0HHPNZ&On(vI(m_M!q7vkEOde$PpoQ1mzfc%(xP7p2$q~TAg=LK=OyeT!) zA{zUq)GS7#xHhF;5FWE-3vLU5PR+KV^lsIkQ!iOWzf<@n^|FLw zeflBPFR53ooFzwMj||A>)EtZGKFH?OTtQ6lmD1;KPQA)V^p(Ws)I3J+C}@GUQtk*GD^l6sSo=mf=<)Z#RR@?uNstu%yAP;5=Tora7;?0=@-NkeV~V#0URknuqL z@Vzu-B9KJ*J|ocyiu~{cMxqlGWx@|7RKfdYXh+C1<-#Rtavnfb<-(6FkLE>%aH&Of z-KIkLF(Xl4R0x+@MD1KL{6s>z7O7(RX&RD;b-#+?@-$=`^w}+3!N`|hL%Z@;Dg2C) z1txD0&I}+_rSNl$&~5xhKz0vTT7>T2C!}(?$|7`+>w!R0;cANVE;RDS_Aro;TIM;7zk+?hF>x=-t2J~?LOhWX!w=za7qt>oGRfuMi!U~ui(@k zkUhioR*p*EGyK{jDtXWFn>0Dd3bR+ZAq^pm?G=8ThP;Z{3&ZcykVQa>!tc|NcY#z5 ze@H`?0@*v<$Vg=8YT=KJM0Tzg{$vrgb8)!IB5LRA;m;OPJJ$$*v54BaM)<2m)Xp`+ z&5VpLXt0d-Tad5eZx)&I0qvy_^1DSAV9n+SM*d)Ayy=fnzc8}JBC8QGoL147RtjS&~w`GC;3h-z3n3@q{tVkgVj z4igqpo$G{2i@b|eP+rst^B5U#ZpAs7a?tR=FyA7V;_D$o>V^dtxf(nnka}Smi}V2x zA@#$u7MTs6eSjPkmb1th@DOrvSl%L=@hw9wAcuq%Eb?!(;SGQs7FM*##~5!k0di!x zn?_SecQiJ!}@HEYH(d(3%!jj>3?UXgtp;u+Spf6SWD8ETSz^+puby9I9V!!@aYReX@{!(~#kt zDO9x>(k`UZlRk%SZxK1u9^kv|jt-$YY!{@WlS60@+ZV{`VR4#d((sJ1dKOY63)wFX zAq~$6Yo;M2=d5u5ETmQ%avowoD?A_#p-^42(xr%`YcN7}bE%+oT>+%KLnvKkF^23N z){aT;6V}N>4$MO8rXlnKSD&z68geb->KE1*#L&yLV}bM!4-&+^nlT_en31To3C3BDg;Zcmd=4K@W!bX5w|uw=~0^G7|1o(eT(s6%$YR7PkK zG9Em%auOl!z(XUeD>T$@^hU-^*m+oZEXNh?UknS6V?<^OGz%COwq#^pSq*h%*h&yz z^|>-^Z4uSy%CL<^RG%xuwiZ!+hKI*962)~@*iLv{TvvxD*iahR)nR*!Xk1r^9W0`8 zT^)9`h{iP{Jdu&8?Y+k4m$a*NH;W>Y%adXGQI%2Js5UoBsv@apYUIdME9ya9G;$rV9~=o9G+oArS_3}`bc;t zBO^^4)ZCSj{785fBje3?;Q12BqhXgcIi%s#uxm`t)UcZk)$DniWqRN_n~{+ws3v88 zYS=wXPLC`(J*}K-*oWQ3a(Xcm<<8WwcN#)%=G3r{AO-ra;PmriFbikG^a;J?tllYe}Yu{nHSNYkD}qhSIoZgaa+2am@$^3F6|K5uRsxG_L2u z^9A9!en(253ol4R$j-CE3$2{8Eu|Hm6<(CZb8$Kn;w#bc5=LG#n#(VSgVT8+`Ni;8HQ2)NjA=bm(=oF<4supFo&uakI3CDn4xyW_ zPX)5dA>TE`ZVuvFjXpijd*w2+w-vp&PEKrKO%x5Nb1TTP`V$kZvc6hF?3$?X!@>vXEx@re+W{j6yX* zXL=2g@130gAQWl%gF|LmIU5}^uA{^rA?JS(N6J^hsbNSK9!l5d_vG!@ADx_;s3{cJ zPY#)QF77!&s7(%`ud9gXS4K#Vz7Vw8Aq@`2&Im#YLKb_wKF)9g`OV3hd$4b&0NLu0 zFTTgE?Lhu?a@6u>4`iB2w|s;gh>;AX%X2*R+7%(bL*`i|aL8>aKhJ|F;gCi+rThwz zJco=y?z|49z#;X)^EQxj4w=vw=RARwcL?>ul!^)tp%VTvkcy0u#WY=&9FLZ$2%&VX zLa5yx52cHc$_}A)5t4F}DP8M;gpP;e`TPoYDu zutJcDRmjxlK zUW^h|W)G}gxKJZd3nkzX1wct74A!_+{4pGaucZgcPgG1EvCptte z-^n3r`O_RimcI$H|H~n2`K}I8%Xf2#T0TP5@)4qzKih>;%lB}ITE3S<)bf2CqLx3` zA!_-)4pGbZbBJ1gfJ4s5sNr6ubf80yZh<}*CF%l)?7tKvcko>35PCU++JuW7au<3K zDhU@mq$^Hh5ORq_dZ9(4ayZx_jnNBF1#+oFD5XyWxy&J&(jg96y}!>RhoKIko@f?A zUBL*|cj}3#B^mAz?TM~(2=zpB5lRqhkx0%WAXhud+M|thp;XQ&hmf2P5Gq3GOXN?1 zT^9V5~!E<>V{y+~kl2=!Gd=;~a9}*|Kl`Z-)OV&f#g>m^81CpIT^@&C;2gqTlxT5><}Lw#rAvuzxH%6{-k{>OLRSNJ#h~9GfnetQ^HwV2d^ofv1Z7M!@JajJ&@vL-6 z4a>92AwPkK*5Xz>q|0Hl))XPf;dBJ`aS_rU2w6Tt=$&igS>xms0wJCV(Yf$i$3t)R z5>JHa?Dz}ELvQsGPlSxN`|n>mo;?T1S+xkc0kcR-mqU{OYArQ4LWW{Ib{*^-ArD^f zoAcLU4x*BiCj$8$Z;5@aNCn*u{Kg?|>dE{oLiWI!K;DseJo+_m#FMHjmXDBXKxhRf zLaJb0lv1(5$*Bp1cp_vt#=R8Rw~pr~AhZ$~A+M~I-1*M&ya|M?8X;|MT;DsMQ*B%k zGW{{p=Lg603J}uAA<3aAy|==u8!rDeO!ZtLAvRTRRs!k`Ma#ik-c zuEdSmbo+FKoDYO7HrRz~Xn7)}j^(-3@wBr%5z@@^T;_OsTAm0w&GKCCc<#155ptvD z8RB@#{48mYkZp4?*MU_dWc)`m{)v#jDB)!12yRm!(NpZVIOMnEWh8v7LtY0D)uw+t0xp4%MHt(GT3uCY9~JDw)!-zlyLITQ%Vxx?{%X2&EE@*WW4xzq6+aj>)i5mFln z@!aKjUi?hrijZkQi05v{bDWJULK@n*?r}UL&lNclatRQUbFbs6iaicWSAvYSc~LD$S5Gh^MKR;Z|@jgYf|5YN+&=T<8x zLPl9R&p4hVv35anBBVYLk~72ce0hcNM961Ai04_yQxW4;>K!6vC{`v(@^g;In19S}+}rsES>JfY@sxqiFC$che1^T+*MQ7%JP%%s)dQS9detF=2ib3G9P%U9 z)fXewJcq0X@&S<79I`i7=RN^4-yug~J##gXg$|iJA9ErgiyhMAGPK4(K6J>N7vYQ< zR_H!;$g+KXvpbN_s*Gl9$O#-eHMFYAm^1`gVOCeUj*$fglW}_k_1&whT+c{!LSS{3 z8?r*(C`duet8oGuajmX0HY?Okj6`QMResV~MS;Di~A!h<1o^1|!{%EX)qih6wQVFB7u?XYm_TWh{ zLi2)k-Elq!jKH~@Asqc{Urr=9BAO|~y-qKnQR4z zgjWG_tP4eThwR+aA#<=&K{c+GLy}md-Up#tJ7m)dzNrnQtwTO;AQo%qkO^2lAp4x) zke7f^`DyQvi6~?>-Lq12k1_1e&L;e_xQ=LFgcSzn%GS)iFAxGSRbwBWQ zamXX6m1BT(b4W$x=`BFcb_mU>?*Y==AvXhg7)W1-%dLH0a6*r&5V!@!+O|(0y5qq zkG_FA0pt!BY7~%0K<;tKcc_)EfZXSh10m;hAP+la8d^UpEmIuw6k0z*raHvK$g>wh zJ?4;lNc)9Ao^(h>Aj5&oaL5A8q{aYw&LM}Oyx$CDrbB4YlS<|b4yg{FyTKD7Tfs94 z$ZW?$`g zq*G}p1Ics9MHVUJklSaXg#b@^hdl7SAiFtaJdC}h?niqo{qIq$?Lo_cg za){=|#SWpfG_<37i9_hT4ee50>X0+OlQ!XUhuntJOSwG6A?@G98FL^*9kL&g=|F}# zWFuPs7k~_RNJsF@1#*=`619A@7|2M6_~4<@`zVK8y&SVB@QiVY%DK@YB!|W=w>U)Q z-0BdOGoBG@pN~XbpF{GUj)!dcC6K!u51r`v4#?e(N6&9ea6Ed(Ll9~KRL(@lLvntD zocprmOmaLbM-Y~SkpqoeCc99_Vl0~28|y6&8HIhTNWlZ9MWJ{<`8jcf@@q6C3lGIk`E@gp1x~W&*CK~deo>Df zA$ws2ayLS~;dst_PiB#e9rD%^u||X(^-&z@4CDdGiFgh;K;*pR-ZYtRVxW$;7@jbPsdvc&Pw2zDuu zWe(BV#3v4+F)e-H^r=H=9``vyEqBP?XdNl`&m6KDr6m*Tm4(zC80YDbg&cLARO5@wZWTERhZFXt_luW2Ba%^ zc5}!d{W10fQrRIx_rqx@AbS+v99zLFD!i4EXbrZgZ~`NDm@}|Fa)q$hzMZh-)9qBkO)+fz)&et@}*^Qa?-1!H%Z_&Ede)z#;VI=JP-fcL>Q@2&8f0 zeQ6rL4dj@@`voazgOaigNYlaxEYcG7E5Nw6Y2l=_P^+0|vLNP*3UVf=dEtYMyylH9 zBgnCZ4>7X9yLA}K4nnmo{7;&kUl@5Ckb+;L$>XP)BWJN#vzp}VcY^_3?q~ZI@{b6$W0C@267&daSqYb&bK>6 zPdne?kcn7%yBwh+L|=Tk$MJlIof@cZ?sdpSw8s6Au89u07;7?@0h#2G^KdR@IFQK> zQENQp5IX676L=nW2<^WUGQ}Zu()$h|k2^$9dOzt9vc^cHV!A^#?K2#rX@AxsdeS>W zCNa7Nl8 z26a(tHEXrGUpTT4a$UzLj%Ce$g9( zxW36RdNU27d5T}O*oLCF{7g0U)<(Y+{>^M2Bd7!QbrbdeKCe?0Hj>e$2Jrpje%4wTE@s|b3Doh<$L9#Pi!bE zbye0A@+l*u_&$*15vp?0avSO(?0-?HRM85HEIC%j38|vb7>UMpsiMz?$5}pAv@#7L z%cqJ~F|xp@&SBANi>N+(Vm~(XW*9|e?Dxyp_`=ch$k=Zikg5)$T0l3bRLhc6?09JG zM{;U7glZGXsp$}vQ#(se9mhj*Xw*cz%A~XCb3MKbh!B#Kz?i>&mYjoJD3Ws$EPseY zNT1Vz9O@92b3~S$BOMRP>5Wj0971vi06E$rnyw~AYuNHK`nng%Xj-&34Y?GdniYM) z$SSY#`&dx}(xT`~iyU0THzR=@TlAHLDtO}(Ini-k(K?IVK1-4H7Fq6izP8APBhknG zjBgc-zOhJW2ZSWIF8a+Pj{zact&4uQ$aR*dP0=3~>2sLu z^|vY7Vv&8(ZjhWdMdnZ{iK9(`JDG1q+S?SBx5!iNvE~QlgrW)-c@E?2M}V|1s%Vkj z5$Xv>cC*N88>&N5C5z0pp*j}rt~`|`mpc|!W@Nn4`&T;_r5IV|4MS;}0m&VULW}HM z7ULQqCl&1>a$LJ{GRi8(@WoWKFm5@9XtrDN9<_vTX&a(}8S*_y3H)(+8h$I{AbzF$ zqNI~sX;@C&&AyU&o?(hRsmn>YIBmL6;ungS&C$-1UN2y^4c}>)@9>2&zRob;!0nqn zbNK>tWB$nDd^7YziSORJ65sh-B>cA+^%CC&>{kAWc6m_v&%(To_%1?AP4=6^dIshh ztfmv*9s&ebtd@Rj99rIO+Z|-2x<5|uZ%xoBs(kJ;B7|FkcX~OAE znx9%y_&n2;?T~LCegjTZU>;*y#*|wj=~Dg0UO`rV&u=I3Z(y2m{-Zg(Z(b}G|7KXh zrhKV9ROD)Y9y3q;-)FvrIUXl7sGPOFM)bP{0@zBdl#LwllI578G{`XM+1H{vzNaAV1G~bNla0TW9ylF%EI_oH?Jvwe6 zy#jL@`~%qY!={Ae)DXsqL_4rQ_HJ$a@F(kyb^|j_3Rj8cYWs^B&#ht~uci3^Hd*wP z{MK@W6?j{ZwLH-75ycmGOS$&Vn*O9;V1}`tSjp^6_7v>n(E z(!Z#GHhq;QM~G+Mi=yYBd7@V?T)fV?8C_ z1Menk%Q@_wtgnK{!u%n^-1eN zYg>P*ep0zrf2#Ks-V0Z}yjXJ=25B3-*M#{P<>1)-N#6arzSGdv3q8{ZqXp9q%_2d&I++=D$7p)IJ7LBjmRr7>kx`JX`14E8jU|bKbGA1u8qef zc%_8LVS)JxD}Th_`7Yv1y73gX%O3tNVY!hW>2^ym7n1LR+0&Mb*>;>H<09O#KUU&D z*VfOWc6`~dzUVuI@uVFG=UM)It8anTw~TE!%9;@aNnSZK0^e|$;_{{`*E5V?{$cr& z&d45za(dAZb9w_)$JX;go^K?L&;5CxS%H;x8pq3c3U_|rOzFm4u05p#>tKt>KN>ek zJieJvX1P`9yIW6w|=GQjXjS^BO4SPsiJ-9OE=XMT#ddhui+R zQi9~-{u8Pvz;EMmU&8qxI9&V_JTD2%^UKJcFaggS(XN)_Khn0RT~V*7z5EsX*EA2A z$o*&1(C~M;3=W}LO)0O`1m&A|9&lvzkPG&dg2Sr7OX{*9j~(GU;8nc z=LO~|jQ6O&zrIlHIpR$Umxoj9=6TQT0d7Yk zJ*B@2%67&f=|_peYuO zUL8-x{o~^;DL2|4`Q{GWjz2Y5>~R09L?i#k*NR?sFrFccJ+%-0Uny=r9`p7lIf3~O^_1F+Jy_qQtxtKT1H1FhE47fmVv(--OLQpr!_mC`D=sey zBlCIOFFTgxE5*8MS&1*b{h=Is0qdJY??L-XbQ0xgI30ueHz5N@Q+@?z0=~7P z`f?`prhl2#Hyr6#-xN2_F0B>*+j;#J{XO>wzMa=&SAHP0D8{{}cHOiZ z^rdk|J)6HWpNQtkvVIV`bzNEKi9C)&`1jwWJi<8c0xFMa8SFa6Nj$C#%oRvCl{XpZ zNj;@_MSjU{k|XsS=QJBgy0pIEf%DT;e(uD{{D=?rGlpxs{}AKYKW?1PkCSf+(N`(S zC%rP~RXCNz{Ra9Wj5jLb6v+=rZ>383vVzy0&|mU+D;h6rdw31_NusuQFP}>BCCx=u zBwn4r(7Gg*fRDKSL;1sZtm)~xknME_$}X#-wMo=2a!Hy%mD1O+7pKkm-tL%C#r&s^C{(tk4NzwhvWD!wapz2DM!ysBrM#?upbE5D{o zX*@o4|4)gR+DEE)moChtnw~g~r#tReeoenpO?RBe?V$OtdX+3MDrf2+r#q@wJbsNg zmpwE+x#aIEJ#Mz`ugViQz93{=>JPP`e!Z|HMe?Z!+s~cE47G z=S}!>(b6;QKHu=35?5aFkS$}+kX~!kGD2?kW-6Gew=?`pptk?3nhosrUdR_GLQ7xS-p0a|3}PQC>|{bN{a?ad64!uF!k*|?;V#4e>cu| zjN5Jg{av@ltMq3p|3Br#4t=b9qK)qX>n^nZFIabf>u!g2SW1`D4R$`P@}FKL{z7pM zk=Ma+VG|o@cjaGjaZ`V*?TO+8 zI6XLj06WwCKGPreVYz=_o|dC#SVy6G8O?J_qm&O{pFrvI%?nJk%dO_GQd!r+`XH~1 z26z{q!Y54s{m8ya)0xj@MD4AG)Ghg^e7KJzEk8-`9p#IsL)rm9s~_4?K0OB_cEx%P+dtBO z*cFrxv?q3ct^L(PJMYh=II~z+(!JTvzvA@Rjbir}HwfRF9%8pRetsF@yYzeU&*gsR zyG;K~H@=HuIe52_`v#c!TZX1hmFf&V4kq^B(?9jMw0&Xc>a%djIpApj8mdo9Yr@!nG$Oc^u$d9OD=+7fQ9fVqdJG$lq2^^vQImjc3;jpVo_qGu#oM zma9yE+~RYZq+8Do#;MrZx9N}8VKkiDKQkOw>b6q))ovOtk~4|tP1*g5_9M4(yA`;8 zArr^lEXPQ?mG4e&e{!Z{+8lUosJ8D<-%sr5kjf#UtOtj}sc9GHu%Nxdr>&pkeg%hi5V`=GupE4AdbsdE^rp0D>OO(@ z&wXGu^sKTLA*awnIYfc2z!M9-uhf8`mnBke;}XFC;ex@jM!kk_Hh znt8)X-*TpiX?ZjBNOD&&cj7J!vimWuCEZ#M-XA0JUj72nz*OdbIAQk1x{Qzc%7wFq zU-CIBf9;9|U&i~d_G&AYJo71^f56=jwthUoj{nJxOk@H#qOd{t2V?fGAmVkxjQy+(LA;ll@~2NqA5YxsO#(##Ag|MJWSMU>0= zR&JD@6SzDCrneoRU$Zyq8TpGI+3BVBk^>@8+8yZF{Kpi|Z-- z`APE;r!&tK)Tj9K&DE?|fvGx@@}UfWv5!>{a}n1Id{?or)X%C`e;MCly_VfLA2eLj zq4n}k+s~*T3wb>-Fl`x6*!|>m&W&jtp{st`fh%c^axB1PEW$z z^A)+1rh!f0!|cYo)K2p2IS;D$WOr#F&`z`5q*1w=k1~%6jO0s{kNwzQd2U@;`8D4q z{}NgLw{ia#**)%_#`zx@Sr1B>iX2bU4726_adzW-C2n^LjL-RA#_Ctrma}r^&Jkp< z^5$*!kK$APRKCbfT6uX^UcQx6;KHABh?I+lYWE)E*7iZh1A!e6WX}(E9$OmCzgFa~ z45VMs`RQfHNqua~=W%gYM$E0@K5atb@jc!s;t$NH6-1tX{~4EiftAzT%8k1-*Aww| z`5=*}>*hM{y(lU8eSFRm^K(1?RJX3Py<^w4JMy{8z^>;d%$0Q{y>b6F#e}PW(yq7U z;Z0a+Z*|`x9!~6>aO*ST*6(nmbsLe7^Y`3d;kLDyey8v`AM_`9!-(pi>N)jONw20` z(&rn&1M>j-cdGZ|_KmEg;oIf*lFpK8w2qSLkMDE7v-aiikz4hU_bls!%N=f$_ zT>tS_^a^ony^wtqoWrx{?q9Y0EOGa3R_?cUJw@lcn(s4so}lZY*;M)Bl+HzyopgOs z##cBGdMw#7Fmf&oH_&l^iSr6vA93EfKKUoiZ`@Ded#a1l z_Y?RIm+@@6!0z`*yf~N2@#4Mu-Xdqy4HEC=uM5@uE-jufY`8NxofzNR^j_6pAh@I_F!Lt~zqYT9Z9A*!(RwR(4Xjsa@XS@i}g!v-XnmgZ5;g$k%+S&ixv0^|N;0 z_MG_VDtEc?BiBhf9^(AKt9Ti1j0@gC@iMqs%I@c?UZv?Naw2)6XOym;3y)iwY&qMl zmZURIAG$!&p?rP#oUCsI$M=kXNI3P^_=WGU>-E>{p?1j~ugcZ@)%@4|(e!7!1KS=X zTze3&?+@H3cF_D3IcleP_^3U~Wlt@Sx#*{TC0~{?jq2xP6_Q`>r0b9ds$c&DG(N%Kqf zRy}jkOgWKU4X^TKyq@hp#f~?XPvcR!aXIQ=8r@a-EcT4rQPB(Y5k4mn@4xWffL#wN z&0qVQ%>FM5pUeMAoI|H^>?Ed7swy zetp$~{DIi^VH3Nt{s=eCo3B89p!L6-?07=$7C(<4cgwjM#Me&B<10T%d2Y_@9?^RK zpqs^C_X&2?ovT09_D1_-EkC*Vwft#)`-aCsfsuKC!c_QP^wWBoOHM94mp<`$=h^Xu z>LKpH+;f@4ukESo(az3426Pqw>Hm^^%pBKxM(pjINj=FQ`#C)BO}O#r&gz|uU(=)d z={Q{RTz1GM?^mARM&mfGk1GH4(YE)w|~kEZ9pMYSDhdVuJu=S)0aukh`9BwIc5przS%sADEbYqm-r5UjqoQDM5FQ}IKIrXIEAN{;WJ);#rHdWBOLBu zt%_g>_ozJ=@ZYkN#;fH;>w(O-vd39cFYtY&otNb*mpfaI<9g`%iI!YnaX(E9v2z@+ zdKl#|_OUp>lI8|(hw{vgypEfX?=LA_ftk+t)08nic9Z%be4203cuD)Q_6JfpEgw<; zC*>o;r5@m3ggT<1gu{9D_2l+>+(GM>g*~VgBup))xYwz>=%IWk;k&#jKJ+V`F6?XB za(Lp=!Y_Qjk@;s}_F_C?(;M}Vlzxi0r46U+ZFW`D)L@YQ3z&=e0ef>p(x}N%_)oB(--`!WQzr3(jZR^7w8| z;cH>t8eXaLsat7j6bLE==)%d|622UT|VFMMf-_gS-F2V{FAFizY7P7JyehUugN+I zr@#6ywd?7^moVRQe~)`Jm_LvCy<+UE|BZD0-SE`^X}aQiwBYs61lyCw*L|l*`jt=o z1Dl_@`P5Evc>{-J%3E8Cy_A15+YuJ$@l;^#nlS3G`d!$a@+mM~?Ra6By$9q>-lxQk zu6BJ_$_wTnI1fkpSaWK+Uf{F!SL8(b)rG%9#{F_k5kFJR7wkB#2cI+WO}AU9e4{>b zdQtw*6Zv_Aq#V&bc~t&K+IAz3H+w?(KR<^k_Pd{x`trdWf^Qliv>)dWZl_L@N9ob< zn(jUAI-uOohw@&QXYI;9)gVWK>820_Sn&MO1ew8$FA-NwZGH(-D_WnUGA~{i=6Ayb7M;J zj!rA#({pL6SG=FnbN{{V{>kSU$CD*BoSsKhc|&bK*WI2cQn|aT-`Di&zL0)bqx+SL z>p5&aC#-tJzmq+wg_O5k^Ch`a>@DtSe3eUnE_`R>J(16mq5O}L zbY8&Ye4LB1`$p>S!0y0&$@~dZWc@WAajN4>-`k}gq!j;*FB_v z^7;V24||_(Q^EZq_CBT??Dr^fz5m+%NxSMErbtfayd~PNj+guYwtJ@SKbO>&awpU` zC-Zs?_MsWay)M?B>-&;;I^ySSwR{SWHyC*Q9<8tLs_&)fg>CBZRiC&X^4${V*#m_y z)1CVqxz5LSm7aQ@LC;Ufd5^%zxr&4t&-?tCN80lhdfr0T(e!+X@?#v&?M57rE< zc}^sLzGUamlgPOd-yFI{?5XEC)c$HWJ&#hdTgyR|Z`!`99Cgcjcf_auJ4>}cSGh{_ zxxI<(Dd!kr=d#k@l@^bdE9Dcp`rUYRjwp}En>dee*9FurQoaJC-_MnXi(Rw%OU5HR zt6cf+Eieb&E%~SUsQN1veSGuN!p!=m{#w3Hu>IUgwx5f;l|L8Ne9>{1=1bhI`tPdx zsNW}Q{HkAke5bhbsa}dJ-9C=*GB1<h%Q^4pySBK0F1_M-y!}-P6neN=}@4flLe=wi_$9=y(xiSB<=}~`8kK#|_ zyfDq1#T^(4k8`=az8jslQ@w>RY6o|fyIh{=ukzyVT=DCCME!+odeA>~C%KWkG=GU- z?;p|hMYMx<-USCC4 z%`+QtZw8&yZ`melbP)vfuVG*>$N&y)D#{`$T1aMmN+ep)Xjf0IVa zNj9H^PuTK+?;Cnie0fIee>`7AF5YpC-5;lRQ~N4k$$0MX06X#hnRvs~(rrzpoZMi~ z%j&r7RUXd;?p$xlIPOzjfaIXuZ{Hv1`p4LOwd1}_`MXX|1#WM1>m&Z9=~G(x()=U& zdhf!fMwEWsM``Vq>BhMTo?qi7ESnGFkMn^X4(HNi`K0Hq_5K2t8!yLghe-Y^uKA?l z1;_mecKojLgfD6jw0+9dTiZL&NWJro-1C6_5!we_W+-(OW1lA zwa422YB;6ZuWJ2|uRp}y@%olI&%*tcUrPQ-d!4)AS9|LBH-FciS-ZS%Pye(Wh@IkYEw{dFhn26N9k*$|>9}wEZrsCPo$P^o zv~9Uo{<0g$&QU#5z5XiIabRyd9zDj=os);}xb65Zb3BjpO!oe2Ik$n=X}R6Odp=ho z8AwNF`HQ=wdo8xl7lqUMnaLlxah&$^v-$goXdF<ug{hG`w4${kA2+&X}@>YU0Qlnp56~vvfDF)NA-DE z=R^EHywcpc@?l5qUUn{(SIleeI&Ee?WS7gh9o0^nFDggt&5lyFYi9g-?~UgZ*)(n! z<%{DgSMUE*_gS_a#mkxUslU48_X27(Xa-sHA`cI|%0oxDg{gb7+bEP}3|BlwTc=;|Zeyvxf@s;K;a&T{p zy}u-vd*W*8ztmsdLZkLK?vC^4a%(wPe|49pf81ZfIiBKN6f-@~W#g$rzX zddjZD$K7wAD)SOOufC(3HEZ4Y6$9puS+V$nQTkW9h=yA8|CHuh9d`b6()xRYB(R@qCb!5ND zojFgYb45BI)$!y!KCkAP+V=iSbsyJO>W@(0Otj~sUb5?TYJc6&Q~l!Kg~#<(KB4#y z`8tXx$hr?n)1&%oxJ+E{2UP0YbKIrh6Da4n)gDTH^H=wWbbUhSQSE zbjI<_bo)l`J*0Q4C4V$r$+*TBy{{wpEyz2!G+&l?G?V5$K987Z?zouhdA^x%?-$ni zcb3NUUEU4BcNH1$Vyio|oYK4_lRvsASoIM9-1SoV;#BRXH140v{r@UH{Z35NulGS5 zkM9uD*D>P$akug>xHdCfuJq}Brn&s%xXAV0d!L!>M>yYQ;}sm|9G{eW{{HV$ZWULz zmSb%Xq#kA8gBRB$?yiP=acCa!3zuWhsC#s8iC^%9nZj<*>A58oy>y(U?h|dlc&hCe zum5e9c z{lnY$PwsSnYCfwT+W*9HiMKTU)j#R(;Z%L)zTTa0Z{y{^H20i4q}<8AU{pTi`-J)~ zRR>=8#r-V&9a%)R+=@N)UeScRPgBl0MDpYA4zGzGdLAO~uj5obKN)xL8&dtiJt}-o z2JeLPx<1~uu;ZtA|ES{y9S3K+v-?LKzm;aszv~}Qzv{2{_^WQ6Kg9Qe;_iFbN&Bkl z(0HYM2e#dfm)kt^CGR8To1@E1JGEosa6b^Af6;Ow?~+pc9>*nqjW?hFSDHP_&%M+r}}Cukp6Jo#Kh|S=x()&F3ins^6}nH}E_W`^=U2o2F>&=ha@k=YaUl4cex`ooN#bWxv&(J>u^8I%wRj>qhhJd2n5K`PF{6yR-Qm zUk8i3OS5BX>CN=V_cO8d$I};o52iG?j(0WPI=|l0b-;gWy-M_vcTb~v&yKryRxeGr zhRfW~jP@;mu;)2+fBb){o_q8CFP>5QclCU|#B;nmo*#cV{{L;^d(@J4R?ds-y9C)( z=hejL71Sxab^w9G7wt-NQNNa0(xV({-M= zKQ0;9b58HhBLBd6_WMQEOQ>&pCPc4XcFAlnJhOR(@cSIErY|>*k9STDB!63iQu~+b z&YTa>x~}j=@6X2Ntz&(B^A^r|lDtfJrabZ&zS87Ha%B9Jy^d?vN_;|nbKaMT9`ZBY zn4j_ce-W1A zk4>bn#(R5BNyi?zpPbU8-;+u?#(UMaUC{Whu;<34-0AySN^vjwTOy|^+5?g&)OYXd zs5_HS{R0WQLKF?IO^ZH!0V?B{q z#`1|fdmR3U9Uo8U^HaV#(DJMM%*hh(uMG!Fb_sQnEUp5!6_s*8)pEL*B`v@lAFX_*Kn(Ezajev_Fa=iR=8aL8eZ>5?0B){o5c6u(kF^n?~y7^Pc8rYeYUo9mF+!LLh)v# zy_Yy%?k3>=2Wro>9EuzF5%c{mx$uNpZO>6_yh44W@-p3#Jh?AS?-@h?JxcOj-a*iE zrFb?i`JOhN5JgT=P+w<&ZRA0I0Ec(v2vmGA@)%?NxJ&db6FpcfK9Zy+)rBV((Gi#*O3(+HT zui*L;)r*I$+$*h|Z)|;fjKfEKDtDp{FZcb4KlNMPbMTX1N>cViyft!9=YES<5>O<6z{~glk{Y|@s5~X zM=TkS?)}@of70H6nCI?4)cAz@=DIz_epOqD9zAS5Q>y$gx2MwNnK$;K@+6eT?fS0z z3w-ZX!aR5<$w`_w`1_4)e&LJm@6mfj^!^=vpGMv(!8=EHi(c|>Ty$TLx+l#cf7}CA zUidQa^NHp~P5MeY54BX==hyf=gm0ehN&eV>wfEbc(puyV>mc-Ev}g2B-ezE@)h*TWyVA^eQKEUCz7r=@=W+Nx ztqjSH^Qr%i&+~MiqVFiFp1RL@_+6sE&hz5*fp%gKwVRYP+@G~T!YQuuuH|(e+=KIh z_#bWOQG(;0J;np0csxFJYrGm?oW|oc?=#aC7-^^Q?(icb zN6xjQd>$kD-}%<<$G@x7ujj<)l#}>1e|Hv-+w0kzDIL+f^Kze4!p!4z;$6b;sl4Qw zhxz`*YFr6YSH|eN8Kw z;vT+pVUJ>F%HV5Tn=sth+!?)Dal&-r`v8+>kUd|qW?zxliQfT?`VqmS`zdb0Io(S5 zMqY6}cW@Q2gJ+kMKW#Z}YRl=)@@IZGfcv}bdi!|v%al*5$4_?M_>Z3m_l&wnaJ#GT zj^duxn0s)OOnwa?FBf{Rm)4_9cggk0EA~to^iy83Z_1rWG%#CWf8>H0g7QTEg8LQ^ z9KOA9l)g4A@qZ^5_a54M7~X*K3gkWlJ7HDcyoCGi0@!Kk_Y(iCeQ7k~nMPRGqVUJr zdm2)Qi#~roA^7dzketB0KotBk9>(|g7f5|ugz*Q(vkc$G`;gND=P)Q`<)H`N@30x~ zgkX2xw6*JMcej;rXP`XOKjNcw?1}eLm3okuejg)gPWMwrxZGn&?!%BS(*L{qqGv7W z?W0^@jq*(XbWbMz(|a$;E(l>*Z_s_d57c^dQvJ3I`Ia%EQ8|_2s|Eu<)exAz3X&7%%ep7o%^>St#SQ~QxXiioKhJ7b+ za63f5v>jM_uGqKZ24qt)+Rq5?FRh0 z9k6_)0pEWc=Yu?LFZ8{M*^f(k$#54#75qo>rr#G#ZoVhDn0&>b?h7V+@O{CEPwyY5 zdu@rI?gLhTs<(7ca4wwEdoAoscHsMsi}92GE9U>h*E2Lupn5RIe)qm)e@d-yHZCK3 z1!l6n@Au~AkfY&>@xJnhqGuD>o#b>N3OSANo+IVsgE*H-;|B8gi<72kvB7`%9v1c{ z$-*D7Kk-pNL+$_1`%&z9W-jtS!1oa=ms0)|m6(u8(03oY|E==monE|WoGuR`KjQnFBYXn8ec>yH zDEhCM|BwH9cK_Vk7w(I(KS%Z^`P2gLUyIzBzu;V)2fdcoCft*C3YC+Kf=}mhB~g;} zJH~JHuRO+YB$xL6DgFn0l1tnab4lTI;S{d!0P-z89VcSkO8i2x?}70X)e{-NCV2cx z{>M{40D0XoJ|Vl589@26b9yO1$s5T1JH}^tPlMzxg&he0^ACxK?t4w=JDluNjCW4B zzl>3YKf5AvWu*lrH?+b2YLL^qeDP97F91wR`8?f_yC|Klm1V z<{ONwD1T^NP3_djJibVnH$at-^x%E@Vqo|$J={Y)ehbVS%}MWs)hB6ATLi{p{Lz2K z{C`I&JkQH4PHrBL<#HSOE}ZmaxkxFG&y*kj+;77F7tHG@9XwyN{?u>ojrB!pk89F> z_8JcO7U=B*r+!s&;_r5a=iH>q6~Udc2j+6Zt!n4$|Wv;V&j#=|9|;c`2pe zH-%%<%11Hz(SNb{iy35m*dVdvaXem+@x{aKfV;u@VxQOS`VLbYpNH`DzDK$}*Az>+ zoyF^1zM*j&)#$6JeJI9#9Xt+Gig^awYpN$B`bs<o+;`_G~dcC$O>P`=Vb$P zrw#wF9N}pmMe!a8JxQ-g?@GMVUPgGY!I`+cH=n&Tf&`! zc`=nkikIZ@_#SS(Z;AMcgU6f2xX%mobXtEQz4-hp#~bNMe5$vj#h#heP;i+)V1L@S z!@TZ@5H!B0euL$M|JD5vk5cGG_ra6Aw=g~;J;m*tD=#H|JTvwbvZvsrFXg+2CtU36 zn|H{5i09HGNw4A~dEd(N6-)dSj@AW8-m%b+?0RwaNUvP}rWo(ftRQ~R45xKfgg?By z=t-3D`xuYxy^`ijY5bB8p1FqRTfjNrKzE0W+|M2;l-v|fsjeI5GauGN{uF(Gf&GcE z8|6R#J-=4;`2pj3l6N!yPyUn-rWoxKugA!^(G*APvy#8Qxdr8i!u?{$PlLLNoi=Sj zc-W~jz89i$@*T~~QEx_ql6<}InC`2fe7G0;PsF#t&Kn8$igEv(-Iq$2OZ+r$rh49X zC520xx=WFs;ym;6QnFvZIg#-K^C*|kGUjK@ODSG1zX&1n0z-Ow$S0APwEE_muWdbu z$1C=Low&aFre1>N2DaQLti3P}WZXCNP`*ju0k)i#6hD;{sZU84FY!_OMX$(?qz|Q+ z^rm)A^<=r=7dZi^kL)RYnQ|$l*f%gW?EATzo=hC~jzSNzTWS7kr{}OfLiP|j2`fLz za!B9H&!zm%=X><%J+BT}mmvAXPwmkMSpTGUZ5GM_l`GL7=b>!-B2@2}k#b4t)b>yP z)AN`7X&;H!6V6(W=pdK)C??%sQn#*yYCfrb=U1S7_MIMT7fm{f4QfX>XWqVNpq)tXE;5)%JYz3;lubNjgQKK_6w>Hw}XgR(@Xso*@5hv z-X3f~zfbjp$`i$t&gUV#wj1gG6rZjSE5FujS|6l!MXmSh&-n^@@o-#@joycmFqiW> zd89{a{?h;IJHS!6T=+sy(m!^llmpeTB%IQ@ZcL_KwBBgAWg|$A#82riYtLK%C4bZd z9e0%&z65`^5A1paH#--F==r~E^`@iz>f8~S9MSA%lH=QZr-P&p(wwLgdRyMO9N8N_}K;T#U-nC^?AdNdg0 z1saFGV)<|6`5fktb{wj>hG+S)@D#85|5Nfgorp)~B~iazh0<>@-$)yuksafFrtV!TN~iABC6p0sS`Cuj28Lzs_?c9^C7| z^QeTm0Q@ESud(x|U#J~Lzfny2fpJQK<(GapbKFmIq zZGQ=VZTGd@%Q#EkBnX@jce%D5gnQlfP#sgVMiGc>M+6aoKg4w%Es~@YmRN9O9#te#-uV zS&i~T-@_Kyc#hsGGg{IX2*L%nGZf-i?_TEoU=gTE;Al50<`F864 zWaLXp?2mI^O=v_eN;f>^f#|UO!2g;n;5`y|?e5-Tq6ssK3$k?LvKb?`Pco z#7OB!r5)DwPtVFcx<6R_F^+2_>AbR+#IJg& z9J#kBk`uR|j7OsPH8b5MpGPIT{!?=F-Z+sTy*nC@FEf2Re(zOWPV1FoKcSenTu1Kg zdlWWbB78zI|GP%qPmRi?rJY}q?;?C7-}B%+)SVO_`&st;xF%PMJpJBB-S^mgq<$(3 zcG#c3*C}JVnzHz-i@!thcdA)pPBSY^5BxqCfBo<`0Dsru?*Zd^kKk{Lscfd2D&{d$ zWF9xIyrY^*_-dx1Fh$6 z^cr|`5)Hki-w3}Odxx6F-a+^~0)I>Jw+L7t)5&Y#ck&L$UpxHnh`-kOTVl@gCM3Ih zP5iU**8_jO@Ye@_{k#>>^kjdu*VWts*>`w@{JVfZ;nl%kBm52ar{nK=?%Ztd z;m-%}0{kt+-y*LQ{+5`<-oE%-VpahA41ZsHt-SB?cb-3^%wYfBGC%nh%_jW)>aQ&K ztKZf5K~wxK!QavNBlikZA?S?1GtC}BH{{tQIvI*QoZ^kZn0_Dpn&lnU5hu6stD!j+ zli~}d*WA1L%xIYtG!wGKF%HE*YyGYBEBL1 zCpc$DQqh`;7}!^0+`PIW9PGkXUzIK(R>(wcofvW1D4e zX)8HB%RBO1vDGDpa+E*{)p8HdKbFluSvMDG<9n#lOZv%3S`1 zBg*DI{&g>YE#qJKVOH_42k>*f`?ZmOJq+wO_sh#8$rPdt|9T8R3;7qxtL}c)alab4 zUya+vxaybG}|aS>rwU?#{ocBo^|okAYR^U-)6_xL*zU7sb}d zVJ-LN68}N~GsW>e z#lL{;KKikQv6&9uDvifJY4Sb>M8km+9LAf|hp7EFuH z=}c>yK}>6#tC`j_cQZZ2Jk7MBnaA`f^9j>q%(qONn?!=-w=^lHZOt)E+nW=ao`h4d zQQ|3{<>n5iE6u%3*O~{It~38(y1`6k`h%fY ztqRbe&tSS4<)7SJ%*#xTH;-w;TgbG)dy8p#?|r6~yroP-Z#mPwyj4v1_P%6V?0v(u zruPHW+8(_IRDiL-?@SNz=+?vn)6h%cYsvz1lvjr7F1MRV?D{oTfK|eeVca~)4MD_!4rEw;0QH%sAosWB?nNIg4 zzh`)o-!nbQ@7bP|i#eX;_iLWy_d-wdd$E=Gt|$5Zp(pwMu_yVx+{VAsll)%mNq(>M zB)>O!lHWhr_&3@3HhVX+URx|~e2G8d-^zG_FZ!1EMc+!+KlDYvy?oJcZ(q_|?2CRi zZMfPtTs>dXd5AB1H1uu$`?qsE$N2X!ZSLRCw59(L)3*K;rtSS{Oi%KkVS1`Rlj-UH zOH8}?uQKiKzs|I`znJO&N7ea&HFlNx{}uuyOa=l32#}e{lmLNYAV7dj2{Wk!oy<(y z@+bUJQKLm=TU4~DsH{ediWU_W6%{o)R8di>qT&`c>!6~dvM#Hvq8qo^MMY&5S9V4F zyXX6T=RUvo>GOQv^S*Spf%MC+EN=qd+HsaBlQyKOl<>QsaHXF>OG(*wHvHXWk2$!vLE?U zS&x3v2SguCW&dkSW&aALvVVnB*}pnc*}o#G?Dzet>`w!!oTs9xoQDQeIsXi$vY!p7 za-JDUcrsq6=F$>)6P zv*5Ro%K3Fs;#o?49`wtpF9cWQ`BjN8A>p-Dj+b?bcSD}v6u&L;+ZMka@k@%|uK4YV z-@fP%M1LsyBYFN<>RmIjT}&pH$82J~TTQHIn~D9)ZsK@#m^faYreT!FCC|G}Y-f+e zQ*B~9c;$JYJm)uYUJRICisyqS_P;h0=iQKr<0LHUcbM3ZA`*YU#4})GeMQASDE1*q zf7rzFF=BcJ(it_q1{^cRz;V+X!I7T(h)3?BN)Azs)NqI$Hf_Sb zWBNBRY5FO+Yx)mx&$J8fn|=)*n0^l)n*IbHNqLT?JX+cj^rp1Gf#x)hM{642H?}m6 zOM4p2?MP#Pai+0dTxo1~cN+VTCyo85I*t9uo5uF_rLjHyY3xsdH1>mF8v99GT8c%@ zkD)a7uW(uh!X0T=Fp`!7_NNtq1CoAJ(jQDKfqp2>1rDc`fg@>E;AmPcIF{xE$I~u= zv9yceMA~I=GA#s7rQHoqr*(ldX?@^q+5kA0_FOQY_5yG|?E!EhZ3J9QdpWq2_G)lB z?RDTv+61_o_7*Ua_I7Yh%CRo>wUNg0v6=R6*tgPV!R@pUfjem*1Cwc=0C&?C!98i8 zeW{-ViT5y#~0BrBwU@&{@_h# zfAFQVKlszx-hp)XhhRGULt8rMmr%O2e>(d|M>^ME5lO#a(ixC+qUkKxprkjH&i*@` z&iBKJ_>YSJnD~#2e@y%*(%H`^)A|0Hl6+66v)|98b3DwZ^F1_|F6+N^uD|Bfx&B&^ z^cE%lCCT@)=vO2kt5Oe%bdHZTsgHH>-w^*z;g)b)xFbwTe7jPvJ<0dJ)c1j;b13N? zNjk?;?^*`y-IT$4H)pWktr?G^KiM+aKkOOoAC3(62WJM`*OkHcb!V`BJsDglSIcu= zdCn)#`7_vF0eL={A@6_j3yEJ?{5r%hB7XfDY^Q+?wo_D|8N46fIvGWZ^v&iE4QVJ71-a5f_W&Pn;=lK#A;zaaWW(Jy6i zJ-(d5akV1pu4ZtZkPyE$;d%zg#fF48Gro!Rwlcm8ZfE=u+{xGilNtXG?q>V~+{<_z z+|Sqp4>EoS9%lRzJj(bBc${$zYUbPYU1+mrGN*%P^9j&uwt+TtK4>==gAVf<&}nvq zE^{U5HrIe2a|2jy_Jdw?E9f&n4fLC@fMIhO>@c%`Ma=A9{pL>S2h6=-)cj0v&>RJa z%+Cjh&G&;N=9hq@=239W{3>wV{8}((eh8c}PlA)?w}DfV-n5zhc}Bvs5}q@&f5*-2 z-}7e9TMK5+SBv7mB>7(!{}u6HHFG>9%ne0<PI?gCWb$!La2&!4AuRff36-*l+o7 zaKQ3EVAS$gaL}UZ|LTTW8?vN{nYB zw)?h)&ce2SgvunSxFF9j%JWO| z+;S%S$x0^s!D{9d{1f88CjRTtD!IrpTU_A@zt4>I|E zdYH-g-BIQ{k?wKkdqM5Q2SL*bwzK&J+tqr4<+Yt)zU^Xnh}|i6m)PAW*iSttn6K&+ zTsL@6uwVI3FrWSt>|cQsd|w7n@O{~KB9457PCNpJPw=~};{?CUA}2lteg6sew}BJ< zK8v1UzZ*Qkem8XDbMPBJ!TvXLg8gsw#4_|_C)f|iPq077q+AnHu1P7^l$2}w1lwyy z$~Sw0<7Msy+aWIHotN@1oZ$FdlyWagxtFEfDur_<$hDx`hA2utUm%H)}Mg=)*W!b`b#is<$mj+^$CQBtiJ_^tq0(U zq&F(*jYm=*LeUk0%5q-7jy%L}A zB>RtF;tNPPDCxIJI3(e)Jl7%q5n;dNV?go|mGlNBy&=iR@JW8Bjhy6n+Ni`kCh?9- zJh7APpA#q9?vp3k?o%h(AEw1VBjMSTJU5sV|G30EFYzu&yo>VO(n)^*ET6QX9am0f zfvYF;z{E)hxOVasxPJ0>a6{^2Q{vx}__t5;`*KI}nLH`)1M%Mz|9#q(yXWO4qj&fs{A!{03%;LPdl*RdNIg9(|D_NZ9R692G-J0u**=KRv1&2c)Ay@C8j<@rI$$B_69XLDSS$n&G(Hzx6pi(f38?KF|i z_ugbS`^S{{PiM3JX0q81v)OF7x$J*I`tj@^gY(%x0~fM6?=NO25njsv6}X)J8*nB2 z58!I{A(+ViUvMq^@8EiN>Pa=;*_^rd&NsH4e}>+k!+FP%!+!3}`4;r9obQ3|oK4V^^KW2v&QC$F*nML6=dfP|a@ene zIqX+$Ic$$m4*OR)hwa{x!+9%`!}{#cVLcAyu>PVsthd1&*2_>1>uXr@Ig-PA8izoKbFJxo{)S@=I}i*mBaPTbPm@yGm@`ad45iwkIQrOVqeJNxLC~LxLC?zzgy1X zJiL;_`DHbS-vx;r&O2*4?3e2j|AxfBDe-Sf{M%A5JCaUP{B|Y0C+Y6zaNTi`^B-u3 z!<=34D2Maran7$1)^dLjnsWaHnseDc)?BuaE%yj|d+y&rN3MP$QlFokxf!4<*9yAj zIgdP7oy&Uk=CU4rxvWQjF4tv&+#Ea?%q;-ha!bHat_!@H%l;6~Ez`sL-xkT`cTPuc z73`7RTChLY2M*+30He7V!NJ_i;81P|9L~KP9LenhM|1nYvD^W0JomX^EcXTAMD7FN zWbOz!mHTpVI``G!jO1@t$~`CLj_1A(_W9fia3S|CI`w}GF!$5=PFu`U{dnCE8NTFxZBTVzdguhe>{|O9_6whALp_k>z6UH-ZSNKe46v*yD?9`8}rz| z?Rh^$dX7ByD`y`2l`C%xdUxKxgPy!!fYo`AgWkM7(3kf+(4Y55Fp&2bFqn4?w&mT1 zdJW~JgW^$=onw|SLCj0#eo9*1svD(!>g;}%NW#7Qg{T_#%`#(-Q_d8s6e&@RF z{Lb}AxZ2Ks;cFwC|JNspao&7LkXFu$h_y;7t zsN`c%@-<{<{~wn8k4U~p?JVz@XDCIe_v!81D+-Ef9v!2cQ^1jHI z_eDPYxjkRji}|b{XTIzg&vJV6Sw3Gr&*l92{O%0obH6E=&-1gk ze2$Y)KF3KopW~z>pZ6Cd`8>z#&*!=CKt8`mqxt;q9n9x<>`*?xUx)K~Z)hZ+-=CvW zo-yILls6{joe=$`ly?f{P1C0H)jXf3&E%{1Rhl-N|2fp_T>hhAT%Mm7E=atK5?;#Z zcw5f@68u;49|KqO6JR3$o8VghcfoaeZbS03DfPZ3^}a3jzLU>!nauwop4*k@_T;&J zJZI4k^VPVtXh->KTw1i_d^KM6{|nUkwP>b-1ZXbU(&Mpc)&lz3gm$5$;NM|)7W@Kq z6{z{bqPYvyc(Q1o0yXbgwCVyi?^rZ%ftq(Lny*03I~L7fp!$_X3kZV+s()FuHeskh z^)HJS7Ip|D1*%_JwEhCsKP=inftp7wT2we#pym^cHdLVI6N@%npym^cHd637(jP6@ z1IG$}2aXr~5sXPbCM5kyq-WNq3V5Gnx`6$D26nSHEA~00W7gtG$E?j4a2{O{zr}*T z=<%Dir2@`Z%M#BD%3;=43pfrE1sn%!1?=DJ1?=A&1?=CO!Y$!;0sHw*0sDEffc<<| zxL3e_zF)w5at8&xr+Zkyd%8yjPwMre-wQ^)=~Y$8`*Ws3-k&oU^8TE)koRorS!o>nh~_iMx>ZbUlTbX?2u~OK!I{EVaJKMi;9TJqFkTo2=LcrpA#8SV zU(V{7L)hl{C}?+l9CSE74LTi5pv%GiJ-6eF2zwm=1Xeq~4tgDHpwICg(C_#G7;yY6 z7<6zQ)8^PlIOO;_74gVT3%oa0U~?zjt_cU%V- z939}IqX%4aJOf;Il<4!TelOVJ0#_Z+fj;3F1lJt@0IoZDpKZhOVuUvxoQJj?4Zvb~4ZwB`qQ{cYio#27vz2KqagW!=P4jwxm0ktBo6HP_(-Y;T*v=;F_ zZY$z?&0fUynWKp7GiMRkXD$i5i#X4DinuPTF8UPW_ZEE)^c5|G{-UpdfugU0!J?aB zThTfgD*8ScF8UGJQS=iqQnUm17yS|(DB^wRXwef04;FE}4;68o4;TFw`jMgoaI}c? z&R7xWq46S)>sS%T^+XZpp~)i7hf_tISEh@2-Z)dld3Uym<87{p<0W3iaW-GX@wHII zakW^)`FE-4&q#l{h~sIci07TFMgIqVqKN04YehUiUoYbM=SC6FNjHmle!f-oB>cCF zOu4Eb?G$moN)~Z`-Yw!fY_Ev(@O}~3O$S9>uN@X~9epHz$3+&zqZM;KZz|?`&s@y+ zowYa%c3UymZFaFcin$(i7BgN~G5d+TnCmuAG5bq(G1vFr;ylFTljr^Nd_bNL%JXev z4~ac2_71T}B>sMhe?a1o7R&fAX8#;2=J)DwG5g_2G0$g5i}_tLR?PGA@nQ$^6)WaF z%ZcJs2u~LCe&tm0?Fdg7^Zw;baRtJ&#k_|(S6q#7ytodWFKz-CiaCxJr94Y0k40NX z*rKgScopTdXo+I^-jnCni+NvlqnP(dH;Y>k?^baT+%9ehcZzvVnJm7B@NV(F;9fEB zx$YN75I!h=I(S(8Z1AY~KJd7B2-Hem1e!`-2AWG=30h0WL0ie|L3_!YKu5{LptEEe zbd|gZbeDVp^pt!AtS*@cy(OOneI=g-{Uu)j10^e9u;i;?Tgf-TPzmRwaLKn3?kHiu zjFhn7^_Q^U4V19oMN2pj4VG~J87g6Y4vYUt$p+#XE#dootmI!19xwSZ7%TZ1I8l-W zCrf?>PL=!yoG$qTI3xL(m3Zfb@e+=g`4WB)EtK#(X0e3hV5x-bgXI#w?^j9=5#MUb z|AL8^JL@&W6OlDdpXg@@|)Kob5>b$r6sU-4c$2y%LV|eW{Ow5{`qz5{`o- ziT_yQ*PP71$;o;(J6V5LC)e9HC-Y?&yTi$O#wmU-C+8WrGc`}Gx2v6OFR#$&WV`w0 z`2gZIYeA>_-qhFqPOj%ePOjg>PW67VXdO=0X9RYA-RERGMnG;qJTZZE%-W>HJLP1(O*`3-W}K|IStsjl&dK>B?&QA4yp#JK3r_BT zEIJc-uP-?{pDsK3UAE$6e_nNRA0^@B{>qw@-wW$beiv>yxi7OR_AM#rw$rTFt3Ka5 z)pwcxx0Xb|E9Kvl^6yLe52XBu;&&u|$Kt1*Vtl4kGT#fWr%oar+bL=9Q@IE`P8EVq z@pGMGd%EG5s(DU1b$hB-ed-M8J#{<$eW$pe;6GJ{aNtxG7(7)Aww>~Up;H&Y@TrSn z$EnL;M4s=LbO%mxyzif4{U4lSeIK4;|2cx6{#}dw=}mE3_2&%DbULKRm!X+YUk9zH z?*VP6xnE*G&HWO`X|+$H|C@f|=Q`a9KezaMPDc=~KHUd;Pd`JaSqq$IeFaamKHE;S zenO`?uENNNS&NF_p!f}m->~?Nh~MaG_WQBZ&qDmM(`r8;OG})7o*vH9)=uy0JgIG* zez9HCtlH*j_N#4)e@Eg^O8mQsH%r?){Yu?GOWQyFzu>{?x8KXR8#2GceShTe>oVV7` zsQJaBZJgo0!{!;zV_Rp`yk*h0&!}~YMcX-}<{68&E9vY>I{T8&fuwUN=^RNq$C8f8 zrRvL~nO&;B^nDtaswazPb1{Dou{*`?mas>{)#C3Jf1iux35Z`%{My7XBz|G>>u_;i z?RT;L2JoETzww-YZ&&ogq8}0csEh47hIsY)*v0ye!7odja1HA1n59j+UI|XQCc$af z`@tF40yyjX4{*-)dob>*Em6qX#}>+RsS>rrsWwE-qwe*<@2cKy$S=;O>)2kyJ>0uNj-1P@&? z@W}N+@YuBsYG;24n$GTn=Ce7cRXoePQeU@7N;woi9Rm%F^_WUfA^qN z%@_Lb-ceqCe-q`^fA@^?>iZj|>fWS9OGv$~NqN?#d>c~UO)3AD)W>!y=gA$Zr=--| zZYkGK`;xB%$=8wO_gM6ro9$@POa+uf?aSTrZ}diz1Ix1XEyr^n6qu6A=i z^t#!eJ~!Lb?`As&+j!+pW#bb_==LZecgut;5ZBi@4ct{ci5F54eAa=c8`6 z+n}56Hst1h`LJ7+SKqf5j=H(OKIUe7kGs{n(W1rNYTc;6@7xLWhe@|ucUrV5w_11V z?>*s+aMrEX3Hp1_{YRu9cmDP2r)H`gPpZm#-ar4zti{KTz4O!KJ~v}f%-ISN2pJI zNR+WXO=WCPa~b`uWn7=z%D6svh}~Jne&8x&dwcM_{#{bWdi9pE-hE}P_kh@gWyh$O zwzAu9SM?MsO9#VcC%}#}8yG3e2m8y4!GW?fI?dXkq(3C-50`Ns8I}BxiG5t`G33vz zO^DxQ8S8nfjP*QS#(JJ9<9s$-#`CnfGR|x9GVaUFm+>57p^WDUi)B1dTPl;^qm^;I zu9WdSZMBTwYl$+RH>{QMykWhJ=M5WWJWty!<9^px8TYZa%Xp5kQ^s?IWZ9FL2X@Q2 z9@rD^mvR5>KzLZjbA_Wao+})e@mxVG=f0JxoaYMWa-J(#%XzL~E9bd_y`1}5j&hzW zILmpi;40_2g1emid7g6a?^T!cT)|t;{XAbe&lUXTJXZ*m^IRcV&U1yfa-J)M%6YC3 zF6X&IM>+TZBIRzhZ-03uI8a^#M#~%6?&W@PsJs;%E|+tMayfS>mve`5Id>?RbBA&{ zcPN*0hjKZ0D3^1GayfS>mve`5Id>?RbBA&{cPN*0hjKZ0D3^1GayfS>=Xt|QIrkq{ z%Q=1$<-B*lUe58gQO@zTS3XZb@#G|icD>%LeD>%M}DmcD|D>%MJ zDmcDID>%N!B;D}}j;~k+$Jay!$Jb;9$JbN^$JcZP$Ja~+&+ld{cz!om!E@@kaK3`) zcncLAe~T3ye@hh{f6Emde=8Lnf2$Q7cZmv)x3vn6xAh8+w~Y#pv&{;Qv#kn_v+W9w zubm2xuVe+s*KP&J*Iot3*M0@Z*Fgox*I@<6*HHz>*Kq~Mm*(L(GI==v2Qcw;ko{_hv)q>p2wh{_3)f&&ck!2xQFLV^B$fv zEqHjowCLga(vpYgOUoYqK4rzj{j61C!s9_c);!$5S@&?Cal=!pzyJ03wC6nRTb_Dw z+tUp0cmiP3b0@g#xeMI$TnG1s2c8au4?R8Lk>?rUvFACURyhcoD*pjASH2juRz3*Y zD#t*3R&)#)sI1c)z82{RT2zV{R(WW`VAPW`U4oQIs`ka zIA2Dp{ukl?s=tE+RjFmFeWF!naIlJhr(~$=B*Md0x!_1uAvjv)1jnk*g5y=?V65sK zI8o&VC#xF4sj54`>8eZMOjR2=TXhwjtGWk_S9OE)RsG;X)w96Gs^@`ARWAgWtA@dq zs+WSRRj&XORj&cps$$@J)f>T$s<(ohRqp_|s%F6Ls`rCCRUZbERX4!hss(Vb>NDVe z)#t&3Dz4uTtGMnys^YwIEPCx6*Ab?3Tvs^H@jdH0r{4D&n*W^IC(h6U=hVJzn$~uX z_o_nYzO2WeriIUa1?)KY7#KPCRiry0@kJ4ThBkEW>$*Ne8$S09aOB)K!O?T;@E;fd znB-^T9M>O{=eYiuLVmKe*>m61{j;>Wb3f9VuI(XT>DvCepCNp3PVE=#zr(C%dG@Ng zUNN0l@#*_;=lPvsJ+I=`_u&ilt>5+U&hu(rp?`OtSL+IW zU2|ToEA;OZiO+jptsnIJQs>orK))|_UabT4`%>rCIza#KJkNE&;Cbd}=sfFt7|-j! zlSY2b+9>j)fBz#t`u9KbW7cBlx!##TzV!1Cz?`ZTyHI$=elPR`PTOX&U4+fe4gu`mGfNpte)q(Cvl$N6>I0Y{#ifI_0I;% ztA9UAdA6lIJCe_&q_;2SJ`le{@jH@oAD>s>>-u+N4c95A8jg2!4fAWQ;kk{ihU;K^ z4bKxCHPT;&t{R^AxN8zP*YVWwT&KE*=QZ9Mp6~c-c#h+j=K?isk6;b^TbqPK5)Mna zL&A|7u1ouC*nb8@AC>q9#eb;g7wFf+HIIWMHGAM_&F{dmnm_8y(#C840>)|_;#ig2+3yRA%Zwe@`)bw6bT&<~onqs0xYgb&W`2e_Hh>9mz+X}YTehLiL=JhCjxb|gWNA35)NbTRj{@M$@%05tgKNzk3 z2sl`~4Gz_o^eOvr?Kn76`xS7s_6cyT_H4hhkJpZXvD%y9M6LF8rJt<50#4Pw8l0|u z1e~ee0cUGlpP~HbY6ro1?G13gb{AZzEqtc3FV_0NrP_Z0muqLhmD-~=^?c#<*_(2| zvafj0fUDjRnDD*^T=RYlT=)J7-0->{Q2v|VmxEj0w}ac>uY)_@12E}5HLU!0y%BKF z`*LvKI}aXszYQLGe*+$Qb6%wUkGJQ!prvJ{u7MWmAq6vH(1vT4%IyX4%fX49I5*vI9m5zaIEfeaJ(-4 zW$L+DT_ZSAHvmr7y&jyZTL7o)z75XQ{T`gH%X?5gH&+(`<8@C5=j&bzF4TPmT&(*& zxKvj(s{EJhg5XNsOTg8-&w`1%zk+LZH7{3w>vhioH|pL5Zq|JP+^YKpxLud=3gx#` zR}CiX-VE;6#lgM0?|}Pt``|&{nO7?R!@2?RsP2>CaorK9)t8PbyQ%&fXs&-HXs!Pk zXsiD=XsA0#?_51N7Ga4fNG}U#*_=*WU*Q>f>Or z{xPtvJ_&~E(_W+e!u91~NBtErQvWirzy71(K>ZKEX#JDmV14GGReu0Z*PnZ>@|&rTg0uDS1n26%1;*=t z3(nU&UZ?yP>hA>?>qo$)`uBm$^*;qy>PutFZ?*n@Fj4y>?@J^*gk zzX;r_-vzhp&%Hs}cj{jNChI>5?$#&4z52X|lzqScY2ZQqgWzHP+rgvy&wt6+7*DClkY z5a?^z0sRemZ&rSRhJG;E@D8x8;agy+;a6a|A$L;wbu?T6BMr|6`y1W^4m5lNj5ZX# zMfnXjyc!&8_#8Og@B}#0Q1(`3A8mL6IM(oPaJ=E4z*xiM;6#J{VdXd3a2cFx7z3vp zJ^{`&?18flC#RI(TtgceZ+Hzj-|%^Gq2ac-Df?nWHMrF95^%ZUN8n0B+S`?VwZRW2 z8eRgfH7tYc4SxYQ8mix+{5Bh&18z0Uf!hr~2X`8r)5@M~cqX{pFbD26{0iJ}xc!~V ze$a3)c-Zh>@TlQC;Bmv>LCtsJUCPhon*hzeZ-Q1|`n#3h=DQ5qeQyOFzORE$-!bU& z-8rND+`e(p%F8aO&F8Tfp zF8i83r2JNV4}hz__ks!Ecfd8@5xDNV@L}b*;Tr}weIEq3eCy!0?{DCaulys*FX`(8 zcYUu0_k5oL_kH`|f$wZw`5pT10grs21CM)# z;ArDGIM(&#u^(xsr)7yp9fAhz6YFY{1Q0b`0wCMW6GzL-)v(8IM)~jL3pI+$#5jDt=V?xth8`chj3dPt#*yb(8J$%IH+O#v{}^inX~^Z~G=>4#vX$-J!m`kO9;15Kk~wCO$I zVAC!*)YSe(s{m58!B1=u1jJ*7O;0yy*~(HC_0!(oZx!1DtGn8#vYU18};2-2<*Py$)P$`aGCu z`YX8B z{vhaX{xRrjejKcBwk4Fmx48lIHAg{z^Si-7^LN2u^M8YF&Gvs*{-Ne}Fx)%_b~Jwi zj5L22>~H=pIM8hShVqX#w}OMsv;oc1l{ zx7>UhTxq@vt~S3FOf-KETx;G1*PC;`t^7Bd1K?)!gWy*4hr#XUUxGW$rgi0)Y`zoR zZN4AeYyKd(-~1!+pgHwB%I~n*2Oc#)03J7g0Mz_H1Wo=u(Cp9quJX6~L!iz7BGB%i z1|9xSf=>SvI?bBf&;3A;pZj^$e(vXa{oJqf`MHnm_wzhC;O9Pf(9iwVHow~U)z6>( zytfhdbAPqN&vWI7pXbW`ex55wCA~pOZ%EP`mh|Suz99BRu`i2$Mf9tpPe}gOBp>U3 zwQsA}tN-%%6nFh^*J;-OxgwU&bb;kFUtqax7g&C~*d1bbirsaA<#S(9`>JVLNY7u0@x zx;A$~-M3EH;uq9?>vV1Yg1T>=t}R|r=LhN9(gk%dI9*%5pzZ~yYbzHX0aq`m`@!j2 z;=<#If9=8(;Q9r1PdHuMxS-A*(zVSCzlMJ6f;vY?*S0UHa|C^#U&_5F<=&TaA6#I& z$L`?0_K7=KKa+Q`{-*9={Y~FNznME&kF$5Mf6U#%{t>@}{bT+P*5AS%>>rDFuzws# zyoVC+k;Ho}@tRtgZneMkBG3ph4~o} zMq8M#!4|m>(Go|$9u|(Yu>X#>@O)sbh35m~E!=O9weWmkqJ{S&CR=zuFeRLB;W@#K zaJGf#1#>MtFNnABykNeC=LHKbJTF*m;eCmv7T%LsZs9$Nl@^|lthVr;L_)aM@+9)T z-oo>MjTYXQ*lfwlQ0>0e!ut~2Exa$W)57~n$rj$5*lppxiMc}P`xyfP-dlMg#KussQgTjR$ydDHh=Ujfnv7 zElmb^k7FvpdmPgN-s6}F@E*r(fcH4&0=&l&5Agode1P|t76SZz>SBPumtG3+_tMJ& z{$6?|z~4)+2KamFM1a4SUJLN|((3{Kesd$h-%D=>_V0{p%7VSvByJPLf&rux%y;Nzgy%HKi&r z+Sbb7OWRw&4!fgu4Rp4C2XwXa_tNgxe?{2S%HK;@w{9csZRPK!eXYFj;&0`Bmq07; zy98T#-=(dU_gzA*yzdfj<$afqR^E4swDP`7e=G0147BpTOSF~uT?Siu-({$k_g#it z_x1TxKW}XPZ*a8rf55TUzk=h!SgZO6BK3QYt!dz7YbH3=%HLg2x0dE8`;2h5H5>Lh zVZ7Cj@O*0#xX^kUTof*~mLj|?Txs4u4d-aeoe3AExIxg~FQU680R|YQf zeG1ZM|+1a#lVhBtd9YCE-KFrNqAVoBa-f@q&p_*j!U|+ORS%XORS$s ziFfJ}-^0_F`2L-_#P{#)CBA>-lFq!Ovmog#N;=D8U%B)~p>GNRn(wD*AORM1CrGEzZFMSI(ks;An6J91Ff291p%4j0Il@P6Q{w$>3YSso>ke>EOG;ncyrq8~hMB7yK9) z4}Joi4=#cW!AHTx;FrLq;A7x&FafRvzX`4ezY8XUKLpo;Ti|-|-@%RGFTl;<MA3&~axg=)Ci3pzF>np!?1+=()2K^xnz&z;`F-1OJ^I??KVGi9RIy z@SU6oB4Y0s`+(S^VjmLwu-He$J}P!=JJYqbGhKT-({;2nerG%98CN^!8FxF!yQiJw zy}F(Ah_{{N-Pg|X?r-OK543Z<2iv*MZfoZ{JJingb-11D>yCD=uOsbTU-!3jT|Lmw z^>nnI>*>LEuBV6Ext<4s&<09pZPf9p>+1JJ_z!&whn|jw|$Y zUZJ1s3jN$y*j}D1Y_IAoY%lK>wwLb;+sl82?G?Df_6lBMd$nC*dxfsBy~0=cUDR=f z?H0MhcI&^wb{n|Dc8gwNyA57pyA54oyA5AqyNz67yNzC9yNz98yNzFAyTz`s-6pQE z-KM0x(^B3UDetV5cTUP1m-5a_c^9O-i&EYtDX%HSdNYSuZ`P31Yl!t?53ziX5WlmW zA@&bfi0e*wi1(E}A>PZa4)I=3;E^ELKk>owI*`tJ;{ zsdDSTGrXqCtN&d!2@gm(dQGKo(FU)nbo9TghIsV9tA=>=-=|$u=~%Q;iEr$hsxSR_ z*w<7&>c3CBrplrJKJA*SKZ`bbjlT<=zV=LgoLjV+Yf*6a+VjD=YxjfkYcB!kuZ@BW z*IorKUVAOLbnPK<`PwA7a_w#4>a}-)iEHlz*RIWh>(@RCZe05~xOwf<;MTPzaQoU9 z!JTXW1SYS29o)UP2JT(^4!D2q2jIcAe+3V(ZR^y(^Q4}&>+DCS>oP8`v;J+Ow~O8> zdY9#g$F6g{OkC%@IC(u`QTds=&ha#To#SEV zI>*E8bu}I=S{&)?zjsG^7H#3W>d*S`-jNTBwuE%`zgKfzjbHum)gWDqwt8L7%N8wx z{OG@Xzs}#Wt|LGC@7}MoUu{YJ+t=A|b|jsolygtYzc1xI5dEQ)`{+9R>G5^x$6?MZ zrZC5&Im~ft3$vc=VU7bwn9n)Ge9k4$xy9cT=D4a3b3A*)9Dlwr$D=>YaU2M9e6@wy zexWeiH5_KUc1XJYq8|`_RPr$>=?;ZCPYj1ykE8InXk+l##|ixPaRPsRoWNfnC*nU9 zR_(9?OB)lQq67C3-lFvN}?@RbV@_Q)xI=Y+ntKB2x?jDxUd=JZIy@%zoi`^l1 zmxSFC_K1J=JuI(J?0&Ha#2yrT+dWJ-bPwNe9pWDm|ABj0?@`eYihfx1BcdM_{kViD z#6BtEDY4Ipepd8x3C~M-QNl|SUXk#sgcB0ay687VzbX2yd)ObgrJPCe+ZDe(@!J=_ z1Mxe&hyCX09)7QD_p%+#LhHS358J(L5Bt5WU+2B7AD8&K#m^)5>U&wg-g{ZUzI!?U z`S0cY7r2-6U+`Z3emErYg(bcYi7z7Q_Dj4267Qh+4~hS<_**-Ej`@7BgZUfkV0nf+ zSdNhn*3)PQ%QM!&@{f10pT#;jZYDZd&dCmrn>C4VUEQy+{NC>a~G%RU7~l3-qXqRnCedc&cfUI zpL)5|G+*Z~=mky~^7eN!{{x+Dw`eEJG1$p+ z40W;{hdbGRBb{u&(N3=S$2wIxGqhMI|K7_)C;#5dWT!gU$PhBniw z&UG@h*-mw?lcCLZ^6&h_JJq>PhBn{H--j%8^7kQ&o%?z@GPI@6KY+`fe*{-L{|v5n z9)XF@zk+L>e+Sn)Z~LKoZllu#ZgysXTb-HUcIQcOr_%-|JM+NZ&H`|+vk2Vpbb<$+ zXTZbG+rgvGGVr+518QC8KvP!@Xzr>5tzACQ*3}H!yY2uTU9F(AD+s!}E`#o_yFgFZ zRj|4%40^ln1$|vzpuejJ40QE_!LDb5ZC%d>LtW1W!(D@5N7oC%NZ0*ff7gq^fvyoS z+Vvnf*!2o zCb}L2*Sfw2u6O-2xY4x+Zgzbe-0J!+xZU-AaHne%Om_V%xZCw(aIfp%!Tqis@Sy8I zz{9Tp1dqCY1s-?pfm-)(K~wkdL38(igVydt(ANDI(BA!jpriY5ptD=sRONMbr-JV8 zbkNgn0js;Mptn04^mXTg{_cD*(Cq+&-6ddK_h~THeHILNyTOj`3NX@L1@?EJ2M4;n zV6?jd9PDlahq^C-!`%UJr27&$+Wji#WKY)wf!{Ac)OTgvsmw_wYF9%n<$G}AQYrwVc*MjTa zuLn1}C&10_H-lT2a9uER+O2b_x7!RbgLI1?!bXCtS;xrhsl zM@qr@NIAF=sRS1z)!?hgDa6na5drw6Ok5hEpicDkK74vMB2d3$Q5uaat+*$ z+zswTI>2P48{Ccbf_sstgZq&I@F4OW@G$Z`@F?vnK|+dL9DZJ#PX%J#PW4d!|5d&pSY0&$~c>&wIc?&ny`1`5@TV z^ItI^`35-F z^G$HPXB~|7d=H%H`2jfD^Dp33&lWh{^Am8U=cnLo&(FcRo+KFWc^sVYc>-MM`8BxM zvkxxy`~h6<`6IZ}^Jj3i=Lk&n{1sg5`8&AYbK8%w4(Ks~n>`ueR!=6l-E$J$>9K*y zo;+~3rvTjRDFXL@cJQdD3_R}ffLiZ4(9~N4ntSU&Yp)Nq^)`d{-a9}? zZ!75R4T7%T%b>gWF3{6^6|C+JgWleIL0@kd=_Pzof>U|YB+&d1A^u7)p?R^6{*84_qymu0e^*#(v z^u8UO?0qLV)jI=D_r4FD>HPpW+xsDKt~U1axxP*Ga(%nj%k}g zC-3+2JNclO-^qu)+)q5}<+}N}m-`S}ANLPUecbmm_i-9h%@52Q9cps*%kN06B zeXO7UKGx4bpQ<1IK3AVwSEXq~ed>Ed-w%Xc-w%Xc-{#5Wl|9(Z~Iai9YUU zO!jd=AV0~== zy*{@8ejnTaQ2dX?|5*IBetrj=`uXpyoBR3iHCy}n@3+|c`R_H``}y~$o&Bs=S3m33 z-Ov8xk$AkK_w}u0}T7j8(ro09*ne)j+Ee)j*Je)j)eNpDZm+n4kXkY0tRX^*F< znyAsGyp+GWZ-Z2ll3qrsG$q@RTq2!IX)>e_l+*8AN~-6U^!&0xJ^Ly{`nDmJ_-|QXBGToQe>QZc3%9IYhV*em`ah8_r-bjg<@XLl z+AyT-7FsW-bcu951W7aQ14;Ch4hdvy{t|3 zx*LX+Fs%CZY3;8mztf*pQeLX^d)$yxZ@cwusUcl9r2BMo zAzgZA>a#E1rYVWf#trKY!>S~S*{~)JN&l0~l7pxr#SAI_6p3X^7&;|UcT<;`7bP*Z zq~WI|`e~;BUt-Bqbse8|8CE6H8Z>lDqVBRTF^#BURT8Z+L#HI_;)YI1)Flj^lBi1> zIweu3zr1ecUYDqI89F6V7c_KAqVBRTNlp!G)Ud`3os#&(L%PH#;)Yd8wB9hRH+AV8 z`dZSkDoOgE;iu`nkK_$8ZN`CBw9-iYtYasiLpeVBJqj)j3;7-^&vwSH*_}) zT|$@mtdb;u`umzX{WDK=E<>jz$-z@3J`p!`N}}$DF0qse!>S}&ZyMIe4M|_-+{%G2 zF*UV%kh(IgF2h=CSc8UDNs?1T7d3SE=@R3M89F6NISgIg(B04_DTiTA7}lGHHECEM zH+1?!=2kg$iLs>W5_^uzuquf;C^h_ohE++lMh#ue&?$-KjT<^8QI{~Jd(-{bcxSCWLV>dRY`xsJbuHlCJgIMLzgskj~hBoUn8;{ zsk+2;gN9B?QZI%sW=Qd;Nc2k>Iwet;G;~U$PP5)hS4q^l44smwE7c{*m0`WCOMD+i z4c&c)E@tSI#8@6OtZ~DtBwBA6)`VeI60J84YtpbPiPpyrtNy3xr6!d`tIN6RY|l)4V{vxyHA(+M9i=%iPnbJocr($HzPTX|8EHLOaaRsCB*QVzo!e~LuE8-`!Puquhxq@hz1b&u;3W7hQF zV@Z4H60I&nrzGl1b%{>|4Xcu9jT*Z948NG6Qxg3iGOTgKsw7%(7}kVgO+H1UpJu<6 zXO|%bpCU=F3|&;0sEZjoB~ceQbV{P`hAusrI;4LGBn+#PXiXYAB~hp4-^!JesB;-Q zB~ceNbV{NwYUpBy^pGxboW~8_4MUeObT-Lb&01)j3sI4lq7j^ z+Rg6SNz?@m zosy`F8#*OXmoRinqVA?H$s5A3CJn2mpV-TY*CjsTGIUC!E@Y>hyc;vD zN}@Gx=#)fV!q6oRNh>jOpiA^~8M@$8BuUrM-KR?|Tg=csWa#3C?uMbeX-G-KswBqz zxM9_tMy_;;)>K_$YA(a7Bw9-iYtXPNiPp=8HELLuMC*NqHD*|qMC(I_HEvjyMC%R1 znlP+NqV=X>O&V4uaZGEcZk5tyNI^r28dA)V;=06`l_X=(&?O9A($FbMdf4e(&uY3v zoy*WEiMrrZq(5Qyi5j}tQzTmBhE7S;B@CUCnCGOSQxbLBnOo^9i8_~|QxbKhy2RF3 zlDz#4zo6k4GjvMgvvEVGBJnF$N@96~hM$t?ciHfZ z8dfDqYKAVUON>Q3YozuRiBAL#osy`F8agFW7c+EmLrOeFk{lSiq%KjX-F_4d^eI4QtfUDT&X-LbvJd1X=tUlbV`z389JAt3mQ5l z(eJV@J(&7Zef1DEtV*KwzNbj?m1X$F4C_Nrk?0pU{FKD_5{6Dm)Flm_lBm<%Mu~KZ zI+vkS5_?3@&?$+!sG(C5bumMyB z=gf@pTZSQx-;yNcXhM=CNs=5536&&ClF@J_sU(%;8cixmlBALxO_HQv`X#qIno25H zC8;Fe=UVIRb#C&#kMI3_zkhu1`@Np$*=zmSYp=cb&$G|KOm3l#DKoK{jVUv+xQ!_@ zu~N)DJyK@Ahfr4TE@f%T%-&OmwKrFhn5kP~W6De{VPncntO}dpK1X{=%zRr=tz++~ zH9E;_S(&L(Xk*GuEM{ZMOsoVm{flF!ZEm&B^`9w)vK4MICR(!h=x-VdtrcNA+@a(uTj5T_Vpw}~J!Gv^mwSd> zWh>nGu`-)mVXab^3-HC5vK4L%EMar2vDCiM$}R&-t(%QiSgXWRv)#t3Fmql&x_6XE8!L);?t`+|rbpV_iuH@2FRbO>h^I zTZK(=)i;IJSdqJin0u-hQ?^S#$tuN6@2jj;V`fg4clOq!(pr_ZYHMy6uUwI}5^HW( zFSit%;D&n8moq#o!OS)nR%ehoV%6v(ciu* zbKOg*q0H2%vbmvNUdyGJX+@c7rMkB_rtUeO61X<3=; z&Y)MyOs{5RroBqc)KHdMBg}Q5QtN@G*29*ovgMSy?#GlB%g?OpU#msp0nVYA7=`l(}w8YA7=`LYS#hgqdY1Gc}aC?nTs4W@;2;rbY>7YA7=` zl(}vhHI$herM8?hQ%;%dK0!HUrrc=Ev|NUnEu-v!K3bGxW@*YyE6QB=eOggwTA7WR zR+d}aYRx^@Yeku9MVagVNh``sD}|WpK@pZ37tGX9G1on*7vqAN8Zpe&D8W+Wf|(jB z=DHV9Lz$@&$4re<%+ye3YAAEvo2jA9)F`**l$mnMT=!ARDKq6NZ8>G8oHEyahjPkH zxhh*unJK5tb$_RvGE=VFmQ!ZRDRbQ>XEXn7Ik&I39?DEPWv+W3<&>HB3Nf?h$`0u5 zTZE;?88dZN%yn<1t};_MhMBs`Ox+SJHR715t75MEFm;ugx^c|ZEyYqJj+q)N=DKfE zLz$^jhM5}Wn5m)6)KKQSzfeP&sZoKM8p=%nDlt=6nW?MHbqjm5Jup)@ftk8hn5m)6 z)KKQS=TJkLsgcA?jcUx)P-bc2mLqt1Q!1?^P*l?;a)=Q>JT_U}hQ0%rca@ZpJxm8O-#mRL5EqQ zt74{ZIc8$Y(lOV)n7S%v>Q-W|dn++z>6odZVy2Y@W_ntMnOtQiSDC4+%yplny(DI8 zC^Mr`jhPzCOe@M<_d{wZGp&ezUfn`#MVP6p%+yupx}pzbikT6LVW~02%+*8O#!4~M ziZauRvef+yX3oDVX4*?&roHO(z4qMxo|RfFw^nH_ftk9>%otSJ+-hs?1zvka)=I3E zTC1{_#7xUo1H8J`*4zudSdlgNB5%!=nRQd<%<3iGc{DqbuXkw3^P4Y zX4b6)Go!1_w5QC}Rpz?4P&ba5y2?ylW#)WTilw#@X6mY#>po6hWv1nFTTYoNr_6QV zqnt8RuF{rMX38mZ-9IR&%#^FL<&>Fn%3Sxvb2*mSa$7Oe(`wB0RGF!v%yrMFhBDLg zUd+^R2YEG=nHtJm_a`7(5?fB0DW}YJ-=dr{Q?AsOQ)bF3 zbKPGlr_7Wqx8;`t{abL#NmaDYol$pB9ObunOdoDGqY&m5nSDEYHkjgc6t8F=D zrkpa@t)QGTQ_j8Ejvr>qshI1&K{;inT#+rO%#>5+x<6A+nJE{;%$0cwmYTbmsi9)7 zd%}5)BxY*FvDCFZmYS!SsZol#?%C8(W@?mSX0|Icvt5~)5#^X^MVV&7Uj%#?F4vEzrC zaw_J!V<@N0lq<63l$mnMT=!neDKq6tY&m7=n5m&+uKO}IN^Lo1CRds3ev`^Ib<1rz zWu}}m*UjtC_+h48r7fo{9Wyml%yqj^qso?3X38lu<&?SZ6_l&C<&>Fn%1k+Bu6sA- z+#z=SFq5lduKQvt*VHYt<&>Fn%3SwL$|*DDN^Ci0rkpa@&AEX2XUmn^a>`6OWv+V~ z<&>HB%56Dirkpa@y_|B&Ou0&1PMImE%ysXeoHA3c%9c}RV(z8h5o9(tMPEf$*;vs~ z?`$8#%uyw7ZMn6g%e->Mm}w<}nHouJVwe|mG1q;L{wXtkF4D0iF=gqP>1m114G&-> zZLTttTdH$UAy=8HtIXt<>)gx8Rc3OPncPa9dmFjROs+DMTcvZKAy=8nRc3Olb?(2& zRc3OPncR}NcSJA8%xF|$=K0W8>^oPzYrhxUrmwigaIajUwV1WIwbF#Sm+iNtBn3w+S8VaiCeufRc6L?#%v)<%`CaY%PqX?KP|P5Y%GqMScQ!#GqHq?DKoL8jVUuR zaksY&WhPc=W6De{W@E}sEN)}UOsvU+-g;y_ZS5J)9$8~;t!HPgv-W~#WnX!{QkLq~ z9xqmirFvy!F&j(#0z&KB1fjak4j?g z_1-8Vo)ub)S&L(-Z?LRYSW8$-VyX6`p2gBuAXC?|acgDPDy$`}C9R2?Ufn`#F>7&a zW!5UJC9EZ_iCVTjYcXqaYh~6dtR<`^t%=&UJ!>&*acgDPDy$`}C9R1%wmoYxYjJC3 z)+($eFtZg3>v^rjtchYTR%k6|EpDx>wO6jfnrI_a-+#ocRkZiYC9D8#0(TPw3BcpjN**;>q6+**aTgteqK(OZf|?k{``rJhlm z_F~q`tR<`^tqGobrFvj3W-V^5%vv&SJi9P;6X$uBv{uOVnaLGg^{jCv=QqLGB(=05 zGIb?WHo}XEt2`^THe(!DYWkcaZufE%cX*bxCg$20mOAF#=~YJtz1%`;F>7&aW!5UJC9EZ_i3PSjYcXqaYh~7A_jxtq*2*x`Q)OlhDr`)d zi6yKht%>`++(K(HYjJC3)+($etR=092W)%RV%Fl;%B)pbOIS-)X!FOD5BSJIgIR$4sbSs`Y&e#~0@FJ@*=f|z->l(Z(6d9gxkG0e0Vw^n8?iJ5P{ zm8JUfs23BMi51$IG80Q;=Gr3um}d!Vg^zo&7-p8C%+!tBm@*S9voU2RR$*hxOe|qz z%1kV2W6DzPE%$nm#LO6oCp;^(7Q@U)#;uiMW}GXmC9EZ_i4|VCLTfQ=acgDPDy$`} zC9R1kZF|;Yf3eiIw6Qp5Vr74^1A2xfY)qMnC2dTZi50H&T1jAL&10*)n6hepY>z+f z#mcNzSW8$-S`(|i8im$k*5cO6tW{V`SQF3KR;)_sdNLes4+ecOvQde5`&nCbm+YtyYQwYJIHZfkOf zS2y{E*Pf{Mtk9bH(u>9Rcs1gf8T*R8Uhfmumj3Q-E%B#Uw~264S0f{=y=v`CpUn+; z_K3BNpcflq?MrL1OeZxrl$p^Gx&LXYnUm+Fjw%Uju>!ALtfpsWe=$=xVPi>aqLx>q z&|1t|ve4^Qys=j<+2%jZv>a>e#p2e=tW~u0a$_Ali(5-rOa8@7%i>h8MxnLXU#yU*vF>$`P3}q%(Xk*GuEM{ZMOe}6=%1o@x#*~>@g^ejQv4o8&GqI$NDKjzA-{I-j zW$OL|ON|v~atn3tC~}phM$P8NbndlkhH0COm1(;btI#$lWu~r*rTV9H?Sj9!E+#4xN^@>=kS2}kG zxk+vR!o(m|<11x@m8tbD)b?*IrcJF!T$}21nKnHJ+71y*XcK49vbGQ=E>Z2}VTIc2 zVKHq@u(-BXSedp{u?lV7u!Od=v81;Cm>8nky96uLR*J>6U4_N9O~lHy-GWtUn}sE` z-Hj!+EyTp7s=bG?LTxLsn6_uJxV8;gnYP!k3T@Q|ouCOs> zCYG=4%?Y)o8l%UO$AOHTB1m6<-5-QdNPnOJO+7gLs6HyexF zSecC}GvyLCrYzOojkZ0^#L8?;nTaKBOqq#^$zEM$CRS);%1kV7W6Dgd%*K?NScQ!# zGqKoB-ZJ9WD*j@ooS5R3Q)Xg?Hl{4qo{hz9tir~WrP{mMwuhza+E~oSrcd+ARbZx^ zvi9cQz{V0bmb5Wtrkp7A>MAp_LK{T{|c?eti`RBS*x&?u$HtYX4v+u z#jM4xm07E>mavwzCT809ti`Owt(94;u$Hivv?l&x+p`w47PnSrt-@NuTGE=BW!tkB zvlh2jX05_n!dlXrxXrd_EoLolt;|}5wS=|!Y_An%W*)?D_hQOStjxxgrRI>0i8)@4 zLTfQ=Wp{YF71k2glGemruUw(En6*Kz_gcOA-7$2DtWr57u-7PA(&R%WfjTEbe= zns~~#XDwzeZmrB(g|&pWq&2b1wr4G7t%1DkVK|`U7GI~C|^=jwbs1RD0qIOG4LYIOEoXk zjBAe3e5=t_lxf^p)jhHCICzp~bIq2Tts9Rg-d6LJ#_Hd0I92ns#_Hd5I9;=g<{6qX z%`-L6((I{uwr=4Z%?le(pv{XK-vBSxyrl7s_~n{c=>A-(eT?Q+jn}iRYc#Lbk?XbJ zp#4VOpPMvq*1SdYC!PDV<}bSZubRI%R@>+g%|A6oky^UHNUiCYMK{48bmS+^Uo?N! zxxZ`vq4}rg!%bA(M>L~N)%LB~RBfX-nkoOHnc50JX?IRik#@yuDV;S-iq-a7T&!lx zl48})(&E{0nfAxDuh6+Gb!3%}tku3wbA9m~%5T!XS#zuAHqGt2?gyG5Y3|kW{h9}K zPIaWs|X`ifHn4*1}<}A%Qn)7tY1-i`rnu~ONv5qg%zErbPN0w+G%?6r9n(Z_@Xm-*Zt~sHl+EXUBRAV@~r5c|pnp1Urx@NiNT+O>Q z=V{JwsrI!6+V9uCQ2Qe7i?uJ)T%oyAb5%>VrB>@DuF;XTdWq{aU(k{Dx^Ek_Z`36> zwN(2^mF8w0->%EQtxJBOeW&(a+CSC&T=Ofb-bFjIm7?29t#2dEUYdP1`)Ll; z9N$Wf=S1z(G^cBpw^Hjqvz1zxIjz**-J-RMbZV{I?4{YKwTk!GK0y0G&5@d8b@>U} zr)ZXIKBnVqbggxo+gs10%^j^5z@4oZ!p~bThWlDCg@<&Rqnf@pst?(1R3Gx&EQ1ZT zw`ikUXs6jpvqb0i*5&)PQ7wa(NxWH&1JgG3e8oT z>ou!1cWNHebla)AKFxq;wr0L&fo46;2AT~un`*YuY^B+uof^+>nmyX7{twoEm*)LC zvRZSS<_GQcXlU-#+^gfOPFC%#(|lKRr{<3*s~LV+)7M^kM6*GAwRMWLH`DB(*-^8T zW@pX5?bTKupgCXHTCBN5vr==J<_gVKnycF{r`B5S>$I=ezFjjY{NkDSIB$#ReHZLd zpWg?Ezpp;`o_tt;?n`~j_U6BRsn7AL&xxte>8a0|sn6M|&v~iO<)@hXD^s6cJDC6O zp8D*O`rO;$?hn-Rvrjeoxv9^B)MuU4XM@ydqts{9)Ms((vsLP|UFx$#>a&ynbj02+ z%Rf}h*?Q(HAE|$HsP9?ozlDgB_|qbS=YgVu%z#4tDjogV$ua-k%Tc*P@TfqS|ANo9 zguWr}60hk>;p4LwpME}T^BLf?4xcCRS(ndK_^iigjL-Ufp2=qeK9hW&KqD>rY^WL& zj|YNqc_0fup_&mBRY2UUc_gg-PtBv6B2z`ArlYC;UaAlonm$dxW zW^3kXMl_?Exte*J`I7{X?oD6_>4GEdwrYl&&Hj+iMMh}p7;7mb>V`{aq@C0Q&!kMdpFKH5H}lxD)TjDaPU`UKlCM4=OO>lj zzHaXxo^8{fQ{Q~Pl_$kJtW-h1`8<1`iPuYg{y!}@?c5X2hm$u;(UN}r($5j`fZ8q*wo6oGh+OvHJoepu_S+gFC<@rAYKa_Cn-X;> zQI`_+C{dph4JdH}B^pwqkP=PFJ&9;@BCUwD6OBZB(U@)CM06&ni)bOvVE>Mh(_Ne_ zdXn3V-EyPwDv?!V-7?x*ra_cOV{{an7{CgnDFw|v|ELcZsIEkAOsRE?bgkx;TCet>sKhn=7y5JecgqQ*sARjp11#>TDq0`yxq3_ znD&mBn~wdzF}1WE$E-)Xz2oJ^a~$!pu5qfh-n@nRnU3At)Dd55Ygfy&tWqhy(Xq;I zUhEW~BlhW7_;x9N)V7)9sIi-Oa$lljt(tq~ZVJg%><8Y!F}de$7pW1S%Q@p0U8A(f z5x;9o$L>DYN#)M9R@lN3M|HU`c+MYUdva!-=(Y0UaE{VCc05ySl&^EY{8OgZ_gQOi zT06ouu^Ek3wWX+|YoymQz2<718|qwT&8)T6*2|8@(o#p9renhfI;sAN%e`27yFK04 z%k6odXX&kwwpqKp{slQVb=56@azv)AgzwZ%tkGv)Ol=vnMrwN)JGjBi9XrFTag;GN zbvNaDcD%YPT6lF|vUa?3YFx}5`f{H)H`2D8D~J-^`*bXAD!2DBxi!v}dLQQMYcpqN zJrC4AJy4fxc$E}Gv{knBX2f^&V3>}Dd0W_+nt!Hl%~QN`6BbJ`QkVOc?~})Bo7URP zeUb>&)*DP2H*9{;{@; z7i)F07mM(%(QUfi9b9vn_L^=H;!YiVp##@(+6HdpKJl1x>AIUZ%$vIDRz|QVo7m}R zd%5?%A;d!6%CJ_BSgb9*<`<0MSCKl_LGWucZ9Z;i%t-FsCdDcp+jfoDUb(doIYzA2 zxt;9@U2%sL>vinYIZ|xW7Q?n^8&2+aZ9hHC5l)-`IG8CZ@;gcx&|k&C=4#NRRkxJMYtdS#M`zy4-(XkK>KdvnAe$|L=1*y;rFF z95dU~%lO~hQ+Ji76}3iY{zY=7IHc#~D}%k+^xx;-{(tjJN3(}wN9-PIVjqp+BD|40 zv!|Dlu2GMpp2;m`J{!xnHQHdNmH%Ehy)UF^Q@YO`*?Y{aORwAiK30P`+xzu;Bxm!i zN87H`qzG$U&AU;?M)6j*vGtrG%r(s)GraRr`Z$z6HvRX${O>iYKlirk|JN<2`<(7o zl&eT{Hr?0QJFcC`naRXD^KOqZb~vq&ekH{Wy^M6P{`YaoctncZbt{z}9dVboadkag z%zKPxG#YT$HP-F|?+WE8_xomCMt$cU>(b}4*e#B@SGSiwN~O2VfA8r#OS~)9|GjRo zuGiD8%oo$=k6)DHVcnN*9M_CxTKn}|Z$>n59Pzj=_pY^H_~px!I@atr?>=wUubxdl z-MGk@`7=UQ85bLZPu5;k|3ja_S7KHb)k{JO^6Uw&tE+gUqoTY25K@=tr;{qLX@ z&*#jia@_5$}7SXX(4A^gUDh&g;M5zoqZ< z(nrzsd8^#s@%?De0Z((!{=8n_U+Z{1c-hW~^!?zTe@OANF82^ey;rp*Uz6euZR&aX zJKEMA_FAdg%n>_vZ0;~`uXyBhFE@FjBRKLOw)a;RLe@sJ+zhS^_%7gTZ)pRq z)wTUA9p&}lo*rJgp5&UIK5ol>WMk7M)Cw5 zduKlPp}P0_y9ynPxAykSZ(f(8xsJWecZa4g>3cf$L}YtIwQgtGrFP1(wrH@y? zUg@pTWLx8FYMAGLFW2;*&8hFc%$|3+tv4D~r+ZHq($5Ogx$p5L!90&B@p*ggZ8N?0 zuKdGm?>*t=z7>{!*C#WOA4mou*S z&P*d1E3;g2s%MQ@hKXHoV=cI5HL)-3o!ow|l}+phdwjX^CP(zs%SazLma)F(3gB^` z>kZVo>0@0-`@Cshfw$bTH9boo|C*e}HJ7eCiR&6U-tI?U8P?{d#x80IZw&!tk_smtATnHLMkJ-gVB^M{l(y_$E_TiPD_ zZ07UV_FVR{wVqAAzRZt!cAx~xC;1lF*fe`IJKp~G(t7Wi z{zscUyJecUAJymhZ1yPi)c#(*zUggw@+;mNsa77;xvCXos>VN$sUbH>@raJ8yZk4# z9j~tHfoVncz}Rg(O)=K)Q!n@8v%J_Xk9n~xDQA|^kz8YgZLFD%ss25EO#hCz+~f66 zU1OTQOyDbeW8c~lPoF>3_W{r8Wu(6&NYC-~{+ph=>F+=Ou*Zn6W=iprZe_o{qL?yE zidS^36nkA;dbuO*ep$~ReHz%~c={OjfA{T(xmthreJS43Eq}q>HQ&E2%lGESK+a_* z7PWRwJ1_UX3Es@v%-y@0Lqi!MbEZ3mcMsmzEw{9$a?OlYxu59Vch2YC8Eu!{DaF^? zUgAvmy|(m7-omrtpLA@^12SccIeMG#Fiza-&C_jHIjP)1qde=kO7hOLIuGu*xeILW z3wCK8pOUHN{>ZwS9^5d(>+?cuw|(y|Z3fr;{vy@#3f{5H(sl=LJD9aRYWL))8#y9R z=hmmNIa+k|d)9^be@yH>-fA%RK#pg(*Yb`p^`vKg_j*>-ewTHaw2EE&ERZ6m>z;Xyx8}X=Y*+KZjM^uzlUl|(_H312%SwLF z)Kj;z05fBCK7BTO_cLdEJs8V2GO<&68gJ}H8@trTD(x}x0URw%%TIB&d9GgC zIIik1(6;smDK6G_CFd>E=k;9MUZ!IYFXSB`J-X^>VV-1NI>h@%Y(GaNvzK+`dn>by z`~lvc_m9n9@6+GAC7_HeM$G=CfloL z&++=wp_gZ;ej&xRdTEb4Qe3aC-#Bk+T{!04q+=1Tpv+ZndOg&&K$*@}Hq+Ye+A{2R zyT89T&R_JE;%=Rr9vAhD=RO@fsoER0BJN$x_+9j+6c6d#d%40hJxFhl54aO~Sm&ni z8`GnfzKYz-HMJR`^cGBC52f!?2k{NLDfiYyZ%iBU?XZazb4_UMvi@Ff`drbLs}Zw3 zx^tzlQunG&6GyB&rhlj0>OGTAA2E;j1StL7r|09GU34oG*|*Fx-nqrIr)+G*tKK-j zYG-yw>Y6@h-RIRvkC1wa#k5z+Q});OGJb4t*D}HxN5?Ylv$XWLoAr|3(gwcC`9qhR zihZIjy^M!!-3mYF51qT<70w^p9_Iezdu>BndEcAX_<*y9j@4=IJ$-A#GrVvkc5HFk z2G7zp(yeUUtpE{ehd@e_dUv3J0> z_hy*-p2Vy+^_gPzMhV~$}{~FwWXg^t7p>fbnJLfozu^$`*!fwBmKnM&s^)M>#CS} zcKs*EwXQn0ZkIPZr`F!dhO+k4}j)YVe@dx+KBy!O)1y+3)*8_72rNi+Y- zIMx|UkKdYuoGWz8>KgbmZO40OB3YJUiaqSh|(}o_jZc z!}$%}s|5+~ilUU~CFa^fU2hoc&RNLVA@&b558mkFjgY$YGW}C`UdE2M+}rJps5jQz z8}BUl=1_Wj^l9ncX{Ns&NuON?)bo09%5KkAUg^!#WHPsN9%gA^jl3gb2s*(Zn+=VV7s)P%{{02&iXn#rs?~< z?kvNM=@b9vzDL(MeV^B|x_4sZJUi0lmdiF^Wi^GXJYoE-`h=?xt*U51F96ABaQ106Asx8#H3 zx=q9w2CPJ=kWQ53~P?X3+&=GIQT)|&1g+Z}6lt=uZ&=GISd?IIt zYY-`cj@T{>DESr)ijvHl#Lt3`_>?#Dd7lynMUTwd#Ct-XwDXpJP`s2?m&gX_h@`AX z$=xt0Ue2mdd?R$k&%DbY6p5@8h-`umf1s=(kyo<{iEM_vPvA5n@>*77B3mGH!zm*2 zc2*N2??6Y?cA64-H|s_lzj@3 zV(5sGP6s0AXP-)>KXk+uPDdgaWS>T40CdDCrxTI#?9++NfDV6_rZbV5*OI?eFv^axnWGBELXKyyWzu{SA;`bL5;$TtY{@ z?DQq#&pD4s06Jo$(~pt~7!)}<=M#@Wp0_*wiS&(JK;%5=h_9RhL>5FZByt~g#MjP1 z_>D6N?sEpie>+3qerG8B!5IdBbcVy>)HI|aW8I%1GJ6~7od{4#$UehK8)5$<$Y>XyS1?o4=% zI}2X#&W01+IdHN&7fx~Sg15NyV3|7~PIni;TiyF%xw{bF=`MnIxr^aF?h-iPT?+4Y zE8zln8LV(0gG=4z@DX#l*@-L>#tcO87seF1*tu7|ta4e(#? zM!4JE1T!3wSq;yHd2blkY_-?cCfRLUt5SSz7FtAUq@Kt>jcm8 zb%s5BU13jOH){2QYztp^c!9434)OJXm->3ap}yYmGG8A!%-0vjef{8YUw=5lHvo?G z4TNKTgWxs3!SE*E5IDs*6yEF`2B-Rl!&`i%aGGxh4;I;`}S!$*8G;cDM3_>6BhT;rPq zpY_d!YkhaY=X~?vI^TTwyl(+~!FNA=(YFw;_bq~(e2d{Lz9q2Aw-mnWt7ODBLr1*k zTZV6e+$;MYgIj&e;TygcaGP%>eABmzGTWge-tw)+--Zsq?OFpr@~wp*`_>WP2_5l? z?*)7pWIyt)$3KOf?|d6z(zg+Q?b`&u_f^4tzRmF8zAbRSZ!7%4w~bmqLT00HJN(`E zHazTm7YhFlDE%Km$Nv#@{X1cXe;2iUka_F>6z2Iqhxz{9#A`slyY*MYn*Ohd)Pl@d z{~o*!WXAgU;`Jai)Bhc8^KL}g;55ZRc-(YM1Vc5ohgcjOD zzN7LVg&qC;U`U+icVQ>L&*3Q~WN!Ndco)e1oj-)10UgoJp9y3BY$DwubKW0;XZdqs z4}U)F=`Vo2{Iw`^He|N@>%dF>_2A`x^#(|(zabpqZv;pBi{KUhrf{Oa8MSVJ998_q z@J4?NIN9F{-sEos%l+*rGXpY*{q5mD{2kyde@A$mzZ1N}-x)sW?+O?ByTOP2-Qi+? z33dMo9kImU13v8U1uOl%;UoS&aGAd^eAM5Ml8-@-OaA_N0y1O$1MpWMGuA&4e-&~C z=^uo@1|6}*KNx=d8KNB9B@aX;jE9$172A-|3ZEXKo-JteRN&w?D` z155E7$PqqJiANzv_`ote53)A}9>Z%u_NKscye4!+t-uPrHstspSc%t#>^p%~uqdz^ zHVLeOO#^GmJrVLAUtk?<9e4q@39N^00~=twz(#m-U=wT~sDh^iHdCtuWX}q0fgJ-| z;c0P? z267e%RKp2@ui(VM9(Y4wFPs$k4&E5p2PX&iQ~oB%@jvh*oDnzx=L8PId4WT4Vc<9T zVBj!Z6gUDO3LJ$M0m(N7O9T8H(cO@TWis9tdQ@p99(OU?2j23FNxmX+f^@ zgZVHJEP%maEf@;cf#IO~U3ezsd>w26^MegxjbI~K5G;ZV41>{;NI0|109r09fG`zGeuY;UngA?!ke+B2jPlI#e zXTiJR=fQa}8JrJy2N%FEg7?Gf;6nIia1s0}xELM`E`h%Um(u1T$lM53!kVFFuvX|X zSUa>F)(NeEbwev*z0fLHKeQS)2(5u9gx11_p>?n@^a5-YS`QnCHo&6LM%W~@iKR4! z%$ZOX-WIZ7hc?6Zp)EvCfsW`9+6qq%ZG#;{+u>=Uw_&HyyYTeT4%j*L0X!r05$qP) z31gvMuzToJ*f;b!JTJ5x_6t?R^Fv?Jet*ck3hluMK#mfjz4$=Lu_E*x92D9IFAnX8 zgF`=(dkN&M8ae=ng$}}a=nxzp`VEc>9fntij=<5Oqi{?}W;o)ikPEK~`QW%v0A3pk z!AYS^I60IJr-ULIQrrx=h79GxJ45+!UZ{ZhJ&>!!P%Zpk$W>yf4ty$953UL|fX{{+ z!nL7Blz9$1Vne71z8q=_6QO2sQ>Yle5^6!2D#)2J)C#^CY6IU1wS(`6+QSb*9pKJT zN4P802_{3GskIw2e?ndHFCk~NP&a%JeqcLXI=x{`g6d<4kw}-W+nY2@k|uLXI}!L3nG({0R@n+d_^!;UW0R zkXaNSik||RMd4xisgR>kcsM*OTnc-HM-uM|9nm{H3Z4@lO{5QW#JSzl@O(Hoya3)Az8@|KFQh;BLGBL1i{Jy{#c)x039Jk+g^z?Q zDYFc69Ti@NKL$Dag&%{UC z9 z@yuK}JTo6&lUcyG@8clHhs;{|c<6}hGV9){h2M~ut{@aD{haB5~Fct>Ut zxpN_NCbKDi7vz|b*$h6HSq#@@wjlmI27k(04i99l zApSGtY9VVS{tM*Tp0x`96|!Gvt;T&Z-M=?x55jvx6#@_$R3ov9UlZaJ7>R*4~A^P?04}YkSoLN z9r#elm0|V=_%O&Gm;Dhw9CF;w-ieoLUYWg%$aUGD!l~Jx!&|a zEwcB(C$skwSqV9EW`74)W$%N}X77h#>|hczeiwR!$M# z0dhT-(-iLr+52*u;hiAYV>!imXULH%rv*L{a+j3T3jQ;v4SY1G9egaOJ$xdk1AH;3 zBm6X{6Z|ZvGyFWKD@^8egS&IO)6N$;C3tmC5BPOXFSsYCH~c2258Rv67k-=54}O=^ zAAX-R0Pf2f2>+ck2=31r41dTO0)NaI3V+HO1`p&6hd<|(!h<;@;V(I(;Gvw+@YkHN z@VA_+;qN));NhI{@Q<7c@JP-?_-D=}cr<4+%#TcgH6l}CL1Y>|uL(JWM5e=fk#bl+ zG7~n8%z}*~vti@N99R^Y3!6mlf=wgy;E9p>uvugQJSlQNERHOM%_ECoi^yWwGO`4= ziY$e#BbBgCWEpH5c?@=rEQe=AR=^7)E8&31DtKXJH5?RK122xOg@YsO;3bh4;H8oE z^n55}--&F%he7t8$VPlPWZ#Kwf@308@P^1{I4QCP-Wb^mZ;fn&Gb7vKtjOE&-pIS~ z!N?A{DDnY(DDn|}G_n&u9@zz7ihK$;L_UWvM|Q(Rq#C{w`3hD=_P|#od*SPm@8H(R zKDZ~cA0CSQ2!D+nfWJi!!rvo@U?BP%3`P&r^AO~YIC=zTMvub$s0{Gb0}d) zE{qO=4@QSlei39=M2F#vAxDhpaC`~m*+{e$UkZ6P5*-OEqod#>(a~^CbS!*1dNte_ z9S0N9@o-ag0(?C>5pIo6g4?2#;d{|3a7T11d_Ou3eh{4wKa7^ce?@1qtWP0Fr06XC zbI1`XIvd{&IZ8+8;MI_;+~{2RRrD_SO>`ddy^tePbUyqpx`4>{kfTuae)vOlA^b7A z2>ujZ3=c(@z+aJvw(Yyd`%FyeD@n zT#&mBF3Q~wU(S6SZp?ibZpz&OU(NjhZqEG(ZpqyVKgrz%@6P)a&dd88-jlZ*&d;lc z_vU>C7v$}M_vP(nx%We6Mc#M#LddMh+lMcL%!<7I_+rSc$omm4$vXfm@(#jfd57Sm zdB4HO@(#nt^Nzsfc}J=B1mvupCxcu;LGE|*T>L4>SvybtI`C=8{Z3v0e+Dw6@7*TyT_!h_r zXJx}gRz!TvRh$oAmYplU z<0>d$d@p{^cEvB^V zC*ZTiufXSuUxm*XzgFzHU7C*+j(bM)Q83ngG(5BUSa??R0PNZPYIt^YpU8HfYd#e| z-+Y=VaDQn&9sb(9TwL-X=lrYrri{;Zq;E*Kkd~6FNOMR}lI|zL=}OXg(oLjtQZL@=Igj6CqOz$teJdaQe=|{fGJmcRD;B+UtT4BQ=vSA& zY(lJ+xcm>Ej$m!L5;x`Ai85^g*;!o8caN?J$gW~)%DOQZRP03AU38#J8KO{@h~N3` zf{$`N!~%Xd;wQJ4m`29~^s2YGu^CrWSRYZzJEh9{imO|5Z6$ijej+DitiQOWtE$mc z4iHVq^41BemR-;#NIE0Xa&vy4J+57Cm&iUUHmxnqLB{R>oVKkg_Y}L~&cH2b08- zPNwc;v8t!3F-7dr>lTnxMUHOyL^(~gYs5UFr_)8`Qe|h!a?#;B?x#c#Ia5Tx;0Y8q zON=7dFMM*g=vSuJ+$ZOxOvM>r)(CBR1$Y56HFR&r?*5fLt%G z;N4hd8$>PMQdG84jNyGs)$%5>WVx{_@nULpw~8B?VSbjjO$<)ic2W0swQjxS+v3(c zjJ+#znPDonLo6So%rE(A5x>;Q#6A*xI~dz3e&yG=Dz;0+_~os#PenXspNo%E<#vlL zDXSJwc4e=j+*jh<*`~%GaqUF*K4N>VeP?Z-wf*9uRNWt~9T1nZRaM=CqHf9#iIs=d zG6GV{TKo=Fjjk&%-*3jsC(q~2O0|tb@@)RzSwLj)mqO2YLD}WJU_MXJ?8f|+P-7V~ zUw+N|#(w5TfgHl`w3OA7F0({g9r=^a6|$ael%-m}LN<{9_}J_V4Xrh@R%ESd$^x>P zoWkh(>2nJ?J2g*R$?eyeE!{>=Ol{S6a)>s+Y%dq+8Fr%VARi#6)~J*0r}t@&4D$T* z&6+ch*}KV?y=2=|%f01p-7h#Wp}Dx2{~DI*L~?Jr^=64s#s4sO-_Ga zSuZ(VzCldQ@p5^`aMQ|6`3-MD2k6Tzd4Rrfyvm&;AJ+S2PdQg!x=!WBmvyqaIZWwW%$WPQDVT#>t6&MP$g#|qg?_jv?=RrVk?)I3-#OZlyV z+A_uvxFUC(Tz;Ke zT1@ihsqR&V+$Hblmy{8XQlH8SW^okzT&~sTle^^=m|t|4)$+v&dL-q()T}!(cYn$< zI*49%Vk}t9a)$!mrYlr3U{Mui|j>txO>&N6#d6w?g6}i$m z!dWAi5qF*SsXqIh8TyzLkO60I>TDHqZkeX~$JYRk`c5*Bb<1}q>fQ@k;FK^f`Q+Ae zF4q?0@9nnLduUA7a|Sn1Yb0a?=a$#imX66r&SiS+W3tF8*T%WlQSaVzMwiW;cnxF4 zj(USr#acM;Y4gc;&Id>M27zOHd*?vPIyfErt5}BY=-ffCa;eeDSoC`l8tgd zJirqR=1Wm-v9?~aY3?K1VzOE8d~MxjaqhR;dde2LOMX%{ddgPT+E{Cs+a*=5y|oT0 zyFzx%-IU7hl)F{8(o1&Ey-LSovTJU+Hoxqa`>f9O%kC-bDNAguNA88Ga=lX4Q}#}o zko}8~%;8B4Yd)a(&)ba+EdD4J8&upRWrK^aOXUtJ9+-*^Eq*2y8&*6c6&qgsQ7Tqi zJU?Y4i`VMhM}7~9%c4)hVbNz{Jo*wG9(@&F9(@y*M!$z6qCdlt(Ldl7(Tu|(F)Eq` zuZ-4!qoeiVm}nC?Hrf(i6}=u_9laS|6P*FaMMwM*64yqrg5#st!|S3q!wJzD@cQUW zaANdTcti9}I4PQSB*YV#8gOznql~|{&sC)Q-*{3!7kZo2r6d3I;>soQpSLJ8|2sCX z^dVD6R-#uI{DaIAIFX@bN85IBTtMyHge{l$F`IB zTYsMTTcqCKBD4M$Su^-=EnjqO9$RMC-^xt9 z;Mg*E{4Fx@Z?)WuO|5LZ1;6~;dOiHNT6O-`=j^|&SNBVf?a!FMwQ~~_u=GB4UiRkC zb$^Te!M|frmtV7_%iOz}=e~c5EaJDze~k>}mo;95eUSD~kE*$SfPahOXVO8^FQh}H zUrE1_ekUC!{XsfH`jd2&B%BQPVt&a&a!DB^AIVP&kbFWs$N;Iiv_FO3EeW zk@873NCl*tq*|ofq&lR!q zq*kQXq&B3sq;{l}N$p9ekUEe~C3Pg7MpFOk$?2rdq%Necq%%m}NHJ1((wU?Z(pjV) zq@JW+q_auAN#~III6nSybD!u-I*-(kbUvv+=>pOK(uJgfq>D&{NEed^lP)0*Azexu zO1g|Rj1(sgCtXe|C5<4BBwaxoMY@tSnly$qmUI>AYSJ~NainWW<4M<%CXlWtO(fkw znnb#hG?{c0X$t9P(p1tdq-mrw(sa_Tq;k>>(oE7nNV7<{k!F)_C(R+7S$}qzckf(!-=m(j%m0q(@1Qksc>4 zCp|%0L3)z3lJpd573pcxYSJ^LHKb=rYe~Hi|_-JTrFzWgqAw`Xh|#>RMnz<@Cx!VoixBK@dFhz#CxhcQD3=;WpfPVK5FJ`Fz*fd!M7ss%8SZBTH+o zeL4H=%i8O<_xV@(``7sU*ZKR){QVpJ{hR##Tm1do{QW!p{k#1Ad;I~{fGSh zNBsTA{QW2V{ipo>XZ-yY{{D0R{wja}1%H2yzrW7kf63o}#ozDp_h0k(-+cS)jsKRv z|Bk=^{@Xv?_&xsq2mby?{{AQa{%8LFmv8?_TE#_#j@e}4PhjlaR)|Ml(v(fFJE5%>Ac|IHtfpL|{6+i!^dlvc$T z7QW>R3*UZ2{3k-)AN%H;@BT5qw9xtHyYJq7^M}4$eDiDH{py=v=kE{m_eZ|_C%*Yx z`1_;Z{YAdQ@UMLH$G-c^-~6q7IpL3g_t(Gq6a4*c{QXJ({&xQU6o0?L-`~Mk68_Hb zexI*3{61f6`2BDGZvOr>e}4~ue=mQ3AAf&_zrX*xf9l&m``zz;`w#H<=f1NK(C{6S z^}hrwNwGuQ*&_9!)e<4BtVuJqV1bzHAw%~UY^n2fa z#v(0F`+ML1CHS%a`~8&qHxl$W6Z9M3-CuaVKa-$0zZPrm8KnApzZUZieho9WJ!9}| ze+i*Or3Wc>oXTFMvR5hfCY8NOWp7gIUrA;EYJ&b+g8ulg$2anhZ_G}g8umc zHHfT_t^d`Zj&0r~=s7{367&}n^iL+}pEl@E^6i#C&)+}9mtXkr`pvYxzt^~#FCSK) zHb5dA>@^Nf5B3iaviz`FoF5#XoEH1-^Q_g}KRDXYj*24B+pXi%v%|f{bUNP7w)6XJ zy`FvUEa%(F=cjT!|DEz5CGn<{H|N{O+0$e_TW;R1){mnVxyysoucz&weLd~m+SkA8 z4YQVkdyS_LEh?PMAIqtbY`b00@1D2i#?a1U@%%Vn&X!xy`^9GdFumJr^q(JxvxmLL z`*J%Sm78+?u>{-fU=N?Fl&`(UUZb=8I9tpg^40QTzMZd@d;8v_`&M^vf8T1=Z>fK# zkAn11esI<-vi+iUesFwtRutza=f&QBwtrBZWLe&96~{$!ba>#^@uQ~p_*EnITk4dCy^xzwU2micGNuDKR<0A71?=l zx_5qf#J}0zd2v{@4i69Z4v*TW2j}~Z-}26RKi_Q2b@?z{ub#^Fc3y6N`(ZjIoq00M z>}OE)BAC;XyXBT2l6{!=8_oRasMS1a7DxN7las@Fdy`KS-&;yW>@|Eatg(=)X^}fPsbz$ z_?oww)$skj(RjZxv7+{m-eteh=@rxAXfT}SJfhnfPp0EZHkwS^qk)pgtyXtBDy}=@ z&Y%xon}R}WQ&4Da3R1MZe_qeGpL711-_I7z-Pu3B-)KKC@AMIpJwZb70c&GN`$oHSI<1h zk@oue{cO>tBbu{~N)8!anzD6xzEbmk`CL8=*V8PElRMk;v4-X!X7eTZ7n%t*yH|Sw zXxd^?Mr>5h9tO+B=fR!Uof@^1d{fSTj9GRPijU=TdpTP^EXuW4s`qtR@3&B|S|1oq zEzds9=1gAY4*juR3H#C@4M@5?vkXWI3pK5donX3vZ5^=$E6 zwrBVBfN~CJ`+*%kFf$^2rzs`Y==>%!K<7FYRndw0d^vR0ft@e-o z#(cRwJQzXKgY|FwW*T1b>WMcgeQ8YA^Y`z|wFaH-C$0Xo;fe~V-G4srHy&r~7C-Gb zek?y%%YW~{n#PZ@p@YE64+1Mc5Gy|rD+kg)%5@NO@#`E~xj^91%Edp!W^Xz!CZnu> zQ5+sLx`Pbn)oG5h(Jl0B1QQ$IjweNr#7;M#=7a8F1S~e3ukV3Wu|tDJ3C?VPSiA?g zc$o9=&32PL3CJEk&J1`{u9xKk%J@UM&@UzKw*oqkkNn#k{{p@!V1B<|ZC3BL0jK__ z^@@Zm27#Z;H{IU!?bGIZUVdWQu3%haZJJ8!EVsk$da~jdjFPiw0p~@lfa~Xbd6AtS zWX+?q!=t=7InMVFk6OpAlf#4d>B-(P&F->B#J3Mb9n4IN@Cs}^pD$dTb^VZo}yH)J-cny*7QU>Pqk#;FVe3znc z!sZjkGwvAsdy`8@+KKE(|E8UYdcL$1S(a)i;vHSOdOI8s6B4$fglj80XiTiE{i6mS z)b|!4watW&|7q8t0$8ST$KGr?W7r7WbE41}d7rnHn)%2rCw^3!VlV^*$L zlsquTLNDBucg-~-Z@E5bL9TIzX;F+HW4U_Sz>Wr_KBv%{ZRTvnGanZw3D zBBj<=Yp-=$9AqcwC)vr-X`97&+&Vu!IV+l3ahT^;#+TD!T29`m!}=0Ph^D-yr>7nI zoIb2g%Lv~chG}_dEHO^RLt~2-mZbK>G%F8%z8s3H10ObugT2%2u(fw~oFD8T9G{x_7|49Ovz06rLmNPkz46gANWn6F-S(1Ao21$$Ik$++M}U&)t(^U%xpNdXE`Z0oqsC@?e-sAM-!KjvN$hPER`HgjG>S(WJ{qB=;cMWFU3q~P zY7J=bAOBoeGwzM%>G581aKH|6a(sS%bb8p%k4}z{QOek)_KU-_g1zeW^te$Rofdo9 z`AL4Xhia8Eds?j{I`*t}$}Wcf+$_-L&X0d);Ey$#ymJj~+rRdYy6QM~)p6*c^tDjt@@u+Xwl<-rmX2z4XEUiO=biYA_*v zVGC9_l5%i*mLIjwi=0(|&|)V)M}ceR2M2r2_USR);OykMd4BZ8Dym)li^+Pz!SPAs zuzh-1oSkRQljHsDynS*C*Fy0C06m11)RfxUM zY{4fQve4D1U+Uh}H>ZtOd%xLkowQqr=-|zwm7N^shi&wBbmZ1~^GphIk)56X%xj%i zEjO@j|Jpxl`DtwVX=wRrYWb-eN()^+@xuFO4fx{G@yT)fsC|CEe|nf@dwb2p{OoLh z|KtS1$??%%e$4u46vxecznQf&DX@v+7L@Z1b;Jkp1v)VnIe2SswdG?|Bwp?<~FE z+0XU;nckfo{_a*wd;h#@zy20#*=~4+nsKK z`2+nWA~$Rzg)lX;SzL7btxWGmgW?GJD!X}fu361ah)kr zTa*6uYFvyW-o44DS$BAuF=fU9y6WBpXqZh%88=nYqpO`=LG#fHl*gR~Mf3Fy#HzdfjyMn$k$;uVD~ z&A!U)lGItd6w9PH_EMTjl&T05+O$hx@w_5XZLNquSrtw?LtkH%NVqm~6zBy8D=Zs_ z2X{|T!{)_^jLm5;8)kW4bc<2OGR_(od3TyOZ(t>FnZg0hyJJUNWABOrkwu*&)Rv*Y zBj|{~-1^3*Jp!(uRutm~HCoS?7w^;Z%c^ly`J3B!jZk-`X;ruvho*rZe2kmA9>1F=}=T!^p(fQ%w{^33;NS%1Gvc0o| zeMHWKBQlOzA?$1y)ZMWkv%wkUNgJh2E}NR^tqwnLFDI8*J%HP52byd^&F+A9Po{#W z2@!ESdq3zFu&$uKI>BSPejIPvqw+kBLNSk3QC8QeR|%qZ>IVsSUS|1r@nTY2LRe?yeO zVsbU=16O>vxB`96bB+9AyuK$jIy3S$CK1f}80NQg4ErRFN(_PRNrB}fzIv!orTHVPTz1}oqxeO*$=xBvhZ)9=- ze61Lf=k=TIB)=7R$OnT_Yph*ol6Cs*f`dzHLmuJj%?Zq_hipWB+0|qKTk%@Q?9w$piL$%YDtB~=_Xy9d*Xgn$Bx+QWI0ln>UKl2K=^&*L#LNF#&EuDeA`zy zWlh90M<(Mb!jI9Zl*N2i7^3V3kfGal@a7V4SGUWCz;MvLY!3;BD@T~c*exc*T+=gm zQShRmPdd4Ygg$ZPn3I60kxjhXGmkHkF+*Z@fzbH2$gdC{ExR|z!13gwm+Hui@py_z zVJTK2yP0ESShc)x6=A~Dvk?vGTwGFNRhvJ$RrGH|MMcJJ*P|shV*gdm5)fpYudRUb zpgnohZ0U_*A`N=dJ3&~{YVZssZsueU?ac@{26-Ee2$}%$&Jf>a z)=LDv!zH>z%m6+dbeOQCJR7Q0Y6-6?!;C2~spo0k^!hn$8Ce%0y;iuzI&}R+{YEx6 z{NZ5CL>}O_HN`~<65VU4<-`5a`GM(AM!7<2$v5a1gBz-eH27%VYqh8S4wceP5$|Sf z7~n-qGtJ>vJ0DMnS7XtcWK-4(V$pcayyz(FXfzlF61%q1Buv2`DIh@`L8gv0^%Ceh>GeADPNV z?2%_IaG3Fmtww(Uf6zw7RI}O2vc-Wo&T`=jPC#g5?i)ru6*dtMN@;}{&0BU@Wwd49 zha0i2z3CK8?Zg2|6=%?_nMhG{`buPGsSmEcVoFkOrN*A%LD?L=Z4Cb*Zq?ewk?KDyn(4cWb&efAZ&q24y75Yc(3@e~CI)j^VhwM&Q(YoZT?OA(uveFod_+2}hH)c{uIa-6A&gMY6!wFm3K$iR z$QtBuX|-retQ~me^qRM!EP|3la0(1NW7Kw5O9U8`>j8u@)re1^&H|Vc6BZljB)gdQ z#%e|5rZ3Avy9-5ToT4=~@@D&dHyxE8`czSnI1Q1KN?}tf`NgF-{;+ypJT%Mi3CvmI z%znW5hr6?UAh{lYQ6sC=^Ia8H)mrse+w9#tyo952`B1KR^L{KRGZ)mOu_xQ8ad7H_n)y?d4J*8CO z6geI~dA1l`1vb=Hd)q0xECt))dM(5?G;EjEeFs325rqs6T-*e}S9B6^k;JdiP;Q&B zA6B4tCvAHj*f)Y6JhYX|x@ubtJ2cye0{FDy5cd)>I9l^IB9mrEj4$PjU<*aecQjQn zxt10oY1^y>0Yu9tlSkA{dq@akM+m698r%2^Ij15<6p=ooQWDS%icFT!;*H_x03ySE zkZ~@xiwh&WZ+b9Z87_>MjiRxRE=}_92yaFehMp6;`0~us4M)nA) zgO|-wjWVGRIz0Ij&CuM{1_aRwde{qPUQ>>c@PewAOGc;dlgmM5)uW=#)_Tb{-+@M# z%T63H$tOAbP($*Z&mIO=a-OM4nogI91B0&2@D=U)3$!81{A4GWHsxJ{RKvk-MVnmb zOwcGlW86!!^sB8aWzwcGowW08GQ|#86&OnYy|~hA(3j)ZRK0s+C>vTGb*VTd*QQEy zG`K-VsTGw-P(#N%Xguoid)kUlMHA zv2uVuiuVrwHxAZFw0K#Vax zLl$%y7aQFsYkuT#zCU$n-J)OQSj$2kk>2mLSyh49x*FmwGfldS5`;i!&tny9E6T<>p552Wl#Z?;b3Ussk!0k4L6YqRHLIQ_;p}l8*=r?;^2{6m)!3V7Pwa-`vRKo_ z4VJv^J8gC+c)v;%@MX!bk)Ww%!fzy0Wq4UL2Kn@}F~h(yvU*rrt_CHiS4z6UT7ce2 z_m0u3^h{h^2G}%aU!*AHPOs0fPvSIC{SB1p?5aEI4@~SAg%@%i-O@vu-A7~nmavd_ zugEWj8*W{&_p(_>jnk$CFQ5D5z+6J26DN5Es)$onjYC+W``E$E&nXTmvveIDQ^x3% zTNnx2tGrocyJQGD~pEIbq9YeNF^&M)C_?Abl^Y?XrX*zh|>A{!LiI1|DtUZPIX zHph15$(5oeUFOPaG(k$%A(R;GPC>F_3z0#%BDfLD2syek8FLgltxwsEq3CTxURl70XuTt? ztYrLC&Q}E9iT^{n9A75WC1Bkhte4l*COcS;AGInsq1+|TP`T92oM;c0Jef>}QR4GP z@-kP!Zis^q{~iXjs$?6Oe`!gi~YF^<{bppW2j=wD2 z=_fk;SK@0na!NgXJ-Q%v>U1RdR~@NjO_}+`GFY&lq*d$?oGqCALJG@kc!ilrl5WmC zCFg%$GKwM5CfhJsta+=(K-^??s^?$L=23bYnDCE>wZkjaU#g9OrM3~t^isu2Fm0b zhaH>Ib%zm)*^Jok5Sz0@!6KOmH{ltM{(z*dS5{~;8soAQb`-k`I35m|qM3AL2AxLF7*i^YTBGihj{+m8_I8fE}EL zjT|t@FKK$%CM`|`e$iwVG{&gDL1#-Y5)a>sROtfJGYhR6BBxk&eVCMC@?rE)Bszwn zCf5+_T%${LLjas$zf%P)IR)VfkpLw{S)jBCn0O4GFd}apq9zQ@d7GFSei=br_y)>L zV1V-pZO=EX_Xd4*jt)yRKQ&?NHC?zl_Und~WSO({#CT$z;>jdVGIRNIE-qYJ$ zBZL-@-(1y*5woTl-6SfaDon--k``7g+x%q!G}wk&Zsty#_ayNWjTX^G*=$RpF=&9y zIr;t-&wwl*X-GQ>ys5y*9Qy-%CF7A^iP^a&Cy1fDHKs#2c&CeC6{s-UF`9LqgcA*A zdzWV7MIwKz)^0pf^UnT}Zhx-&riMg%!IBJ$`uU#d zQ}$X}A>xuU`w)~d5dwsrx?k{%HY`?AKbLvvbskAu;$uwM>Ca>f(F|3N`b_YunFkKk zII0uqDhIT)xVO+dLjswn$Opk9AP9j*S~mQN@P9Q~Qx40VLJAmK{Q5>>&cQEh#Fu=J zF}oUNSh1~0#Q=BdvG!Lr2SV*--0W(R1>$=SyiRATgfudRG8GNeyxzdg;I^YR+VwgV zgCxP+lU{mror;yk0eOTZAM`O{H>x^5D#J7k z5}2?-o9J3JAvmm11~phxJbpGA0|F{FkyZ7^*=HbXiw+q}D((b}iB( zs5VOeg2q#kT~3d=-HJ*iCBcl0brt=D|4HH_#zIdp(-56pr&=V!E=fl)#^OmTWh>8v zsSd4th$2@|4q-b^(vo9oUldo^_f!gkcXy3oj5*@3EZ||uUl4Z-d$CHAF&CC79}>PZ zOns_e1}E8ZGfvKwET#q}_3#={$n+H&StC4BaHmf7d+w`$P zxQ?xNGtX)wq;?`j$cK;;$Z0EQhoH#NP*W;+RnatO72NP9qGv{JhYNSe$tprr3;x*TMDohf-WwDKT5Hb0H)|jmm=wSy4F7FO5LTsic zm8}m>G(?h)XL#hMslP53B$==lms8PpdL(pjgHTUqgoW+y^t%shOp$0EG9fXg7~MpB z5knX0Hot=tC2OMhBd&5X0)Kl%YCUjGGV(-Ed1~Zd2M6%*5&@rZpehF~s-rzEae>{_G(k*R7XW`z@Y zSb}F(VB}z!@%{~(2cJZ53OGf$<|rUKFBj<}GBc(6XhYgu3WOWsyI9yzJrzUk)FGA$ z<_cE-M8^oL32j(y*bHZq-YC}#tqCTI{k48)3I=!SQZ_@)88ucGTavz@Dk9=I$`QgU zJ{j^T#KB1tV4YTprEG1=^jgge2^=iMmlN1&(V#bY1%hSY$X05+E)wlTNFObrmO^PZ zPx0%p6INKTJ%?DvL=W7WJvXpmy#Rg`_Tf;E#-Y_=`-*sA#dk)+N z;PTV*!Nb2e#%M{rpqH(k35x{uN*Az<;M;jj(~fFzI5cQ5$8Lt$HaJm9Q=9l$GCQ=W zE|FL{@B{?GP_1c^mKj4#@F5#YEGV`@2XW6v&@6&j2`zz9^WU&5xM9|5E?tF=w_NoD zI7ZOE($FOx$EU~bW}DmX4vWL%d~g3WZ=-YX<%h?|M`wE+IzK*X>#$baB0<~nP(X|( zh~YUXX6>jd@6f~n6eP{-D~tH8g(}IugJtiQxC+q`_M3!?w`EBmb=vkj(J%Tybo;R{ zW4Kq2R)?Af7yMiFXq~yRWq+q0-fL70+7?Tt-$`>w!zTPgB(8|AhR zRF;`Fn9;h>+KA_ru-(Rf4bvgHiH)ur%pA&6Qm6~+dZH6W*C8T%Ql(gca?F-1LOCIC zRa3%lcd$cNSW1(~z{xSmdU_ZFdL13(w63LMFRWoM@YV>GSua(GLc{f4>_=9)uV3z@ zG&FkbdZx4!?!pGl>l!Om?15=EBGG~7KuCnTr#oZ_5*rGO^r1j>r4#`%5#uw1&t48r zd#E4n-?87t$^M!sBRJj=&c+O|6rwW3DwqaePN2jW^1dXcttr?dW7RyPKbD}cGYDv8 z@X?DDPHMep&a~JHs?lAH%>nFDMoJIqi>b8nE2*}(BYiV-(P?cc!u~Jwfe4bZwW2WS zbZ7q)6PVl4=-fuH#gxJ2>ggbOlVM zig$1w5u=%`OaimQf(luc^pa*q)R2CY4{@qDky{jg$gH!LV@x27=?e+$hAtq<lFknzXl*9QoE8Wj zgA0QEqD^VU(0izykK&*r_%T`$IB3AFo}1Y_?mOGgKbGlCyLJ&+_m>mDnqZ~07-=Af zvx?@`g*J|hy7m*@K7K)ll3!3b`(ySV_Ipm%MR%gi?FcWJe4x46xka2*BDp}0JJxf^ z#uau%7rOg!BMdwgmSxx!S=NhHrqf-QoW|5SR{Tc;&Z!J9C1GP1YH>kHr4q1@A|qXX z>2+dK?R_Gt?smJ@0pQEX<4o8LBnm2ym<6c}H8YeB1Ja!++w_#+KF*#1h7-xsG87(d zDlTq8gJF}Si9v)7+pj4oH(aPi7#Z?8b3NSbXsKamWNA^6L@NVW^-RZL{kp+vL(d>A znnTr5dhHUos3XCdsGT~c$^qpFyokz>S+070rv$Gek0T1QssdixCdzKi0V@0$6`j(r z=utYXa#7lP)_j~5nZjQplN)Or7s}Yng%_w%Vwe(5RCI@DyKKR3tw4OdU(%w5NriIf z2SVlbw?HTS7{u7xamZNbSI0G$`iG-TpZMAMPjB_HoUHn{9pk531#r^Qsqp22}P(#TBrs}fOUvQS4CdZ6l@h}n8AKv z;>e8B(ok7sSCXf=CflxYswLHUpyze#_qDfi zb~(g=I;dZEJv<^H65p6WfbyC-Grc54l9QIvkz_Uyh0i%XlGy@Yl1$dHT-dd#gVU}& z;t*TxO~E<%5d-L#jfId1IK~@=(lO5Rr&v_DLg=Mwn~)-Sh!{I=Ut}Ci1q<=rc=ipI zV8Y6m@zZeeDC||pHsmE!)+AH_-CL+`lnVd~f+#!wOcCl9tLx5aa+P%@568o8GRuz$ zMn&e(d5^qz%R^)}aFDsn>zJZ{>CPzkflDD7p+CahG=i9$1W9%pUScQ_vU9nJ-~OR2 z;fR0KryCQ@c@+ZFNeCV8F-#U%r49_&4`5M;HwROixFV6_baYo)BFLdXxCuSjb;Ex0 z3PdV9bVzq;JRqH}+(%YUj=z}YCPF+78H`#rOqedv60)8mJ1r~&x`*w`97Ql&*R%v3 zf9VFMz7zD7jPZ?O_v%73#=I;xWf9}6WVdQ4R+L4eP#LCDjJXLlR=8=5e*VYYL9~Ka zGjq5Isv3aGaM6%&*Op9>4HaJ`Gc%_$R6sWK=+hwl0+Kh!thgBE75^3CkhDVzmV9zH zXnoi1x(dRy8@(DbwKIk2B5$Ta<}GugghjjaK*2AT2&c0~VVR~-#4a7JH`ggXvk%NC z+oyozhY9!TUg4g8l+qnPPPpfv#N0$6*DX9%fi-<@41#Bb0U|7fS#E|~PPPa^ZkLqo z$i&0;1Lpccl~3}0m9N6Q3VWW1GkUdT2($qCbEP(iRzQ!K_EuD~&iH#BWK%lR-Y)5r z(?esCaXw2dwnu~MYO5|BmB>xv`W)NMY9}g!#OUd!G7++bZ5(3&$J8)TU;cpS zNL68qraW;=K_R7&LI8vUpU}nar!Ii7fx*Q|s}Zq8V7Pfr4>z=1c3!QH)=Fz2ZwaIJ zYFR2=P9rOxOpk-sPGcy{hm&JjzvD$3Y7M{;q~^+BQ|139(f(O%7~HbGOIM`LS( zs459_6sWC_lOUdfrw;->d4m}S?B~jA2MQG9ZuP#r)5yI)Z!siUdh~AFGhkBsMbI1$ zxa`4b(lpw-%*k(0GTIAQt!Nzn*H!3O%MbQNj)&r>`|?S*0uaUvL*ZKnmxzLrujwi` z)G_1Tp&tx)S{L$0L{yHhnq5zqtHpx15u*DehI}zysUtzR5u%O=Qbz=- zBZ5e~SR-|WSTjCAEa?DI-uH)ek&*Oom^_XtHvORG^PL(|edBi!{$Pi|G#!*iMfS^{ zYrm#5T0(WIc&dCMoJz3t)3>8uR~H7n<;Pm0h#)rlUUOiB$t;qnM~q`VfmLlPaJu&d z%~HV?%*8NgVvZicVP8v|6kS~%lhSE>ljD?j%7jy5TH0V*O*NP!j84}H6xOiVO(Y?P z)KMAOW#qJKQcpWdyJ89th@hRX)v*9uJ{H1j7+J)*ZpMo2P4CDSYVlv`6twQ-k_Mrl z&F{3=t4Bc^3Vr56Gul(QTphZG482X~JtsE1_2d2m1Wt}#;Wem@3EKf7Ox7O}tOiV! zD$OAZW5?|9WvE`5Iv6nNlb!^#0Ac*IBaKG37$lRRcH~yx94VeV>xd`S**FuTWNIB1 z5ycp;qdxR_C2^*#IBLe17_DY8mCGXGydwrm>Jmw zgBdN9!B#=&hFIGTf_dj${M6;*I^=BL%Fc8JgfaeMFz69b$&DjiQbXV`CLaMXo&d>f z=`=gJnW$z1QdU{p0u|}V;|=AMK!~qaxNvht`pFXWJMk3Gp)h-|dW~?XUT6GJlY4H_ zh;|Dpog&iQUPH%erf=BpvVP-+KpKwB>p=I2`-l6rsY94PIINj@USG{lH-Ve$rZBW~ z_xNMk=0i|?w26-(>DC#DM3d`yE>Z`=Zo@iJ!S(?U@}%T&JItdz@shDB3y~lJiJSo^ zCQOiPG%)=r91%Y_(!vFX`X4yo#4V<|_^{Gpysjxl{PqR@)}rP^=G!{*HWdkgPQ@~j z`){Zh@gzVmTpAM&==Jeay!2=|-G!cRGnfs7ycIERw!xgHS*XQg^0^^3QNZvoy*c+( zUQSf!9!u*IuQD`bJr%NireWqd}><+_(`_VkV?6hHK6Vw?wRS+@*b@9Yn zH0`fjwAtN}q71XG+ff~|sG%N(ATA(xtMc=z5?U{cyvc8e3M>K$*%g?84AqQ|j^k07 zRTa<>3t@*gv54)&)(bb2nG9OM9LV7K2|&Ax4NwI35H=@HXN8k*2$mjMP2hoTAGiwj zi)p%VtbsT-fpKW0(r6J@%aI3SLlTKN0|&^=gNz10K+ZJ~Y7MkYK%71yCKE~BIFi+4 z&St8!WV1uqjV`{N?3AN|>-q)Hq}#*<5&JLT0lQy_dmXioF$PO7(!wpA5VofxGUBSW zJtSY-yn`Z$(z#2Z{~|$~NicOs@1NHth0r#CPW&YP@da+Oll&@#HikoBD2SIx)M`_M zYp83qg!&;c$M)r}$<$H0KB8U%gJ&c#z)}H_zFLIpg530o?xYDQW zOiu~E6@l~$AvHQ1D}QVIKK=+V{>Ag&1MR7b| z^}I}RUqnTXP9O`owk`>NphWQ49bGQzH`m$+G&ITHBnnK%xiLpFlGrHLW7A4e316V^ zkkG)jDBuzCDT?Z_KG4>ZsCGqK!gLpliFfGmp>g$)xkS{a7*4+7L#cMUNXu^{B=tAK zl1luzT(s8G--Q`!qxqW#5@W$=G2@AYvxsd&o1C8>ax8+RV9_1P^Y6DGQ?K3pPfsF! zBN`3Jc8P1F?o)&mBPv-u<8J2-0S|B|rhjzt20TWmR>`ih1UzuVai4c#gK5{uboooN zEw$j22syQ0iV|q3qro*~0!u{=&L9)_%R9*iHoSz1-mX!JBRv75r?`PfDsXHEHPRt>_QY#J=#NeVcKm#!x2h_6coi$*59eCQH)swRSY|Eg5{e-W|!dmK1`G;YMfh>5Ay&ayWqTlKlF_hUGv3s22czRS@+% z+3`J9E;O7;ud;H;m7db;==5T^J;B(TbXmVlp>oYd!j8}ti5O!Nh-iekL&|h`IBc|A*-#65$5!7(kqTOyzn}uL17yLH0S>!`y2%1mbQe!_ zdDx0^ZaapjOAbpC7NXj)(V4unj~_eCHM3*BUtETi-s*W%PS$*Uqg;!G5to+&czWU= z8}lI_30VWRhI-9$w;PPYOa1RrsCfk!3ME8HOdEFJ@t312aY$c72Ta^rIaBRBxcI8b!jUtVv4M)|e1? zPv|Tc-rR~Tqo!r9aRS46Mf+u_?AJ^^&8wchyvF-`!K7MSr7$2UIDz9P3D@<6mXN-r zfkVTDH2>vJB5+9;;*>J?Iv^{8D10Tu66Eq$2A5Yt(5v2`XcS@$=vp3x)Ge^~DjuC< zR9>itRo9XM zYW<~ND~gFeS724qe?kXVG|aK^4>OS}i<>OtX+89va9&brDHOa$+c}f3N1KmYfS8IS zYKuJAilzuq6^D4M1Rn&VEOcbU&;(NpJ7Bzp&5|K8Enbqel5{^%%z{FeP_IAMEp8TJ zjdz6Y7kO4rkW1Q9j2borEb0&YsgwLF`o zldiWKDJ)F7+8aRjB18?DZiqu5s9yRV!!htH)w%3XlU3G}Q3GArfw~oYZ>Hw)ViT?0BF@1HL8Jl8asfdyIR%?qsKT=}Me~FB4xRkkyac zSXLTtzq{5U^J(g`iQP$QgU;C#5)kE-tXKmble}Pk2)FImWgE#v*8wCjAV6pV0piJl z+nabnJV`)z-dy~idc9-psxj+qWBwKZZ}C?SWe8&(fsi>g55Xhm86dt`}rZ&!O;WV3l78rcObF?<_|2# zY3Q8}Sk!9A3fRs3iU^}Huc@XxlE00>Z2;Vb6%d97eS+9a+)x&qUtv7vnt_C#?$G2e zMGJ2UTaT|bv{1Ha-kY4e;g?OkIQk;c>xA&BAk|GOvs(d)0^`w|gkvD#Wy6i>d{CnP zwH6o#{zJsK3H>j>jR2Y*eh}8_Qv^~OSY^nHIQGeK>yjw_j%5gTQ&FhG4itnt(#>WY z%c`yjdp)VdO{B-?iHWBM7($NpAqhr6>tlRv3nVg2tPl#_&&KXc>UMyb4ftsR;ADPD zyEG9CSumil?;KLVy*<)c{kw!tVlKQSF?q3Ly6@*j)>rgsOVj7*#@eac`clZ)jxMS5 z0~&U1>44ncj@vEiAW_t<1xJJ&>}9skSpb4gW+*^U&$z&8GPy)4;Xc5z*j<4`7%QL$ zQyQT+;?8)5R@Us6GKSDeY%C}yn4r0iODv27Vw}R#1ly^au9qaw8<}KpLDxsvAslmY z-ERc8d`z|wb%<8WwM$5xe0>f*QQ9-83^4F^%J0zlA|0<$qp>=rWm+&x{6rMnxgsB( z_60L}$fp26B#2uMIuNtwxv5@iyN3{%?U2?IU7`m1e6ZkM7ox>X)1-Js*Xd}ayO4>) zp}E~urD*#xVO1Q|$q0_M4;?tJ>#cSOaMK-}*^Y&(;8QWRQaYczL)0<#=nUma{{HdG z-H5ldYfTE$YuZdyn5#ti*=wSDidjHRnWmfFeaQ3_(S@HH)vom;D!iW4L#FNd-73hWfbUn&oesO~b9)6tp$5228}-`qiAutG5%gKzp# z6Q;IZnuhEh7ZML7e`=JYdNHZ9_8nyPh`g_tU0OnbunBT;ELjb50U0-e--IndfnMVf zlY=$Q(JCg5IqoEVGQ=U<1x*;%>T#O6ZM1|5wX&W}a16ZdL$18J9>?M&Gi55uWh{jN zzPXcV@h|ie1`ceb7U5AbIf522DvRydy1~)na{^AwtG1**1Y?@hsr(h)Z`BEAMKjbf zoC#$-qz>2d2)75!Bmb^Lid{p)#MH$UiNS0l=)U#nurxa~3a#`|rP)SlGJ`Ow?X+EB zkf|b-mJ5`!Wygm6%|(izmaw4Zifo^1PzlVy7elIMp6H;5eUU>?GN~@19xPH%=7|+b z@(vzEtW-Q0NoxgUFALA|gR#MkHw1;r}rDi|+04QW`gtH-3iN zQPP=p(Zg-pIfWRT5ZyX#k`@m%_nr0p-KM%TY(h?{tm`^^a@Q4zo5n>$_(b$y^n`0@3X zYosAZE3>HWedZN(v5~12Btgax5jEadYUlD`REjE4I9=Esj4UI8?*q1%7!M%KCXlpB z=^S^;SGPbS3treHd}YTGnV1%3pU{d? znx!+8w`jH4k6JX^)KxK@l~X?ALII*bsYo0OV;2xYf}2)( z4-aVJF}|H&b+|xQ{Tuh3ir^l73vR}VA#Q83q`__+(IkG0kc1d zhv~jG`HD>uuBD5U6VMdt@ulq!BdNHkD7*~Xzb3oZDQsV`MTKZ=!uP-IMh2LynOJPh zb|@j2U)(UR&N-RQNPY8$m5~r0rs^nJiE#LH;e10nP*>btU>-e$kma~WX z@;%O`13Ia`+Vi+Nsj)`3jj=aSkp9?Jj9u&Q6$ii~9?8c)H?@0e41jN$?98 ztFA+Hhm!GpQw@lRGZ$01F)baO2~-a#Vrt3_ReM6WiwtGsCdI=TgBxX5wPzmOywNNMQ>TpTFO`znVA3`XZR#Z{F12yi=Kccmv!~g2gEc?lGyy?# zWifKV*3&>;)Kgzx`qu1QGNw}?&PgFSE;yl!)M*QV`qbzJ+n2@@e*)@oM2 z!a@D2PJ&ACzJyeoDbseqR92JGPT}haQ(dZ$N3hJr5DL&^Un1)g%IX1XL6tv1;VVLV zhJW(R9%rN6c95ZB&w}a6#>Q>!wtd;2r!s&0z7jMwu^F75cy;75{ypkG-43)LM=d;J2 zqMKSPR6?WCN98+De-SP@9q~v(E3nb z2i}?+1ZW4>k-HyFC&UBpwn=se2|%93!n7l7hZCKSoUED0X_SJ+4&>jAHqAqJa+{av z>9=&7StGGED5t!Ynw3qaA~@lh7LSRkmpH^-0-wu(;JT@qf`v*;@Bn^-Yk5a~_r|U? zv2L-&fCI}ZTKcRhz8eOeF^3tL<=t+_@u+t;6v&EPaVTtAjxb}xK18^Mj$r74bpwih zax^5+N6F5ljB;-2H~4|&ri`v$gKK_U!{Z5>lu-q=2K9>(-Ra?%X>7Ph2pFiW<4Z2$ zSD}$ZM9L+S1HopbE$Fh4*VYaP`sWkTj=G5$r+XmyAy>`+KnTX;8bxtczC@}ry97U! zWUDCEBE_UH*&$GZ$YlbA%k8xUs{3*RldN(J>=t-M*RdmB9~->+G~xgyM8+6LYD46N zI7TV21L|<=ORL%-1}tQX07K>!A2Ww*?(@o8Ap66V<3l=H8Uh~-l&oq1^D-LMrTyFV z#qLW0q6!ekA3#m(0NUpqI4i^oCJzV0-Ap7c1yiqm>8rvnL-fB!z~UL)AlyJwz+@Q^JAq^eR>f_k1k?3qd4+K@ zcxLyg@F=I;6iwV+7Ea+lPs<%sc@<=XT0&T8;>BX$b}GqA1Qzi+!M=$qW@^WnLi7OJ ztm4}OEvUHS z2x>NJR*dGLUqFbiZM72G&>q^QC-E?f@0D!9I>+FMS#u)=?q{2Z`a?Njm^(PfsA5uj z$4GD+Np-7*Nw<@RqBpKo7jK@wsbXHt@uiRq4@i;U*_1C$DydPnWebTQo>8Zz)19=s zM%l&0(y=X}NV4g2OonCdvUi=x3D*kMWVXzNPtzEOxk&|Qxow!~c!DXn-g&xt*iqhI zk94D$l|VZ3NnX*MQL@b4n2e_Eg(W&UB-3ax{Hv0h$=Vj0$sqD5r==%ua3uo2`bpkV z9W9Bfe~Lxq3PPjvu3YlU@dshrBx6Ff2AXNlj!{^CzdJG=Oo(+*FoL$J@kHPHK zf9WU<>J6!Zx#|3qY?5 zANi}Lxg>z3?^(k|PY6hfB-IU>o3AOe?y{ceyCj5z_GzS@5JYU$k%0THgo6pDV)hkV zmQ3M+4hf*gnpl%yvpa~WK%zbe;nhLNMsl`f@FQ?og#F_9aDZJ}R;{7yTCVoO`!SuE z@|C_u5NS4_LX?G>YB||3!4QspWmgLH?_+p^TS0pw-I?JXis zTTC{_h|fB+p%_e>vABr1IV56P`)vgEN|+`h8o@N5b>CF@losy+@8m&gLVqohsaZb& z6ASFpqLs2W;NzTF6R0>I=?LqUBQnIV(FKi*w{6Z9aqE!+S9fR;4l!nas#1G02y2_~5kqQauq-_??HTb4?Lk62F5i0^Is(n9lmkR_M{|M#6R^>0F-> zciheVHG^k6N!!l}(8&}8KSgtfwo-WxVdnm_dk~E5L z=&UFfipwT681~qhQe>_nK{yCWwFg;DB&>k~^i`a9b|YP!c#e>2GtV*h5xYvB&T)B6 z9|K7leO4xvX_;UqqQl}i4(Srp2*l0114PC()>GtF|d)6HRj` z#mG6?_j-rL@hg|RE@*#k2N03-5Z7td>oN-FJzoxu*EPr_XjF{|7wV-9Y#ZHz<4r~( z?w-|ZptzVanH9hwsW&o$Szmi1k{S8^3Ic_qhwr~DL`VjtB;q?&iwd0y22-H51bk!7D!%82An|zHzk!}P=o+q4F zWIr>Uxa|nC>>?OBFDu`2MP?gue-f|ib&8{Tba>FIYzvHO8pQ~Q?laU^3mRw9R&WY? z*Cb@*rUShX1IY?B5WU@OOzH$Dge!P-)FGu@MJ|B&d;NMMR@6BAj1qk8<7-uZ9WIy0 zFb9WKm-3bYsR_<(6&eN0QzIuD)5_vLErVQ^6~+uZJYY7ni|C^(Jfo8jXNz*XE#-x1 z&wnZ(nl~%}KJdvSJXEP@IYkngi+wltW+HYv~?*y5m3{@Vpv9?<+patbikq*!3ddsC3+aK zpP}fQK9>@RxOzqP@-!jk3a55_Bd$>^pJgB#|6^a$-A)5twxWI#FR3uOl542=nDO+G z*}?~c&fL%k6a!uJPK$u4rtCfu8T}f;R*8>Z$bu?DnO%~m%r3=0+oyfsD%Q%SlnDai zNiPYosNEb8sJ322Hd5<^Dzr~;&H5p$0A1gs-=Jb@*xUHbxcYEB<&M`I`4fh`EO(QT z#r$bClH){@DhZXmo8tPu&{tDv{$s#%4OlGtgsGEyry<``n(BkW&ehXs2sKvcy$l-65$@acg%x29D;!wm@3a*WW`y2RRX75tS-(Bpl=Pen+(0^1Nb_&dp6&)(WV zp+Z-MLqvAs!5*M(s3u5cN;&3yT=`lRa+XvaLKK>CzmExki7ediA;V@j z0S+4mP?+5qP~Zi{TNeoX95xmbWJv;IBWeq}Lg`a;e|h>~%o@=(9h#OD4+?9*IN}V= z#9AZ(K7GKzOU4Zd>oLKEM#bxZ@T7A5oe=I-Ii)>obN4ex1 zI563W*myXyqukua?U3!!!dUI9qPQczCNhwcUd8Zsa_$oSnrBTJbho;U=Eq@;%G9!7 z7hdu6-G+;@4aEM*gb@))(GCeoKz>_0|Hv9OUPFte6Eauqj7>{;xQ9ldzG7$_laLe& zYhlTvs7)TtC5)ND>tfLh2z^)~0YWJaQ2nNG6(B`FE*xR);$|r!R1y#iP-h`10fPhl z8bGrVpIL>uo1nsFU#YMFB_E%>`Kl%ziHihTG$eZ{{8?^=(3FHqk(4(rq*@$a!c03) zn5s&Me2TG<%o*$|@?Ci_ygf*9x-Ur7$1w&sE?OQt)?n_AMvUJHjwf~lr!zDbb;A9- z%udA=bGN#>tDoyQ+-P8kjO_vAA>8I3F)~JwKEwH-5IFx}srlb4G<2{hU5$!=KjvcKVLD3RuiP@8E!;-m00}wuEFZZm)`FUa`t~k!AKv@!S+;T-- zu;|n&@}`DFe|(F8wyUO}|56e6QqukUYE(tG%wnbrUZn-fO2c6Ms663Dyik@yJ(iqU z?yXK=nv$qH)d|#Z;7tJ6*#PE;&YvaB!$xHppgZVCM0RDehiDhq1!~M1y9Hj{#!i5~ zx={jCEVo9p8da3zE-HsVm1{M{GBn|he(@!`0*+E98ppYUgfd-jZL_$w&4PcmS=?%C zxD8u_r#t8OToL}l)^OVhTf=SRX-jUl20Ek(mm2+GHggAT1--rfA@E#5wB!c~F$-DG zm-Fqx6oI3TeVi?x%jvYSzRxhRTcf$*#Nem9Z1MDA*6`0#BFAjD1StlZU-#j%(dHMu z@?lQKa=`^D4lA(HaW2@+*K>A5a%?O|o${`;>@3UmR>i%}w~vcoj1in3XN^%wyUD%z zFn^lN-nUleX1VRnw)Y=G25q2gK8h0(`>UN)-h1}E*nT-tR*enMQl&4-4a&!S^~m#E zcje`LJ$pY}8vJIqo&6}d{;{3*n%h|kG5@jqOv?S;&62CKw`+mGoJn!oUl zvEN$M7-&<2)oli}_&B!Y%k9k2r{-dH7ZVT_v!|!U+;1-)Kb7}f3VR<@DfYEgyQ$>C zGy0rxBwwx9&rgUkmLy4ZF@L&S&DKs(qei8DP-w9IP_8>R6YfjPEotbhiBvUQ&mU*& z&pTzF?mxJ!Yc<@P*lXYuV)ncF!fSr`q%ku3=rJ8}?XP-Vw_?;!o8QSbb$EHEw~^F# z1hUm*w%xAhch42sVrf@PCJa+?H&x$2veJ6de70EJaes>u+Uw`{vqf+AG@aO;EkGe2 zceQxP7K>V@E|UGv<)US=z{95wcjZ{wFU};NB$m$n;pHT>Y+XQQian&=N&3__gYBvM@DiLhl_ zB;<~-Y$b%2CRjBE4v=UM&JhyMbbDe#pjL&)Pah-nbk7>FCXLFc)tY*xd0k2MYn2OH z`e6UoW+tyYc=yX^1p9__)y`%mzWbnMN3kn<+LIqX`EOtY*GwJQfU)oH>@KixL4&6f z_Sj@PzF)7Nmk$%s%103lwB&yINyzPcH}|Xc0^n^vx?29YTzy)?(4J;n zpZASBm`P*K5ZpBu_HS$D$dmm%-Q70^i*j~<-}vxw-?)F;z+xKf_x@Y_1j1^#Z!F$* zP-5oy4P!y9lXClE_0VGmG|S=hol-iR&i!f$Fj)4M^q@evs%;|NXTv0*wDbLZwb1sV zx&Dibl0AW>r{Q*SIcH3Sd~vPhi`iyFVsEzo@%bq&m*$LKXYZg?xtu@p5_j$AB~5-R zc&vf%gcEze`mxM5pMmvZG#?Sii{(RWMH`;qy@zSf@YV-K&RU zzE9ynm+)MB;)LE^8}#9E^+1bkc^iSroxp|YY{jt0f|i{f^hluV)pb@imrlDq-oE~g=lt{LI;V2 zjk8G^NNO4lX>~N9HqM8 zdi<>4x8@rG5B|e2e?*pAdyWWde^8!J*Clo^f%m>p9oFQ6#`Ar0cyDXQ&^Av9LsHQe zPY-5K^Bin!j4oMQ&o0xHzS%%Y{Y%-0=X+(ck^zQ8Gt>~nVCu*Wm?i^58!$R6K(<|x zKK}99D&n7~`@3;@|BQJ0Sy&z6jcQ3Wz%~kUeY&4Myks|;4;n7mjy2|z$!F~_fTxT^ zDDUlu(U{Nf7NsF71@~T*a9)jNZ@!^7?mt+fz1M7M@ZINaxk*&-=EnRX0RGdPeP+;a zX7lY}$=0!U;W=BZdHQGZ?dL5AhX%{ZhjOgv+R6y>{l@urXIV>;gb^}n|5z=x^D|l0 zK&+TvyuB{V-_aXP*D?tV#?|ArGgL=ywr#{jOOhxwpDhfo?Z(CO<9xkZKGI|t**rtJP<5@<<7~dX zS{kC7T5OSqTrIcBqL+x)y5a1z<@ow`^@~omhyB*%w||j6Fxg&jZXJn=UrlVyZ4X3b zwk#bp56>1;RW{>KbE31!S0!vIFusJ%6BGm=8vq|z4U=~;#X?k7YxH(FdvDzcu~=?k zTwVGHBs_-RThA6PJ|%jO5c3%=liH4_VYUFB_&LUmt?69Ez~~tw6J^6 zHqEkJCYmy^x4p`cXq`=~ynBBC-V6(#ExP(r9$%>moo^EObl)zup-LPwW~e$mr`8B+z0}el)o@=JQ4y>)z1t)iNgVS$7Fau%}(RcgAGg4&M9W^CMOP zf6-7GO6n48!p__0yF^~#1;xwm7K+$>6QRz==R(A%Wq3*@Si_(+%MsO~RqeX;4>7u4 z5#aD~#zxSwZ2nQsXJb>B2f$JoK(#i)YG<2e1{wR1q{FKvYTt&P>mkq)6jz@*?*dk} zEUcHRfg#5jSv_WU6PvC0?0LJ&c#-$ZkXT!Kq1Hrqp!G7MuT#z0{*|<# zS7-NFtbOD|dBQH18!6F2!ITZv`=QpZP+H7}j-0H*%I!R;vD?p~zy&7Jg(OYW3IoxG z*6b%TuY?z%m(}4x2xbk^<KM8bb_9oWqt{bYEVr=e^lNZ43EX4Rjj_%q>8YGsjOv zj%d4ihir?*BEAvE!g5j3DHOA$QkF#{{iUK6UBa}RYepr83_V5dzge5*#3o;aWg*3y z()fUq^*n}ohP>T!`F{Ih{Htf9pt?=_vyb!lHe5kYA7M=3&Asm6KB&70u9h=dqsgGv z`m-5O-#q68OWqO*c70hc7#4HA=@wk&Uf$)h&+K{OXo!^?HPSgEK#J0QVm-o(8B5PB!{{Jh+><}h_i zNE{M(G9-wI30HMHNT@Q=m;&q1a(jjPF&SVUz~vNc{9*o-t?xe&){{sk6C_NJ@Wqly zl#xNfJUp?U@L(w$DPL7|hn%ZLE8f)XZz*?L#jdulQ-b$dLcKA;TN59zJfjsXAreA+ zc4(bPu`}&E^lOVzWiK(quv6X@_^_p0J1UWjoi$*cO^usV+(O}O2avTr*r9@1RSuD8 zf9TFWub#K{1Z-1cX>%DHk}=Uw)-OVw z409<}9QPIR3)S%osm!tl*Tw+$asT58Q-C>fk^SwxY8j%chI;2|1H>$o86?PxO^YtQU|ssWH>L?gHxIE*tC$uT>KD^$ zBVYv?%2@0I;nc14ng^OGBr-pJlF$O@YMO-1xyPp$scO15K5Qe_LcLlYuRZy4{*YoF zZ1YGxYLmGdomceTevY~8>UgAuZ76Epk*rqMl<`QOey9}mNK>uZ9X{u(JrUiRACVZI znA#layKPR?DwZOWCadTB4~l|tS2vF}itOLJl&hzN*EPTK^OIcUl$$H0Mm`Ok1ove{ zA1oK2wJn;IC`)ICt`YG*YTa&DA8_Pvc#WJr%qRrn^pyAOcbbwlimGHVe+Bo={s7p?B)3 zX<+KaS`n8~(sZlm3X(;8F?%m7O=^ktwV}c$6*z@IrI4$L=wdF#$?q%(ZU^b{hsqohjw+EoAQp$ z1NYd51$18`E(RUKA|YC(#UKJt9tjAPWu@fe*-U z6?Xslfc_ZMYT(C2efX5Xb@)9`tlw4KNzHlDxWXoHhA=rrq=wf~O$u#&xULtL{)NhF-auLV z2rfe^SS?U)}#`vTRV@9F}0k+FF*ZZG{WA znzAW$HlFINT|-U#oiv>-KRYCK!S2Ic@SNI`VBZc}LJZP~>@JcM&x(YghEgx_6CTll z6|DSmu%5r4GqfKigU8w=C$T~_LkCZ`+l2JI-J9~EE$KqBh)9H0uv^H9SCJ8#Byy(N z7V}H%a))_z-ejNf&?AwDXZUDGY&?5cx}~o-Up{XJ%aRzX*#4CEL%CiJ)~|C!!yTJ} zZyB*@O@YL&xs`*}d*JEgihj6%!j#1?L0%5zt7!5V663NV>FMJv0RD5q>icBMyQSV+ zrnUcQT2a}%NBv+NdemX3#*_aWbX!B#?=9h3|8AtbVUTFNbHQ04+H_}NmK+Pxv3aIf zag4s+Smb7vIA$?8CS`20ayar}W;uR`85%kfKMi9CK^1Yzt~<>j*!akopeN&=NBSG{ucGcus^ zzMyt+MAZ8(28{IJy?m8X?^}Cb|&uEk>*r5j%G57}gwV8zWPZu9oKpqO(JwD5PU3?HmKycA>$J z;r`~wVCcPd71bf%`Q_q#H+jApKOFS|c9L@v9&(5|+rh*}e@kUu=?ZMsznM-0@g_L& z^I}#u;gE?&7T5PSFx&;#5xb$07!i@KC z(I~9CLOhIV6~iI$b%?y?_?>j6JiFma4?(Xd$FN_AFdiVXDoB>DemwXT*oMt;KQI>P zA?tuqK?|!#)F}W7et{I+r7KXKX0*bpIlpUH0y$>btHC^CJnAE0h%REzFHh^^GMzp~ zwRB?ClSF`+Btux;JceKh{IaVI5iwUelXNrzwes{4!%FAFtoRp!bh6=hKyC{(Qcs!&VA(aQj+? zF0F%F1T8V>e0GFm=^nwvL`fajH6dYh0D~6oaWBEWT434sb94KB6`_#O#Uskr%i}mA zhp^YE&@iD(Xc^0xOF5eCxesWn_v)?onl`r#;sYK)I`sfY)2~|>D@~)G=Ad9Yq{i$4 z<|hiolxW8}ycSlYVh$`F=v%=o^EQimivfluoGY3$8=S#dh1Lo&ASz8uO!rHNblQEO?pj@8=sivi#^D zqGy+_NbvE)12Z65R~&_L+Zf&J4^aJxmBNlg`sMjF7s6;vL^LiXf42@lFd4eazs{=! zWBvHOlfYsPv0+ta@S{z@;Ax$w@ztF6_y4uxbnm~=IL?fE#+4i@pf4mI3!#EYo&xwH z&Zg#E_KdALN(Zv#ukeU1IL1>Aic1s=h_|dXvLrmR!buj#W@^)ozq$xC4h1B}MHVgI z`XiFB-D|mAndN-v6sLOgDGZPeXb}3Mt9X|JfIxJ@i%(MeMol)4&l^q`f`ddcON^-; zQqQ1xv;{R$WtFx>g(@ujyhPN9SD?CBTj~8}A$4u+l4a;=ZgH|aj6WUMTDGeBLPS*IS{F7`sF1EF8io0;Vth2zTvzT4Mvui`QJ+_nANV=) z@fPtHH<)=i`Dvndx%=B)a{%;gyvK{nE7Xat|DwK$T>`ZC(n<1ph&=nmTY4wSMneLVnQ#X0I&q;*D5ppr`oLdr z63&K>)xsUeL{`+k^nX-QuRUJFymbxrdB(g*NXpibCFK&T;l%F}oxzfnJmrwa%SZAZ z%7S~5g7%gcgoXxr$i6`yX;GSv*IM7^Kcf2k4c{Fm$&QL<>Cz+Q1A7T^=_bk zruT^c5ivijJM`PXdgZVfV1G05xj^~H{KILDU-oSOa;)k2DOPNwSxu=MaA-DeL*vmJ z3kXB_n&-`TkxkuD58B?VS^N`llHTf>h+4F-?4425m~}i%inyeqF1OP<_ZpNJ>eZMd zPVzziw@$|i4Z6Yev{lZjJ2ZG`=yN&7;%U&EL!821BSYUe1YKwujyS&Yw|F~mIh+!_ z_1X9M)p+8bBb~TT3AC~;jrEqc?a}`COh97hRz8w2wxk(@l8l9+W2r!bfQo~8!J%3H5R(a@N-gFzeKo#YTk!bqqDg&8`(Ouhxcx448w9W9U^}e3$ zza{qOv86rW_j9axEztLChV2-;bHeCb2rlH|8L7mKIl|7NjWauINwpjDsKm)?Hj~1^ zLt*O&_nfe6Z%kc*FWCCcXNS-a5HsSvvS6@JnJH?UsYoS#K0T*M$(y5Ohio;)agCNK-t!Iedn9oWuzO$E{GH&TXqeiT#rYGCg(`E% zJM_3kR}SkVOzP}0Z7%3d`}`7acZe-V=X=R^vZ(f@iX zslW2c44OUbP|752DFX?W@s=UojUVJv7$lz&SU~xghy3R< z>tizS6rH(yiX`t878piw0(ZI6_BlGC%^l6d$Jhg1uaS207+dZ_E$#+vnvI9}Bbp2p z{CA%E>?%g;t2c42K^z8$AWdG}&sjh_7tvYO=k1(cv6v6k^uisp%^k}2u+Ec^|a`Wva< zBS8w?fWot6LF_Ir7ij|GM$oO`>ufo?Ey5z8hEd3e2tT4F5tTn};um`i<2AYb?uBa!?3wPi@~tO~bg`wdS^&y|x1?KLM6zl-%nB|2zk8LiEp z!^$giIrZ73k-*aD_QZ51?1_jxNh@Z8FSg7s5+y%wg)%mWp!tlsB7ry-%cLxRjAU#Uk>>oH-aDdMuw5*XV6NwDh-3e9|y5mLzw1q8t+Z1{gPM(T%R3 zyOm@}A=s>#v7=wrteK>m3lXKWHN=A3L)>n^ccYel227E_L;WDzKKsr&#O z7#j}zqs3R^p&0=EqTV=-O_R9gNXwiV??=5GsxM z__0Jk8&lSf)Rsx{#b>L#4UR1L4-w)?a!NO;sW;wRhtTD1Md5r4Ys%oP@r7VIWBK)Z z{sT3r8h&)KCUYv=sx6m|)2w&m_G|?e;3R_2nuMpe37!$-7~m*n5uBI~2Mx;rdo3?U zBrx$7lD0^%q@m)|h6ST@!hgZPAln(_s>w|&z}RO|RpdNds!1)(l5X}3;#>;!a$Qn| zD=Yc$*#<^Tj@O{}EIcICp=QCOpP+AQ_2HQqDgude2Enhj0w${vPd=c0mNP74=!)8C zm@$(Fwd-A`=A@W)18;szg}lBR&-iVWkFx_}#}IqSI2E!SCp!ZN=W`gUd7gn9vk#nm zJcS^P76hQCO^CRlLt#+EZfiMz(Xczunw^G}HL4;fx!khJM}-J>Ns z>9UGmd%5U<@6Gc+)j~+YWTliOa%LEIuXSFH$VdsqZgH5F*eG!l7iE%T zV81Du+1xItHIF>sUh)M`oBOPHAEvZyXj+k_G4?8Hr|HnJSmt&z63DbhK>-vqdz)^s znI$%;y<)q$vMS$^)Gg`zc~@7TG+@{^{!|(ZK-l) z>q-ef0Ao{r=ht>2p7OgB_m~4r7V1TvMryG_@yag+q(--Q-uZ%iExCb#7hjog{Vd~FLq9H_IKyULEHG0JYDJ4}k>tn0t?l?ruX8G8S zRQ-&RE#EM5Cj<;#tw{3Xk)WrM=nj=a&7#NQ+~o-9NnJPrY!E6&CNwI6I9kFroRLPW zef&CxawHMY8^vRj$Z%Eyp+L;@cW*d6$0A*f#^)jqL<#0mhhv!`8Wtx+j5wiLhh*~B z83n3ND6=P$JRP28OuSWLG!YRFyAaZ0|8jJ&^g_(`TG}cRo-?CFNq1Qb&7=6)9h3?@ zcaPpaPxq)lT~lHMCs2uHDy(A+eAoo?nyaz7BJuo2j18(PjKuWfE8K8cr?QfY%g579Y4m7-WCz3Sdih0GJAZt&o&& zjw4xgvL5=i$h62!y@~mmJV{P4waET=goQN+x4+c1tInepqeM{3^|k{k{wtn#wHekt zV#}J2P0^2+5wSMbihJzRi!v~)ZH$JigdE0fU3r6K#5_QTh3*$$ytt6SF7^7XkMgZo zB4>3aXEVN=aZ}EVcx%suZQ1yZgzkHaCN#e!bGUlEyIdGow{Lb=tgvL;rxtpnumbDj zg;Z03Q^>vjT#t&>M~VF_^%^jr+yIoabnBO5zD{PWu80PHQ|0$vw_-Q{c*%jPBD^j5Au!!lhlXon9)5FfK#5g)7N;(uV z=c|CIr0h40mf=RNpOOi-Ll`eZp)yKRjC}wZm)vl*_jX(Hh(%epT!^R>x?+s#!WY?r-!wZAUdAXpz>+tK2geWd}^&1$fr#$>7|JU zq9(n8Iv9_DJDW3grB=4Wb9nox^>j-=qE&geJGGo$?wsHg!Z+Pwyz9*?+|%0t8md43 zKDoCYpm|Y!!Dt}ZSB*QPzR-Qi757vMc>>9?z*P`WOS$i~2B_!?DnL<);>JjWc6Y1o zGt<$T;EBib^-TcVhGWN-b=c#4n5u8JIKi1}x=zgs2{x)`MFaS$bq3gC&!E+|r5V$f z5fRgJMx~u>>^QFN_ZI)e8@_4`27lBHzY2Y&bD)5??MZ1ZS zk<8J?>(8vVcxPY`f@zEg0mnv4DU zMt3|#$?MH9KkINjxR#rh3Jb?^4h4vMt1gHffbnpbJX?E!TG?O#J!frmg^}t2dc)d% zd~HW)L6A)Vv?Kw_(1ido)&o!oFpXstkTGr6&MYFbAFJHi+4BeD=JN-x=iTwQWc|Ny; z(HVyJYr*t)@fv&ej~vq>=5=aHj1~Ze-OrGJ9%3x^8La3|Nh8$|XeF%#*W4(*IA_1? z`Q589)P658Itv-jZSh39-YBjz4h_%#wcchlmG%bPADjMNZ_d`J2C(*tD3H>R>g38C zJVB=9BeC4V<8}t}K0mp7k%bdUNReOzBg?mLIKFb9nLe@7e$?eAN~xGE@`zXC{yAb9 z38l1?9iiGVf4Rqc!nM#+TTdUkeZVl#wCwCC0w|Yab5_a~;o`z6n{sdqM~OaoW2h!Z zO|U#B&ZK!Ki$D?~7R#i+V^9H23*5!agyVr|Nex2AkSXmxG8&JPdwWJjh9#k^kc?12 zGN~z=Nl_h{%p);#z5vG++l>x4TwP<(0h=ce(H{i|J>cl}F34`xGK~5E#yQ_H+l|d| zKlzjgFWm*--GH2kPSeS9J4l??LD&SYk}aP1GNUtGpS`3*|7>s>Noj`yu)q5IO2LOZ z$RO*1+gIh2D>39+&`$GO7p!QfRkrdv6{64SjMTInJhd`A6<-z?6B<23=WwTeQ}gPV z@te=+P1){iJ0i7wUttgN_?82xs`G|L`3wgYgV)q^;`Lgd*J+tJ>n<05pkfT6T1V%R zfZ4N%w9Iq@wH#v>j-%zdGV=JAiD$yQ=nzmR6nBM@Io~dw_Z5govlP8WA?a#BQf;$!9V_fzKzFO9e;U-sFz;w z=-<)>j+gI{j9Zu6w?>W!rjpWr2o*&mL19X(7hIVh9Ge!8Zf6AS+R&tYqNIZ z>w2DncA=g)#&XsK3)D>`%yIi%;T_$^V$(VmMnefm=|(?r1N@#{N={gAMLUZVdbbn{ zX;4umbvYrSVjP>VmTqns9b$G62+^f)HmxRKOTj)3XKZR~!HhZ^f=VZIq7=6izKmpH z1d_AKo{Rh<-=v=vQ0FUS=_d-=o_Tf;n{BPj5HBxh&(| z_i_K)F;nFdZ+pKIl+WaVE1aSejM)EpVAc{zS>&_2r$H-U#{f74HpKzxg^%gtObdTm zXKo(Vq?srPD`&Q0BYuSmjtmj_1rHl^|WI6W(B&y#j=0i9A4B{JM3@0Il2pNOken)gqCfKKW_{a?~B8W_L7;4@k zH46=D`YRet*B*L*vE)uSe(4CO2@+W65S$!ap~XPC7yt5(o5!%@->NFHtLa*+p zs>&6_c=LMsU=?F?ZatYjS=OE~Paf0&wRae=i;fE0{y=&M`N;gi08jPt?Y4H2_kUE1x!J1hYnQoi_<1d?GEvA3M%aV5#rF3Goh`zAp-ImXKsgN)6CuD@9eR*A44#+gxg?!2}o3QJBf z0N6^_&2&}re8uMFZtlCiRDkx-M{0XR@fkcwCD>MM_-x}zvAaw)xpb~SaAa@EXM7cs z#QhPzhchC^+f*k8YlJ;F#!|VmCwGWTV-L!~tkG2074UYaUPI&amli+YJM~s?fl30P z>{icam^aE1a1x1b>UKsIIekwN7X%r=9@N%??1fmDc6N4xGFp3rlK19!Df-hKlSXV{ zgx4B6M5y=?Ox6zEc`)FT9VGDJ@I2j1B)h0c?VxqgozqHCxb@f+T&5R1gRnM zHkv_3sqPT)Rm3Xm^LTjm-I z$c$sjh)LA)s>Zq;(vCo1A->ThK!c}4vPG1SId@)V9Zu?7?ofi4O(op$cYIx@`4 zO{Cs?C3EvLK`r9erqM_Cx;~!-cW1T!O2@St)vi_2Pj9)39heAnC%hf_xon6`Bxnb1 zva{uc(}IZgtOUp({bgK4<)i1YxKZ+>0t-^ZSJo6zP+I}wUYG6l#uX5;a+3&ww^aMr z|MrLf*bAPz@1o_bmzqhi|29sy#xNdv_IU{WLj6AO}!zsG5f9)NQ0 zb){lmbO55kd494mcAAVm>iE-#S~cboUhrMda=&`Hz;qBpzOSlz-?gOUy2~=XbfItu znRaQ_E#^VRh)7=rQP4C#DE!{8Br(26&}?^^M4}?h)cx*moym+XQv;h_LGG|#+T z-_8+~%%8S1J&i6OKwM^`yFB|MJ-{U#OrS5(1I(m{4CLz=72=&DWWGj;D!!wT%0FI6b0t_jCUQ1nMi5cm6}2TIlyUrtDDpOx778{d6-fXqscP1+ zhbek~2V4ZMocfjE4X`F!{e~7N2b>dNN{BOgPX$0y`v@Nv`PeN8(F^nIpi_P~+$M(r zwXau?JJUy8!jeJLIv_9H&HW4C?XxvBo)qV??+v(Vfgc=G?AS(Es2V45h{d@ z>k!0UJ#j4?0vKeELB4k|8xkBrzY+;z(kf=79gOKuSX4#x&MS{IQ(~%0;$&=*cUC|z ztnkAL+V<^CK`yaR>n$vD{!57!bm6(@;N zjCYsQ`OwOZ%cKkqt*Ywd9z*vhp)_4O;z!Z=AU~g4=3w!}wWc`}%z;jpdq=bjte(i% zjEuMKNQUq!HMprAYBg{olz@1zK37uA^y_cMtB$+02KSO)uv>7(!z%pmC!FpMl!3mJ zg1Maf!O^V)PnX=^WMnrd>J@wyL{(ULS#4-lJyg*yG}V|aS2f}2-3~*lygHju7`oJ_ zA$1K$%gJ@2<(N7AW7&y&hTClzj2}h5*xsxv+Z$RzE>3{22@8Kk^h0ri48bq=44c*T zt>#xze$aLLPKrFzFq75u~NJ0R%V!{RxwFA#vWtX4mf5}o=#S+xJH4&P_WOr`P_yIQ6fY{*XLs(X)D=@`#eMTEL zmc9b2A&Y!(pQ{sds9I6s5c_=2!7$=%#q_y}y;a(V8?o-W74W|Q`e}jMu>pOM;K=8@ zw>vo1w=huJ5m>sdyq-cGcF+OX3*xGXvbypWcD8Sgw4rcN#WNztb=a~9zThdLONA(#@9!ZTJkriI()=2!+1X5%J{gt zt1IQh4r)7YGbW7%IgJxii2H?pdR3}PPDr6gy)akueS1Z|DVUpQKKRUy<0}i>wTal*w+#xDDlT z=!trOc!fR>v33Aa8$}uztx|_=20=`!q$S-+{qGR2ssrV6+mFjLFX@nxjz+lH&a?wNPLNVTGC_foY zgJ^&lW${G~I6Z>Yu^5z__-gV2h=Q%1+uEnovV!QnrdVAt0Sal|TTVr>#`%^seE@+} zJ%Ys~F6Tp5efQ;zOEoUP{FNbr*I%u4?8xt?jVAmalt$#=Gbr9$!}TnH;d|C9NPibO zM<|Wtu`KEnj2lKVlZY8?23NA-%+mjGUCZhWMTfl^b7b9>vL;?iMsuQR`lGfQJA`S_ zYE-`{_GuHpv;4InGC*j;BT>FrF+~d~+@C&FWa^A8n@w<~wPeM&D%AhTwPy{Ww_qHj zj<&rCZpe|l$2kZZXExK89iWvg`Uj9MVZw3n(Jmt`khXLDMv2tJrst;hWu$0dCg!KEGI@6XNkl zb~ji?GBoH&d#e~vN=Y>4#9E$-AsS#c3@>A~S4_=C4Jz^CgM1NBbZ)Vu@A-*l&+P-0 zP}z#TA5d)%Vdc2fZLypyWpY-_KLHuIG7+N`Js1LRzPq+Qv!)uitfqBB$!xY04y;j~ zxFNqEr*{xBS%ode9vJ7#&b!hxc)x~ab(X8GWQ8<{JS>%xv?@}EH>Bf=5_5%a1S>ss zJYnd(fsWi*E-b^DFN&xvo; z4afR6$b_;14H{1v2;_Mgd~6tT~4*SwdzXa$?00 z{??1YRqyL>c8JRoArOz~RFYbTv)*{kPNqS~C{-sgj#hO7Zhky#&sNJ@u`>U_(6fjF z{_XlNufm+_RE4n=96!UinDeEScM%;l59&m`i}s+)wUyO|vXJ|1PFwu6>E_sKEn}I`S3c z=%aE+K%$}yOTmuq`F`2<3B%v`yyLhA-W@nqsQbqMsHmrlhwh(m^RW0lt^KXT_Yl_6 zvP{T>D-ksYpfPGhffP~dViESk$@gIvQEO)~Br~36{Oe&056cg1 zD3~SRE)Ce?6t$KH`di6Pers91U|JngSqq@$M7Uw@(E--1?`S6ClGlz6Nqj6qtUj*j zoO8~v{dcp^T~R_!Ll}{~+d{9w{pDz>NK9{IPj%+jA~z@Zc6}&G1dfl8Ss}8Mu?962 ztr9tp(~1LBGrc|Ei;=Hhg+x70C{25*L3GT9a%DfjkF~Fgv);dA`-o2IQb?zCXGRzc z$maK>!?%`Bxu3+lm_HlBx0?Lsl>TU2Sa0Maj6KF%$J|!=v>r}dw-Wrnk~Ecxih`n~ zOHsRL`^%`Eaq7qNV+kbV3`|;Tk?I3KDqKbct#yr$&niGaiW~ACi{KKu-%Y6wdTE$$9T^EMuF+WY%xMXYb7A0;}l{$ z?wEiQ!(xb>oCw1dSveGB6GDqExbj^sa3FIJmGX{Pwj;rte9$jn%fDVDKLo)WTpva= zQfXIpX60J4T3s+jWY+Ux{;(Lmm96I6&0>UfN0)CQGG90nKD!_9{J6kYhWaDsHQ^w? zFTCYLlX|b!uOi#m!xzfSf(|ii=N+;XES%I0RQaMqYIEtION?Gw znz8DQDIWE%K?CPY3C)$$gIbQy(=rR;nYJmf2?jy*wTCi=b)zMl&7*9O>F8+rVYB
    dsvmNd-0Mdm(e#wu%{J`HN1ss|t8lxfOW~w9Tbcg~u1`|@Ku2kp zSmierp$UqPNm~Mj_IfP{Xa-Lk5GS}>nwLcXw*5X@UU&c_GPX8RQNDHpR-fp4iGg2X zNnj>1Tfu4asai{dX3wYJl#EYw$!cOq^uCPE!-?-B(%t1fb_%AfoLvow?1kZ^Vwd3a zS}>hJNaGhl2&zW{v!Zw@D1u(hAC6Qc*R-mEuIq)hyGMYH;zZX05kh-yD*n>inBm^kT!`!5Sw2qJ!pr1v*ZgZYBgAE zslnobFw_6~FYH&THk*m>=bTeR9E`J1AFudy$}vS0D1JF(2O4AHWgv>ol6>>-B82N9 zeaHeKP0oxKpGb<}LSZFP>C9*6x&h5;W(5JN`})gUN2Gky`!*Y=C=}w zTt~G-y5{bzq1T5Ft!f9Ha2t45)`i1QB@{ba) zO+@B&1w$r3YaP2M+{VC7s+p;pEhV&(nXHV0Q@-dvl5sT2j9f1@vq`v8xl6QdgN*=c zkq!085ezCM>>KMTlk(GwU~RmJ>q(pALJw8)rtLY+`w@a-DpwyeEHh@Z%C;LuJ^ji` z!Q?|2AI^>f)Xe4MB91E%AG;cY8ZT29E!>E((CcgY3ClX=`|2AO2=kF~_VN@R;VE06UD~)%GOAQO z{RSH9IbY}{AI?%l!cKfo5Kd`7bi9Rv8hUEP7zcZ*TO08A7Ln~=Ztmfb5`-xq)6cmw zzbMy1cX#lIcPYWS*hA^+4=P0cJn7GB`@mn+M$CNnV`jUp3Gvj#K-{n`A&IGodfC4! zy4^b|Vzt7QD4mFVa%3tBr9Zv*OlHYt&Wv7iG1jYM;>p}q!O}oxZ7pQ@L`r|98r_x? zGU4cL2~iYg7bQqh=Cn8197BVcDH~D9|8*Z2lUO?Ii{#EW;+{IWVgs;ek_`Ymse`#! z&vi9?2!Pd0M;akxPovCH=PjV6BS}4blq_6okzNT>MErvS+Jz-{@u?gIj3E{KBfmQ<`l@~Oqv0tL-JON!jNi=?rujGENQDp7Lp0J3*B-GYiF&AuB zqoUUveI0*I*SsC%c5|z>M@`v{+Kipr5l>zIv5>`b70@9S&_y{QW|k!(sP@Q&*T9&Whkk;rI*4YOxOJ-*ZEH`g z?RS~S2Jd|fvuNj{RVokNXNv<%Vy#upw7yR!k9x}Xlqg05x?%p=Nk+Ew zrKM&+nUFV=6|UpZV1uWFyCmtKnAG8lvuo!<3MEukC;ItUsDk zSc8$mHAK!bk@>J3&9;}j&&$i*#S-o7=wUhfyoXhH1-<}uMicb;EEX#+gj$T_Pr2Y9 zm0~zQv&~HIT#C{qxi5YIS*q-5u8!71x86*@DW}aFO15N)jgp9ktPo3Pn?QAhV+0B; zLi|R1$FSW&nI+Nf+qzLVD83adWtR=Xv1GHv~UW%J5h8)G}K*JFU~&5lMYsr z@hwX(r%{a1HV5_Qi7$PzUyioom9V}TNy?sAGAXM)QokGiPj|1sA;kysc=>I#NE<($ zX;94mNrJ{{=0=2Y)qIi2_&w62cdYbV<#F)&jJ8FjMgbME>kw)|+hNhOJ%kJU+sbWe zU<-vCRH@CFjT4>y5^kHOF^6^HE@F}3tTw_<7I|WMUKcN>k-w5lu_|h(-abBuyt6{) zz96k;Lqh`B5djJ-TyGObM$F--)}Y?x6kO$t?e8hP>irBKrb)wRsm-#2hM4cUpodVE ze`kIA5UyvRf~)-d@IKUqGs8-nf6yRxK)%)}4?&Jqgj87$Ow3tWf!jq(YwMgt{wQP>x1J3(||Vp1lCIuy!iwu zabbq9m7YC!QI56sUt+?wny!Sq8sv=Y5Rug6k+4?uHJV5+04SLoHYbPaG)m=8TpUnw zevR5l%PkBGg}ajwEdGV+MMuO#lTUJbjEs7GX`Q_c$i|mnCePYS#kL0YY-T-nWWp4t zAzg)r;Ie83b^HJ%Hv9k-ih=`RG=BhG4VxFk6`jEk2W!b#Roxp{>dppzxj2k@q=wn& zqO7|4PZmYafHXa-?NR2IwBP>lA+7b(7*~4v!L9l~D&vMuzGrLWCun_>pP=LW{G`Aw z--VNNwYidyz zL#Jv6r0nLDa}0oVw+6GN)&9xF50>3dYYE~|cli1(3aQb-KEOvRRGu9;qK&a)|Up7@QNf9^B)Y9)`%^U3a;{`dKjOvHbICf~_3l`CzZ zTV^+v1fN)`c8(W=uPoc?G;R@iRu&2Su|Qgs{?k0j-V4-=68W zfBTSyd>YHf0O=;R(l2EfIc+G?QR+u=6;Z29+gvx!9f zeTtv$3^k7N;V?k^Jj{T_N`}KUyN=(dl9-AXlBtV-p5r%ml344P>kqMGjPCPSL=HOx zailp!s^D9W^I_iQ1u5CvJ1+Ds>Ju5JQd;M;4Wnb-@i_pdMZghUg&Ea3Zr)m?gThB} zeM_vcyOKpDFWF|)t&ojw+v3To1x(`URlTbiBd?!fy)XW(fI3qO^^6ubu6Ha}x{+iA zWZxB}==$6dgkFf|35JDL)#@N5fy8uz2LH;+D@FiCN@BSNPhZPp%(Hlg($V@Gs&zu% zFwd~oiTkY>XDq+U$4C~Xg7rq#gD93^#fj*C3Fm9NYe}_Iu8FC@6qRUNRoLJ{nF1A` z8^qqAthK;32zV)s!5LF}8QxwM$j%1zsXYilTA~c$F`a0du%xwi00&vA;fh%z`x(nW z$ML;9d@{Y|J`BRj^r{u9HNVUi!L=zY~2&CS}(koFVL;v$VTH zMZQ%)$rsin=26Sv#dELNMa%X@3tY4=*xAl;@UaWZYY!}B8*R2X$D%huTgb5}NPV^r z7;VWm_W@%Y;K;fG#TFZ&xkPt`j*lHDf=P|AB^S!0t>OGmMsv(#tIV=McgvY}AcAIN zGN-?)BVyR5EH-hI$I1Z&?yN6Rv&DKb>Zz%^l?_pqO&NkKGobL7qt49E-KuTXZXG~s zt5IO(R;IEcT8-}GM}1;t3!(wZ$i+lPZcn51R0$ZF4re_%dwg}90Ph-EF>gR70sB0)y0<#-X!1;B_Vf*D=PeZ}dz8p%+H zU1ZI$E;lporoCKzQN-CB>>8p3Dq}V@DbP?$qA;!q+QZ6Du_G$T%>Dta?^1O6=KCN1 zI#A=Z}iu5sHY$IXM4f(?EiK0uzJn^(p}{y@t1ty*)ufNl?q3!yGYrKJM3=uWCj&!W9I|_-T&2kmU?*H!J9m z_`^+c5fITstdZDd&^CILiQl4tjIhz#odwr!(PXlND6^thd!3X!tUA1*ez>6Vcl}B! z{N|B_HNsAPxStB}#Q(QX?2BVB{n2dlFxrk`W`g}8qDu!^5{FCf@$t0b=i6Cr`gvRN+YVQ*^vYOHoR=)#y*H*D2RF(DX<^U^s{ z0nZLwlNJW>7Q4L55{&}3L zp*_n?aXRkjvM!LS=%U(8fK-rlAak;xE`Au-8=HP42DYe{f;8eh3Zf)6CDI>W0>w0j z;l>m?t39MsM`qU$*O~N+^FdI)Ok7BvXnkL8eVM(vZRt;&Q-*P)vF{47F$?6igZO4; zghuqJ+-sdcY|n|Pm6>KYj@gF&hZDi)7ZnACrv2jm5?2hq!9xg#MZ&#RSSfi%B!Z>y z;H#*|-t45+vev%gG3Y^n^rHdZy!%q7s-lVX?MsM^<{~{O?D}GUEGKzP1{A6C6rp!n zRg%nZMLSG)k5^2uD=wYJk~cqIvHf?{Vo>pA39cxCSVay;v4Yi3&BWSe#|wY14jx}1 z9_kS+1mN2TnKiJOvis;{G8HpKw!s>4eWGIiIl5s~WGgI0X(+RNu}p==w3bTKMb|O6 z!wJka@yLy(RLx@X!`B&tG3U$zQ^aX`>uqVdTMgQdu`@;&<%J-1SeEk3ba^RX5(OoM ztwS%q*A{IbjR7z|3x=LvXvOweLm=h8ezj;Yh{8q7`+g?Z0jb+qFf4SHTDbUG+f0q^ z_b8`Eo?9cCTy5R#bNt{FosMsw@6^717~Rv`5%l6_`etMA1hN=Xw~Scp-i}n|C7>8R z@c#s7<-Kexif1qoGO^!t}kJGH`f=+96d^-@bkz0v_$vFpOrg$tayT-KlZ03 zy2sXXdVY#w;2)!L)(CSvb{7aYd9E7azV0QQ2W<$JwKo~qm^FGPRlVfO#@V4nA62`L zA@;7cCYN*S4pE3?w#Gm+__yng9&-qD9?l=DgoeV*cQ#|*2U69vn=~F=9y(nKgc2^P zMKrf#KIVOf+$`JY_hOMDX}!kIYi0=P9FT^H_hE$E>gv7HNOxG$k#btOuEn|_8&=VU zL?1rzH~p%<{Q4i84U22GyIIaO(C)YyJm<{cId%Vwt`g3&QV}~Nrq2mZZPxsEM%Gz> zs&R;rt``v+H5>O$)@L|<5SJTMMW+-k6>TB?8eHfYw79$Udh;m!ZW_YV65ZkEw!lBL zGd`9q*YEBgM(KFyxXm&^gQMi3FuD?PTb1EN9jVy5MBtia8q#X+#ejMXNQ8_j;-p~# zt&;p~rwf2&Kd&7a5xdxujRw*AQw(@dB2&!KYGkQ;@-73{_fMUmFX$F z3WXlSWz_L*U;p??T?PC&ra4*JwIvw!a%T;6bfHb43Znh1M@|ZC{~yG?@SyNwLeN?7 zPwUwEPgny%6B4XL1yWE&Qxfq2z<^jkX+2&Ka(V*|N(^3YB)t!yWS&sT3^wxwhZTbU zS(a^LiYUXBPIEQ}(Aga6u)Z~9yYpUkQqSK` zQj^l1ZapKaxTB1A0t@Ue$Gqj@ z-6q0pBrK88gui;k=U31W+tq9)#%m1Q*la^XaLJ~FG#S;)=&JM4^{Yu^5iYwPm@dn8 zRSmaj$=DYm1*dZKWe6Ckk`|4kO(Yxx^A76KnU1=W!JN=;8JayKgi)Jk$EKb+bTx*j z-cKX*{te42Zno75k$tWlyg_-3)j z>xe)1U+x%X$k|7nFs6^n(O3wwl;I_HhZNr*0T6qJHv<{wG8yr6Q9=!0EY~A^nDir$ zCRUZEMF3j{0qlde>f{JInO|G}?*lz)=H9w}1rJZ_({u*mg3T)!cD4 zRuq&Q+EQ1V`Y-nZowHLg6nuJjj|1D2cQb)MOu$v;~SOb58&fjG*d1g7&IF3 zNQf-!5H$=KLhLNx+8(dJy?}{z*;UHEwq_$0J(GdCDm;M+TaxQy71fQwZ&3d72+SJjqy# zrv^A_4EO>Am`*Fi7*{OLAp)`S6r9}8j&K)f)R=*ThR{TRBaFb8>)4zE7g8j?FndK7 z50E}>gGCiW15CgDXwdwUU#Ai%WM2l4G{!LoAe5gDy7T2%NqShUj4aZoK}C*X_Q(N9 z>OknG-w6MKB{a^61FTN{5Jm1});Yj=ia=2v10@nahFVyzhzcDK^98XWokB=4C?E6k zG~#Tvy`NxRqyy=&l4j}vrA?-8KT$fq!y)tvx&)2b@7&{BcB@jHE%-DlmLD6M_O-)$ zZ8?^vy#)?>>=FDj+r8P1*YBWW2T1EXzsw~U9Kb_Hg(yv-YL2i>jT2CbosNo%5(sdp z5QmRBfziBbuepz24YtLEb??r8@auL6Zo62!Qr7CrEY=+iat2+AH;HEr&xZqKtffOB z!o1x9EPI!m!rNdO2Sc38{1hq{rEKK}HJGru`@CZ{4N(5b@8%1AWCa)O7C`^~4^T81 z<20zygYKX>MC$`KVcSd1TCz6}{0S*rP*X%d zwQc_X%kuViZuS=IT#UMt3;(rFhmJg2bvKvH*Kj<0*g0#KT@(BNA4Xj% zsuu@}j5B#aZ!9rT!D!1a9QCUZDTfZXM+A%bVk9wj;Qx>3gspEr=`%c8Cf8V_`7Qm@ zKIKXw%<5r36$hUnB#gu7FPERMKEHkQSSkfAgl2(+} zlI|$sobm-T-Op+gTB)SB_a%kc3ayTPl?v$T5D=P&s*5h=FjFf@s2k##=u6tTu7KlX zDga@D#24)$9HJdwHR604R5<`W`QpD?LY1tLs1QA72zeI&Uhxl;|J=09a@{iTaq=kP z2uJ8EiM~?$4(~EPe=0db9*5R6joBCPSSxHa-xEqhgFFVeVl)f6B8$8dZb`g5@`?z< z%NpT9u|Fk4mU^uW=88n?G+fnm1!yTZ4riE>T@JI-dEoH(0HIe(5H&JPn8X$3GthY@ z>>k@Wn-fJW!Spkc_`1OL9YUN@AoWd#;QL_~;m!nQp_s-YqA9esRi@x^5Y@7WOFNn0 zM3TBWG7wf5Qgcg)`;zLYBtcM)c>}d>==FWN>`|X^C2CL0&h;SOOVsD5$HgrsxR{7K ze$8G|`>p_AEEA-NN@+rLNOh~ICBrkVL-I-3aZxUEd1Gx(H4u6?fF}L`z^U1xmwkrH z9g2cyYy2W=+w+z@pCeVn0E;iceywPOU&k0brFj_!0zzv<$}u;-?9c}maHDbGP*=`& zHG``?dZa}t9RLN2RKJ#&F``3EezX(FW^2;bkU>!dVC#VKR)=N{T>;J4P#ZEJC+|Ya zk@-3f3Z<)yy;wvaH+3zOGqIq|mMWh^zI-QxIlS&#Xr4g<4dXv3!Xhut zcs=J-fhM5Q*{#{u-J}d{hQluc8T_t<9)GyL_z0mAITfxMP0N~LQ+O{r%N9Hp%3#X3 zr{*bA)2q_x<+_N7^PG!kL8KyJD_ulVWY&yXQQ=Zm`#{K(3JKI1V_w{6PgTJ`VDmg) z`~<~Vp27wxXPLMbxE_6~81xK_efJ|`e=~lbt=Cur$e1bAHwe4@THOK9&a!0B{UH|j zZ_7=HZhJ|-%*8)%5a0bciH0p+E?CEhMdHM<-Xz;hW3eiE_4hwq58XXv5{-$@noE{1 zMOXB_+-iCCgkDT>UmNN`e#|PM4&*l9kB@h)9R@z3eAoKvEV^wu1=OFtr^lMF z_5ka}@~#vbh7W`BVKv3`Ad|aX-uk0CvEwq5QfR>aFnD6`qI&&w>l9(4e3Vu8Q=rQg z%f3TO6Ul1jz;#nirzqMr42af!iBkLQHsXr?q_S1&V>Bg?%-F76jz)M1rAn|^LgZyk zuh<|gzld&4aPYx3su;4RxkjnV#6jo(lLD}5ZRbG1B$-JxY)173oVKkJ`yonu`~1;# z^(hI}t1)|~5Sj9H%4|}27!@X9oxh0oqe8J0%`962eiSBI)ZFEoZi~S3YfqwzjF6bT zhu~Pg=i}Ej>ApbAMS@v_T>PyrMu#RkW8+;7FcR(cP;1h?L6>qFWV)-luWjU)#9FqL z?qZE%G;5s@(l(J>ZP>h(glkX-%$Nk#OQ}Q{?25!|hEfnwXNS>w6ZS=RknJ!Bem5Nk zt0?h<+LAix?N+ShxE_0URoD5{;iv66gsYE>Bgzg;sO6kGS{W^;vA1ld znbtJqLJqU15Yp56+tgNXW;KZ)?>l@9Je4&JC0#dd+hf-^=?+*%R9E_`&&x&$bkGyT z7O{S1O`^~avB^e#xe#y^h_c1HQZ0_l22dfaS~+s{}=N2)VM z9wl?tgQVn;W>s_B>pdFM&=%VhpL;bU%tvph2ipL=DXGO1eC??`FvH#!{X{)2lFA?v%Vk*-s=RS&>shp4EnkzD|>*P z*ZX{FqlX=k0g`c38T9g?=*y^C3uQ;(b+!jslsl=R`*YQ221;^N4fj4@(GwXsu7Dz&H&IYo!4% zM|RvYuI_L`R3$2_2|{1yIbqh#$Ko(8{_}>qr!+ED#(%gS z)HsY`HzxP-%bk6~>67T4qdhxMHSV5j=Jo^2p( z4k3I&)&|EFBhr#u-+$v4-HoY$NJ%ysDO?B=ga+bLd_CICfFP~L)%`#|8Ymaz6tf^lO$y_GcFMP|<}y+TDbpGK>j z_?_jiZBr@9q?!}^#FPN^GMDL@SD%%Rw`MsX;AQu78|0wybtxV}3&FTCKlNdXjK~hM zKB7y>*pr;&{NwB{25+=^_?+i0X{yvHMk+Td zULtiR(8MTD+}Cr`S1bK}v)U7i0JYzIdVjs7#MP@JG<=1*5Qi6`#Th)Y6ZvI(StDe> z4r0Y!3LgbX|C8mCa~RZ(_Z@)3oNxeQ{08}Jg1KBO9-f4mqv_Q*{%VRbLka963C#Do zNJrR(x#S8`0*hodjK(hUngDAW+$kNkoN^D_5kc2z5#qFL?AVQIs{b!orjbJU1;L_w zr$(PQTjt{z{%U<+^SjSqo}p~$YrX~w}Tmknk!J|ZnYZuZB`M3XqsW)-6JeS8%fhf@>^7_BFh2)0HyRvC|xf#0i$lz}X{zHZ``JhBKSe@WHYRMjpVQ#l`s; zrlJqLtSkrg{!xir{>MccT7AiCJ>@s|HM(Sc*yI$nJu}Y0fQx^U#+8pF(81`00o7Sa0?+_yosci2dniUm2d%`ypbIdjU+sbY5&BM&{ z2Y&**L?S~lk8(t@G6U8Tn^MYt+FWsB?}>>q3n5OFBJ4z;z1wYgQVbVUU+MMTM;Vin zENtbklkGNQ@IbI`abM!|g7!CnrzGiB7fEi7K}0*6!f)&JR5}J)QAi|0{=4iCs`9X& zW>F}J;lIBScf_@?KA*jLd-LyaZr|)O?#k=QE?4V@KqI?cv5`iLhfG}1$Nbf%QKNH5 zMMUb7NtU`@Ruf;O@>4~&oONRbQ_HBv1s}IGR??UF2Yp zS<^-^kVQ2EV=1l1Ptcu9bF_h6Bpb6eOEsnpAm5IQDCC8+8#z9o&g1J%g_+ouc-bZN zrgr~w?(a|7b~*K$6<2SOF@!lf1T4K<60({HopT4=?Ub7pBYjoUNUCM0W%wR7CurZj z#9!@NM3NjK0w4K0U)&%E){pu~%W2TIzC(-)gG}8@1QZ0LImw_qxCE8Ev@@-@GT)ea zbB-O3IXLgKa5vvFTW$0*&mlX$lvRn1MdR+Nh<$Mwg;O%w#J`6&hjisGgV1RaJ+{ND zb8!RE<-#pzEuB%P;M+fMv&7Tm;(s7vfaUa3$)xIKQZYg@$s%;nRd&1vX(_32GpGKr z*vGz!Z=x0^K?y3i<^Kg_Z_5w#Dwraby#geXN?7_I<~^^ zOk3uIJg%2hA3_yaOi+eUV&cSeYB`>x=hnPQ+Rf9h1F@SIIb$ux2Rnj^=I$iCwXB9K zVl-8dzQ6&9U4Bi382dvVpt?OC)&MoF13uNpro(LBAz0B1i~VbMydR(cSR+zqq4>rF zq_7pq{UDOVtfxPMXs!tJSTz@{SurfA;JvI%`TP~IEuZM@yT5~1A76}#KIKwlmLC}y zW~N-t-7l;>EJRy59^)V_P>DPf!kMC0bolX;0vCj^*!D9KMGIW+gxT(MuXOO$v_AO6H6|p!XbWK(1(bJ94A6Ki@W(jWF{oM`o_piI5&zxUxBK3Vd%n*uIKaH zCzn+hkD)3nVV!iBG^j#d7N$XgTsufh{<{LNu_4JJe`t0NfiDr8ng7**<^ujUEi3Fh1jSDXR2!5n zF>L}nV7uS61FAmTSwuTKfcq>ug^W2cLx;kQ^jSslLyp9Lc506llvv`r@>>!zW#5Oe zOv$U3L^)Lr7q#%?4vk3?XDz3!1^ zb19%V==!i{nTPo3akDOEG$Q|~4AdACtklS{Em_{zTSdti`<+6u_j^w%(@xsq92mBg z=jNdGu=GiZ!vK?qU){e4$TlgFyN1)|0Do#TES=TFgiKuQxZiP5sjXQB=6?ZoY+~_G z7mQ&a6el=POs$YiAm#Y;pCt6z$uu|;F`FX&S7L)is`WMU=!;lRk$!Xok7ZFGOy&so z&;#QM6)x@TIl9vdcrV`;-JMRQaXm^ZXjO2UNcvn9+sBVxjxAt~y|IW}kR<#MJRz11r#rvoWe0zpU`(VNp5Tk`=868t(S&$$j@ZqZ;nRPhDq>U1k+nHuT zcl(E?Vu&$yHM6->hL%-(46G%^On&s0h^2fmso|=prSKB`YPEbQxHKG!{^umQGMJ8RaXk|Xvi?%$r41U_K^-5jq1G%FsQtM z7g!yj0(j2nr2z*6d&e586EfF9K!Znn!(@{RCFSz9!~qj>)1L(Uk%+9&N3yd zO|fP;z_$>xuqzd$eFn-_a)1iE(Q-comep7|?=YpMHFjQGali)F7MSdW!Qwj}VHh4G zRgcK^h+-G0Iw28b0Mri_xiny@7R5hJFpU{LZP2yO!Wjo`?_4QbP;5vR!^*wfu*GMK zIieZwCkD$rlSE2CkfRye4T-NMERtIE5H=wa7mYiSdNs6^3Mp>Eg$A_b)c>N7INKNK z{v=do$NNhz7{xf{dH=^hTq1;)#YM0UFQATUU4QuFPbvc<5RTKMB1zFfWh^aJcc-T&d;;^o>$_=Ea?{KNH!KmByPJM2MS zjZ25stmr=S0rsG74$8~bj|&{MpmBM*`T_Q!uKM=p7vK5-dr(&`zg+hKdrw)Ilu|`HK|~u=>(TF10Ec)_XIB%}W}mWt07osC=@6gT?7v zwgGTIun#Jq!USZ~TV#&_`g^#4{XAdk(uiZszYj1nLkvB>Z+aYww(Ikgg<4iH-80?F zK>9sLcP1MTP$Yx}Biaa>6xQtno3BjFh!I3(j;*l2O&J--O?rOFB>`6w-P49SLXa0D z3(;LsLmxu&L_H&rq`?VJWN%yxTR_VLeuBEmvfo!+(@g@4KiUikizhNe3$ zL&avJ#e)i!(@I$5T~2NfTg~K$3%~6{qx+GuO&W9P)*EIEGuapNnesEsF2**WRh%q_ zha02?#Y|40q(Z8ZV}f=z#jH3) zcsd*cV^SPKY4;FxEI&Fd0a0D`?Qh<_`!bOOzF!PI&BdKGBJ=ME^psq4DOIE}%N5}I z9r`Jeb}4NF1SdSm=w+elx%99vuN}6x78R13FMxwE_Z^lhI5l@rv(W=OW`E?;QkV4_ zU~=_EYR{1(DxUU_tk-9eDL(MH`<>hi9(TFOQN7|_JN@&YB)4wrSd8t|FGf?>QZRrA z=<9{!6{+?$#`(l+QnDzbicO=x4i+#zj>`9R{%;|DaN62k9x>B8D;$kPFREzPK?pXv zWw?OL*21`1G<+}z*f>TqC;1yXGLqL^Sw6idf$iY#N2Yxcdi`7|U=8AvP>3Q)2!P|* zXy1Je_qL)0`+G?Oeb=BR2^1m#_AX1e44AW3kLq&Z{x-mMIc&M2H40%65$QYjjSI!q z8T8oz9A*HsN&NXw)-Cz{A|*9hq?mjU=c~K7X?q?(4sZ$BtQ~+2-_HY_zNMK%Ef?UR z4kFEd9f>Y#QUF2#k>5E$A-pW%fwEW&qZ+$if*)6(u&a_a%Jt@avkxc(@sSlBnb4*~ zIS~PR&*y2Fxtuo$A?!dP$O~8UrVG9jxP3!+m>vzF(y=2A-cx|5WP?uabUE=ViZ64hprlOJ+tySGVYl7B z;nXiYvSNx*`nMkjYUX%zp}@XNZ|@6qs?8597n1z>PsKcxylTFat=N?$7EweOfHM&w z16glx(+3`(CA{NH8O9Ow5Vqf`WH$}IuO%#=mywO$7tM*Awk2AoX~MgMm-ySYT638b z_CeL2D2ri~T3mBjIq5^c=bj!Um)sT6??$CuywCrWjfXM7U;d)2eg2OhJ&0F#!h-bw zuJ!EV|K~kq4|x11dRD#^L;a7tFmCoN2ZbdSt1>E0m2R}VS{*db$S@z)1-D-mjDv~V z2-joWc6$taB^tS3EfJ?URo8EfeKqxubY&^m4sz%~*qy-5V!_(VjP1&}8?RKb3x@6* z4gF_qT@f{cZk(7M6&E_GoX2`m(GXTELmNvQ0qlGHV2o&eEC{wA-`k=cO<^r4w40_2 z0=KY)FM^Qg+a;^G0PfK)y6_$AzMRL@9U6J*Na>JzM4l<4i#yCX7`X%J+2@ns^V48j zKd5hlzI)1CUJzZLcbD2T1@0XpnTc5I$9Pl?$8}cQ6Ttm(ISp9(y4@q`eYoGWZ{J}X zQCrQA(4{<9zgb4U6*(_iaj>dX@FCJpAm|@zCIt8oMQv1qo3u80!H)}iIwD=Z-YA=AEUbcZFv$9OUiu0$ zNYrYS$(JHq3^SG6@?Vb0qg(lHjc$?5@~%!l_C)t+A~g4r3$?u6kF{L-)Li!jc&ZhO{r^ zrQjOSWP=)|l^6@tquMScv>2jr$d*6lDU>|E_|Pw4A(dXnK#l+X2y60Vf$-za26Lai zCp~n5Y=8D9k!t3Sg$=jIMqQmNpDT-`_hta6nhS*T5k1cbHqj*A;0n0`GUd+wiB=y1jA|pM4DQ+4v z8jM}U)}B-eh$kr+4LH<)&Zev9r3~HnBQ`($qH8wTjQk`OD(Vk?I?e-6GIbLhwqwtK zyuW_lKqgf4cG`=Zv5|-B2CoruYa#ec?uG-|;2>-m6OEL$K&Q=T1Mpns3E{CfNWI9ArvEA-) z+xC_hORg*4Zx)ZQEEjpDLn?@AO+wkxmE5)@q%|pN`k^C`omm~cUL1r@i4}MRtkSrl z6EHnQkD$h`34V!fGXVA^Bmfmd&!foH=Y)5VbF6?O$GIT8ZwCqph`y9RU}R&-vZ;qO zx5tDNa1@hhhDVyp3`jUF4q+x_hM?Wu{`aV`W;#MeU0;nQCuE95ltw|IDDE(tDv-Co z`L^)H-^>SDjj#Nl+0er(&506wf&&f`h+7FvU`gMv-CVmdLU@IikpP=bi1=D-etX4Q z1!V&9tcvhFkNnk?w`arJF7+Muk&Dey);MJZwRh;OW3I&IojSsHgqr4}af8bNar!h? z0FEd(<+zGe+0!D&cFlF{k$!ZGh(U0gvbVO@IAi?zT`}B^T~Rg?zQuX4d#7#hezXW9 z-zZ!6gIbk?^N(ln1a>%*5mmiZkgfet)Wp~D$-yK4i}liKggd*+j#Lky2H3Y`kPvW~ z|N1X=Yt{D=ng98I$9CDsVpf300CEVk9J(03VueFHxEcJv{o#Lh)b&2iS*XA3sczs+ z4w+lapqiFHb0BW9b5~?~bk>4j#tU%phB3;!$#?l;&^;_J<)+bke7%8)3=3-E9Zd*} z;P^tpsSuumikc7ClRG|=se=yHdlSD7GhXL&?2QuXEnSEdSKr}7sB>le zBg;9T6SS8?c493>2O^qOnZ_@b(g( zrrGNiw4T}N_#p%p^Cpoc>xw>wls~QHxWg)q03E_}K#~W46%LKB(8@JNRtMUi0#?DdM1 zHjM{34WfIXQcFuNTnSi0)oh=y~|?_ zvm0QhUL>|qG?9{rdN|7QfS6r@VBk-}D?1X!QW+EKrvNFvoc54kb+YKryB^5fiK-;H zsb7od;j{;OV9Am6djrq8KppY|x|y&#*SQF~IJu4)&Y-mC zHXEtx)8Pu0d@*sD0r^`smT`JS75@^Gs;xk4_t+lkRH;+2sSeD|zl6gdTvNyLx(2zVov-=3H( zPc|GGudlfP4(dB^FohH^ARSN;OBZv(+Sr4VGjZUq8`N}pF;k z56ef|u-Z3@7k%N8a<6(JoCx`6(ZH7z~|2HW>fQ ztN)896h-38O&oQuJT7~mHKz=M(Bxh@+b>m=FuzYw+;R6?)5&7TY86kRCwr@tx( z%gM>oQ;vCTd8vF01BH;QK?o5}Vo7Z6x_?D`-b3oJY^#u&{fzbW^ly%@H+W= zoZdb~fryO12c^l&#<-ks*v9!}8NkmrS;(K)cWp^mwF%ELi}_!ya}*zBM4+VNvlVlu z&(lY2wnRHcxbae=2E5*L3!XgeS`YJth5(a{hR(lZo}#>pAkEAbGZH%5;nBx$Lb+UL zL@A|#Le~fFWg)!fGCm?o0p!FlBYC)mG_l{;D$gZVqH$HRbd0}ucb+=kEgi8oppw`P zfCti|Bm5>ScQMPJ9&sV{B)VWw*o7c(#No0m!puc^sEId7Nksafs>>rc5phH*LzPf_ z5XhSSn=oy0$JPUi2Ok>m1;0QBa?L4z300HS{DApog>LrTFgyK5XNH&z>vRI+I>W+! zj!oh*l?gJ7?os=ZTOESDNen@}+z_yv!yaj_5b+D1ACqgp*+g+S0l+DBpH3$?hRKq& zL84Lob$l zE4t>LKRkWiEnrvdiq1#UG2OD7^T-Ms;J(j1)M_3#?P1Wq$SGn0^0thPcCRUxUKK|7 z#hXgtM+xg$ZY1>Hae3~s2cC9O+4*>u6@Mg&U{u$aBt=?1mF5XK+ur9G`!-_v5|Pn5 zz@On)aiBPSBifHz?~uWra|CEthc|?7t6OVffIEzQz3V2@%vq?TkBD3X!_N8%I}6bG zdINx7uD**YxX&0=Qn19JK857*o99yqW^~w2T6g~EKgBD04$`Cv@}M^zU3d&{hrKCO zIw6eixz_a_Dy2YtTe~l};8?>1B2E>pN?X(MsBP?urGoEs z5Lzsw*ilZEQj}vxz7-`Kl$CEO68{%$oUIj6puz=Yllnp&ZX`ngRTGrG(qMe9)WP}7RPUs~{nz>(2vBa8(@N1yYVFJTejn@c@rWv6#R9+1=I+QlCAJi$2;#O+h;3C z(-{#FD{@;(i8k`XF&8RHx^=l`z6OFR+~v~Zl%e(bnakv;fEu_uyT1N1K8HSB%g_J! z`R7N|1i@p-RfMNQ^jH-mG5RMkW#$MMew)c(FTXgchXp+yb!jwPiS_B5g!yP3u)J>5dDt_F_^Qx|d)=5C1@2hj7)7lq ztE3sN%r|Qv%^b@_d3#Q>J@zA%FLpvDpL!8Y%3GPX?-w;L74>aX0mz{j+OR=aQ$6FL zXtTHL?@L^)#SBMP^#=Ma0K}tn|I6OHz}b1#_1@23voo2=B$JsvNjfx>FztjIGD%F6 zG)+q>nPhSq$c-dz+FD2_GkcODb7S^Q+Cex>(}pH(Ra6l4cmYHOMMOmf1g#1RidU*~ z6g{Zm!6UCPo);Ar?ECw!|Fibh?9QKw3M0u(Q0L^jsCa%A+ORE(ItrGjN$=uY1~;Y>(aC09$3 zcK++C1Cuf$Z@lWRl^#Oy0^X3ldL3EVWWBQG$b^5+#lL*!-%QXOXQuu#o8IP>{y60= zxp;C&-?!B5y`fna8}>VDUwJnb1|IenjCqdipR@-VV2@G|h@6I{KhUr3`y47x$ZRTj zGb^0#p~x}&bu3-48l9A@A3EZJGK%UoGsMbs6ChY-Yuz?%x^r_oHaY1Z&`-G=`5o2L zE)LkYM_R&Q85kc|((v-wR}N~5tb;oNWbLmc>`-SML5Y-i9b%``Ga*-H zdGze47Isn*c)e^KLPtrf9ZAXSF6`s8)00V|gxp8Fat#fuZ~;?F+?2MXh-L(e_+(1ah`66*U0=WN*2 z_nqds-J0=+iF|PKOyAgpnBo;wz1>iq{kUQn%IU);`iro-_09vFf)F(gOB(eHS?@ZY zw%B2fX%2LX&a>}|n}DiL=affz0^FS5bxwOoKHwB>#y{Cz-i(;tH={>>2ic#Gyz&sk zH#Ad|>y>MjHcdA)w0zbz8UN}o@AAgmzcmBf)4WLtj=PI)W^~fzO`(pE*K$H8{$^#HE?yB=5q+etlXR$3_nJjK$_*T}!vfBlhzRr3JVI6S?%*Lo;^OL$f%? zvnxLN?m2rMFAj@_gU)q=$XO>)>v*28oue3x-6l?H3Rp)-r>?zK4H@;Yb~5D<%R{Vg zy}hhT@iskeIs{S0ma?1Fk>0$YMLM?vy=_>l#^7wc&)WcYwcJJ2=I^fdtfdQl$=^i=B1Cx@=~tA{n!&jZAUmIKWWZM6>$y zfKW~BYrHHL!BXyeAkAuNrwU?AN^me=Q?V6?V=_nY76;YB8#Qc5c`~@G_?*-AETgX! z2M%>J*&}vT$k?P~*=NcYtsP@$sr4U>jq=ta64si$ZX69)I!s!j2`mQiDu@=w7|fP? zda=l>e13f*jURV1`bvD&PL|j}N}64zt&*$lhOyOzQqVhjfkC%YG&si8AiRbd%Zq4f zEOW20QRK-|NkPy7AxH8}gd2fXxr;8po z5#Ur=pK2E#g^&_cERY-LHT)4~s-6ArOMJd>u7>y6&6Q|0 ze8ZS7!>gG@!P=u9j$K5>Dce9yUB2$AIDBX$wyOOS3;h%(Tb&6_JWBOE)CH+vr)E3_ zM$_XexLBlwsTr|oR(diVfX=1v3Ux9w)M+N^GyU~wAEbr|;upfEB9`=_B5?rF4DmA{ zxK&>dR)1M2|6cRW_Evo4En8y?6_1TnH8$!Ky0J;(e@UxOaa(_#)Azw%y{2e3tveY~ zvCV%(BR2C=n%}#!6?5$BHLJ0iw?Fi)9Umw-O^AP-i!Hn%Ij*fmeW8zwq#9G!acP&t zT+Yt|mE(kzEsgYuI5Y@J?$&n?NnPFPH;`mJo*3z5(;lTfD_m&7gT)aWtlogj?n&(r zj+d?e!A*rZJMEoxlgR(tWU36kt?IieVAcO&j?wZvWUsL{u~R#fBN-s`}8h z|E7n(ViGLoLNY#da!=B%`wMp!%j#uWZIjYwbd_L}=4GizoX z8^!EDNzJ8X-_(+)^uOK!@GkJUQGa7O3Oicf{fGv(--k(svQxoIrp!U&i_z>cjBOr> z<R?8^ z=a@XV5+7*b4s5)ee^QscLTtWD70iqrzg*@kCHA(GX+SHkzVPn4S6N3VOoi+_H#QFR zadS4dh=0Z=sh8QgN8zluT0{l5mWo|W0~A}PB;@;WQ+E$e$3|5sHmMO~)36mHwn^_X z9ek*WgfdC(v8M@2NO%XQE$!0GnUV3C=q}A;qP|&ffbfF7-2hU)I?Tf)r*E=&6DjK0 z66aOMF@@MiW3d zX{?BUyTz^O)^S)5379AHcsRpsG%5+eC+!{YpL7 z`|}ZpU{vV_hJ(dl)G6C4QV4-`!dDV~u#K=OA1o$Z1)Gw#B}Z_mNbsnhnbQhB_)0!6 z8_W6&+in_|2tFu7_04kIwm{Dje^Z!QU7sP3-DA-wSVJQPdnp!fgPk56DEW0}a5}03 zol+xY++x20uQk^fvgbnJVw~;R$Xq;$HjTiO6BD5u=x2Z<>{knp)?levXq}V!9X1^Wgb#5n`U*}Kpe~; zA)(l(rmXno$+`L=o|Kp$&bt~@*0;dyXmQ{r8D%gU?09joK(MkJGYMXq3AJA!g;eo2 zr-P1`LL_y2<|(Pvy)ms6c#STotwcF~D?e;em%XKlw$GIWm-2x=(+4p{YdQ$NseRjc zWg2{v?;rcwLmwrw0`PqvJ{2T(#`;V}qAqNE&xOyZ#1mIS$v#-3sf~q~5KJEZv&eE% zi=NasjfSMBT_8w>muN?8-K@lEI~a7ni``WmPkBUJWP3?%Q(|smE_Rr`4wB5YHS*2vtr84-)$skx!x@ zu}GyFZl+wU3@KODq|$Y|tZ%XOD!;-I?NcE{f9aj^aL{?qqD-+ZE;$<<3m-e>Ac}19 zPrM$AZRPb*u=`E2*ut8}8*8vH6)x~HZ2)Osy(X7R1){|)Anjx(QQb7UUb9KztV7Hs z#s0fgWvXnjNmmlA;k6g@l!zY(Q|DH^EE~mVb9^e~Up^dTaYY6a1I3jll8c?@(!rk*^fS$hej&+zMbSR5PELo~5%y;AT&+>a~53v7f#N;Hhmw$D_|qYKkod6B}TEyOOWuA<{qKiHHv<`(L!l2fF zm?eselZt6-IprOuaee5(5vRYh$w$J?D|na~SKx?`%F|5{Wh#y$Iv#Z4#%>c26lbI%%~){wzVi|lwmBE=~o%kYrp^OEOrLWH81_2CMcW z5g@f3w4;w0we*Pve(yt!a*uhJf$Wi??{ZVNQ; zWpv<;y6Y=u;*AHS6!8X1IG}C2>=41g;rQb@1U2 zdU+NC@*nf?0+hdGn> z^=)z8HL$lvPDuTbO-!xF=b^@wOMHTd1}Mi&eRZ3b=|6dhtt2T6#SSc?;3V-&dF#1( zbEfCf1|Oc)tE1ABvo~lyww}utgYSeK7}M24Q;~-!Z7qUnm-I}wcIV}yXQC>4DVD$D z#z+;wVrJ(Pi>!sZ)IKDasjgb1oKJ=jBv~DjP*$0<2#QNbw$B(BBNOISXk4WDpe9Ne zUjc@+lH$uJdM&J0s8exkXvZXzwA$>hfw<0Jo9*O|f)8JhfqzJ z6+4=(N=MiIEa@zjnOj1Zim%jWLZ}E#%__oG1W{e;C4yo|bPkbc(l6^|c?B&D4={J|U+Kfj-?sFV7Z-baX@7!;G6KPpguQ(_JhW{be#AxnHmBcs+Y~?DME9h2EVT zP`)t0p;rse4iEL0bhv=q3f?d^!;e1krJBr2NZ5x-_bj-H&O77TL$BV2x=0mdDl7k$ z7VkVYtk8OIUvw^m)>>t;Dv&gvvn}a#i(NdI;3Va%rlPU~38#p->^_(fcG-=vX_=_( zF`W{W%8rCaa49<=z+^0YImB0Xk*-8^P#V-WjNgU}=ftB!rLzxeWav)9KtI$Oc>?q+ z4sR{Zo*o$XCVl4G{|3c9?9|ayO0&) z%aWGD!rppuo?wug4_@9!@;1o88&p%R@GCyT=exBc>v-V#NTuqm)81P7`e6QBk=|6j z()G?`5Q2XPHC|60o|J-v9ow*K)N0Y6^_QJ3+_Kd!_oc26)OuSxeZ3&~)2->@QxQh@ zr_+hrUJv8CoO8UKOjs*@E1k9R#)kuH$hU z$1{4^sKQqXR=CK@o5D6_NhRT#r-q>IbHvWW55|UAJ!3*@Nwd6OD2xu<&(LZ6jZ-vB z|7lIj!{QVKl!fDY!8&wWZGyYL`SP0Bc;4G)rlmlZ>Ky{K&0{Qat|TzTvvc_JHW5b1 ziI(;KcAQ%1;If{4#fg5ZaLQ1h4Eo7!<3e{ z-ryydSP1qGakIqc;?zmC`bpgj9P=)4A?>ewv+r3QPxEJEyvxAEpg(e&bsL%Vo?a6a z8+j5WcJx1Jr8Tb~R+Djl!f&2>4;4JIjIyWdozKuzUd`;SzU30D2r%WTPD|P1zJN%5 zRFon9JdU>^%X@=@SvPu{0;g;`m!KUVwQ9n^#k~4r1|1FQeK9XW`92O>Q7!g@v-n00 zSIz1*T&bug#dooMx@c| zbac;1vxJ=|w$?HwNvNFswIgnKu*z=br@i9|K@)b_kA3*K-NTi|U_YSwP6I{G!DS}M z9l_yLeBMP$5uGvM!6Y=Ww%zN+j1aKuJr;YJO-uX`0*&Y_CtiaCeVCAn7c)#U(mNm_ z41IZ}Fs8@Y%buUVQ@{!08R&5MK|Y2YZ2oMLB&T2>@JCt8N~Y=HE|sjmj8VsX0PUP6 zX0HSGU%~Tv*@dx?hAq8B zK__<4M`v|0CYwB97FEu|`(C>OCxFZwy~MGluP* z)OP;z8ec&PdvM-kfOCQDKvlUbMtn$Q(w^h9@V+R=CLi=Rf9}G3&r>>{YT`EJ-ifgX zBY%dM<)L)JY8!3ZjE>Ka2M5WGT3VNP*L3!yWZ}?F+F@Mm_Z6onHI*HfQAe4z8K5oI z^xFY<4H&16rphMM_ee5Go>q-?^x&*^+~csKMx|LiGp%i*;3mqda^o6C9L3J=#g-AB z?HLa~c7w9Kf=aTm=8x@4K4VYax`{)?>2Q+8S~PaIF?V7zNm!%woJ8IbFaFFjlYZ>v zN!p(xi5*}!YH$f3Nh%q8ka0!#?P2zIO}z0QNNBbP@9bmggRpWwiH>?utO z(!Rdw6+5trgny*3;R$_M1m0I`^IVq7woHn!66$|%I zBgCN&74>k8*NE5hxLXJ8Cu@21%?^)NdPv06ewfzes%Y`Zrm;0Cue*#$TM6w2t(-kAq=#oaU@ zn2Y@n`LB`ajV!A8o`-D}tZ*e&tDxEp01KQ#f;aa-&mZW}b9UV?Ug!cz4a5TN4<-?YYC2QSdu5w{d zDSnw$Hf=}NETr)K2AnDz!-#9S!>%oXE!NxL8q#cyCmvnsb$ zFZN3;TF3eqPw?=EVSF@p%Q2i97fcPwYxtp9x*aa6W%zcf4kYm6u(o{BGn$!_*fB!0 zt3-M{LyMlYEJw=K=nbHj|wDYZi?z^PH6p0>b9))L^|1UsB6(UB|Ak`=s@)RU4Q#|P0* zFo&1-QR4tQu~gPyR{F695*how{Wy3(`{9xk(>t)W!|33P9(vPJ$x@}iFR}D8xW~zI zI!+@%O1$F4nHfFV;|m|J8C8tU1L?A`i^@lPHy_kkoYjVt4?Pt}(&hkManhWR>tSy- zO*|r``4k5b1=>$Mxb*CFv~O^%RK%by1^-Ja(f9f*q5j2kPtz4nY*_1kYDp-&=R|pa za*u7r{<(_b;_a#7GUq!_qhu}&m$`_ysrA%~KAS53gSq@DP;l7e^=$f33#1jHY1b1{ z-n?&mR+o)YwZ+$2MOeJCw!1i|&qY}ny;bkS9xM81VZ)(TbDWwQ^qy0t_;={^(Mj#K z%-MIYP0t^@@W8W}hCYEQ#ud9wSJ<@~XwfAM`|DTw{&tWNUw(9tmKdlU(wsVWe!Diqo^MnUhdEHw87=?w&tOO`pw)ZOp-yc2DY8x2M82 zXPy{{IC*2-^N{vBc1!-0;FEkl%Rfm@IGqpSN6GXb@AHR6I6;N|SlUkg5??>U8Au`Q z-aY-L!Nh;6?3X^4r4Koe`zP5&*pf}{dl{m+j8z$D?0hyi)F(dcQgM=~eCCs2LqXGy z1&Jo?UBs25lJ+=w>_9Cu4px=KDU^orcTG&iMaLG4Nf`GX>pQgfv@|+17cRG!?MmG|V&)fa5@bGt;U{ISZ;Run$2_qyNs9}lTw?8Xg@>BopFb&w zjCIm*R31&+t&gCW{qCC30&0A6qU@khlDxF($qCo8>tM)rY~&~(rRvkO4};Rr+Nfrz z(Spei$q1BFHmZb&-dz6NRWqs{2}kvK8Sh zdY|Xtz9eyjCo9e5)3T{$so$nuFjBl#yKtD)r&EnjJqNEdK4ydX`KSp^JoJTGm}VcGqCmytK>~ z9}9K=D?Lk5pN#hA)LY4Z{KZ>xth(ZlLl2>gND3YeCVQ%NLQr@cCaGvVk&&`KsP9PX zI7-T8fI0g3kOqCqQKMM9R{qYNuDz>Jdd}aMvwTC(&+N%NzNxrlx|u#E0eQH7kd!Fy zwY{-euKWM~ie9h|&OQ{3Cv;3wE2_8@eg4Bsh$sG_oelZ2qDI9%%;yU=_nSQOEQ0&P zEqXY|gDoQNjnIpDs zr3}t`gi)S#O+DIKPLpK(xpUqbE{UJTnL!8oL>c)Wn;B!F6x+~q*^xNwU*?(E3!;pT z@kclO2RcY&UlCr&=Q^-WO^JtS2WFqvfZkU-)32c?v}MB;Ot1C~o|MEZX6t!s(wA80 z_iD!G>V}LNq>kTd%^T7lIKlM@Iasmd8pWj=_tnq3rFb8!>5z{4QhPBZWUoR{Day?n z@5soBv&B6ua`c3h&MR4!@eL>Z3IcZ8Q5$*(HRnA9ktv?;MWI31oe)xDo_wGP+zl@?kQ$f|y1EVi7|?uj}3 zmy668f5poz*<*(01~>J5!qbAe?Tav1G*N_@t``(?Cf_*PtTxy(xgS)((P^r-9wGC2JAwyeZgB7|5|@ zD7cP|_(zoFuc=@!XDkWJ{qhMd49sTJN^$yld@R*#*mUkP{=}uer|Vaa_6<@=Q+juI zI$7i*aVbXZONB(g{&S^>=wrOEaYlxt*_Z+QkDW6)ljnl~MEyRw>0d$yAUvZ3mIdW9Cn2HEaSawQ^Qg%AdY9Nm8 zD=&3r60G)~QaOTOg*}@HwCJ-5Pl=?*DQ74(M_kr)+Xn$SoQf;km0j6PQj!W0W2G1n z`G$rc7%rM6p8Si$na5o0tFskuUK6fv$cC&q4iumLlN7X%b>YB7HZ%nqC?&aT8Vn^l zF`_No^AzwzDVS83U{s$4BZ>I?z>&YOz!eMs6^@v0%xe$NH;ZL!H1?fgQ8UBGx+R30 zH~ImMA+Iae3}2SsB)zD?CU`l-0v^+l6ZiA)Vf*KH&3VS;xHvJNjhWLcVy19%H6L3# zojP0;cP~!keppxJxW25_YAsi5tdND*01uSR3VYICYOof4DufRe@eC(BCZ!axxmBBU zid`ueRg!pk*_h zQ);gBMIK5rZ+{6dSaehVpgwJ#EJMn{teI+f=phF#w4fCayJzJ{<=r-aFx&F8t=n=C zZJ%q3E?aF+wQSvAzL!{bimzmZJJV(Nxac}YDq@%5iHK76JnFxWY6YMs)k|lo-qbWT z+z(IIaI~qqhKJgrhU;+ojjVEsO0Ov!%No{b#DBv;iF<0bU)x8$_aQA$jvPF4>=dSf z@)trh=SZ@f=5bHI@djyT0vz|0Wx^Iuui9Tn#PN+G&}({IS|a9^(d!n+hlfw~rVJJ%6)M2qy>)g^4| z>dJTLnuzi6n{$Q7Ha2%hGX9{Y`>@h|bj~ zBQ=tY3PlyfDQd3p@Sirx+|(%V!i8p~a$#kz{n5{w{dp?csMY4e4f<8u%BfNDl!Ywj zq(YN=6R9_mXH%D|uM&4eim&35rJ3KXTCOY{&9z_bU+RObY`?I{wcco3cIh~8j`C5I)4yN(>Kp%;d;OWm z);@Uq_x$zcogZKGwEIx;gWYQ$xcAN<_~`c)*IxSJ-+0N2mH+rlFL_V<&F^jb)V7cP z(*rl0+4Ppq|9$hj-usbdZ(IEBFZlH9J~a7>o1?%&|BF5v%gjB{g>ZrTJ(x{cMe8F z(M&WNosWvqa8!ym3&-?N9>a1RjHcwdE!vuR3`LXCxQ{hf%Y*1=G9D|2qX!kkk_zb; z&M5tC%B#$2N(s!SO0wc?bk=7#EsxF0d?3wS`iCV zN;69yEA$SbHSV;*pPCkIq5ll6^@eQF|D4E zhtA5ztdF$}R1v5Y8>F)u@uhoj^hfJHzfuo!3pnt>%i3$PSe2DAdpfi|EWC;%P6 z3ScF$3b+pF1fB<653B~dfHlBc;Q2r|a0757&;y9&Mfn#1Hv!)UtOs5QYyf(Jjld>g zGw|)e7T{)JE3ggN4n*^Sil2|ZBq*s(^uH6R>M}+1`DgTBewPodcFNb5yVQuS(c=01Nx)%U1gKGIT|s-abUyz;q>KiENTit0 zH3}RMi4^lW;C=Z1Jn&1vuK*taJ_vjW_)XxWz{h~!27U+lB=9G|?*o4bd10DOU_Q)@nx{|fLW;ETYQ0Y&%{jjn&98bO;t;~<{{mH-Vv3%~%$F9n|d zFU5Td_!RK#z@GrW2K+Jb5#SGjUj=>__ygcWz$bv;2R;aV68He{d%&*%Z}*-2dgYb_ z9MAx~0k{A>0z3*_1oFTo;Bnvypdr^VpTCE8xerjn&*bNGGCd4j03HP{0&f5w1AYv+ z1Y8Cl2fiEl9^j3@_X6Jsya{+S@D|{$z}tYg1MdLd4g3V4u^|T4CRhS21(pG=z;d7f ztN>O561P>4NJKAiimxFq$N^5HOx6aV1BzV-0X!Npb>p@h>%G7! z;4IKUsg?lCfi|EWC;%Nmcl1fd+a-}e^iND3+f?Rud91**V3E-W;JAfYtqUf!_ za^U$I;~M1oXL2%K)*O*vr8z=z1~p_7yw=d90U#l zhk+x&QQ+mkG2l3G0=Nsf8#oDk2XH^|3gDH%5Ksip0HeS;Ut=)p< zKpW8RO?b2eoxt;eJRXaH8?g2OF914#J-~IqOMpm%PrmRaZ~DV1|Bp;Q{|fvc;GclM z2R;k@HSpm`fjQx`Kog?a8K7xZ!m*>P|ILcJ<%wi#O}T zCe1Scec$X7+^=#KRjbg&rD)wDIiO$~6n&t3Lf>M&Y?>IVnhJEcf}%W_TqsbVdXF?~ z1Ujj>r=#7z&1pjjr!u<@$9<=aimvqjL78eNWv>i+Ct2xfbYJv9e&jJ2or{j?cf{v_ zc4kPX%INcN{O0#a&=lDKTOW#eTJ&6u?onf*@Y$rB;r_f|AFXbO6Oi_miB18AJf0RBJ~rp-=&eWSN8k$do@Gk9+l#F1Sv2$=)x@n zegvVogT)NXn_giAK~Of#r=ypvw_rDe(fo&#;v5tU*`pzTP(?YU-#yZv4fs(=fsTk~ zPpE!{@`ABYNmFv6Yns1wwWYsTaZf1CL%yUiR#+>& zlI-OO;Hm+gA>TFr{n`tMQKN_q>|G znwmbQxc5i%Z@k({Ukwd?Jxa6+=75&fSQSG9-K1L_75Y@IJ!-W9ap@CsKNGdxqq-kb z1C|{|M8FI(CJgv|EA!;0Xurr6a@uj106HF4lQ8{ss~-u=sI$>(GXUlxxiBq`MXe#9 z^CFbNXxG)GvRkpyW_BybqSBg-sz%Cq}4x-V{zbqYz>9%9ftLuj z?)L)dDana_USv6_x#pPMj%gA)>dhxK2{Hd1k^eyny&FT6eTsrewou^i5ZF>XtO&@c zCzYnjayNzmOnwKI;=P*Xkf-|;V8CbE6@u*cO5tAOi(=L6lq4ZsV4Zv)l?F9fy% z+koxBEx-=oR$wO}ErS#wKm(wy1@sgGj%`R!A!q`cfh9l-uoPGZv;u8FJ5T^RfEB<> zU=`2_JP+6j+y>kZ>;?7#`+))ArNGO8gTTYU1>h0jQQ#u*2H+C#M&NsaZr}#sMxX~+ z2fP5d3HUZ(J@7(c3ve^A71#!B2i^|61Nd>^=Ygky&jKF@J^}n5@JS$tI>-SHfHrB= zoIoS67-#~Tfh9l-uoPGZv;xb4HlQ6S0M`MX!1I9XfwjQ%fo|Xi;2z)<@Br|7U>^7$ zpa-}~kYg{YG53sH61kSht%%&Fs8RR8#Vnh2-`a~qZmsGPXgu+;;bQ;0Ueorg(h#3BD3R%?Jk+g4>%MRgA{oU+cZ&g}@vX7`b zMg86;`%cB$DSzZF(%-6z4=Ua*`n}DU5I;(Liw|EE?ogcV-j{Hsz0;@085YVrBBbQE z$mg{FQ4B?67?h|9a)rlyK>*={ixL~`rGEyq*iqIHl@ajd#h5U zUfXJBE~)O2KjbkY^R05Hg>O~JTjfiC5C-#*!azdQkk%iOjWRQrZhb*I<(@iiL$Ruo(=yuTg| zquIVjwb!WjTas!&S&wR~IqzoaOVB$FUZdt~a>Tdf;_<>CJsWC1rWM|tsG04^Yy9~d zfByeJf9?|{v!!;8ny*pwwNYnFgy?UD7q@yQ##m)2Rah)-_@;+eo#$(zgy+@dK zH}i8ZS-;k7t-OwxxPp{>^PEtKoE{qAcAL%vxDLoWPsnk#SCnG8;8+S$n~ahYp$ zdyQ_tS#&#*CEI(%c)7%|5SvX;(beXKC+!QroxLwsy6n|oq@_@dkfKX^;k-~EIh8}-?VUfSSBzT*}YGmsyn9Xi8G_P zf1^ruteynC#~*yJbq4IP7!YS1>%Di@{h*E)kBCc*=oUx%FlKliY(3{0YFz;iE2R){ zmGv2ubo#-u8?#+WEDnwisWU^&_4R}7RjE>sm%-SE#88vCtESWk^n^YUnF_hWUOt=B z4t5fK3D+&`wrp#^%8=ZF-^@*4F4AyUjzqiMeR;Ae4IYH(42ERSHLhnqvGm0#jDBeu&>N%MdK-i5hY9w=ofmvBs*82 zcqWl&BWq{$%B#sJiCWpjhg1Z+G{tp0%R1b*qK5a?O8!daCQ%d*^dXJH1-0si+Y)+{ z>eI<+C{F2aICd^U>g`^+(G>K@OmusnEJo|$crzE$xk1UZgy~%EcyqEW+)^tl?^m3N z(@v71*C(RwwIU#UBt!>w!MX4Dq`(EdomY-@B5q|XV6g4JazqxpB^7wgv%KN>0Cz~B z6g_a|B&tJjxgN%LCQdGCFkaKJH#I|3-%%aCau}ZScaRhIleEl6QihOUqsHP4Ibr+RtITu)t3e~9tJVrv2c=y6rAB= zy}}3?E92h|VcI4BOnjaP1`+AyNL!_n3&B@=jb5^h75_K%k9W`(6@ zf#2`Aa!{Iy0;UJg1IJ|@@nTPER1LpoP;B0zN zkE>)-4q-P0LpBn1V4AhMo%KU=-*J_fv2jX6iff&;3cO-icPxu?u^X-F>ergvx7SMM zN|AOXk)C5-=^Sb|NyuU|bVR3>)L~3jh#~d_k`X*z2&Ec(+pu4iw=31wkx*J%3_DdG zFl%Y->}xXv%7s~$#@<*hD5a-58k2{K;I87GwHPf@;IzDX?udDrlEMdgB8h%tP)tW7 zwW9VZI1!8^zz^&}7OHHuOPG8Z68*}CD_)ijj0fq7EEx^!Yh`2IFe4%+7}G>C+K^b1 zIl~&9hhAVglnj>lQi9H^el#_TXKG0U!|?6C`5~F7;wi^Q0I%mDH}na|${cfF?WEFl z0^8@=Af)7?7jpCk9N&%!g%KRTi)2+`Bg256!3)h{a-FL%Mp>`5#MR%s%k#q>>8-^3?n zrT|A&_F4~y(SL!s<~&2Ud4#bDizOau7yVoTA5G`fnU**E#3&KCnbbDeRBW?5?{v^o zwW?E!?ylu*R1#9NqFA`l8^fX=VzhhNYvj zU3;Kb0{5y|$UeiqU;4ZxOtC|CYQ@=I%kh|!VFg7y&v+qt>*iD$zV&v(e2e! zw9UED?zCqF(3;VTNn}BvqBVYPa!)utRho`=pHSVPjN@v2c%sQSG#Aol^^D6{=27wE ziUrRZd+tdvUmKIUlS2qFNmhdsRnqPe4dU<)PGE!N%-bC_l*lE$_D}e7&~o&7x@JP2 z5Tm8>+Hx z7noTR65K8OtXxnCY`^*h7;=n?ndn*Mnym<>p#!#NmngjX6x1a3TK4`Ue*J}>1Od^; zxXF--e9ViI6w+E7(zACW!!o-vd}wd!k(iE?j?c~q)Vxyexv4UWY1{gnyOZzUB9#t?Wazqmnu zp#o`cbGt3Wo(rQoY>#$M`{p*mq!wo>Wu&!q+w*W8$_bk^c827Pt|;t;7&9v@#!&qX zw!-a^6?nojyQoPE*y(HYijvMc9gNY!Vzg4gxFa1UU5i?Eu4Gm_Y?@&-Oo*S+Q52c+ z4-UyKOUuk>rD#hS9F>D6J2oh?iSxH#T?7cHaxiJ`42(A6-n9yvp1<&C7@(FJjy5ni zoYS8@Lsh$BOuycR$P^YAm2>d=v?n^A5w!(OuTqgLMK=OGGO#hzu!?7?#UKr9uViKX zQj@uDD5RNQScxP`s9IwJ8P5oQJla?!z41jl4%@j^ju zxP*kla7h=pGo2_Mht$Aau%(_yT8t(F+B5n&6CvG(^&(^{pU%2g<#*I8j#V+~%4}nF z*NYZfX>&S2(qvGnEi|*~#XBNKD7IdKF{ImHLEurW%SQFfP_W=g6-JOZRR_ry!`Q&i zbSs)vTg)iJ)BY^WLV?t&JZE)Of`1SN?dfKTM+|{M6&X<&7K?;>TEAm{m0%2G`;~&7 zS0tVq8J5%-)QOuHiUbcBRxTrPn}}ShgBv3>Dh{vzGKv}IbtCWwF0IYem=I1U^? zPZMC>AeGBZ>-|!qSPUINRjOCnYeQxsST-Z+MNA+MQx|XF)=Hy{K!F;W;fZ z=Tvc~g!G6G(-u>BQH-}jWJQaSRyiip>AGx2MxzLHK~UYIr)h4=2C|GtRh2U$HJH%2 zNMk1I&IUtQV^ejQPxN#&&xf)E;5BF}0VjuXC1bCU4s=+Lsp-|$po*#Ck?R|GN(jE14w85}F8 z<{N_t+zOEt%E^+-<}5eervkwdN_ED|P1)dCsz@kloe?TafN`%AoK_WC4wz2K275(X zlnZ5W&~gMuv^JY%CDB%-5+<6;R5B&1m(}`ou@CxQu^s5jhV4oRtSnI`t3XK>$VNYm zTq1uW#3ULMCJQ*c1t0KcM1(*hbhotoM5Qm!#A3Y#N38$}mGo!NWTRd(DSAV_JgRk1 zH=R)Ita85AtW`sYp9HI(fbOhLH7&#%`z!gH&1$B!DV}jdS;nJ-3rDYRDV~nD$+tSD z_UtNam@W(C0mDjrX?1WoSszYt8z%LPy(sbfw z`+9*12&=RS-K*;s3TnBGN9!sJ5Tu%P#`o2(V`u?Hf}t|cg7~1*lU~m|;T5yY#z9#@ z!e_h~fpVrZ;hmwqO?c9YABa4(1AEl9OQF+4Az;{FsvNIcqwJF?#|B(_HmO|ErK^0$ zvyXC0qt6xt2cJu14hirv(d51ASoshVOVel&I~em+s@4LmvU-->hL9YrBCVpaAqa`W zTIfXy&em+9qmyYlEq!QZVZrDhN^i?cTc1~|!^_zxl2E!X)&<7fbP~zZy+?g_P}MXw z1j92CJ2T6g&=PPB`^*IE)=>IVw1O0Q3O!8)zC@Ldl*!KWq=~}Uv@)pCGYt}SI=GBS z-PPg`a|%sv^}De;fN>c{iv{UgXytu7?VT+3>Ca@Nki|x54i-ozVuYsHdZnmH4vZ>W zc%WgEt`ZAVG-4+sJV}36ISi|9P3jKfj>Zu4$b_QIs0;ZR2-^ZPzIQxVmz`P6)CAcB zYS(9bDIINHc5Wv1tVWr_tqb&>R%9Ulrgs{;Lm-<$t5fL?B2>Kq`br8b_^TORRj@r^Oi=%Fc%n;7YObYeHGicyVo9rt|V( z@c{i@5H9s!m_Wx@xplmrp7Gezx$_Ms4<5!g6{lS6=Z_Agz+p!heE zsZP8?iE)>2#p?FFgQiHB48#*^PutSawy9zh4~!@gRd(9>^gw3oJH@t>5(N z@P*quI}O<;j{oXYwN}cO_q9HgcAi#YX&sn;NiE8!YO0qN2|)yL0wP5DWP_FgWJ41n zfis{X&FZw&fkBKxvb5#l)fI!eBG9B4G^(pxogeyu?DyezTi2zxd#TQqs$!z69g5pg zzgg3gBQ4CPNm%s6XX1^=W~tpMuv(tc1Z^~ykk1iMtfo0hdd7z8mde&$IC?3%-cqp7 z)Y#eo5T!d&3I(U65Cdv42_ltcGx5)NN8;*_9SwS!{UL4v#&D1N7O>-QA)6lG1NT4$3kVJnr z*DFP11#4?05)Fw|xa!M>%*#OmFlLfY#O4ig$|O*xROO}#9^TxPYbkC ztA``0S+XDyf /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. /// - // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert - // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + // Diese Klasse wurde von der StronglyTypedResourceBuilder-Klasse + // über ein Tool wie ResGen oder Visual Studio automatisch generiert. // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen - // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] + // mit der Option /str erneut aus, oder erstellen Sie Ihr VS-Projekt neu. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources { - + internal class Resources + { + private static global::System.Resources.ResourceManager resourceMan; - + private static global::System.Globalization.CultureInfo resourceCulture; - + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() { + internal Resources() + { } - + /// /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager { - get { - if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("App.Properties.Resources", typeof(Resources).Assembly); + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if ((resourceMan == null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Application.Properties.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; } } - + /// /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle - /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + /// Ressourcenlookups, die diese stark typisierte Ressourcenklasse verwenden. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture { - get { + internal static global::System.Globalization.CultureInfo Culture + { + get + { return resourceCulture; } - set { + set + { resourceCulture = value; } } diff --git a/SOURCE/Properties/Resources.resx b/SOURCE/Application/Properties/Resources.resx similarity index 100% rename from SOURCE/Properties/Resources.resx rename to SOURCE/Application/Properties/Resources.resx diff --git a/SOURCE/Properties/Settings.Designer.cs b/SOURCE/Application/Properties/Settings.Designer.cs similarity index 63% rename from SOURCE/Properties/Settings.Designer.cs rename to SOURCE/Application/Properties/Settings.Designer.cs index ef127de..6ef77d2 100644 --- a/SOURCE/Properties/Settings.Designer.cs +++ b/SOURCE/Application/Properties/Settings.Designer.cs @@ -1,24 +1,27 @@ //------------------------------------------------------------------------------ // -// Dieser Code wurde von einem Tool generiert. -// Laufzeitversion:4.0.30319.42000 +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 // -// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -// der Code erneut generiert wird. +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. // //------------------------------------------------------------------------------ -namespace App.Properties { - - + +namespace App.Properties +{ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase + { + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { + + public static Settings Default + { + get + { return defaultInstance; } } diff --git a/SOURCE/Properties/Settings.settings b/SOURCE/Application/Properties/Settings.settings similarity index 100% rename from SOURCE/Properties/Settings.settings rename to SOURCE/Application/Properties/Settings.settings diff --git a/SOURCE/Plugin/.gitignore b/SOURCE/Plugin/.gitignore new file mode 100644 index 0000000..022ebf8 --- /dev/null +++ b/SOURCE/Plugin/.gitignore @@ -0,0 +1,5 @@ +.vs/ +obj/ +packages/ +Plugins/ + diff --git a/SOURCE/Plugin/About.xaml b/SOURCE/Plugin/About.xaml new file mode 100644 index 0000000..d6f3293 --- /dev/null +++ b/SOURCE/Plugin/About.xaml @@ -0,0 +1,161 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + © TINF19C DHBW Stuttgart 2021 + + + + + This Plugin uses third-party software for the convertions of IODD and GSDML. All Rights are reserved by the corresponding copyright owner. + + + + Visit ModellingWizard + on GitHub to get more informations about this project. + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SOURCE/Plugin/About.xaml.cs b/SOURCE/Plugin/About.xaml.cs new file mode 100644 index 0000000..6e90780 --- /dev/null +++ b/SOURCE/Plugin/About.xaml.cs @@ -0,0 +1,42 @@ + +using System.Reflection; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Navigation; + +namespace Aml.Editor.Plugin +{ + /// + /// Interaction logic for About.xaml + /// + public partial class About : Window + { + public About() + { + this.DataContext = this; + InitializeComponent(); + + var assembly = Assembly.GetCallingAssembly(); + + txtVersion.Text = "Version "+ assembly.GetName().Version.ToString(); + + + } + + private void Close_Click(object sender, RoutedEventArgs e) + { + this.Close(); + } + + public string Version + { + get; + set; + } + + private void Hyperlink_RequestNavigate(object sender, RequestNavigateEventArgs e) + { + System.Diagnostics.Process.Start(e.Uri.ToString()); + } + } +} diff --git a/SOURCE/Plugin/AnimationClass.cs b/SOURCE/Plugin/AnimationClass.cs new file mode 100644 index 0000000..4bb07fa --- /dev/null +++ b/SOURCE/Plugin/AnimationClass.cs @@ -0,0 +1,164 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using Aml.Editor.Plugin.Properties; +using System.IO; +using System.Drawing; +using System.Web; +using System.Net; + +namespace Aml.Editor.Plugin +{ + class AnimationClass + { + public Panel PanelNumber { get; set; } + public Button ButtonNumber { get; set; } + public WebBrowser Webbrowser { get; set; } + public TextBox TextboxName { get; set; } + public PictureBox PictureboxNumber { get; set; } + public Button DisplayBtn { get; set; } + public DataGridView dataGridView { get; set; } + public string words { get; set; } + // public TreeNode Node { get; set; } + + + public AnimationClass() + { + + } + + // Method for window size maximum and minimum + public void WindowSizeChanger(Panel panelNumber,Button buttonNumber) + { + PanelNumber = panelNumber; + ButtonNumber = buttonNumber; + if (panelNumber.Size == panelNumber.MaximumSize) + { + panelNumber.Size = panelNumber.MinimumSize; + buttonNumber.Image = Resources.icons8_expand_arrow_24; + } + else + { + panelNumber.Size = panelNumber.MaximumSize; + buttonNumber.Image = Resources.icons8_collapse_arrow_24; + } + } + + public void WindowSizeChanger(Panel panelNumber) + { + PanelNumber = panelNumber; + // Node = node; + if (panelNumber.Size == panelNumber.MaximumSize) + { + panelNumber.Size = panelNumber.MinimumSize; + //Node.Image = Resources.icons8_expand_arrow_24; + } + else + { + panelNumber.Size = panelNumber.MaximumSize; + //Node.Image = Resources.icons8_collapse_arrow_24; + } + } + + public string OpenFileDialog(TextBox textboxName) + { + TextboxName = textboxName; + + OpenFileDialog open = new OpenFileDialog(); + open.Filter = "Document Files(*.pdf; *.doc;*.jpg; *.jpeg; *.gif; *.bmp; *.png;)|*.pdf; *.doc;*.jpg; *.jpeg; *.gif; *.bmp; *.png;"; + if (open.ShowDialog() == DialogResult.OK) + { + textboxName.Text = open.FileName; + + } + string nameOfFile = Path.GetFileName(open.FileName); + return nameOfFile; + } + + public void OpenFileDialog(TextBox textboxName, Button pdfDisplayBtn) + { + TextboxName = textboxName; + DisplayBtn = pdfDisplayBtn; + WebBrowser webbrowser = new WebBrowser(); + OpenFileDialog open = new OpenFileDialog(); + open.Filter = "Files(*.pdf; *.doc;)|*.pdf; *.doc;"; + if (open.ShowDialog() == DialogResult.OK) + { + textboxName.Text = open.FileName; + pdfDisplayBtn.Visible = true; + pdfDisplayBtn.Text = Path.GetFileName(open.FileName); + + } + } + // method for opening IEC-CDD urls + public void ManualOpener(string btnText) + { + string mainUrl = "https://cdd.iec.ch/CDD/IEC62683/iec62683.nsf/PropertiesAllVersions/0112-2---62683%23"; + string lastUrl = "?OpenDocument"; + string midUrl = btnText.Substring(15); + string finalUrl = mainUrl +midUrl+ lastUrl; + + System.Diagnostics.Process.Start(finalUrl); + } + + + // Open Dialog Box related method that takes parmeters of textbox name and the picture box number. + public void OpenFileDialog(TextBox textboxName,PictureBox pictureBoxNumber) + { + TextboxName = textboxName; + PictureboxNumber = pictureBoxNumber; + OpenFileDialog open = new OpenFileDialog(); + open.Filter = "Image Files(*.jpg; *.jpeg; *.gif; *.bmp; *.png;)|*.jpg; *.jpeg; *.gif; *.bmp; *.png;"; + if (open.ShowDialog() == DialogResult.OK) + { + textboxName.Text = open.FileName; + pictureBoxNumber.Image = new Bitmap(open.FileName); + } + } + + public void OpenFileDialog(TextBox textboxName, PictureBox pictureBoxNumber, Button displayButton) + { + TextboxName = textboxName; + PictureboxNumber = pictureBoxNumber; + DisplayBtn = displayButton; + OpenFileDialog open = new OpenFileDialog(); + open.Filter = "Image Files(*.jpg; *.jpeg; *.gif; *.bmp; *.png;)|*.jpg; *.jpeg; *.gif; *.bmp; *.png;"; + if (open.ShowDialog() == DialogResult.OK) + { + textboxName.Text = open.FileName; + pictureBoxNumber.Image = new Bitmap(open.FileName); + displayButton.Visible = true; + displayButton.Text = Path.GetFileName(open.FileName); + } + } + + // this method dispaly all hidden buttons with the Refsemantic Id in them. + public void DispalySemanticBtn(Button refSemanticBtn, DataGridView dataGrids,string word) + { + words = word; + DisplayBtn = refSemanticBtn; + dataGridView = dataGrids; + + DisplayBtn.Visible = true; + dataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect; + try + { + foreach (DataGridViewRow attribute in dataGridView.Rows) + { + if (attribute.Cells[1].Value.ToString().Equals(words)) + { + DisplayBtn.Text = attribute.Cells[0].Value.ToString(); + break; + } + } + } + catch (Exception exc) + { + MessageBox.Show(exc.Message); + } + } + } +} diff --git a/SOURCE/Plugin/AutomationMLDataTables.cs b/SOURCE/Plugin/AutomationMLDataTables.cs new file mode 100644 index 0000000..ee96dd8 --- /dev/null +++ b/SOURCE/Plugin/AutomationMLDataTables.cs @@ -0,0 +1,172 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Data; +using System.Windows.Forms; +using System.Drawing; + +namespace Aml.Editor.Plugin +{ + class AutomationMLDataTables + { + public DataTable AMLAttributeParameters() + { + DataTable AMLAttributeParameters = new DataTable(); + + AMLAttributeParameters.Columns.Add("AttributeName"); + AMLAttributeParameters.Columns.Add("Value"); + AMLAttributeParameters.Columns.Add("Default"); + AMLAttributeParameters.Columns.Add("Unit"); + AMLAttributeParameters.Columns.Add("DataType"); + AMLAttributeParameters.Columns.Add("Semantic", typeof(ComboBox)); + /*AMLAttributeParameters.Columns.Add("Reference"); + AMLAttributeParameters.Columns.Add("Description");*/ + + return AMLAttributeParameters; + } + + public void CreateDataTableWithColumns( DataTable dataRowName, DataGridView dataGridViewName, + KeyValuePair>> pair) + { + KeyValuePair>> Pair = pair; + + DataTable DataRowName = dataRowName; + DataGridView DataGridViewName = dataGridViewName; + + + + foreach (var valueList in Pair.Value) + { + + + foreach (var item in valueList) + { + List listofRefsemantics = new List(); + DataRow row = DataRowName.NewRow(); + + /*row["AttributeName"] = item.Name; + row["Value"] = item.Value; + row["Default"] = item.Default; + row["Unit"] = item.Unit; + row["DataType"] = null;*/ + int num = DataGridViewName.Rows.Add(); + + + if (item.Name == "Manufacturer" || item.Name == "Model" || item.Name == "ManufacturerURI" || item.Name == "DeviceClass" || item.Name == "ProductCode") + { + DataGridViewName.Rows[num].Cells[0].Value = item.Name; + DataGridViewName.Rows[num].Cells[0].Style.ForeColor = Color.Red; + } + else + { + DataGridViewName.Rows[num].Cells[0].Value = item.Name; + } + + DataGridViewName.Rows[num].Cells[1].Value = item.Value; + DataGridViewName.Rows[num].Cells[2].Value = item.Default; + DataGridViewName.Rows[num].Cells[3].Value = item.Unit; + DataGridViewName.Rows[num].Cells[4].Value = item.DataType; + try + { + foreach (var value in item.RefSemanticList.Elements) + { + listofRefsemantics.Add(value.FirstAttribute.Value.ToString()); + } + } + catch (Exception) + { + + } + + DataGridViewComboBoxCell dgvcbc = (DataGridViewComboBoxCell)DataGridViewName.Rows[num].Cells[5]; + dgvcbc.Items.Clear(); + + foreach (var items in listofRefsemantics) + { + dgvcbc.Items.Add(items); + } + + + + + DataRowName.Rows.Add(row); + + + + break; + } + + + } + + } + public void CheckForSameNameTextOfInternalAttributes(DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair> pair) + { + KeyValuePair> Pair = pair; + DataTable DataRowName = dataRowName; + DataGridView DataGridViewName = dataGridViewName; + foreach (DataGridViewRow eachrow in DataGridViewName.Rows) + { + try + { + /* if (eachrow.Cells[0].Value.Equals(item.Name)) + { + + }*/ + } + catch (Exception) { } + } + } + public void CreateDataTableWithColumns(DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair> pair) + { + KeyValuePair> Pair = pair; + DataTable DataRowName = new DataTable(); + DataRowName = dataRowName; + DataGridView DataGridViewName = dataGridViewName; + + foreach (var item in Pair.Value) + { + + DataRow row = DataRowName.NewRow(); + + + row["AttributeName"] = item.AttributeName; + row["Value"] = item.Values; + row["Default"] = item.Default; + row["Unit"] = item.Units; + row["DataType"] = item.DataType; + row["Semantic"] = item.Semantic; + row["Reference"] = item.Reference; + row["Description"] = item.Description; + DataRowName.Rows.Add(row); + + + + + /* break;*/ + + + + } + foreach (DataRow IDT in DataRowName.Rows) + { + + int num = DataGridViewName.Rows.Add(); + DataGridViewName.Rows[num].Cells[0].Value = IDT["AttributeName"].ToString(); + DataGridViewName.Rows[num].Cells[1].Value = IDT["Value"].ToString(); + DataGridViewName.Rows[num].Cells[2].Value = IDT["Default"].ToString(); + DataGridViewName.Rows[num].Cells[3].Value = IDT["Unit"].ToString(); + DataGridViewName.Rows[num].Cells[4].Value = IDT["DataType"].ToString(); + DataGridViewName.Rows[num].Cells[5].Value = IDT["Semantic"].ToString(); + DataGridViewName.Rows[num].Cells[6].Value = IDT["Reference"].ToString(); + // DataGridViewName.Rows[num].Cells[7].Value = IDT["Description"].ToString(); + + } + // For each loop creating the rows in the data table + + } + + } +} diff --git a/SOURCE/Plugin/ClassDiagram1.cd b/SOURCE/Plugin/ClassDiagram1.cd new file mode 100644 index 0000000..d63f632 --- /dev/null +++ b/SOURCE/Plugin/ClassDiagram1.cd @@ -0,0 +1,40 @@ + + + + + + AEAAAAAAACCAAAwEAAAAgABEAASAAAGAAACEAAAEAEE= + SearchAMLLibraryFile.cs + + + + + + AAAAAAgAAAAEAAAAAAABAQBAAgAAEAEBAAAAAEIBACA= + SearchAMLComponentFile.cs + + + + + + f+Lfxtcfg3/IeTb7yP335u3/aqvH3RPMf9bi+vq9ra4= + DeviceDescription.cs + + + + + + + + + + + + + + SAAAAAAAgAgCAAAAAAAAEIAAAAABAACAJAAAAAAAAAA= + MWData.cs + + + + \ No newline at end of file diff --git a/SOURCE/Plugin/ClassDiagram2.cd b/SOURCE/Plugin/ClassDiagram2.cd new file mode 100644 index 0000000..14cd726 --- /dev/null +++ b/SOURCE/Plugin/ClassDiagram2.cd @@ -0,0 +1,141 @@ + + + + + + IAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAQAAA= + About.xaml.cs + + + + + + + AAAAAAAAGCAAAEAEAAAAAAAAAEAAAAAACCQJAAAAQAA= + AnimationClass.cs + + + + + + AAAAIAAAIAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAA= + AutomationMLDataTables.cs + + + + + + EgAAAACABAEggAAEIAAAIAQAAAAAAAACAAAgAAAAAAA= + ClassOfListsFromDataGridViews.cs + + + + + + EgAAAACABAMigAAEIAAAIAQAAAAAEAACAAAgAAAAAAA= + ClassOfListsFromReferencefile.cs + + + + + + f+Lfxtcfg3/IeTb7yP335u3/aqvH3RPMf9bi+vq9ra4= + DeviceDescription.cs + + + + + + AIBAExAAAgQBAAIgEAEIUIRAEIASCgAgAAgAAEAAAEA= + ModellingWizard.xaml.cs + + + + + + + + + + AgAAAAAAAACAAAAAAAAQAAAAQAAAgEAAAAggAAAAAAA= + MWController.cs + + + + + + SAAAAAAAgAgCAAAAAAAAEIAAAAABAACAJAAAAAAAAAA= + MWData.cs + + + + + + AQABEAAAAAAAAgAAQCAICACAAEAEAAAAAEACAAQEAAA= + MWDevice.cs + + + + + + ABAAAAAAAAAAAAAEAAAAAAAQAAAAAAAAAAAgAAAAAAA= + MWDevice.cs + + + + + + AAAAEAAEAAACAAAEBAAAAAAAAAgQAAAAAAAAAAAAAAA= + MWDevice.cs + + + + + + BAAAAAAAAAAAAAAEAAAAAAAQAAAAAAAAEAAgAAAAAAA= + MWDevice.cs + + + + + + BAAAAAAAAAAAAAAEAAAAAAAQAAAAAAAAEAAgAAAAAAg= + MWDevice.cs + + + + + + AAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAACAJAAAAAAAA= + MWDevice.cs + + + + + + EgAAAACAAAMgAIAEAAAAIAAAAAAAAAAAEAAgAAAAAAA= + MWDevice.cs + + + + + + AAAAAAgAAAAEAAAAAAABAQBAAgAAEAEBAAAAAEIBACA= + SearchAMLComponentFile.cs + + + + + + AEAAAAAAACCAAAwEAAAAgABEAASAAAGAAACEAAAEAEE= + SearchAMLLibraryFile.cs + + + + + + IAAAAAAAAAABAAAAAAABEJAAQQkAAIAAgAAAAAAAAIE= + + + + \ No newline at end of file diff --git a/SOURCE/Plugin/ClassOfListsFromDataGridViews.cs b/SOURCE/Plugin/ClassOfListsFromDataGridViews.cs new file mode 100644 index 0000000..3d3eaa3 --- /dev/null +++ b/SOURCE/Plugin/ClassOfListsFromDataGridViews.cs @@ -0,0 +1,65 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Aml.Editor.Plugin +{ + class ClassOfListsFromDataGridViews + { + public string Name { get; set; } + public string Value { get; set; } + public string Default { get; set; } + public string Unit { get; set; } + public string Semantic { get; set; } + public string Reference { get; set; } + public string Description { get; set; } + public string CopyRight { get; set; } + public string AttributePath { get; set; } + public string RefBaseClassPath { get; set; } + public string ID { get; set; } + public string ReferencedClassName { get; set; } + //public CAEXSequence RefSemanticList { get; set; } + + + + + public ClassOfListsFromDataGridViews() + { + // RefSemanticList = new List>(); + } + + public ClassOfListsFromDataGridViews(string name, string value, + string _default, string unit, + string reference, string description, + string copyRight, string semantic, string + attributePath, string refBaseClassPath, + string id, string referencedClassName /*CAEXSequence refSemanticList*/) + : this() + { + this.Name = name; + this.Value = value; + this.Default = _default; + this.Unit = unit; + this.Reference = reference; + this.Description = description; + this.CopyRight = copyRight; + this.Semantic = semantic; + this.AttributePath = attributePath; + this.RefBaseClassPath = refBaseClassPath; + this.ID = id; + this.ReferencedClassName = referencedClassName; + //this.RefSemanticList = refSemanticList; + + } + + public override string ToString() + { + return "ClassOfListsFromReferencefile(" + Name + "=" + Value + "=" + Default + "=" + Unit + "=" + Reference + "=" + + Description + "=" + CopyRight + "=" + Semantic + "=" + AttributePath + "=" + RefBaseClassPath + "=" + ID + + "=" + ReferencedClassName + ")"; + } + + } +} diff --git a/SOURCE/Plugin/ClassOfListsFromReferencefile.cs b/SOURCE/Plugin/ClassOfListsFromReferencefile.cs new file mode 100644 index 0000000..a9b1a7d --- /dev/null +++ b/SOURCE/Plugin/ClassOfListsFromReferencefile.cs @@ -0,0 +1,69 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Aml.Engine.AmlObjects; +using Aml.Engine.CAEX; + +namespace Aml.Editor.Plugin +{ + public class ClassOfListsFromReferencefile + { + public string Name { get; set; } + public string Value { get; set; } + public string Default { get; set; } + public string Unit { get; set; } + public string Semantic { get; set; } + public string Reference { get; set; } + public string Description { get; set; } + public string CopyRight { get; set; } + public string AttributePath { get; set; } + public string RefBaseClassPath { get; set; } + public string ID { get; set; } + public string ReferencedClassName { get; set; } + public CAEXSequence RefSemanticList { get; set; } + public string SupportesRoleClassType { get; set; } + public string DataType { get; set; } + + + //public List listofparameters { get; set; } + + public ClassOfListsFromReferencefile() + { + // RefSemanticList = new List>(); + } + + public ClassOfListsFromReferencefile(string name, string value, + string _default, string unit, + string reference, string description, + string copyRight, string semantic, string + attributePath, string refBaseClassPath, + string id, string referencedClassName, CAEXSequence refSemanticList, string supportesRoleClassType, string dataType) + : this() + { + this.Name = name; + this.Value = value; + this.Default = _default; + this.Unit = unit; + this.Reference = reference; + this.Description = description; + this.CopyRight = copyRight; + this.Semantic = semantic; + this.AttributePath = attributePath; + this.RefBaseClassPath = refBaseClassPath; + this.ID = id; + this.ReferencedClassName = referencedClassName; + this.RefSemanticList = refSemanticList; + this.SupportesRoleClassType = supportesRoleClassType; + this.DataType = dataType; + } + + public override string ToString() + { + return "ClassOfListsFromReferencefile("+Name+"="+Value+"="+Default+"="+Unit+"="+Reference+"=" + +Description+"="+CopyRight+"="+Semantic+"="+AttributePath+ "=" + RefBaseClassPath + "=" + ID + + "=" + ReferencedClassName + "=" + RefSemanticList + "=" + SupportesRoleClassType + "=" + DataType + ")"; + } + } +} diff --git a/SOURCE/Plugin/Code Documentation/Doxyfile b/SOURCE/Plugin/Code Documentation/Doxyfile new file mode 100644 index 0000000..cc7eb44 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/Doxyfile @@ -0,0 +1,2577 @@ +# Doxyfile 1.8.17 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project. +# +# All text after a double hash (##) is considered a comment and is placed in +# front of the TAG it is preceding. +# +# All text after a single hash (#) is considered a comment and will be ignored. +# The format is: +# TAG = value [value, ...] +# For lists, items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (\" \"). + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the configuration +# file that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# https://www.gnu.org/software/libiconv/ for the list of possible encodings. +# The default value is: UTF-8. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by +# double-quotes, unless you are using Doxywizard) that should identify the +# project for which the documentation is generated. This name is used in the +# title of most generated pages and in a few other places. +# The default value is: My Project. + +PROJECT_NAME = "Modeling Wizard Plugin for AutomationML Editor" + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. This +# could be handy for archiving the generated documentation or if some version +# control system is used. + +PROJECT_NUMBER = Version2.0.0.0 + +# Using the PROJECT_BRIEF tag one can provide an optional one line description +# for a project that appears at the top of each page and should give viewer a +# quick idea about the purpose of the project. Keep the description short. + +PROJECT_BRIEF = Plugin + +# With the PROJECT_LOGO tag one can specify a logo or an icon that is included +# in the documentation. The maximum height of the logo should not exceed 55 +# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy +# the logo to the output directory. + +PROJECT_LOGO = + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path +# into which the generated documentation will be written. If a relative path is +# entered, it will be relative to the location where doxygen was started. If +# left blank the current directory will be used. + +OUTPUT_DIRECTORY = "C:\Modelling Wizard\Code Documentation" + +# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- +# directories (in 2 levels) under the output directory of each output format and +# will distribute the generated files over these directories. Enabling this +# option can be useful when feeding doxygen a huge amount of source files, where +# putting all generated files in the same directory would otherwise causes +# performance problems for the file system. +# The default value is: NO. + +CREATE_SUBDIRS = NO + +# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII +# characters to appear in the names of generated files. If set to NO, non-ASCII +# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode +# U+3044. +# The default value is: NO. + +ALLOW_UNICODE_NAMES = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, +# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), +# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, +# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), +# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, +# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, +# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, +# Ukrainian and Vietnamese. +# The default value is: English. + +OUTPUT_LANGUAGE = English + +# The OUTPUT_TEXT_DIRECTION tag is used to specify the direction in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all generated output in the proper direction. +# Possible values are: None, LTR, RTL and Context. +# The default value is: None. + +OUTPUT_TEXT_DIRECTION = None + +# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member +# descriptions after the members that are listed in the file and class +# documentation (similar to Javadoc). Set to NO to disable this. +# The default value is: YES. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief +# description of a member or function before the detailed description +# +# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. +# The default value is: YES. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator that is +# used to form the text in various listings. Each string in this list, if found +# as the leading text of the brief description, will be stripped from the text +# and the result, after processing the whole list, is used as the annotated +# text. Otherwise, the brief description is used as-is. If left blank, the +# following values are used ($name is automatically replaced with the name of +# the entity):The $name class, The $name widget, The $name file, is, provides, +# specifies, contains, represents, a, an and the. + +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# doxygen will generate a detailed section even if there is only a brief +# description. +# The default value is: NO. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. +# The default value is: NO. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path +# before files name in the file list and in the header files. If set to NO the +# shortest path that makes the file name unique will be used +# The default value is: YES. + +FULL_PATH_NAMES = YES + +# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. +# Stripping is only done if one of the specified strings matches the left-hand +# part of the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the path to +# strip. +# +# Note that you can specify absolute paths here, but also relative paths, which +# will be relative from the directory where doxygen is started. +# This tag requires that the tag FULL_PATH_NAMES is set to YES. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the +# path mentioned in the documentation of a class, which tells the reader which +# header file to include in order to use a class. If left blank only the name of +# the header file containing the class definition is used. Otherwise one should +# specify the list of include paths that are normally passed to the compiler +# using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but +# less readable) file names. This can be useful is your file systems doesn't +# support long names like on DOS, Mac, or CD-ROM. +# The default value is: NO. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the +# first line (until the first dot) of a Javadoc-style comment as the brief +# description. If set to NO, the Javadoc-style will behave just like regular Qt- +# style comments (thus requiring an explicit @brief command for a brief +# description.) +# The default value is: NO. + +JAVADOC_AUTOBRIEF = YES + +# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line +# such as +# /*************** +# as being the beginning of a Javadoc-style comment "banner". If set to NO, the +# Javadoc-style will behave just like regular comments and it will not be +# interpreted by doxygen. +# The default value is: NO. + +JAVADOC_BANNER = NO + +# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first +# line (until the first dot) of a Qt-style comment as the brief description. If +# set to NO, the Qt-style will behave just like regular Qt-style comments (thus +# requiring an explicit \brief command for a brief description.) +# The default value is: NO. + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a +# multi-line C++ special comment block (i.e. a block of //! or /// comments) as +# a brief description. This used to be the default behavior. The new default is +# to treat a multi-line C++ comment block as a detailed description. Set this +# tag to YES if you prefer the old behavior instead. +# +# Note that setting this tag to YES also means that rational rose comments are +# not recognized any more. +# The default value is: NO. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the +# documentation from any documented member that it re-implements. +# The default value is: YES. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new +# page for each member. If set to NO, the documentation of a member will be part +# of the file/class/namespace that contains it. +# The default value is: NO. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen +# uses this value to replace tabs by spaces in code fragments. +# Minimum value: 1, maximum value: 16, default value: 4. + +TAB_SIZE = 4 + +# This tag can be used to specify a number of aliases that act as commands in +# the documentation. An alias has the form: +# name=value +# For example adding +# "sideeffect=@par Side Effects:\n" +# will allow you to put the command \sideeffect (or @sideeffect) in the +# documentation, which will result in a user-defined paragraph with heading +# "Side Effects:". You can put \n's in the value part of an alias to insert +# newlines (in the resulting output). You can put ^^ in the value part of an +# alias to insert a newline as if a physical newline was in the original file. +# When you need a literal { or } or , in the value part of an alias you have to +# escape them by means of a backslash (\), this can lead to conflicts with the +# commands \{ and \} for these it is advised to use the version @{ and @} or use +# a double escape (\\{ and \\}) + +ALIASES = + +# This tag can be used to specify a number of word-keyword mappings (TCL only). +# A mapping has the form "name=value". For example adding "class=itcl::class" +# will allow you to use the command class in the itcl::class meaning. + +TCL_SUBST = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources +# only. Doxygen will then generate output that is more tailored for C. For +# instance, some of the names that are used will be different. The list of all +# members will be omitted, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or +# Python sources only. Doxygen will then generate output that is more tailored +# for that language. For instance, namespaces will be presented as packages, +# qualified scopes will look different, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources. Doxygen will then generate output that is tailored for Fortran. +# The default value is: NO. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for VHDL. +# The default value is: NO. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Set the OPTIMIZE_OUTPUT_SLICE tag to YES if your project consists of Slice +# sources only. Doxygen will then generate output that is more tailored for that +# language. For instance, namespaces will be presented as modules, types will be +# separated into more groups, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_SLICE = NO + +# Doxygen selects the parser to use depending on the extension of the files it +# parses. With this tag you can assign which parser to use for a given +# extension. Doxygen has a built-in mapping, but you can override or extend it +# using this tag. The format is ext=language, where ext is a file extension, and +# language is one of the parsers supported by doxygen: IDL, Java, JavaScript, +# Csharp (C#), C, C++, D, PHP, md (Markdown), Objective-C, Python, Slice, +# Fortran (fixed format Fortran: FortranFixed, free formatted Fortran: +# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser +# tries to guess whether the code is fixed or free formatted code, this is the +# default for Fortran type files), VHDL, tcl. For instance to make doxygen treat +# .inc files as Fortran files (default is PHP), and .f files as C (default is +# Fortran), use: inc=Fortran f=C. +# +# Note: For files without extension you can use no_extension as a placeholder. +# +# Note that for custom extensions you also need to set FILE_PATTERNS otherwise +# the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments +# according to the Markdown format, which allows for more readable +# documentation. See https://daringfireball.net/projects/markdown/ for details. +# The output of markdown processing is further processed by doxygen, so you can +# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in +# case of backward compatibilities issues. +# The default value is: YES. + +MARKDOWN_SUPPORT = YES + +# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up +# to that level are automatically included in the table of contents, even if +# they do not have an id attribute. +# Note: This feature currently applies only to Markdown headings. +# Minimum value: 0, maximum value: 99, default value: 5. +# This tag requires that the tag MARKDOWN_SUPPORT is set to YES. + +TOC_INCLUDE_HEADINGS = 5 + +# When enabled doxygen tries to link words that correspond to documented +# classes, or namespaces to their corresponding documentation. Such a link can +# be prevented in individual cases by putting a % sign in front of the word or +# globally by setting AUTOLINK_SUPPORT to NO. +# The default value is: YES. + +AUTOLINK_SUPPORT = YES + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should set this +# tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); +# versus func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. +# The default value is: NO. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. +# The default value is: NO. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: +# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen +# will parse them like normal C++ but will assume all classes use public instead +# of private inheritance when no explicit protection keyword is present. +# The default value is: NO. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate +# getter and setter methods for a property. Setting this option to YES will make +# doxygen to replace the get and set methods by a property in the documentation. +# This will only work if the methods are indeed getting or setting a simple +# type. If this is not the case, or you want to show the methods anyway, you +# should set this option to NO. +# The default value is: YES. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. +# The default value is: NO. + +DISTRIBUTE_GROUP_DOC = NO + +# If one adds a struct or class to a group and this option is enabled, then also +# any nested class or struct is added to the same group. By default this option +# is disabled and one has to add nested compounds explicitly via \ingroup. +# The default value is: NO. + +GROUP_NESTED_COMPOUNDS = NO + +# Set the SUBGROUPING tag to YES to allow class member groups of the same type +# (for instance a group of public functions) to be put as a subgroup of that +# type (e.g. under the Public Functions section). Set it to NO to prevent +# subgrouping. Alternatively, this can be done per class using the +# \nosubgrouping command. +# The default value is: YES. + +SUBGROUPING = YES + +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions +# are shown inside the group in which they are included (e.g. using \ingroup) +# instead of on a separate page (for HTML and Man pages) or section (for LaTeX +# and RTF). +# +# Note that this feature does not work in combination with +# SEPARATE_MEMBER_PAGES. +# The default value is: NO. + +INLINE_GROUPED_CLASSES = NO + +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions +# with only public data fields or simple typedef fields will be shown inline in +# the documentation of the scope in which they are defined (i.e. file, +# namespace, or group documentation), provided this scope is documented. If set +# to NO, structs, classes, and unions are shown on a separate page (for HTML and +# Man pages) or section (for LaTeX and RTF). +# The default value is: NO. + +INLINE_SIMPLE_STRUCTS = NO + +# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or +# enum is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically be +# useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. +# The default value is: NO. + +TYPEDEF_HIDES_STRUCT = NO + +# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This +# cache is used to resolve symbols given their name and scope. Since this can be +# an expensive process and often the same symbol appears multiple times in the +# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small +# doxygen will become slower. If the cache is too large, memory is wasted. The +# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range +# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 +# symbols. At the end of a run doxygen will report the cache usage and suggest +# the optimal cache size from a speed point of view. +# Minimum value: 0, maximum value: 9, default value: 0. + +LOOKUP_CACHE_SIZE = 0 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in +# documentation are documented, even if no documentation was available. Private +# class members and static file members will be hidden unless the +# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. +# Note: This will also disable the warnings about undocumented members that are +# normally produced when WARNINGS is set to YES. +# The default value is: NO. + +EXTRACT_ALL = YES + +# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will +# be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_PRIV_VIRTUAL tag is set to YES, documented private virtual +# methods of a class will be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIV_VIRTUAL = NO + +# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal +# scope will be included in the documentation. +# The default value is: NO. + +EXTRACT_PACKAGE = NO + +# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be +# included in the documentation. +# The default value is: NO. + +EXTRACT_STATIC = NO + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined +# locally in source files will be included in the documentation. If set to NO, +# only classes defined in header files are included. Does not have any effect +# for Java sources. +# The default value is: YES. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. If set to YES, local methods, +# which are defined in the implementation section but not in the interface are +# included in the documentation. If set to NO, only methods in the interface are +# included. +# The default value is: NO. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base name of +# the file that contains the anonymous namespace. By default anonymous namespace +# are hidden. +# The default value is: NO. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all +# undocumented members inside documented classes or files. If set to NO these +# members will be included in the various overviews, but no documentation +# section is generated. This option has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. If set +# to NO, these classes will be included in the various overviews. This option +# has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend +# declarations. If set to NO, these declarations will be included in the +# documentation. +# The default value is: NO. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any +# documentation blocks found inside the body of a function. If set to NO, these +# blocks will be appended to the function's detailed documentation block. +# The default value is: NO. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation that is typed after a +# \internal command is included. If the tag is set to NO then the documentation +# will be excluded. Set it to YES to include the internal documentation. +# The default value is: NO. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file +# names in lower-case letters. If set to YES, upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# (including Cygwin) ands Mac users are advised to set this option to NO. +# The default value is: system dependent. + +CASE_SENSE_NAMES = NO + +# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with +# their full class and namespace scopes in the documentation. If set to YES, the +# scope will be hidden. +# The default value is: NO. + +HIDE_SCOPE_NAMES = NO + +# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will +# append additional text to a page's title, such as Class Reference. If set to +# YES the compound reference will be hidden. +# The default value is: NO. + +HIDE_COMPOUND_REFERENCE= NO + +# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of +# the files that are included by a file in the documentation of that file. +# The default value is: YES. + +SHOW_INCLUDE_FILES = YES + +# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each +# grouped member an include statement to the documentation, telling the reader +# which file to include in order to use the member. +# The default value is: NO. + +SHOW_GROUPED_MEMB_INC = NO + +# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include +# files with double quotes in the documentation rather than with sharp brackets. +# The default value is: NO. + +FORCE_LOCAL_INCLUDES = NO + +# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the +# documentation for inline members. +# The default value is: YES. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the +# (detailed) documentation of file and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. +# The default value is: YES. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief +# descriptions of file, namespace and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. Note that +# this will also influence the order of the classes in the class list. +# The default value is: NO. + +SORT_BRIEF_DOCS = NO + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the +# (brief and detailed) documentation of class members so that constructors and +# destructors are listed first. If set to NO the constructors will appear in the +# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. +# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief +# member documentation. +# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting +# detailed member documentation. +# The default value is: NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy +# of group names into alphabetical order. If set to NO the group names will +# appear in their defined order. +# The default value is: NO. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by +# fully-qualified names, including namespaces. If set to NO, the class list will +# be sorted only by class name, not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the alphabetical +# list. +# The default value is: NO. + +SORT_BY_SCOPE_NAME = NO + +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper +# type resolution of all parameters of a function it will reject a match between +# the prototype and the implementation of a member function even if there is +# only one candidate or it is obvious which candidate to choose by doing a +# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still +# accept a match between prototype and implementation in such cases. +# The default value is: NO. + +STRICT_PROTO_MATCHING = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo +# list. This list is created by putting \todo commands in the documentation. +# The default value is: YES. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test +# list. This list is created by putting \test commands in the documentation. +# The default value is: YES. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug +# list. This list is created by putting \bug commands in the documentation. +# The default value is: YES. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO) +# the deprecated list. This list is created by putting \deprecated commands in +# the documentation. +# The default value is: YES. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional documentation +# sections, marked by \if ... \endif and \cond +# ... \endcond blocks. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the +# initial value of a variable or macro / define can have for it to appear in the +# documentation. If the initializer consists of more lines than specified here +# it will be hidden. Use a value of 0 to hide initializers completely. The +# appearance of the value of individual variables and macros / defines can be +# controlled using \showinitializer or \hideinitializer command in the +# documentation regardless of this setting. +# Minimum value: 0, maximum value: 10000, default value: 30. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at +# the bottom of the documentation of classes and structs. If set to YES, the +# list will mention the files that were used to generate the documentation. +# The default value is: YES. + +SHOW_USED_FILES = YES + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This +# will remove the Files entry from the Quick Index and from the Folder Tree View +# (if specified). +# The default value is: YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces +# page. This will remove the Namespaces entry from the Quick Index and from the +# Folder Tree View (if specified). +# The default value is: YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command command input-file, where command is the value of the +# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided +# by doxygen. Whatever the program writes to standard output is used as the file +# version. For an example see the documentation. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed +# by doxygen. The layout file controls the global structure of the generated +# output files in an output format independent way. To create the layout file +# that represents doxygen's defaults, run doxygen with the -l option. You can +# optionally specify a file name after the option, if omitted DoxygenLayout.xml +# will be used as the name of the layout file. +# +# Note that if you run doxygen from a directory containing a file called +# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE +# tag is left empty. + +LAYOUT_FILE = + +# The CITE_BIB_FILES tag can be used to specify one or more bib files containing +# the reference definitions. This must be a list of .bib files. The .bib +# extension is automatically appended if omitted. This requires the bibtex tool +# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info. +# For LaTeX the style of the bibliography can be controlled using +# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the +# search path. See also \cite for info how to create references. + +CITE_BIB_FILES = + +#--------------------------------------------------------------------------- +# Configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated to +# standard output by doxygen. If QUIET is set to YES this implies that the +# messages are off. +# The default value is: NO. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES +# this implies that the warnings are on. +# +# Tip: Turn warnings on while writing the documentation. +# The default value is: YES. + +WARNINGS = YES + +# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate +# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag +# will automatically be disabled. +# The default value is: YES. + +WARN_IF_UNDOCUMENTED = YES + +# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some parameters +# in a documented function, or documenting parameters that don't exist or using +# markup commands wrongly. +# The default value is: YES. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that +# are documented, but have no documentation for their parameters or return +# value. If set to NO, doxygen will only warn about wrong or incomplete +# parameter documentation, but not about the absence of documentation. If +# EXTRACT_ALL is set to YES then this flag will automatically be disabled. +# The default value is: NO. + +WARN_NO_PARAMDOC = NO + +# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when +# a warning is encountered. +# The default value is: NO. + +WARN_AS_ERROR = NO + +# The WARN_FORMAT tag determines the format of the warning messages that doxygen +# can produce. The string should contain the $file, $line, and $text tags, which +# will be replaced by the file and line number from which the warning originated +# and the warning text. Optionally the format may contain $version, which will +# be replaced by the version of the file (if it could be obtained via +# FILE_VERSION_FILTER) +# The default value is: $file:$line: $text. + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning and error +# messages should be written. If left blank the output is written to standard +# error (stderr). + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# Configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag is used to specify the files and/or directories that contain +# documented source files. You may enter file names like myfile.cpp or +# directories like /usr/src/myproject. Separate the files or directories with +# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING +# Note: If this tag is empty the current directory is searched. + +INPUT = "C:\Modelling Wizard" + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses +# libiconv (or the iconv built into libc) for the transcoding. See the libiconv +# documentation (see: https://www.gnu.org/software/libiconv/) for the list of +# possible encodings. +# The default value is: UTF-8. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and +# *.h) to filter out the source-files in the directories. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# read by doxygen. +# +# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, +# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, +# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, +# *.m, *.markdown, *.md, *.mm, *.dox (to be provided as doxygen C comment), +# *.doc (to be provided as doxygen C comment), *.txt (to be provided as doxygen +# C comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f, *.for, *.tcl, *.vhd, +# *.vhdl, *.ucf, *.qsf and *.ice. + +FILE_PATTERNS = *.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.java \ + *.ii \ + *.ixx \ + *.ipp \ + *.i++ \ + *.inl \ + *.idl \ + *.ddl \ + *.odl \ + *.h \ + *.hh \ + *.hxx \ + *.hpp \ + *.h++ \ + *.cs \ + *.d \ + *.php \ + *.php4 \ + *.php5 \ + *.phtml \ + *.inc \ + *.m \ + *.markdown \ + *.md \ + *.mm \ + *.dox \ + *.doc \ + *.txt \ + *.py \ + *.pyw \ + *.f90 \ + *.f95 \ + *.f03 \ + *.f08 \ + *.f \ + *.for \ + *.tcl \ + *.vhd \ + *.vhdl \ + *.ucf \ + *.qsf \ + *.ice + +# The RECURSIVE tag can be used to specify whether or not subdirectories should +# be searched for input files as well. +# The default value is: NO. + +RECURSIVE = NO + +# The EXCLUDE tag can be used to specify files and/or directories that should be +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. +# +# Note that relative paths are relative to the directory from which doxygen is +# run. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or +# directories that are symbolic links (a Unix file system feature) are excluded +# from the input. +# The default value is: NO. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories use the pattern */test/* + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or directories +# that contain example code fragments that are included (see the \include +# command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and +# *.h) to filter out the source-files in the directories. If left blank all +# files are included. + +EXAMPLE_PATTERNS = * + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude commands +# irrespective of the value of the RECURSIVE tag. +# The default value is: NO. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or directories +# that contain images that are to be included in the documentation (see the +# \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command: +# +# +# +# where is the value of the INPUT_FILTER tag, and is the +# name of an input file. Doxygen will then use the output that the filter +# program writes to standard output. If FILTER_PATTERNS is specified, this tag +# will be ignored. +# +# Note that the filter must not add or remove lines; it is applied before the +# code is scanned, but not when the output code is generated. If lines are added +# or removed, the anchors will not be placed correctly. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: pattern=filter +# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how +# filters are used. If the FILTER_PATTERNS tag is empty or if none of the +# patterns match the file name, INPUT_FILTER is applied. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will also be used to filter the input files that are used for +# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). +# The default value is: NO. + +FILTER_SOURCE_FILES = NO + +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and +# it is also possible to disable source filtering for a specific pattern using +# *.ext= (so without naming a filter). +# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. + +FILTER_SOURCE_PATTERNS = + +# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that +# is part of the input, its contents will be placed on the main page +# (index.html). This can be useful if you have a project on for instance GitHub +# and want to reuse the introduction page also for the doxygen output. + +USE_MDFILE_AS_MAINPAGE = + +#--------------------------------------------------------------------------- +# Configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will be +# generated. Documented entities will be cross-referenced with these sources. +# +# Note: To get rid of all source code in the generated output, make sure that +# also VERBATIM_HEADERS is set to NO. +# The default value is: NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body of functions, +# classes and enums directly into the documentation. +# The default value is: NO. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any +# special comment blocks from generated source code fragments. Normal C, C++ and +# Fortran comments will always remain visible. +# The default value is: YES. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES then for each documented +# entity all documented functions referencing it will be listed. +# The default value is: NO. + +REFERENCED_BY_RELATION = NO + +# If the REFERENCES_RELATION tag is set to YES then for each documented function +# all documented entities called/used by that function will be listed. +# The default value is: NO. + +REFERENCES_RELATION = NO + +# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set +# to YES then the hyperlinks from functions in REFERENCES_RELATION and +# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will +# link to the documentation. +# The default value is: YES. + +REFERENCES_LINK_SOURCE = YES + +# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the +# source code will show a tooltip with additional information such as prototype, +# brief description and links to the definition and documentation. Since this +# will make the HTML file larger and loading of large files a bit slower, you +# can opt to disable this feature. +# The default value is: YES. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +SOURCE_TOOLTIPS = YES + +# If the USE_HTAGS tag is set to YES then the references to source code will +# point to the HTML generated by the htags(1) tool instead of doxygen built-in +# source browser. The htags tool is part of GNU's global source tagging system +# (see https://www.gnu.org/software/global/global.html). You will need version +# 4.8.6 or higher. +# +# To use it do the following: +# - Install the latest version of global +# - Enable SOURCE_BROWSER and USE_HTAGS in the configuration file +# - Make sure the INPUT points to the root of the source tree +# - Run doxygen as normal +# +# Doxygen will invoke htags (and that will in turn invoke gtags), so these +# tools must be available from the command line (i.e. in the search path). +# +# The result: instead of the source browser generated by doxygen, the links to +# source code will now point to the output of htags. +# The default value is: NO. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a +# verbatim copy of the header file for each class for which an include is +# specified. Set to NO to disable this. +# See also: Section \class. +# The default value is: YES. + +VERBATIM_HEADERS = YES + +# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the +# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the +# cost of reduced performance. This can be particularly helpful with template +# rich C++ code for which doxygen's built-in parser lacks the necessary type +# information. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse_libclang=ON option for CMake. +# The default value is: NO. + +CLANG_ASSISTED_PARSING = NO + +# If clang assisted parsing is enabled you can provide the compiler with command +# line options that you would normally use when invoking the compiler. Note that +# the include paths will already be set by doxygen for the files and directories +# specified with INPUT and INCLUDE_PATH. +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. + +CLANG_OPTIONS = + +# If clang assisted parsing is enabled you can provide the clang parser with the +# path to the compilation database (see: +# http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html) used when the files +# were built. This is equivalent to specifying the "-p" option to a clang tool, +# such as clang-check. These options will then be passed to the parser. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse_libclang=ON option for CMake. + +CLANG_DATABASE_PATH = + +#--------------------------------------------------------------------------- +# Configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all +# compounds will be generated. Enable this if the project contains a lot of +# classes, structs, unions or interfaces. +# The default value is: YES. + +ALPHABETICAL_INDEX = YES + +# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in +# which the alphabetical index list will be split. +# Minimum value: 1, maximum value: 20, default value: 5. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all classes will +# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag +# can be used to specify a prefix (or a list of prefixes) that should be ignored +# while generating the index headers. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output +# The default value is: YES. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each +# generated HTML page (for example: .htm, .php, .asp). +# The default value is: .html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a user-defined HTML header file for +# each generated HTML page. If the tag is left blank doxygen will generate a +# standard header. +# +# To get valid HTML the header file that includes any scripts and style sheets +# that doxygen needs, which is dependent on the configuration options used (e.g. +# the setting GENERATE_TREEVIEW). It is highly recommended to start with a +# default header using +# doxygen -w html new_header.html new_footer.html new_stylesheet.css +# YourConfigFile +# and then modify the file new_header.html. See also section "Doxygen usage" +# for information on how to generate the default header that doxygen normally +# uses. +# Note: The header is subject to change so you typically have to regenerate the +# default header when upgrading to a newer version of doxygen. For a description +# of the possible markers and block names see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each +# generated HTML page. If the tag is left blank doxygen will generate a standard +# footer. See HTML_HEADER for more information on how to generate a default +# footer and what special commands can be used inside the footer. See also +# section "Doxygen usage" for information on how to generate the default footer +# that doxygen normally uses. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style +# sheet that is used by each HTML page. It can be used to fine-tune the look of +# the HTML output. If left blank doxygen will generate a default style sheet. +# See also section "Doxygen usage" for information on how to generate the style +# sheet that doxygen normally uses. +# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as +# it is more robust and this tag (HTML_STYLESHEET) will in the future become +# obsolete. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_STYLESHEET = + +# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined +# cascading style sheets that are included after the standard style sheets +# created by doxygen. Using this option one can overrule certain style aspects. +# This is preferred over using HTML_STYLESHEET since it does not replace the +# standard style sheet and is therefore more robust against future updates. +# Doxygen will copy the style sheet files to the output directory. +# Note: The order of the extra style sheet files is of importance (e.g. the last +# style sheet in the list overrules the setting of the previous ones in the +# list). For an example see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_STYLESHEET = + +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the HTML output directory. Note +# that these files will be copied to the base HTML output directory. Use the +# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these +# files. In the HTML_STYLESHEET file, use the file name only. Also note that the +# files will be copied as-is; there are no commands or markers available. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_FILES = + +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen +# will adjust the colors in the style sheet and background images according to +# this color. Hue is specified as an angle on a colorwheel, see +# https://en.wikipedia.org/wiki/Hue for more information. For instance the value +# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 +# purple, and 360 is red again. +# Minimum value: 0, maximum value: 359, default value: 220. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_HUE = 220 + +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors +# in the HTML output. For a value of 0 the output will use grayscales only. A +# value of 255 will produce the most vivid colors. +# Minimum value: 0, maximum value: 255, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_SAT = 100 + +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the +# luminance component of the colors in the HTML output. Values below 100 +# gradually make the output lighter, whereas values above 100 make the output +# darker. The value divided by 100 is the actual gamma applied, so 80 represents +# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not +# change the gamma. +# Minimum value: 40, maximum value: 240, default value: 80. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_GAMMA = 80 + +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting this +# to YES can help to show when doxygen was last run and thus if the +# documentation is up to date. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_TIMESTAMP = NO + +# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML +# documentation will contain a main index with vertical navigation menus that +# are dynamically created via JavaScript. If disabled, the navigation index will +# consists of multiple levels of tabs that are statically embedded in every HTML +# page. Disable this option to support browsers that do not have JavaScript, +# like the Qt help browser. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_MENUS = YES + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_SECTIONS = NO + +# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries +# shown in the various tree structured indices initially; the user can expand +# and collapse entries dynamically later on. Doxygen will expand the tree to +# such a level that at most the specified number of entries are visible (unless +# a fully collapsed tree already exceeds this amount). So setting the number of +# entries 1 will produce a full collapsed tree by default. 0 is a special value +# representing an infinite number of entries and will result in a full expanded +# tree by default. +# Minimum value: 0, maximum value: 9999, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_INDEX_NUM_ENTRIES = 100 + +# If the GENERATE_DOCSET tag is set to YES, additional index files will be +# generated that can be used as input for Apple's Xcode 3 integrated development +# environment (see: https://developer.apple.com/xcode/), introduced with OSX +# 10.5 (Leopard). To create a documentation set, doxygen will generate a +# Makefile in the HTML output directory. Running make will produce the docset in +# that directory and running make install will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at +# startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy +# genXcode/_index.html for more information. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_DOCSET = NO + +# This tag determines the name of the docset feed. A documentation feed provides +# an umbrella under which multiple documentation sets from a single provider +# (such as a company or product suite) can be grouped. +# The default value is: Doxygen generated docs. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# This tag specifies a string that should uniquely identify the documentation +# set bundle. This should be a reverse domain-name style string, e.g. +# com.mycompany.MyDocSet. Doxygen will append .docset to the name. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify +# the documentation publisher. This should be a reverse domain-name style +# string, e.g. com.mycompany.MyDocSet.documentation. +# The default value is: org.doxygen.Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_ID = org.doxygen.Publisher + +# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. +# The default value is: Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_NAME = Publisher + +# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three +# additional HTML index files: index.hhp, index.hhc, and index.hhk. The +# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop +# (see: https://www.microsoft.com/en-us/download/details.aspx?id=21138) on +# Windows. +# +# The HTML Help Workshop contains a compiler that can convert all HTML output +# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML +# files are now used as the Windows 98 help format, and will replace the old +# Windows help format (.hlp) on all Windows platforms in the future. Compressed +# HTML files also contain an index, a table of contents, and you can search for +# words in the documentation. The HTML workshop also contains a viewer for +# compressed HTML files. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_HTMLHELP = NO + +# The CHM_FILE tag can be used to specify the file name of the resulting .chm +# file. You can add a path in front of the file if the result should not be +# written to the html output directory. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_FILE = + +# The HHC_LOCATION tag can be used to specify the location (absolute path +# including file name) of the HTML help compiler (hhc.exe). If non-empty, +# doxygen will try to run the HTML help compiler on the generated index.hhp. +# The file has to be specified with full path. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +HHC_LOCATION = + +# The GENERATE_CHI flag controls if a separate .chi index file is generated +# (YES) or that it should be included in the master .chm file (NO). +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +GENERATE_CHI = NO + +# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc) +# and project file content. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_INDEX_ENCODING = + +# The BINARY_TOC flag controls whether a binary table of contents is generated +# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it +# enables the Previous and Next buttons. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members to +# the table of contents of the HTML help documentation and to the tree view. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +TOC_EXPAND = NO + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that +# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help +# (.qch) of the generated HTML documentation. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify +# the file name of the resulting .qch file. The path specified is relative to +# the HTML output folder. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help +# Project output. For more information please see Qt Help Project / Namespace +# (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace). +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt +# Help Project output. For more information please see Qt Help Project / Virtual +# Folders (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual- +# folders). +# The default value is: doc. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_VIRTUAL_FOLDER = doc + +# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom +# filter to add. For more information please see Qt Help Project / Custom +# Filters (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the +# custom filter to add. For more information please see Qt Help Project / Custom +# Filters (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this +# project's filter section matches. Qt Help Project / Filter Attributes (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#filter-attributes). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_SECT_FILTER_ATTRS = + +# The QHG_LOCATION tag can be used to specify the location of Qt's +# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the +# generated .qhp file. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be +# generated, together with the HTML files, they form an Eclipse help plugin. To +# install this plugin and make it available under the help contents menu in +# Eclipse, the contents of the directory containing the HTML and XML files needs +# to be copied into the plugins directory of eclipse. The name of the directory +# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. +# After copying Eclipse needs to be restarted before the help appears. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the Eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have this +# name. Each documentation set should have its own identifier. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. + +ECLIPSE_DOC_ID = org.doxygen.Project + +# If you want full control over the layout of the generated HTML pages it might +# be necessary to disable the index and replace it with your own. The +# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top +# of each HTML page. A value of NO enables the index and the value YES disables +# it. Since the tabs in the index contain the same information as the navigation +# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +DISABLE_INDEX = YES + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. If the tag +# value is set to YES, a side panel will be generated containing a tree-like +# index structure (just like the one that is generated for HTML Help). For this +# to work a browser that supports JavaScript, DHTML, CSS and frames is required +# (i.e. any modern browser). Windows users are probably better off using the +# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can +# further fine-tune the look of the index. As an example, the default style +# sheet generated by doxygen has an example that shows how to put an image at +# the root of the tree instead of the PROJECT_NAME. Since the tree basically has +# the same information as the tab index, you could consider setting +# DISABLE_INDEX to YES when enabling this option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_TREEVIEW = YES + +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that +# doxygen will group on one line in the generated HTML documentation. +# +# Note that a value of 0 will completely suppress the enum values from appearing +# in the overview section. +# Minimum value: 0, maximum value: 20, default value: 4. +# This tag requires that the tag GENERATE_HTML is set to YES. + +ENUM_VALUES_PER_LINE = 4 + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used +# to set the initial width (in pixels) of the frame in which the tree is shown. +# Minimum value: 0, maximum value: 1500, default value: 250. +# This tag requires that the tag GENERATE_HTML is set to YES. + +TREEVIEW_WIDTH = 250 + +# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to +# external symbols imported via tag files in a separate window. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +EXT_LINKS_IN_WINDOW = NO + +# Use this tag to change the font size of LaTeX formulas included as images in +# the HTML documentation. When you change the font size after a successful +# doxygen run you need to manually remove any form_*.png images from the HTML +# output directory to force them to be regenerated. +# Minimum value: 8, maximum value: 50, default value: 10. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_FONTSIZE = 10 + +# Use the FORMULA_TRANSPARENT tag to determine whether or not the images +# generated for formulas are transparent PNGs. Transparent PNGs are not +# supported properly for IE 6.0, but are supported on all modern browsers. +# +# Note that when changing this option you need to delete any form_*.png files in +# the HTML output directory before the changes have effect. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_TRANSPARENT = YES + +# The FORMULA_MACROFILE can contain LaTeX \newcommand and \renewcommand commands +# to create new LaTeX commands to be used in formulas as building blocks. See +# the section "Including formulas" for details. + +FORMULA_MACROFILE = + +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see +# https://www.mathjax.org) which uses client side JavaScript for the rendering +# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX +# installed or if you want to formulas look prettier in the HTML output. When +# enabled you may also need to install MathJax separately and configure the path +# to it using the MATHJAX_RELPATH option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +USE_MATHJAX = NO + +# When MathJax is enabled you can set the default output format to be used for +# the MathJax output. See the MathJax site (see: +# http://docs.mathjax.org/en/latest/output.html) for more details. +# Possible values are: HTML-CSS (which is slower, but has the best +# compatibility), NativeMML (i.e. MathML) and SVG. +# The default value is: HTML-CSS. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_FORMAT = HTML-CSS + +# When MathJax is enabled you need to specify the location relative to the HTML +# output directory using the MATHJAX_RELPATH option. The destination directory +# should contain the MathJax.js script. For instance, if the mathjax directory +# is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax +# Content Delivery Network so you can quickly see the result without installing +# MathJax. However, it is strongly recommended to install a local copy of +# MathJax from https://www.mathjax.org before deployment. +# The default value is: https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_RELPATH = https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/ + +# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax +# extension names that should be enabled during MathJax rendering. For example +# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_EXTENSIONS = + +# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces +# of code that will be used on startup of the MathJax code. See the MathJax site +# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an +# example see the documentation. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_CODEFILE = + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box for +# the HTML output. The underlying search engine uses javascript and DHTML and +# should work on any modern browser. Note that when using HTML help +# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) +# there is already a search function so this one should typically be disabled. +# For large projects the javascript based search engine can be slow, then +# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to +# search using the keyboard; to jump to the search box use + S +# (what the is depends on the OS and browser, but it is typically +# , / + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_animation_class_8cs.html b/SOURCE/Plugin/Code Documentation/html/_animation_class_8cs.html new file mode 100644 index 0000000..a8050d5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_animation_class_8cs.html @@ -0,0 +1,130 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: AnimationClass.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    AnimationClass.cs File Reference
    +
    +
    + + + + +

    +Classes

    class  Aml.Editor.Plugin.AnimationClass
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_automation_m_l_data_tables_8cs.html b/SOURCE/Plugin/Code Documentation/html/_automation_m_l_data_tables_8cs.html new file mode 100644 index 0000000..415bc87 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_automation_m_l_data_tables_8cs.html @@ -0,0 +1,130 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: AutomationMLDataTables.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    AutomationMLDataTables.cs File Reference
    +
    +
    + + + + +

    +Classes

    class  Aml.Editor.Plugin.AutomationMLDataTables
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_class_of_lists_from_data_grid_views_8cs.html b/SOURCE/Plugin/Code Documentation/html/_class_of_lists_from_data_grid_views_8cs.html new file mode 100644 index 0000000..4519c61 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_class_of_lists_from_data_grid_views_8cs.html @@ -0,0 +1,130 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: ClassOfListsFromDataGridViews.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    ClassOfListsFromDataGridViews.cs File Reference
    +
    +
    + + + + +

    +Classes

    class  Aml.Editor.Plugin.ClassOfListsFromDataGridViews
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_class_of_lists_from_referencefile_8cs.html b/SOURCE/Plugin/Code Documentation/html/_class_of_lists_from_referencefile_8cs.html new file mode 100644 index 0000000..8d77165 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_class_of_lists_from_referencefile_8cs.html @@ -0,0 +1,130 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: ClassOfListsFromReferencefile.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    ClassOfListsFromReferencefile.cs File Reference
    +
    +
    + + + + +

    +Classes

    class  Aml.Editor.Plugin.ClassOfListsFromReferencefile
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_device_description_8_designer_8cs.html b/SOURCE/Plugin/Code Documentation/html/_device_description_8_designer_8cs.html new file mode 100644 index 0000000..d1efa83 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_device_description_8_designer_8cs.html @@ -0,0 +1,130 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: DeviceDescription.Designer.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    DeviceDescription.Designer.cs File Reference
    +
    +
    + + + + +

    +Classes

    class  Aml.Editor.Plugin.DeviceDescription
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_device_description_8cs.html b/SOURCE/Plugin/Code Documentation/html/_device_description_8cs.html new file mode 100644 index 0000000..fdf1b73 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_device_description_8cs.html @@ -0,0 +1,130 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: DeviceDescription.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    DeviceDescription.cs File Reference
    +
    +
    + + + + +

    +Classes

    class  Aml.Editor.Plugin.DeviceDescription
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_m_w_controller_8cs.html b/SOURCE/Plugin/Code Documentation/html/_m_w_controller_8cs.html new file mode 100644 index 0000000..8e1fe74 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_m_w_controller_8cs.html @@ -0,0 +1,131 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: MWController.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    MWController.cs File Reference
    +
    +
    + + + + + +

    +Classes

    class  Aml.Editor.Plugin.MWController
     This class passes the inputs of the GUIs to MWData where needed and it is in controll of what is displayed at the screen More...
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_m_w_data_8cs.html b/SOURCE/Plugin/Code Documentation/html/_m_w_data_8cs.html new file mode 100644 index 0000000..1546450 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_m_w_data_8cs.html @@ -0,0 +1,132 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: MWData.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    MWData.cs File Reference
    +
    +
    + + + + + + +

    +Classes

    class  Aml.Editor.Plugin.MWData
     
    class  Aml.Editor.Plugin.MWData.MWObject
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_m_w_device_8cs.html b/SOURCE/Plugin/Code Documentation/html/_m_w_device_8cs.html new file mode 100644 index 0000000..2e98a54 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_m_w_device_8cs.html @@ -0,0 +1,143 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: MWDevice.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    MWDevice.cs File Reference
    +
    +
    + + + + + + + + + + + + + + + + + +

    +Classes

    class  Aml.Editor.Plugin.MWDevice
     
    class  Aml.Editor.Plugin.DataGridParameters
     
    class  Aml.Editor.Plugin.ElectricalParameters
     /The following classes are parameter holders for Electrical Interfaces More...
     
    class  Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView
     
    class  Aml.Editor.Plugin.PinParametersInPinInfoDataGridView
     
    class  Aml.Editor.Plugin.AttachablesDataGridViewParameters
     
    class  Aml.Editor.Plugin.ElectricalInterfaceParameters
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_modelling_wizard_8xaml_8cs.html b/SOURCE/Plugin/Code Documentation/html/_modelling_wizard_8xaml_8cs.html new file mode 100644 index 0000000..5d78083 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_modelling_wizard_8xaml_8cs.html @@ -0,0 +1,131 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: ModellingWizard.xaml.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    ModellingWizard.xaml.cs File Reference
    +
    +
    + + + + + +

    +Classes

    class  Aml.Editor.Plugin.ModellingWizard
     ModellingWizard is an PlugIn, which implements the IAMLEditorView Interface. More...
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_r_e_a_d_m_e_8md.html b/SOURCE/Plugin/Code Documentation/html/_r_e_a_d_m_e_8md.html new file mode 100644 index 0000000..145d2e5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_r_e_a_d_m_e_8md.html @@ -0,0 +1,112 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: README.md File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    README.md File Reference
    +
    +
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_search_a_m_l_component_file_8cs.html b/SOURCE/Plugin/Code Documentation/html/_search_a_m_l_component_file_8cs.html new file mode 100644 index 0000000..bd9f9f5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_search_a_m_l_component_file_8cs.html @@ -0,0 +1,130 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: SearchAMLComponentFile.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    SearchAMLComponentFile.cs File Reference
    +
    +
    + + + + +

    +Classes

    class  Aml.Editor.Plugin.SearchAMLComponentFile
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/_search_a_m_l_library_file_8cs.html b/SOURCE/Plugin/Code Documentation/html/_search_a_m_l_library_file_8cs.html new file mode 100644 index 0000000..48d0477 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/_search_a_m_l_library_file_8cs.html @@ -0,0 +1,131 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: SearchAMLLibraryFile.cs File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    SearchAMLLibraryFile.cs File Reference
    +
    +
    + + + + + +

    +Classes

    class  Aml.Editor.Plugin.SearchAMLLibraryFile
     This class reads the library file loaded in to the plugin "Role Class Library TreeView" and "Interface Class Library TreeView" More...
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/annotated.html b/SOURCE/Plugin/Code Documentation/html/annotated.html new file mode 100644 index 0000000..1bf7b55 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/annotated.html @@ -0,0 +1,137 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Class List
    +
    +
    +
    Here are the classes, structs, unions and interfaces with brief descriptions:
    +
    [detail level 12345]
    + + + + + + + + + + + + + + + + + + + + + + +
     NAml
     NEditor
     NPlugin
     CAboutInteraction logic for About.xaml
     CAnimationClass
     CAttachablesDataGridViewParameters
     CAutomationMLDataTables
     CClassOfListsFromDataGridViews
     CClassOfListsFromReferencefile
     CDataGridParameters
     CDeviceDescription
     CElectricalInterfaceParameters
     CElectricalParameters/The following classes are parameter holders for Electrical Interfaces
     CElectricalParametersInElectricalDataDataGridView
     CModellingWizardModellingWizard is an PlugIn, which implements the IAMLEditorView Interface
     CMWControllerThis class passes the inputs of the GUIs to MWData where needed and it is in controll of what is displayed at the screen
     CMWData
     CMWObject
     CMWDevice
     CPinParametersInPinInfoDataGridView
     CSearchAMLComponentFile
     CSearchAMLLibraryFileThis class reads the library file loaded in to the plugin "Role Class Library TreeView" and "Interface Class Library TreeView"
    +
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/annotated_dup.js b/SOURCE/Plugin/Code Documentation/html/annotated_dup.js new file mode 100644 index 0000000..b0c630e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/annotated_dup.js @@ -0,0 +1,4 @@ +var annotated_dup = +[ + [ "Aml", "namespace_aml.html", "namespace_aml" ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/bc_s.png b/SOURCE/Plugin/Code Documentation/html/bc_s.png new file mode 100644 index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2 GIT binary patch literal 676 zcmV;V0$crwP)y__>=_9%My z{n931IS})GlGUF8K#6VIbs%684A^L3@%PlP2>_sk`UWPq@f;rU*V%rPy_ekbhXT&s z(GN{DxFv}*vZp`F>S!r||M`I*nOwwKX+BC~3P5N3-)Y{65c;ywYiAh-1*hZcToLHK ztpl1xomJ+Yb}K(cfbJr2=GNOnT!UFA7Vy~fBz8?J>XHsbZoDad^8PxfSa0GDgENZS zuLCEqzb*xWX2CG*b&5IiO#NzrW*;`VC9455M`o1NBh+(k8~`XCEEoC1Ybwf;vr4K3 zg|EB<07?SOqHp9DhLpS&bzgo70I+ghB_#)K7H%AMU3v}xuyQq9&Bm~++VYhF09a+U zl7>n7Jjm$K#b*FONz~fj;I->Bf;ule1prFN9FovcDGBkpg>)O*-}eLnC{6oZHZ$o% zXKW$;0_{8hxHQ>l;_*HATI(`7t#^{$(zLe}h*mqwOc*nRY9=?Sx4OOeVIfI|0V(V2 zBrW#G7Ss9wvzr@>H*`r>zE z+e8bOBgqIgldUJlG(YUDviMB`9+DH8n-s9SXRLyJHO1!=wY^79WYZMTa(wiZ!zP66 zA~!21vmF3H2{ngD;+`6j#~6j;$*f*G_2ZD1E;9(yaw7d-QnSCpK(cR1zU3qU0000< KMNUMnLSTYoA~SLT literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/bdwn.png b/SOURCE/Plugin/Code Documentation/html/bdwn.png new file mode 100644 index 0000000000000000000000000000000000000000..940a0b950443a0bb1b216ac03c45b8a16c955452 GIT binary patch literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^>_E)H!3HEvS)PKZC{Gv1kP61Pb5HX&C2wk~_T + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.About Member List
    +
    +
    + +

    This is the complete list of members for Aml.Editor.Plugin.About, including all inherited members.

    + + + +
    About()Aml.Editor.Plugin.Aboutinline
    VersionAml.Editor.Plugin.About
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.html new file mode 100644 index 0000000..e425e67 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.html @@ -0,0 +1,190 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.About Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.About Class Reference
    +
    +
    + +

    Interaction logic for About.xaml + More...

    +
    +Inheritance diagram for Aml.Editor.Plugin.About:
    +
    +
    + +
    + + + + +

    +Public Member Functions

     About ()
     
    + + + +

    +Properties

    string Version [get, set]
     
    +

    Detailed Description

    +

    Interaction logic for About.xaml

    +

    Constructor & Destructor Documentation

    + +

    ◆ About()

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.About.About ()
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ Version

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.About.Version
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.js new file mode 100644 index 0000000..6c771b9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.js @@ -0,0 +1,5 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_about = +[ + [ "About", "class_aml_1_1_editor_1_1_plugin_1_1_about.html#a0001137d5fb3972b81264ce5568cc4d8", null ], + [ "Version", "class_aml_1_1_editor_1_1_plugin_1_1_about.html#a542282bf537e261e5294e607f88dc9e6", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.png b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_about.png new file mode 100644 index 0000000000000000000000000000000000000000..3a3864f6a7c4fabaf3af0b527789411d750fbc1e GIT binary patch literal 557 zcmeAS@N?(olHy`uVBq!ia0vp^lYlsYgBeI3ZM_4cBm#UwT>t<74`jZ0^R=}9&;%e0 zj1L?*z}k679?0b=3GxeO04f53tEWPY7#JA$c)B=-R4~4sdpEDyfXA&r|JUCC((7AU zWa^%6Wj;G=%~KJ_IZv)^J+7OUw)23Brtne~PeBl#uetY{$+4&5HT&bWJ&TlEFPY@r zdh*lKw&w0!FYim=Ya+bwrtZ@zUwtNC<7|EN&2O7ln|OBpwD)@5U$pMZQq`BT>q2jd zeM{eepw!Fx_}|7!DtBEpJ%ixbPt|yH2t&+aW(Dz|Q{?(f{C-ZE=XP_BkXGn%#v@aN z99%RRT?kM|_J6(kp`qHqv3|?M?Cop0e=V+LIQ+tJ_sYra?UfOHk!jmG zqfH;8T0bI&IdD;FI!2y_XzyWwm-;OIDNwmD>l*s$Q*HovC=gF!}TP!hMg;Dhpz7Y@eCD zU6#GTaDHy>>`M>-7d1@yy=lvyR)%|uKeNRZ7?-jLObkAGMn^QBOE8k}hD7j3VB9iz My85}Sb4q9e0M_mJb^rhX literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class-members.html new file mode 100644 index 0000000..cf5ebb5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class-members.html @@ -0,0 +1,131 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.AnimationClass Member List
    +
    + +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html new file mode 100644 index 0000000..d9c2a14 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html @@ -0,0 +1,634 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.AnimationClass Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.AnimationClass Class Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

     AnimationClass ()
     
    void WindowSizeChanger (Panel panelNumber, Button buttonNumber)
     
    void WindowSizeChanger (Panel panelNumber)
     
    string OpenFileDialog (TextBox textboxName)
     
    void OpenFileDialog (TextBox textboxName, Button pdfDisplayBtn)
     
    void ManualOpener (string btnText)
     
    void OpenFileDialog (TextBox textboxName, PictureBox pictureBoxNumber)
     
    void OpenFileDialog (TextBox textboxName, PictureBox pictureBoxNumber, Button displayButton)
     
    void DispalySemanticBtn (Button refSemanticBtn, DataGridView dataGrids, string word)
     
    + + + + + + + + + + + + + + + + + +

    +Properties

    Panel PanelNumber [get, set]
     
    Button ButtonNumber [get, set]
     
    WebBrowser Webbrowser [get, set]
     
    TextBox TextboxName [get, set]
     
    PictureBox PictureboxNumber [get, set]
     
    Button DisplayBtn [get, set]
     
    DataGridView dataGridView [get, set]
     
    string words [get, set]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ AnimationClass()

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.AnimationClass.AnimationClass ()
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ DispalySemanticBtn()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.AnimationClass.DispalySemanticBtn (Button refSemanticBtn,
    DataGridView dataGrids,
    string word 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ ManualOpener()

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.AnimationClass.ManualOpener (string btnText)
    +
    +inline
    +
    + +
    +
    + +

    ◆ OpenFileDialog() [1/4]

    + +
    +
    + + + + + +
    + + + + + + + + +
    string Aml.Editor.Plugin.AnimationClass.OpenFileDialog (TextBox textboxName)
    +
    +inline
    +
    + +
    +
    + +

    ◆ OpenFileDialog() [2/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.AnimationClass.OpenFileDialog (TextBox textboxName,
    Button pdfDisplayBtn 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ OpenFileDialog() [3/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.AnimationClass.OpenFileDialog (TextBox textboxName,
    PictureBox pictureBoxNumber 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ OpenFileDialog() [4/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.AnimationClass.OpenFileDialog (TextBox textboxName,
    PictureBox pictureBoxNumber,
    Button displayButton 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ WindowSizeChanger() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.AnimationClass.WindowSizeChanger (Panel panelNumber)
    +
    +inline
    +
    + +
    +
    + +

    ◆ WindowSizeChanger() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.AnimationClass.WindowSizeChanger (Panel panelNumber,
    Button buttonNumber 
    )
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ ButtonNumber

    + +
    +
    + + + + + +
    + + + + +
    Button Aml.Editor.Plugin.AnimationClass.ButtonNumber
    +
    +getset
    +
    + +
    +
    + +

    ◆ dataGridView

    + +
    +
    + + + + + +
    + + + + +
    DataGridView Aml.Editor.Plugin.AnimationClass.dataGridView
    +
    +getset
    +
    + +
    +
    + +

    ◆ DisplayBtn

    + +
    +
    + + + + + +
    + + + + +
    Button Aml.Editor.Plugin.AnimationClass.DisplayBtn
    +
    +getset
    +
    + +
    +
    + +

    ◆ PanelNumber

    + +
    +
    + + + + + +
    + + + + +
    Panel Aml.Editor.Plugin.AnimationClass.PanelNumber
    +
    +getset
    +
    + +
    +
    + +

    ◆ PictureboxNumber

    + +
    +
    + + + + + +
    + + + + +
    PictureBox Aml.Editor.Plugin.AnimationClass.PictureboxNumber
    +
    +getset
    +
    + +
    +
    + +

    ◆ TextboxName

    + +
    +
    + + + + + +
    + + + + +
    TextBox Aml.Editor.Plugin.AnimationClass.TextboxName
    +
    +getset
    +
    + +
    +
    + +

    ◆ Webbrowser

    + +
    +
    + + + + + +
    + + + + +
    WebBrowser Aml.Editor.Plugin.AnimationClass.Webbrowser
    +
    +getset
    +
    + +
    +
    + +

    ◆ words

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.AnimationClass.words
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.js new file mode 100644 index 0000000..5adfa72 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.js @@ -0,0 +1,20 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_animation_class = +[ + [ "AnimationClass", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a99e06693a64c2eecb54276b906d14822", null ], + [ "DispalySemanticBtn", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#aa7de242b566e80898c52fe89d19626b0", null ], + [ "ManualOpener", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a77d8bf72f7d54a50df736fee1006836d", null ], + [ "OpenFileDialog", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a4fba2da1c2015740334e10dd50d1fb4a", null ], + [ "OpenFileDialog", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#af622bb4ee8c59d14abad92dd8ceb976e", null ], + [ "OpenFileDialog", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#aac584071d94916c2df7d91bbe39e5c6c", null ], + [ "OpenFileDialog", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a9aecddc8211b6ef2cb45103ee8cee319", null ], + [ "WindowSizeChanger", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#ae9de03fc8ff4839dff7873a64d5eaf8c", null ], + [ "WindowSizeChanger", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#ad95b75f8f5095b88ef3aa75d92e25263", null ], + [ "ButtonNumber", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a60f3bd7a53a308a0963b9d603757c289", null ], + [ "dataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a30e0efbd0cfdcc718d2bb26f8dc3a0f8", null ], + [ "DisplayBtn", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a9c5863b36d871cca1a96d53be4637c65", null ], + [ "PanelNumber", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a978d71a487ceb1fab343b33afca66775", null ], + [ "PictureboxNumber", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a07f73e83f366c180d868edb155629349", null ], + [ "TextboxName", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a19dcafe11285ec11f235d3c84e765151", null ], + [ "Webbrowser", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a3a43c6acd43cc44cd85ea42610db93e5", null ], + [ "words", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#ae2dd3c44c8e8a9cc4ecb11cb7ad79682", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters-members.html new file mode 100644 index 0000000..4fe5079 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters-members.html @@ -0,0 +1,120 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html new file mode 100644 index 0000000..b8becb8 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html @@ -0,0 +1,299 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.AttachablesDataGridViewParameters Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.AttachablesDataGridViewParameters Class Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

     AttachablesDataGridViewParameters ()
     
     AttachablesDataGridViewParameters (string elementName, string filePath, bool addToFile)
     
    override string ToString ()
     
    + + + + + + + +

    +Properties

    string ElementName [get, set]
     
    string FilePath [get, set]
     
    string AddToFile [get, set]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ AttachablesDataGridViewParameters() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.AttachablesDataGridViewParameters.AttachablesDataGridViewParameters ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ AttachablesDataGridViewParameters() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    Aml.Editor.Plugin.AttachablesDataGridViewParameters.AttachablesDataGridViewParameters (string elementName,
    string filePath,
    bool addToFile 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ToString()

    + +
    +
    + + + + + +
    + + + + + + + +
    override string Aml.Editor.Plugin.AttachablesDataGridViewParameters.ToString ()
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ AddToFile

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.AttachablesDataGridViewParameters.AddToFile
    +
    +getset
    +
    + +
    +
    + +

    ◆ ElementName

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.AttachablesDataGridViewParameters.ElementName
    +
    +getset
    +
    + +
    +
    + +

    ◆ FilePath

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.AttachablesDataGridViewParameters.FilePath
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.js new file mode 100644 index 0000000..2ee4692 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.js @@ -0,0 +1,9 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters = +[ + [ "AttachablesDataGridViewParameters", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#a58df9ca5564d2e6002e7616793fa03d2", null ], + [ "AttachablesDataGridViewParameters", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#a169521da74d35dad5bf31aa7073fcc86", null ], + [ "ToString", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#ac56d0c84695e18c0c8793ff63dff0644", null ], + [ "AddToFile", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#ac066151417d31343474366e089519f83", null ], + [ "ElementName", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#aace740ed93ef1af8570d1cc2c244ad70", null ], + [ "FilePath", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#a9f5245fd7be3ec1af0400bc0280279c0", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables-members.html new file mode 100644 index 0000000..11558d1 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables-members.html @@ -0,0 +1,118 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.AutomationMLDataTables Member List
    +
    +
    + +

    This is the complete list of members for Aml.Editor.Plugin.AutomationMLDataTables, including all inherited members.

    + + + + + +
    AMLAttributeParameters()Aml.Editor.Plugin.AutomationMLDataTablesinline
    CheckForSameNameTextOfInternalAttributes(DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< ClassOfListsFromReferencefile >> pair)Aml.Editor.Plugin.AutomationMLDataTablesinline
    CreateDataTableWithColumns(DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< List< ClassOfListsFromReferencefile >>> pair)Aml.Editor.Plugin.AutomationMLDataTablesinline
    CreateDataTableWithColumns(DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< ElectricalInterfaceParameters >> pair)Aml.Editor.Plugin.AutomationMLDataTablesinline
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html new file mode 100644 index 0000000..131663f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html @@ -0,0 +1,282 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.AutomationMLDataTables Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.AutomationMLDataTables Class Reference
    +
    +
    + + + + + + + + + + +

    +Public Member Functions

    DataTable AMLAttributeParameters ()
     
    void CreateDataTableWithColumns (DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< List< ClassOfListsFromReferencefile >>> pair)
     
    void CheckForSameNameTextOfInternalAttributes (DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< ClassOfListsFromReferencefile >> pair)
     
    void CreateDataTableWithColumns (DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< ElectricalInterfaceParameters >> pair)
     
    +

    Member Function Documentation

    + +

    ◆ AMLAttributeParameters()

    + +
    +
    + + + + + +
    + + + + + + + +
    DataTable Aml.Editor.Plugin.AutomationMLDataTables.AMLAttributeParameters ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ CheckForSameNameTextOfInternalAttributes()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.AutomationMLDataTables.CheckForSameNameTextOfInternalAttributes (DataTable dataRowName,
    DataGridView dataGridViewName,
    KeyValuePair< string, List< ClassOfListsFromReferencefile >> pair 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ CreateDataTableWithColumns() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.AutomationMLDataTables.CreateDataTableWithColumns (DataTable dataRowName,
    DataGridView dataGridViewName,
    KeyValuePair< string, List< ElectricalInterfaceParameters >> pair 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ CreateDataTableWithColumns() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.AutomationMLDataTables.CreateDataTableWithColumns (DataTable dataRowName,
    DataGridView dataGridViewName,
    KeyValuePair< string, List< List< ClassOfListsFromReferencefile >>> pair 
    )
    +
    +inline
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.js new file mode 100644 index 0000000..103d9ce --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.js @@ -0,0 +1,7 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables = +[ + [ "AMLAttributeParameters", "class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#a504d5b014d4b10a3762a17b2b6b2ed6a", null ], + [ "CheckForSameNameTextOfInternalAttributes", "class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#a458fec8a343a700daeaa499ce499b5f3", null ], + [ "CreateDataTableWithColumns", "class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#afb66a5f37e2ade40f3f73967cfa3b65a", null ], + [ "CreateDataTableWithColumns", "class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#a09ab6e8a0fc0d12b1e1f681e22b237c9", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views-members.html new file mode 100644 index 0000000..6a7f77b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views-members.html @@ -0,0 +1,129 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html new file mode 100644 index 0000000..43083f4 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html @@ -0,0 +1,569 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.ClassOfListsFromDataGridViews Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.ClassOfListsFromDataGridViews Class Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

     ClassOfListsFromDataGridViews ()
     
     ClassOfListsFromDataGridViews (string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath, string refBaseClassPath, string id, string referencedClassName)
     
    override string ToString ()
     
    + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Properties

    string Name [get, set]
     
    string Value [get, set]
     
    string Default [get, set]
     
    string Unit [get, set]
     
    string Semantic [get, set]
     
    string Reference [get, set]
     
    string Description [get, set]
     
    string CopyRight [get, set]
     
    string AttributePath [get, set]
     
    string RefBaseClassPath [get, set]
     
    string ID [get, set]
     
    string ReferencedClassName [get, set]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ ClassOfListsFromDataGridViews() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ClassOfListsFromDataGridViews ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ ClassOfListsFromDataGridViews() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ClassOfListsFromDataGridViews (string name,
    string value,
    string _default,
    string unit,
    string reference,
    string description,
    string copyRight,
    string semantic,
    string attributePath,
    string refBaseClassPath,
    string id,
    string referencedClassName 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ToString()

    + +
    +
    + + + + + +
    + + + + + + + +
    override string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ToString ()
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ AttributePath

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.AttributePath
    +
    +getset
    +
    + +
    +
    + +

    ◆ CopyRight

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.CopyRight
    +
    +getset
    +
    + +
    +
    + +

    ◆ Default

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Default
    +
    +getset
    +
    + +
    +
    + +

    ◆ Description

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Description
    +
    +getset
    +
    + +
    +
    + +

    ◆ ID

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ID
    +
    +getset
    +
    + +
    +
    + +

    ◆ Name

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Name
    +
    +getset
    +
    + +
    +
    + +

    ◆ RefBaseClassPath

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.RefBaseClassPath
    +
    +getset
    +
    + +
    +
    + +

    ◆ Reference

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Reference
    +
    +getset
    +
    + +
    +
    + +

    ◆ ReferencedClassName

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ReferencedClassName
    +
    +getset
    +
    + +
    +
    + +

    ◆ Semantic

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Semantic
    +
    +getset
    +
    + +
    +
    + +

    ◆ Unit

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Unit
    +
    +getset
    +
    + +
    +
    + +

    ◆ Value

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Value
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.js new file mode 100644 index 0000000..3bc13a8 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.js @@ -0,0 +1,18 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views = +[ + [ "ClassOfListsFromDataGridViews", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a0e8a3323743c15f0d7a391d440214d8a", null ], + [ "ClassOfListsFromDataGridViews", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a88d3c0088d5f28a287ca5531a153ec0b", null ], + [ "ToString", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a44a20c90a03807c981772a574a1d9eca", null ], + [ "AttributePath", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a2da0dffa5a85f93c37da9b7c284ffc33", null ], + [ "CopyRight", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a97aa6ce9a7458c216785837491325e9d", null ], + [ "Default", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#ad3b50c5b8cc491af905f895449cc3ab2", null ], + [ "Description", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a6baeec084c45f3c534c3d99383ec5611", null ], + [ "ID", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#adc03aaee82e06b704b1c350a6833f611", null ], + [ "Name", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a2b05161d540d7cd91ae360c5d3ce931d", null ], + [ "RefBaseClassPath", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a24c19702edd78b6628d70b516c6e6ab8", null ], + [ "Reference", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a16935dd08fa0c1b25410b7297aa5760c", null ], + [ "ReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a168e93de06adae33dd337416674d98d4", null ], + [ "Semantic", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#add70e060fa6395e05d9f60443304b7dd", null ], + [ "Unit", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a7be0e6cafa4b934c86e6a0d5c44ee8cb", null ], + [ "Value", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a75676971f172722b3dd7a99bdf2f8b8a", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile-members.html new file mode 100644 index 0000000..a3fef27 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile-members.html @@ -0,0 +1,132 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.ClassOfListsFromReferencefile Member List
    +
    +
    + +

    This is the complete list of members for Aml.Editor.Plugin.ClassOfListsFromReferencefile, including all inherited members.

    + + + + + + + + + + + + + + + + + + + +
    AttributePathAml.Editor.Plugin.ClassOfListsFromReferencefile
    ClassOfListsFromReferencefile()Aml.Editor.Plugin.ClassOfListsFromReferencefileinline
    ClassOfListsFromReferencefile(string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath, string refBaseClassPath, string id, string referencedClassName, CAEXSequence< RefSemanticType > refSemanticList, string supportesRoleClassType, string dataType)Aml.Editor.Plugin.ClassOfListsFromReferencefileinline
    CopyRightAml.Editor.Plugin.ClassOfListsFromReferencefile
    DataTypeAml.Editor.Plugin.ClassOfListsFromReferencefile
    DefaultAml.Editor.Plugin.ClassOfListsFromReferencefile
    DescriptionAml.Editor.Plugin.ClassOfListsFromReferencefile
    IDAml.Editor.Plugin.ClassOfListsFromReferencefile
    NameAml.Editor.Plugin.ClassOfListsFromReferencefile
    RefBaseClassPathAml.Editor.Plugin.ClassOfListsFromReferencefile
    ReferenceAml.Editor.Plugin.ClassOfListsFromReferencefile
    ReferencedClassNameAml.Editor.Plugin.ClassOfListsFromReferencefile
    RefSemanticListAml.Editor.Plugin.ClassOfListsFromReferencefile
    SemanticAml.Editor.Plugin.ClassOfListsFromReferencefile
    SupportesRoleClassTypeAml.Editor.Plugin.ClassOfListsFromReferencefile
    ToString()Aml.Editor.Plugin.ClassOfListsFromReferencefileinline
    UnitAml.Editor.Plugin.ClassOfListsFromReferencefile
    ValueAml.Editor.Plugin.ClassOfListsFromReferencefile
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html new file mode 100644 index 0000000..1037958 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html @@ -0,0 +1,659 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.ClassOfListsFromReferencefile Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.ClassOfListsFromReferencefile Class Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

     ClassOfListsFromReferencefile ()
     
     ClassOfListsFromReferencefile (string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath, string refBaseClassPath, string id, string referencedClassName, CAEXSequence< RefSemanticType > refSemanticList, string supportesRoleClassType, string dataType)
     
    override string ToString ()
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Properties

    string Name [get, set]
     
    string Value [get, set]
     
    string Default [get, set]
     
    string Unit [get, set]
     
    string Semantic [get, set]
     
    string Reference [get, set]
     
    string Description [get, set]
     
    string CopyRight [get, set]
     
    string AttributePath [get, set]
     
    string RefBaseClassPath [get, set]
     
    string ID [get, set]
     
    string ReferencedClassName [get, set]
     
    CAEXSequence< RefSemanticType > RefSemanticList [get, set]
     
    string SupportesRoleClassType [get, set]
     
    string DataType [get, set]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ ClassOfListsFromReferencefile() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.ClassOfListsFromReferencefile.ClassOfListsFromReferencefile ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ ClassOfListsFromReferencefile() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Aml.Editor.Plugin.ClassOfListsFromReferencefile.ClassOfListsFromReferencefile (string name,
    string value,
    string _default,
    string unit,
    string reference,
    string description,
    string copyRight,
    string semantic,
    string attributePath,
    string refBaseClassPath,
    string id,
    string referencedClassName,
    CAEXSequence< RefSemanticType > refSemanticList,
    string supportesRoleClassType,
    string dataType 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ToString()

    + +
    +
    + + + + + +
    + + + + + + + +
    override string Aml.Editor.Plugin.ClassOfListsFromReferencefile.ToString ()
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ AttributePath

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.AttributePath
    +
    +getset
    +
    + +
    +
    + +

    ◆ CopyRight

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.CopyRight
    +
    +getset
    +
    + +
    +
    + +

    ◆ DataType

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.DataType
    +
    +getset
    +
    + +
    +
    + +

    ◆ Default

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.Default
    +
    +getset
    +
    + +
    +
    + +

    ◆ Description

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.Description
    +
    +getset
    +
    + +
    +
    + +

    ◆ ID

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.ID
    +
    +getset
    +
    + +
    +
    + +

    ◆ Name

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.Name
    +
    +getset
    +
    + +
    +
    + +

    ◆ RefBaseClassPath

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.RefBaseClassPath
    +
    +getset
    +
    + +
    +
    + +

    ◆ Reference

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.Reference
    +
    +getset
    +
    + +
    +
    + +

    ◆ ReferencedClassName

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.ReferencedClassName
    +
    +getset
    +
    + +
    +
    + +

    ◆ RefSemanticList

    + +
    +
    + + + + + +
    + + + + +
    CAEXSequence<RefSemanticType> Aml.Editor.Plugin.ClassOfListsFromReferencefile.RefSemanticList
    +
    +getset
    +
    + +
    +
    + +

    ◆ Semantic

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.Semantic
    +
    +getset
    +
    + +
    +
    + +

    ◆ SupportesRoleClassType

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.SupportesRoleClassType
    +
    +getset
    +
    + +
    +
    + +

    ◆ Unit

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.Unit
    +
    +getset
    +
    + +
    +
    + +

    ◆ Value

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ClassOfListsFromReferencefile.Value
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.js new file mode 100644 index 0000000..b40d133 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.js @@ -0,0 +1,21 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile = +[ + [ "ClassOfListsFromReferencefile", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a578795b95ac5f0363dd0f21153e49efb", null ], + [ "ClassOfListsFromReferencefile", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a54e9f428292f5dd6a6e9b5b335e00a6a", null ], + [ "ToString", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a7d76b5c340287155248d3cd6275585b0", null ], + [ "AttributePath", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a9750122c6e7b78f3a21fc4e89da8d7bc", null ], + [ "CopyRight", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#ac76172d9552575c6f519859248c60788", null ], + [ "DataType", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a12110843109248f422b15548d9c3c1d2", null ], + [ "Default", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#ae77f5e7de1578ebd1d13fc1875b00f2d", null ], + [ "Description", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a05fc8dcadd1ee497fb5211428585312e", null ], + [ "ID", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a349e791c119e8a3e4afa9a9b9ccf46cc", null ], + [ "Name", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a615ebad7839429334256ad90d985b1e3", null ], + [ "RefBaseClassPath", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a95d7023958dcaba928b0282405f0203b", null ], + [ "Reference", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#af7f0d4fd668472123a6aa76ec3d41bdc", null ], + [ "ReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a009c972b83ad9845970ac9fede52fbad", null ], + [ "RefSemanticList", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a17b87abdd2b4e792aeff7d8b3d0cdfb4", null ], + [ "Semantic", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a3dc85cafdc162bfdedba8720b654ee3f", null ], + [ "SupportesRoleClassType", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#aa20d2e52af2ab5bcddd720acb789b2d0", null ], + [ "Unit", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a9277f25074496cfaff11f041441e1ec9", null ], + [ "Value", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#ac58111d02e5a620cbd19818d544442ba", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters-members.html new file mode 100644 index 0000000..2c930e2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters-members.html @@ -0,0 +1,120 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.DataGridParameters Member List
    +
    + +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html new file mode 100644 index 0000000..1ba9ae7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html @@ -0,0 +1,299 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.DataGridParameters Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.DataGridParameters Class Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

     DataGridParameters ()
     
     DataGridParameters (string refSemantic, string attributes, string value)
     
    override string ToString ()
     
    + + + + + + + +

    +Properties

    string RefSemantics [get, set]
     
    string Attributes [get, set]
     
    string Values [get, set]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ DataGridParameters() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.DataGridParameters.DataGridParameters ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ DataGridParameters() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    Aml.Editor.Plugin.DataGridParameters.DataGridParameters (string refSemantic,
    string attributes,
    string value 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ToString()

    + +
    +
    + + + + + +
    + + + + + + + +
    override string Aml.Editor.Plugin.DataGridParameters.ToString ()
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ Attributes

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.DataGridParameters.Attributes
    +
    +getset
    +
    + +
    +
    + +

    ◆ RefSemantics

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.DataGridParameters.RefSemantics
    +
    +getset
    +
    + +
    +
    + +

    ◆ Values

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.DataGridParameters.Values
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.js new file mode 100644 index 0000000..d3f73e8 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.js @@ -0,0 +1,9 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters = +[ + [ "DataGridParameters", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#adddca2861fb0e123d8d2c02a296cee15", null ], + [ "DataGridParameters", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#a8eaebdff6d41dea7a8b7033674d1f981", null ], + [ "ToString", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#a4e5626067de539c4e0d8c7c642ebb12a", null ], + [ "Attributes", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#ab2a0e0dd77ffa6d715d70a5e112d3903", null ], + [ "RefSemantics", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#abbec7835f2cbd9be8123ddd041883ad2", null ], + [ "Values", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#aa56c2203849aa594e43637830a599014", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description-members.html new file mode 100644 index 0000000..a6bd0b6 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description-members.html @@ -0,0 +1,126 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.html new file mode 100644 index 0000000..f2d6510 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.html @@ -0,0 +1,486 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.DeviceDescription Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.DeviceDescription Class Reference
    +
    +
    +
    +Inheritance diagram for Aml.Editor.Plugin.DeviceDescription:
    +
    +
    + + +Aml.Editor.Plugin.MWData + +
    + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

     DeviceDescription ()
     Constructor with no arguments that intilizes Device Description GUI More...
     
     DeviceDescription (MWController mWController)
     This is a constructor of this class with MWControlle rargument. More...
     
    void loadStandardLibrary ()
     This function loads "Interface Class Libraries" and"Role Class Libraries" from already defined libaraies in plugin or, libraries from the AML file those user want ot load from local machine. More...
     
    void checkForAutomtionComponent ()
     
    void clear ()
     
    void searchForComponentNames (AttributeType classType)
     
    void ClearHeaderTabPageValuesofElectricalInterfaces ()
     
    void ClearHeaderTabPageValuesofgenericData ()
     
    void selectLibrary (byte[] file)
     
    + + + +

    +Public Attributes

    bool dragging = false
     
    + + + + +

    +Protected Member Functions

    override void Dispose (bool disposing)
     Clean up any resources being used. More...
     
    + + + +

    +Properties

    object row [get]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ DeviceDescription() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.DeviceDescription.DeviceDescription ()
    +
    +inline
    +
    + +

    Constructor with no arguments that intilizes Device Description GUI

    + +
    +
    + +

    ◆ DeviceDescription() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + +
    Aml.Editor.Plugin.DeviceDescription.DeviceDescription (MWController mWController)
    +
    +inline
    +
    + +

    This is a constructor of this class with MWControlle rargument.

    +
    Parameters
    + + +
    mWController
    +
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ checkForAutomtionComponent()

    + +
    +
    + + + + + +
    + + + + + + + +
    void Aml.Editor.Plugin.DeviceDescription.checkForAutomtionComponent ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ clear()

    + +
    +
    + + + + + +
    + + + + + + + +
    void Aml.Editor.Plugin.DeviceDescription.clear ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ ClearHeaderTabPageValuesofElectricalInterfaces()

    + +
    +
    + + + + + +
    + + + + + + + +
    void Aml.Editor.Plugin.DeviceDescription.ClearHeaderTabPageValuesofElectricalInterfaces ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ ClearHeaderTabPageValuesofgenericData()

    + +
    +
    + + + + + +
    + + + + + + + +
    void Aml.Editor.Plugin.DeviceDescription.ClearHeaderTabPageValuesofgenericData ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ Dispose()

    + +
    +
    + + + + + +
    + + + + + + + + +
    override void Aml.Editor.Plugin.DeviceDescription.Dispose (bool disposing)
    +
    +inlineprotected
    +
    + +

    Clean up any resources being used.

    +
    Parameters
    + + +
    disposingtrue if managed resources should be disposed; otherwise, false.
    +
    +
    + +
    +
    + +

    ◆ loadStandardLibrary()

    + +
    +
    + + + + + +
    + + + + + + + +
    void Aml.Editor.Plugin.DeviceDescription.loadStandardLibrary ()
    +
    +inline
    +
    + +

    This function loads "Interface Class Libraries" and"Role Class Libraries" from already defined libaraies in plugin or, libraries from the AML file those user want ot load from local machine.

    + +
    +
    + +

    ◆ searchForComponentNames()

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.DeviceDescription.searchForComponentNames (AttributeType classType)
    +
    +inline
    +
    + +
    +
    + +

    ◆ selectLibrary()

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.DeviceDescription.selectLibrary (byte[] file)
    +
    +inline
    +
    + +
    +
    +

    Member Data Documentation

    + +

    ◆ dragging

    + +
    +
    + + + + +
    bool Aml.Editor.Plugin.DeviceDescription.dragging = false
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ row

    + +
    +
    + + + + + +
    + + + + +
    object Aml.Editor.Plugin.DeviceDescription.row
    +
    +get
    +
    + +
    +
    +
    The documentation for this class was generated from the following files: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.js new file mode 100644 index 0000000..a1e6a79 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.js @@ -0,0 +1,15 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_device_description = +[ + [ "DeviceDescription", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a43910d4963765bbb83fb00f8f60b3149", null ], + [ "DeviceDescription", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#aeaaa5d48d1117d26fce90474dea55a5b", null ], + [ "checkForAutomtionComponent", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a23c4a5fcaa60e5b2de9f9d2c271fdb0e", null ], + [ "clear", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a0c4099a413d2bf96ca8aacf75bee03e6", null ], + [ "ClearHeaderTabPageValuesofElectricalInterfaces", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#ac3abe6c0e5635f553fca28615722a80f", null ], + [ "ClearHeaderTabPageValuesofgenericData", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#af5ba2182ac553e9c73b532abb9aa6820", null ], + [ "Dispose", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a0237a062c9718be0cc5bbdb61342ab0b", null ], + [ "loadStandardLibrary", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#ab9575cb89491e4d3f71d8f94b58b5cc3", null ], + [ "searchForComponentNames", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a0cea107ee651f7b9567bf305f26c2918", null ], + [ "selectLibrary", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a925af3db84bdc0f89f6285c989c073cc", null ], + [ "dragging", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#ab5a4c5637056e4c6d2649fa7373839fa", null ], + [ "row", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#aca047e64073b4250242f0b8cea862efe", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.png b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_device_description.png new file mode 100644 index 0000000000000000000000000000000000000000..f9e82fb901170f72eca9fcf875973e029e8182c0 GIT binary patch literal 1065 zcmeAS@N?(olHy`uVBq!ia0vp^H-Wf=gBeK1ZrUdXq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0cX+xuhEy=VoqKcAVgnwA+l#b*{kOlz zVsL_8SWS4+RPWs-h8v$QuI&g9^2+q^Shb2-C~eiMeH_N2q49gJ=e&Ep;IR9ypitcv zUiYk~`_KHk`p-<=+ne77&H6ukZ}h2m>wmuAX*3l<$@chIxtE$7~L)z1ByRSagn>sc0q}BiGypYhp@n9QU zX0BSLf5<2Fs<`v)rBg0-Fx2!&ADFtBaa7ED)Fq=@vqNkWfWcf#Bg+S z@~l;x4wRJ2l*nAqy)-`{F)aUnUa+X_*|!-zW;_qn&mH?Ka&6XG{muWX|3(?>Ki{=% z=T5`ZzQsT8EQ*|2+g&_)tMlfst{>wp`FDMtZ6C99q2%elS?ODDN^agc{oEJ+Gd>k} z!v(Kwxz)ao`OSi_IYkR(R~xQg7rZb1uj8%iGLx6j)1Io8`MzFo>`dR)`7!0^J>K|d zhQ&R9o_0Io=$+z9>2UsU+{U|o})wwC%T7WF4M$_b6Ma^mUyg z6MpU(;v(&viYmtOSV$ zh5u33k%r7)o+&C79q`x_PjMeuw*Y1I6pKWyW=ADSN-?qTeuTsw5 z{Pu + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html new file mode 100644 index 0000000..0ac551d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html @@ -0,0 +1,503 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.ElectricalInterfaceParameters Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.ElectricalInterfaceParameters Class Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

     ElectricalInterfaceParameters ()
     
     ElectricalInterfaceParameters (string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath)
     
    override string ToString ()
     
    + + + + + + + + + + + + + + + + + + + + + +

    +Properties

    string AttributeName [get, set]
     
    string Values [get, set]
     
    string Default [get, set]
     
    string Units [get, set]
     
    string DataType [get, set]
     
    string Semantic [get, set]
     
    string Reference [get, set]
     
    string Description [get, set]
     
    string CopyRight [get, set]
     
    string AttributePath [get, set]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ ElectricalInterfaceParameters() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.ElectricalInterfaceParameters.ElectricalInterfaceParameters ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ ElectricalInterfaceParameters() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Aml.Editor.Plugin.ElectricalInterfaceParameters.ElectricalInterfaceParameters (string name,
    string value,
    string _default,
    string unit,
    string reference,
    string description,
    string copyRight,
    string semantic,
    string attributePath 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ToString()

    + +
    +
    + + + + + +
    + + + + + + + +
    override string Aml.Editor.Plugin.ElectricalInterfaceParameters.ToString ()
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ AttributeName

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.AttributeName
    +
    +getset
    +
    + +
    +
    + +

    ◆ AttributePath

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.AttributePath
    +
    +getset
    +
    + +
    +
    + +

    ◆ CopyRight

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.CopyRight
    +
    +getset
    +
    + +
    +
    + +

    ◆ DataType

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.DataType
    +
    +getset
    +
    + +
    +
    + +

    ◆ Default

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.Default
    +
    +getset
    +
    + +
    +
    + +

    ◆ Description

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.Description
    +
    +getset
    +
    + +
    +
    + +

    ◆ Reference

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.Reference
    +
    +getset
    +
    + +
    +
    + +

    ◆ Semantic

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.Semantic
    +
    +getset
    +
    + +
    +
    + +

    ◆ Units

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.Units
    +
    +getset
    +
    + +
    +
    + +

    ◆ Values

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalInterfaceParameters.Values
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.js new file mode 100644 index 0000000..40d16d9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.js @@ -0,0 +1,16 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters = +[ + [ "ElectricalInterfaceParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a64129081230a1ce2dedac0522336001a", null ], + [ "ElectricalInterfaceParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a2425301b26c5eafbb023537874f81656", null ], + [ "ToString", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a110a9f1c713de6edc31a590e846aeb36", null ], + [ "AttributeName", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#aae6be1d86c3b36ada1ca2d229a62df75", null ], + [ "AttributePath", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a12bdc7039d7f14b5358ae364947c0e78", null ], + [ "CopyRight", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a9542dcb67cca638df6df6d853e878c36", null ], + [ "DataType", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a60d6e9588dcad17528bd134169533c17", null ], + [ "Default", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a476b2378ae234a5108b9748169a27a34", null ], + [ "Description", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#ae675816f7be5d22f23bfd93dc41bb078", null ], + [ "Reference", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a91c2d8c6f81ab6e64b3f735e7d8f49e0", null ], + [ "Semantic", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#adb09787efcf00be86699ce8fa6479361", null ], + [ "Units", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a7a76f3f614c194a2b9b9276000faf5d2", null ], + [ "Values", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a4ae422487fb3066d2aea5b9842e0ca9f", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters-members.html new file mode 100644 index 0000000..50f772d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters-members.html @@ -0,0 +1,123 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html new file mode 100644 index 0000000..a376922 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html @@ -0,0 +1,388 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.ElectricalParameters Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.ElectricalParameters Class Reference
    +
    +
    + +

    /The following classes are parameter holders for Electrical Interfaces + More...

    + + + + + + + + +

    +Public Member Functions

     ElectricalParameters ()
     
     ElectricalParameters (string connector, string connectorCode, string connectorType, string pins, string lis)
     
    override string ToString ()
     
    + + + + + + + + + + + + + +

    +Properties

    string Connector [get, set]
     
    string ConnectorCode [get, set]
     
    string ConnectorType [get, set]
     
    string Pins [get, set]
     
    List< ElectricalParametersInElectricalDataDataGridViewlistofElectricalDataDataGridViewParameters [get, set]
     
    List< PinParametersInPinInfoDataGridViewlistOfPinInfoDataGridViewParameters [get, set]
     
    +

    Detailed Description

    +

    /The following classes are parameter holders for Electrical Interfaces

    +

    Constructor & Destructor Documentation

    + +

    ◆ ElectricalParameters() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.ElectricalParameters.ElectricalParameters ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ ElectricalParameters() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Aml.Editor.Plugin.ElectricalParameters.ElectricalParameters (string connector,
    string connectorCode,
    string connectorType,
    string pins,
    string lis 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ToString()

    + +
    +
    + + + + + +
    + + + + + + + +
    override string Aml.Editor.Plugin.ElectricalParameters.ToString ()
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ Connector

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalParameters.Connector
    +
    +getset
    +
    + +
    +
    + +

    ◆ ConnectorCode

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalParameters.ConnectorCode
    +
    +getset
    +
    + +
    +
    + +

    ◆ ConnectorType

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalParameters.ConnectorType
    +
    +getset
    +
    + +
    +
    + +

    ◆ listofElectricalDataDataGridViewParameters

    + +
    +
    + + + + + +
    + + + + +
    List<ElectricalParametersInElectricalDataDataGridView> Aml.Editor.Plugin.ElectricalParameters.listofElectricalDataDataGridViewParameters
    +
    +getset
    +
    + +
    +
    + +

    ◆ listOfPinInfoDataGridViewParameters

    + +
    +
    + + + + + +
    + + + + +
    List<PinParametersInPinInfoDataGridView> Aml.Editor.Plugin.ElectricalParameters.listOfPinInfoDataGridViewParameters
    +
    +getset
    +
    + +
    +
    + +

    ◆ Pins

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalParameters.Pins
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.js new file mode 100644 index 0000000..0556926 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.js @@ -0,0 +1,12 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters = +[ + [ "ElectricalParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a1dcaebc309e32a207a7a49982aaaeed3", null ], + [ "ElectricalParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a975986d2d8141fc680be571a81b94ee4", null ], + [ "ToString", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a943d71e879a36ccbc5a9fbaa021bfe7e", null ], + [ "Connector", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#ae654b44fdd0a058cd3a6f6eb8dc47969", null ], + [ "ConnectorCode", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#acc6774cd7ddc2b52dbe8f688a6211630", null ], + [ "ConnectorType", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a17ebc9a1e5d2c756f22447f633174d20", null ], + [ "listofElectricalDataDataGridViewParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#ab601f8d815e184180d6ffb5e08c6d5e6", null ], + [ "listOfPinInfoDataGridViewParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#aa298f8f20aa8eb03430eacec9d097f5b", null ], + [ "Pins", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#ac98fb3c0870ade0b85413ca8d0cfeaa0", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view-members.html new file mode 100644 index 0000000..633aace --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view-members.html @@ -0,0 +1,121 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html new file mode 100644 index 0000000..6b3a632 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html @@ -0,0 +1,329 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView Class Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

     ElectricalParametersInElectricalDataDataGridView ()
     
     ElectricalParametersInElectricalDataDataGridView (string referenceID, string attribute, string values, string units)
     
    override string ToString ()
     
    + + + + + + + + + +

    +Properties

    string ReferenceID [get, set]
     
    string Attributes [get, set]
     
    string Values [get, set]
     
    string Units [get, set]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ ElectricalParametersInElectricalDataDataGridView() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ElectricalParametersInElectricalDataDataGridView ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ ElectricalParametersInElectricalDataDataGridView() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ElectricalParametersInElectricalDataDataGridView (string referenceID,
    string attribute,
    string values,
    string units 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ToString()

    + +
    +
    + + + + + +
    + + + + + + + +
    override string Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ToString ()
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ Attributes

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.Attributes
    +
    +getset
    +
    + +
    +
    + +

    ◆ ReferenceID

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ReferenceID
    +
    +getset
    +
    + +
    +
    + +

    ◆ Units

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.Units
    +
    +getset
    +
    + +
    +
    + +

    ◆ Values

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.Values
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.js new file mode 100644 index 0000000..b07b3b5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.js @@ -0,0 +1,10 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view = +[ + [ "ElectricalParametersInElectricalDataDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#aeb0bd8fee678d1d2b2cb17ccca492b32", null ], + [ "ElectricalParametersInElectricalDataDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#ac6d42645334f211b7612db4c268b847e", null ], + [ "ToString", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#aba4c25ac5e517f9f360d5501767bcbfd", null ], + [ "Attributes", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#ac1f19e7f6cfb0941b7ce630ca12a7c76", null ], + [ "ReferenceID", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#a7ec764e68408965696d6e63a4f5b1940", null ], + [ "Units", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#a38a479b3e379cfdd431903504404d747", null ], + [ "Values", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#afad2f4d7970e790736854b23984fc600", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller-members.html new file mode 100644 index 0000000..cc75d0d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller-members.html @@ -0,0 +1,120 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.MWController Member List
    +
    +
    + +

    This is the complete list of members for Aml.Editor.Plugin.MWController, including all inherited members.

    + + + + + + + +
    ChangeGui(MWGUIType targetGUI)Aml.Editor.Plugin.MWControllerinline
    CreateDeviceOnClick(MWDevice newDevice, bool isEdit)Aml.Editor.Plugin.MWControllerinline
    GetDeviceDescriptionForm()Aml.Editor.Plugin.MWControllerinline
    importFile(string filename, MWData.MWFileType filetype)Aml.Editor.Plugin.MWControllerinline
    MWController(ModellingWizard modellingWizard)Aml.Editor.Plugin.MWControllerinline
    MWGUIType enum nameAml.Editor.Plugin.MWController
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html new file mode 100644 index 0000000..b2eb47a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html @@ -0,0 +1,382 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.MWController Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.MWController Class Reference
    +
    +
    + +

    This class passes the inputs of the GUIs to MWData where needed and it is in controll of what is displayed at the screen + More...

    + + + + + +

    +Public Types

    enum  MWGUIType { MWGUIType.CreateDevice, +MWGUIType.CreateInterface, +MWGUIType.Start, +MWGUIType.DeviceDescription + }
     Enum to represent the GUI More...
     
    + + + + + + + + + + + + + + + +

    +Public Member Functions

     MWController (ModellingWizard modellingWizard)
     Init the controller and reload all amlx devices More...
     
    DeviceDescription GetDeviceDescriptionForm ()
     Create the new CreateDevice GUI or return the previously created GUI More...
     
    String CreateDeviceOnClick (MWDevice newDevice, bool isEdit)
     
    void ChangeGui (MWGUIType targetGUI)
     Show the correct GUI for the selected device More...
     
    string importFile (string filename, MWData.MWFileType filetype)
     Call the Converter with the given file More...
     
    +

    Detailed Description

    +

    This class passes the inputs of the GUIs to MWData where needed and it is in controll of what is displayed at the screen

    +

    Member Enumeration Documentation

    + +

    ◆ MWGUIType

    + +
    +
    + + + + + +
    + + + + +
    enum Aml.Editor.Plugin.MWController.MWGUIType
    +
    +strong
    +
    + +

    Enum to represent the GUI

    + + + + + +
    Enumerator
    CreateDevice 
    CreateInterface 
    Start 
    DeviceDescription 
    + +
    +
    +

    Constructor & Destructor Documentation

    + +

    ◆ MWController()

    + +
    +
    + + + + + +
    + + + + + + + + +
    Aml.Editor.Plugin.MWController.MWController (ModellingWizard modellingWizard)
    +
    +inline
    +
    + +

    Init the controller and reload all amlx devices

    +
    Parameters
    + + +
    modellingWizard
    +
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ChangeGui()

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.MWController.ChangeGui (MWGUIType targetGUI)
    +
    +inline
    +
    + +

    Show the correct GUI for the selected device

    +
    Parameters
    + + +
    selectedIndexThe index of the selected item in the dropdown
    +
    +
    +

    Reload all .amlx files in ./modellingwizard/ and update the dropdown.

    +

    Switch the displayed

    +
    Parameters
    + + +
    targetGUIthe GUI Type to display
    +
    +
    + +
    +
    + +

    ◆ CreateDeviceOnClick()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    String Aml.Editor.Plugin.MWController.CreateDeviceOnClick (MWDevice newDevice,
    bool isEdit 
    )
    +
    +inline
    +
    + +

    +
    Parameters
    + + + +
    newDevice
    isEdit
    +
    +
    +
    Returns
    + +
    +
    + +

    ◆ GetDeviceDescriptionForm()

    + +
    +
    + + + + + +
    + + + + + + + +
    DeviceDescription Aml.Editor.Plugin.MWController.GetDeviceDescriptionForm ()
    +
    +inline
    +
    + +

    Create the new CreateDevice GUI or return the previously created GUI

    +
    Returns
    the CreateDevice GUI for this session
    +

    creáte the new DeviceDescription GUI or return the previously created GUI

    + +
    +
    + +

    ◆ importFile()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    string Aml.Editor.Plugin.MWController.importFile (string filename,
    MWData.MWFileType filetype 
    )
    +
    +inline
    +
    + +

    Call the Converter with the given file

    +
    Parameters
    + + + +
    filenamethe full path to the file
    filetypewhether the file is an IODD or an GSD file
    +
    +
    +
    Returns
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.js new file mode 100644 index 0000000..2468ad1 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.js @@ -0,0 +1,14 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller = +[ + [ "MWGUIType", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0", [ + [ "CreateDevice", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0a08139fc253db7964964002703bda052e", null ], + [ "CreateInterface", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0afd44e4ee14bded07d2f3dff42dea0f6e", null ], + [ "Start", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0aa6122a65eaa676f700ae68d393054a37", null ], + [ "DeviceDescription", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0a5d2adcfd71637096d3d16648971c33c5", null ] + ] ], + [ "MWController", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#a9c87165813d6f480fb4d1141de016565", null ], + [ "ChangeGui", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#aa613a0bc4392c195c617dcd7aba257f5", null ], + [ "CreateDeviceOnClick", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#ad0432669e3a6e29aadfb7892746b5068", null ], + [ "GetDeviceDescriptionForm", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#adba55c4a5135c58c69a0d92d495a0ad1", null ], + [ "importFile", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#ad2f99785d2a3b068dd3ce6c1d7f7fceb", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data-members.html new file mode 100644 index 0000000..6b2e8eb --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data-members.html @@ -0,0 +1,137 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.MWData Member List
    +
    +
    + +

    This is the complete list of members for Aml.Editor.Plugin.MWData, including all inherited members.

    + + + + + + + + + + + + + + + + + + + + + + + + +
    checkForAutomtionComponent()Aml.Editor.Plugin.DeviceDescriptioninline
    clear()Aml.Editor.Plugin.DeviceDescriptioninline
    ClearHeaderTabPageValuesofElectricalInterfaces()Aml.Editor.Plugin.DeviceDescriptioninline
    ClearHeaderTabPageValuesofgenericData()Aml.Editor.Plugin.DeviceDescriptioninline
    copyFiles(string sourceFilePath, string destinationFilePath)Aml.Editor.Plugin.MWDatainline
    CreateDevice(MWDevice device, bool isEdit)Aml.Editor.Plugin.MWDatainline
    createDocumentRef(string doc, string doctype, string externalname, SystemUnitClassType systemUnitClass)Aml.Editor.Plugin.MWDatainline
    createPictureRef(string pic, string pictype, string externalname, SystemUnitClassType systemUnitClass)Aml.Editor.Plugin.MWDatainline
    DeviceDescription()Aml.Editor.Plugin.DeviceDescriptioninline
    DeviceDescription(MWController mWController)Aml.Editor.Plugin.DeviceDescriptioninline
    Dispose(bool disposing)Aml.Editor.Plugin.DeviceDescriptioninlineprotected
    draggingAml.Editor.Plugin.DeviceDescription
    ImportGSD2AML(string filename)Aml.Editor.Plugin.MWDatainline
    ImportIODD2AML(string filename)Aml.Editor.Plugin.MWDatainline
    interneturl(string url, string urltype, string externalname, SystemUnitClassType systemUnitClass)Aml.Editor.Plugin.MWDatainline
    loadStandardLibrary()Aml.Editor.Plugin.DeviceDescriptioninline
    MWData(MWController mWController)Aml.Editor.Plugin.MWDatainline
    MWFileType enum nameAml.Editor.Plugin.MWData
    rowAml.Editor.Plugin.DeviceDescription
    SearchAttributesInsideAttributesOFElectricConnectorType(string searchName, AttributeType attribute, ClassOfListsFromReferencefile item, ExternalInterfaceType electricConnectorType)Aml.Editor.Plugin.MWDatainline
    SearchForAttributesInsideAttributesofAutomationComponent(string searchName, AttributeType attribute, ClassOfListsFromReferencefile item, SupportedRoleClassType SRC)Aml.Editor.Plugin.MWDatainline
    searchForComponentNames(AttributeType classType)Aml.Editor.Plugin.DeviceDescriptioninline
    selectLibrary(byte[] file)Aml.Editor.Plugin.DeviceDescriptioninline
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html new file mode 100644 index 0000000..abf0561 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html @@ -0,0 +1,700 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.MWData Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.MWData Class Reference
    +
    +
    +
    +Inheritance diagram for Aml.Editor.Plugin.MWData:
    +
    +
    + + +Aml.Editor.Plugin.DeviceDescription + +
    + + + + +

    +Classes

    class  MWObject
     
    + + + +

    +Public Types

    enum  MWFileType { MWFileType.IODD, +MWFileType.GSD + }
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

     MWData (MWController mWController)
     Create the MWData Object More...
     
    string CreateDevice (MWDevice device, bool isEdit)
     Create the AMLX File with the correct AML File and optional pictures More...
     
    void SearchForAttributesInsideAttributesofAutomationComponent (string searchName, AttributeType attribute, ClassOfListsFromReferencefile item, SupportedRoleClassType SRC)
     
    void SearchAttributesInsideAttributesOFElectricConnectorType (string searchName, AttributeType attribute, ClassOfListsFromReferencefile item, ExternalInterfaceType electricConnectorType)
     
    void interneturl (string url, string urltype, string externalname, SystemUnitClassType systemUnitClass)
     Takes the url of the picture and setup in the value attribute of the corresponding internal element pic . More...
     
    Uri createPictureRef (string pic, string pictype, string externalname, SystemUnitClassType systemUnitClass)
     Creates the Structur to reference a picture and set the correct value pic . More...
     
    Uri createDocumentRef (string doc, string doctype, string externalname, SystemUnitClassType systemUnitClass)
     Creates the Structur to reference a document and set the correct value doc . More...
     
    string ImportIODD2AML (string filename)
     Calls the iodd2aml Converter using System.Reflection the converted iodd will be saved in an amlx More...
     
    string ImportGSD2AML (string filename)
     Calls the gsd2aml Converter using System.Reflection the converted gsdml will be saved in an amlx More...
     
    void copyFiles (string sourceFilePath, string destinationFilePath)
     
    - Public Member Functions inherited from Aml.Editor.Plugin.DeviceDescription
     DeviceDescription ()
     Constructor with no arguments that intilizes Device Description GUI More...
     
     DeviceDescription (MWController mWController)
     This is a constructor of this class with MWControlle rargument. More...
     
    void loadStandardLibrary ()
     This function loads "Interface Class Libraries" and"Role Class Libraries" from already defined libaraies in plugin or, libraries from the AML file those user want ot load from local machine. More...
     
    void checkForAutomtionComponent ()
     
    void clear ()
     
    void searchForComponentNames (AttributeType classType)
     
    void ClearHeaderTabPageValuesofElectricalInterfaces ()
     
    void ClearHeaderTabPageValuesofgenericData ()
     
    void selectLibrary (byte[] file)
     
    + + + + + + + + + + + +

    +Additional Inherited Members

    - Public Attributes inherited from Aml.Editor.Plugin.DeviceDescription
    bool dragging = false
     
    - Protected Member Functions inherited from Aml.Editor.Plugin.DeviceDescription
    override void Dispose (bool disposing)
     Clean up any resources being used. More...
     
    - Properties inherited from Aml.Editor.Plugin.DeviceDescription
    object row [get]
     
    +

    Member Enumeration Documentation

    + +

    ◆ MWFileType

    + +
    +
    + + + + + +
    + + + + +
    enum Aml.Editor.Plugin.MWData.MWFileType
    +
    +strong
    +
    + + + +
    Enumerator
    IODD 
    GSD 
    + +
    +
    +

    Constructor & Destructor Documentation

    + +

    ◆ MWData()

    + +
    +
    + + + + + +
    + + + + + + + + +
    Aml.Editor.Plugin.MWData.MWData (MWController mWController)
    +
    +inline
    +
    + +

    Create the MWData Object

    +
    Parameters
    + + +
    mWControllerthe MWController to report to
    +
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ copyFiles()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.MWData.copyFiles (string sourceFilePath,
    string destinationFilePath 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ CreateDevice()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    string Aml.Editor.Plugin.MWData.CreateDevice (MWDevice device,
    bool isEdit 
    )
    +
    +inline
    +
    + +

    Create the AMLX File with the correct AML File and optional pictures

    +
    Parameters
    + + + +
    deviceThe device which will be created
    isEdittrue if an amlx file get update, false if a new file will be created
    +
    +
    +
    Returns
    + +
    +
    + +

    ◆ createDocumentRef()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Uri Aml.Editor.Plugin.MWData.createDocumentRef (string doc,
    string doctype,
    string externalname,
    SystemUnitClassType systemUnitClass 
    )
    +
    +inline
    +
    + +

    Creates the Structur to reference a document and set the correct value doc .

    +

    If the structur is already there, it will only update the value.

    +
    Parameters
    + + + + + +
    docthe absolut path to the document
    doctypeDocumenttype like 'Short Guide' or 'Bill of Materials'
    externalnameThe name of the externalElement
    systemUnitClassthe systemUnitClass to insert the structure into
    +
    +
    +
    Returns
    + +
    +
    + +

    ◆ createPictureRef()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Uri Aml.Editor.Plugin.MWData.createPictureRef (string pic,
    string pictype,
    string externalname,
    SystemUnitClassType systemUnitClass 
    )
    +
    +inline
    +
    + +

    Creates the Structur to reference a picture and set the correct value pic .

    +

    If the structur is already there, it will only update the value.

    +
    Parameters
    + + + + + +
    picthe absolut path to the picture
    pictypePicturetyp like 'DevicePicture' or 'DeviceIcon'
    externalnameThe name of the externalElement
    systemUnitClassthe systemUnitClass to insert the structure into
    +
    +
    +
    Returns
    + +
    +
    + +

    ◆ ImportGSD2AML()

    + +
    +
    + + + + + +
    + + + + + + + + +
    string Aml.Editor.Plugin.MWData.ImportGSD2AML (string filename)
    +
    +inline
    +
    + +

    Calls the gsd2aml Converter using System.Reflection the converted gsdml will be saved in an amlx

    +
    Parameters
    + + +
    filenamethe path to the gsdml file
    +
    +
    +
    Returns
    the result message as a string
    + +
    +
    + +

    ◆ ImportIODD2AML()

    + +
    +
    + + + + + +
    + + + + + + + + +
    string Aml.Editor.Plugin.MWData.ImportIODD2AML (string filename)
    +
    +inline
    +
    + +

    Calls the iodd2aml Converter using System.Reflection the converted iodd will be saved in an amlx

    +
    Parameters
    + + +
    filenamethe path to the iodd file
    +
    +
    +
    Returns
    the result message as a string
    + +
    +
    + +

    ◆ interneturl()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.MWData.interneturl (string url,
    string urltype,
    string externalname,
    SystemUnitClassType systemUnitClass 
    )
    +
    +inline
    +
    + +

    Takes the url of the picture and setup in the value attribute of the corresponding internal element pic .

    +
    Parameters
    + + + + + +
    urlthe absolut path to the picture or document in the internet
    urltypePicturetyp like 'DevicePicture' or 'DeviceIcon' and document type like "Short guide" or "Bill of materials" etc
    externalnameThe name of the externalElement
    systemUnitClassthe systemUnitClass to insert the structure into
    +
    +
    +
    Returns
    + +
    +
    + +

    ◆ SearchAttributesInsideAttributesOFElectricConnectorType()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.MWData.SearchAttributesInsideAttributesOFElectricConnectorType (string searchName,
    AttributeType attribute,
    ClassOfListsFromReferencefile item,
    ExternalInterfaceType electricConnectorType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ SearchForAttributesInsideAttributesofAutomationComponent()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.MWData.SearchForAttributesInsideAttributesofAutomationComponent (string searchName,
    AttributeType attribute,
    ClassOfListsFromReferencefile item,
    SupportedRoleClassType SRC 
    )
    +
    +inline
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.js new file mode 100644 index 0000000..29bb37b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.js @@ -0,0 +1,18 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_m_w_data = +[ + [ "MWObject", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.html", null ], + [ "MWFileType", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a932def9f5f257f8c1cbc4949e549d233", [ + [ "IODD", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a932def9f5f257f8c1cbc4949e549d233a39b9e3b34cacf78c2c21cf073949a2ad", null ], + [ "GSD", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a932def9f5f257f8c1cbc4949e549d233a8e78dfecfc3872d38eb7f78c8427987a", null ] + ] ], + [ "MWData", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a767c914fb975ac022140ea314fa8a425", null ], + [ "copyFiles", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a90291aedf55074223efa93204edb3dbb", null ], + [ "CreateDevice", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a71cc9a3da731421b4b58bf0d5902471d", null ], + [ "createDocumentRef", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a3d43709c34fb4171f4999a72bfc439b2", null ], + [ "createPictureRef", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#ac060052e0d94500e5ed2c3747790195e", null ], + [ "ImportGSD2AML", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a629fe82e27f15bbd5616e78c1e3f41bb", null ], + [ "ImportIODD2AML", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a9968abc7dcc16187dd2f604d8c3a927e", null ], + [ "interneturl", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a89057897b9fb2106ee38d14a2ff070aa", null ], + [ "SearchAttributesInsideAttributesOFElectricConnectorType", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a05f0351fc99bd19136a3fc6888506020", null ], + [ "SearchForAttributesInsideAttributesofAutomationComponent", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a27f6de7395f7fd5dbbddcbc3655dc35b", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.png b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.png new file mode 100644 index 0000000000000000000000000000000000000000..778b03d144a623536c6bed3cf517d5494e4298a4 GIT binary patch literal 1060 zcmeAS@N?(olHy`uVBq!ia0vp^H-Wf=gBeK1ZrUdXq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0H+#A`hEy=VoqMxri2)D8?L}E%{@3p@ zZs@In!cQ#p`}iTd_u2^CoWs{s{8q@wYhUmet3khS|#dx zGWhr>z0DuB>(g$3db4`UHT%tF(Kr8Y`xh7gEGYEq^AA#+i$u>}IvuxT`pxTRUZG$6 z_nh$w4R%fqyZdKG?(UBhjh7j(K4v*NviRJs-d7ja)NGk`Cu095t;px~=X+PJ`p*rv z(I7bVtLu!Ft9~VAZJrV|OR!;kA@ht$nP>C1M_yfKy1UzVmD&2pCvFV+Es_oThj+~pnI^$hvY{D!neye`zFiHLuM&54?e&ubypPp>}dNIGS;Lonrh4HOl z(_WuFQ@^ru{?V^zt>*ro^X#TU+RiM#`0NtnVx7Wuo6Iw&?bEW0TQ_%FnSAQDgO{!+ zrn!f_>A899RKgGSG_^gstGQlf$;NJH+;+Ll#PY+7?1XDF%WKXZoBQSYo16>xXJ75M zFv)GU+N^wLMrgD2x|u4L>u#;FJ9mHf)N`vgKL2F5?(G})w6ansE>IkjD`*58f}Ca%sv01~nCEobAZE z=JK|`TIiJPZPt+RzL#-VS$}5cryMUakYYc;DSr0WhQrG=rDo3j$TVjIw@u!)HJM*R zAyKir*7n{1wamBKX3jQCOFgl3p?mN9v)`-_}+ox}PtZKYl^HUvafZ@!HZP2qZytRFX?4m&X3%jeLt$<{^yN% nIX(ozQu6Wb`b(#%J(2(8wsx-Tsni5umS*sD^>bP0l+XkKvC{@x literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.html new file mode 100644 index 0000000..94c857f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.html @@ -0,0 +1,124 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.MWData.MWObject Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.MWData.MWObject Class Reference
    +
    +
    +
    +Inheritance diagram for Aml.Editor.Plugin.MWData.MWObject:
    +
    +
    + + +Aml.Editor.Plugin.MWDevice + +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.png b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.png new file mode 100644 index 0000000000000000000000000000000000000000..5a6af09aa3b09c0d1ef498a66437a8355a9136a5 GIT binary patch literal 866 zcmeAS@N?(olHy`uVBq!ia0vp^4}ds;gBeJgTXrr3QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;gXhO-6M z*KcJXyRqZLtoyfi_+5>@zz`O$d-ve7^T*nEHv3*JE&IEkY5&ceFndXHRF79`2}_#_V{J4vt3U=Pn1vJoUylzcgEw7q3a_H|6bj`@%@6?uEpQ}eko!6 z6Ba*5YC*t%%RiIE-``7U*j#G4pmG)CzP0b7;&}rb_FrRRk%$x)NJ!Z`@1%g!j`a+B zSD7E2+hzUWabfYH-OP4B-}zQlADHRNcnq%6*P&seDI=pBL4k82J%({B-GPM0B9*)0 z!U2%ASyp7|vV20!lIIQF&t zyyX17ciLkj56pk;5w!9#Fh=~8*Z(QWei^x~`u687nrsHu^VF&$YuN7Ota`Skr~J?) zpPxJ#vZp76Mx?SB?_kboyS?*Tobj<^t*XURDl1pZ!y-g4`(48M(_#gG|FcA_Rq>q1 z#~^06OMS(Hy;B-|zrA3%C4GS@O}y*D+f+r*>Yp4L+dm2&*t^%lvHC*XyvZv5%NeZ7 zFR<$9$4}kBwN7@!ORL{}zZx|2PHo8m#>4l_IcFF3E*DMcI}kHH^XnWPEl>5=_4my@ ztyZ08>~EQ>GI!}~{|^oko|htjO%|BCWVH#SYG#VBgQrxa{{e~QJsbZq2C(U89gzopr0QudBr~m)} literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device-members.html new file mode 100644 index 0000000..1c0cd96 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device-members.html @@ -0,0 +1,130 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html new file mode 100644 index 0000000..058ee72 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html @@ -0,0 +1,516 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.MWDevice Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.MWDevice Class Reference
    +
    +
    +
    +Inheritance diagram for Aml.Editor.Plugin.MWDevice:
    +
    +
    + + +Aml.Editor.Plugin.MWData.MWObject + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Properties

    string environment [get, set]
     
    string fileName [get, set]
     
    string filepath [get, set]
     
    string vendorName [get, set]
     
    string deviceName [get, set]
     
    List< DataGridParametersdataGridParametersLists [get, set]
     
    List< ElectricalParametersElectricalInterfaces [get, set]
     
    List< List< ElectricalParameters > > ElectricalInterfaceInstances [get, set]
     
    List< AttachablesDataGridViewParametersdataGridAttachablesParametrsList [get, set]
     
    List< AttachablesDataGridViewParameterslistWithURIConvertedToString [get, set]
     
    List< ElectricalInterfaceParameterslistofElectricalInterfaceParameters [get, set]
     
    Dictionary< string, List< ElectricalInterfaceParameters > > DictofElectricalInterfaceParameters [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryForInterfaceClassesInElectricalInterfaces [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryForRoleClassofComponent [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryForExternalInterfacesUnderRoleClassofComponent [get, set]
     
    +

    Property Documentation

    + +

    ◆ dataGridAttachablesParametrsList

    + +
    +
    + + + + + +
    + + + + +
    List<AttachablesDataGridViewParameters> Aml.Editor.Plugin.MWDevice.dataGridAttachablesParametrsList
    +
    +getset
    +
    + +
    +
    + +

    ◆ dataGridParametersLists

    + +
    +
    + + + + + +
    + + + + +
    List<DataGridParameters> Aml.Editor.Plugin.MWDevice.dataGridParametersLists
    +
    +getset
    +
    + +
    +
    + +

    ◆ deviceName

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.MWDevice.deviceName
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.MWDevice.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryForExternalInterfacesUnderRoleClassofComponent

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.MWDevice.DictionaryForExternalInterfacesUnderRoleClassofComponent
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryForInterfaceClassesInElectricalInterfaces

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.MWDevice.DictionaryForInterfaceClassesInElectricalInterfaces
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryForRoleClassofComponent

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.MWDevice.DictionaryForRoleClassofComponent
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictofElectricalInterfaceParameters

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<ElectricalInterfaceParameters> > Aml.Editor.Plugin.MWDevice.DictofElectricalInterfaceParameters
    +
    +getset
    +
    + +
    +
    + +

    ◆ ElectricalInterfaceInstances

    + +
    +
    + + + + + +
    + + + + +
    List<List<ElectricalParameters> > Aml.Editor.Plugin.MWDevice.ElectricalInterfaceInstances
    +
    +getset
    +
    + +
    +
    + +

    ◆ ElectricalInterfaces

    + +
    +
    + + + + + +
    + + + + +
    List<ElectricalParameters> Aml.Editor.Plugin.MWDevice.ElectricalInterfaces
    +
    +getset
    +
    + +
    +
    + +

    ◆ environment

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.MWDevice.environment
    +
    +getset
    +
    + +
    +
    + +

    ◆ fileName

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.MWDevice.fileName
    +
    +getset
    +
    + +
    +
    + +

    ◆ filepath

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.MWDevice.filepath
    +
    +getset
    +
    + +
    +
    + +

    ◆ listofElectricalInterfaceParameters

    + +
    +
    + + + + + +
    + + + + +
    List<ElectricalInterfaceParameters> Aml.Editor.Plugin.MWDevice.listofElectricalInterfaceParameters
    +
    +getset
    +
    + +
    +
    + +

    ◆ listWithURIConvertedToString

    + +
    +
    + + + + + +
    + + + + +
    List<AttachablesDataGridViewParameters> Aml.Editor.Plugin.MWDevice.listWithURIConvertedToString
    +
    +getset
    +
    + +
    +
    + +

    ◆ vendorName

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.MWDevice.vendorName
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.js new file mode 100644 index 0000000..4404bc2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.js @@ -0,0 +1,19 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_m_w_device = +[ + [ "dataGridAttachablesParametrsList", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a0a3b60dd4bea5558566aa7a50e0f91b5", null ], + [ "dataGridParametersLists", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a6038813fa356059a4fdc94c32ea79e47", null ], + [ "deviceName", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a1039c54203b3bba6dc9b348ba2c1c876", null ], + [ "DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a0e196b056a21d36a26c48303178d0fb9", null ], + [ "DictionaryForExternalInterfacesUnderRoleClassofComponent", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#ab3a9f9a95e979c569393c41f137b37d3", null ], + [ "DictionaryForInterfaceClassesInElectricalInterfaces", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a34513f92d4611fa73fb98ca4607b111b", null ], + [ "DictionaryForRoleClassofComponent", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a619c83acdfc5baae1c1d363fb3989381", null ], + [ "DictofElectricalInterfaceParameters", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#aec64d8e95546e10e503e977b93b8949e", null ], + [ "ElectricalInterfaceInstances", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a65ccfd989b124d2e257b6f42578db336", null ], + [ "ElectricalInterfaces", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a98628a6b85464ccfb27fb083da7f1dfd", null ], + [ "environment", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a252e8e2a021284c3cdd5d8624179958b", null ], + [ "fileName", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a3663feace37ced657ce078295d2e4759", null ], + [ "filepath", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a6e04054395d64c6c5947600cce015f6d", null ], + [ "listofElectricalInterfaceParameters", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a851204d24146ab1eff048bfe0a44010d", null ], + [ "listWithURIConvertedToString", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a3c056d06b76f10cc782e8b4862810e5f", null ], + [ "vendorName", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a19ee5f6fa6e1d90d37cc3a8c876ef919", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.png b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.png new file mode 100644 index 0000000000000000000000000000000000000000..f0db8f49b6adb96c442c6589c01ad3299d56f929 GIT binary patch literal 855 zcmeAS@N?(olHy`uVBq!ia0vp^4}ds;gBeJgTXrr3QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;Cd(wTm3hk)+xA=ws}*YS5a!dLBm4Z;=Lu@7j`Ik%D$CZe~L+LvRIx;?xw)} zlX?%LBu|?hEbiQzes|}V+BVDi?^jt|JpIV{L7wpPbLqd%9rKxgrkm4fL8*?TnBpXX zGY|L{Naj7iRdrTET72!Z?Pk8q|A?6|bgveBpKvw(@!>lMSG}^@{a36p{_Pv<+0UHr z-C?kjpRK-PL5xkpRL)(}^JZr`Y@TYju{7sYhvze12Wj=`48KA?)|+h&oNB#~Dd)~X zwFUcYTo0`ZUhvy0BiWAs-a)ejn~M2jxnf_>JIkeS&e&PTIpfjC(EP~4-|O>}?;lJP z>-~A&?#rZ-Rd##2CY8*p%Kppq;jXlfXZq_RhtDD2m)2j6eZ5>!%d>thD8RCrye^%n zV$wUk=}rX0^jC}p>33y6eB5FA@Gj&0n(u0RY#*Fi#E_iL#MHBflfz(>n!--{DtD*DNhvHhdafjjT~ zF36Q=pJ&`s!j)<%~hm}S|m zT)^Pz>gTe~DWM4fB1D1z literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard-members.html new file mode 100644 index 0000000..fb4013c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard-members.html @@ -0,0 +1,136 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html new file mode 100644 index 0000000..b520cbd --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html @@ -0,0 +1,797 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.ModellingWizard Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.ModellingWizard Class Reference
    +
    +
    + +

    ModellingWizard is an PlugIn, which implements the IAMLEditorView Interface. + More...

    +
    +Inheritance diagram for Aml.Editor.Plugin.ModellingWizard:
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

     ModellingWizard ()
     
    void ChangeAMLFilePath (string amlFilePath)
     Changes the current amlFilePath. More...
     
    void ChangeSelectedObject (CAEXBasicObject selectedObject)
     Changes the selected object. More...
     
    void ExecuteCommand (PluginCommandsEnum command, string amlFilePath)
     This Method is called from the AutomationML Editor to execute a specific command. More...
     
    void PublishAutomationMLFileAndObject (string amlFilePath, CAEXBasicObject selectedObject)
     This Method is called on activation of a PlugIn. More...
     
    void changeGUI (System.Windows.Forms.Control content)
     Replace the Content in the Plugin window with the Windows Forms GUI More...
     
    + + + + + + + + + + +

    +Public Attributes

    DockPositionEnum InitialDockPosition => DockPositionEnum.Floating
     Gets the initial dock position for the PlugIn window. More...
     
    string PackageName => ""
     Gets the package name which is used to download the PlugIn package from a NuGet feed. More...
     
    BitmapImage PaneImage => null
     Gets the image which should be used in the Header of the PlugIn window. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Properties

    System.Windows.Input.ICommand?? AboutCommand [get]
     The AboutCommand - Command More...
     
    PluginCommand ActivatePlugin [get]
     Gets the Command to activate the PlugIn. More...
     
    PluginCommand ReloadObjects [get]
     Gets the Command to reload the AMLX Files in . More...
     
    bool CanClose [get]
     Gets a value indicating whether this UserControl could be closed from the Editor's WindowManager. More...
     
    List< PluginCommand > Commands [get]
     Gets the List of commands, which are viewed in the PlugIn Menu in the Host Application More...
     
    string DisplayName [get]
     Gets the display name which is shown in the PlugIn Menu in the Host Application More...
     
    bool IsActive [get]
     Gets a value indicating whether this instance is active. More...
     
    bool IsReactive [get]
     Gets a value indicating whether this instance is reactive. More...
     
    bool IsReadonly [get]
     Gets a value indicating whether this instance is read only. More...
     
    PluginCommand TerminatePlugin [get]
     Gets the terminate PlugIn command. More...
     
    bool IsAutoActive [get, set]
     Gets or sets a value indicating whether this instance is automatic active when loaded. More...
     
    + + + + + + + +

    +Events

    EventHandler PluginActivated
     Occurs when the PlugIn is activated (for example via the StartCommand ). More...
     
    EventHandler PluginTerminated
     Occurs when the PlugIn is deactivated (some UserInteraction inside the PlugIn or via the StopCommand ). More...
     
    +

    Detailed Description

    +

    ModellingWizard is an PlugIn, which implements the IAMLEditorView Interface.

    +

    The PlugIn is a UserControl, which is managed by the AutomationML Editors Window- and Docking - Manager. The Export Attribute enables the AutomationML Editor to load the PlugIn with the Microsoft Managed Extensibility Framework.

    +

    Constructor & Destructor Documentation

    + +

    ◆ ModellingWizard()

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.ModellingWizard.ModellingWizard ()
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ChangeAMLFilePath()

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.ModellingWizard.ChangeAMLFilePath (string amlFilePath)
    +
    +inline
    +
    + +

    Changes the current amlFilePath.

    +

    The Host Application will call this method when the PlugIns P:Aml.Editor.Plugin.Contracts.IAMLEditorPlugin.IsReactive Property is set to true and the Currently opened AutomationML File changes in the AMLEditor Host Application.

    +
    Parameters
    + + +
    amlFilePathThe Path to the current AML File in the AML Editor.
    +
    +
    + +
    +
    + +

    ◆ changeGUI()

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.ModellingWizard.changeGUI (System.Windows.Forms.Control content)
    +
    +inline
    +
    + +

    Replace the Content in the Plugin window with the Windows Forms GUI

    +
    Parameters
    + + +
    contentThe Form to be displayed in the plugin window
    +
    +
    + +
    +
    + +

    ◆ ChangeSelectedObject()

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.ModellingWizard.ChangeSelectedObject (CAEXBasicObject selectedObject)
    +
    +inline
    +
    + +

    Changes the selected object.

    +

    The Host Application will call this method when the PlugIns P:Aml.Editor.Plugin.Contracts.IAMLEditorPlugin.IsReactive Property is set to true and the Current Selection changes in the AMLEditor Host Application.

    +
    Parameters
    + + +
    selectedObjectThe selected CAEX - object.
    +
    +
    + +
    +
    + +

    ◆ ExecuteCommand()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.ModellingWizard.ExecuteCommand (PluginCommandsEnum command,
    string amlFilePath 
    )
    +
    +inline
    +
    + +

    This Method is called from the AutomationML Editor to execute a specific command.

    +

    The Editor can only execute those commands, which are identified by the PluginCommandsEnum Enumeration. The Editor may execute the termination command of the PlugIn, so here some preparations for a clean termination should be performed.

    +
    Parameters
    + + + +
    commandThe command.
    amlFilePathThe amlFilePath.
    +
    +
    + +
    +
    + +

    ◆ PublishAutomationMLFileAndObject()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.ModellingWizard.PublishAutomationMLFileAndObject (string amlFilePath,
    CAEXBasicObject selectedObject 
    )
    +
    +inline
    +
    + +

    This Method is called on activation of a PlugIn.

    +

    The AutomationML Editor 'publishes' its current state to the PlugIn, that is the Path of the loaded AutomationML Document and the currently selected AutomationML Object'. Please note, that the objects may be empty or null.

    +
    Parameters
    + + + +
    amlFilePathThe AML file path, may be empty.
    selectedObjectThe selected object, may be null.
    +
    +
    + +
    +
    +

    Member Data Documentation

    + +

    ◆ InitialDockPosition

    + +
    +
    + + + + +
    DockPositionEnum Aml.Editor.Plugin.ModellingWizard.InitialDockPosition => DockPositionEnum.Floating
    +
    + +

    Gets the initial dock position for the PlugIn window.

    + +
    +
    + +

    ◆ PackageName

    + +
    +
    + + + + +
    string Aml.Editor.Plugin.ModellingWizard.PackageName => ""
    +
    + +

    Gets the package name which is used to download the PlugIn package from a NuGet feed.

    +

    If a Package name is defined, the AMLEditor can update PlugIn packages independently from its own update cycle.

    +

    The package name.

    + +
    +
    + +

    ◆ PaneImage

    + +
    +
    + + + + +
    BitmapImage Aml.Editor.Plugin.ModellingWizard.PaneImage => null
    +
    + +

    Gets the image which should be used in the Header of the PlugIn window.

    +

    If no image is defined the editor uses a default image.

    + +
    +
    +

    Property Documentation

    + +

    ◆ AboutCommand

    + +
    +
    + + + + + +
    + + + + +
    System.Windows.Input.ICommand?? Aml.Editor.Plugin.ModellingWizard.AboutCommand
    +
    +get
    +
    + +

    The AboutCommand - Command

    +

    The about command.

    + +
    +
    + +

    ◆ ActivatePlugin

    + +
    +
    + + + + + +
    + + + + +
    PluginCommand Aml.Editor.Plugin.ModellingWizard.ActivatePlugin
    +
    +get
    +
    + +

    Gets the Command to activate the PlugIn.

    + +
    +
    + +

    ◆ CanClose

    + +
    +
    + + + + + +
    + + + + +
    bool Aml.Editor.Plugin.ModellingWizard.CanClose
    +
    +get
    +
    + +

    Gets a value indicating whether this UserControl could be closed from the Editor's WindowManager.

    +

    When a close occurs from the WindowManager, the StopCommand will be executed via the ExecuteCommand Method.

    +

    true if this instance can close; otherwise, false.

    + +
    +
    + +

    ◆ Commands

    + +
    +
    + + + + + +
    + + + + +
    List<PluginCommand> Aml.Editor.Plugin.ModellingWizard.Commands
    +
    +get
    +
    + +

    Gets the List of commands, which are viewed in the PlugIn Menu in the Host Application

    +

    The command List.

    + +
    +
    + +

    ◆ DisplayName

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.ModellingWizard.DisplayName
    +
    +get
    +
    + +

    Gets the display name which is shown in the PlugIn Menu in the Host Application

    +

    The display name.

    + +
    +
    + +

    ◆ IsActive

    + +
    +
    + + + + + +
    + + + + +
    bool Aml.Editor.Plugin.ModellingWizard.IsActive
    +
    +get
    +
    + +

    Gets a value indicating whether this instance is active.

    +

    The Property should be set to true in the StartCommand and set to false in the StopCommand

    +

    true if this instance is active; otherwise, false.

    + +
    +
    + +

    ◆ IsAutoActive

    + +
    +
    + + + + + +
    + + + + +
    bool Aml.Editor.Plugin.ModellingWizard.IsAutoActive
    +
    +getset
    +
    + +

    Gets or sets a value indicating whether this instance is automatic active when loaded.

    +

    This value can be initially set and will be defined by the user.

    + +
    +
    + +

    ◆ IsReactive

    + +
    +
    + + + + + +
    + + + + +
    bool Aml.Editor.Plugin.ModellingWizard.IsReactive
    +
    +get
    +
    + +

    Gets a value indicating whether this instance is reactive.

    +

    Reactive PlugIn will be notified, when the actual CAEX-Object changes (Selection of the Tree view Item) ChangeAMLFilePath and ChangeSelectedObject.

    +

    true if this instance is reactive; otherwise, false.

    + +
    +
    + +

    ◆ IsReadonly

    + +
    +
    + + + + + +
    + + + + +
    bool Aml.Editor.Plugin.ModellingWizard.IsReadonly
    +
    +get
    +
    + +

    Gets a value indicating whether this instance is read only.

    +

    A Read only PlugIn should not change any CAEX Objects.

    +

    true if this instance is read only; otherwise, false.

    + +
    +
    + +

    ◆ ReloadObjects

    + +
    +
    + + + + + +
    + + + + +
    PluginCommand Aml.Editor.Plugin.ModellingWizard.ReloadObjects
    +
    +get
    +
    + +

    Gets the Command to reload the AMLX Files in .

    +

    /modellingwizard/

    + +
    +
    + +

    ◆ TerminatePlugin

    + +
    +
    + + + + + +
    + + + + +
    PluginCommand Aml.Editor.Plugin.ModellingWizard.TerminatePlugin
    +
    +get
    +
    + +

    Gets the terminate PlugIn command.

    + +
    +
    +

    Event Documentation

    + +

    ◆ PluginActivated

    + +
    +
    + + + + +
    EventHandler Aml.Editor.Plugin.ModellingWizard.PluginActivated
    +
    + +

    Occurs when the PlugIn is activated (for example via the StartCommand ).

    + +
    +
    + +

    ◆ PluginTerminated

    + +
    +
    + + + + +
    EventHandler Aml.Editor.Plugin.ModellingWizard.PluginTerminated
    +
    + +

    Occurs when the PlugIn is deactivated (some UserInteraction inside the PlugIn or via the StopCommand ).

    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.js new file mode 100644 index 0000000..dbb4521 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.js @@ -0,0 +1,25 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard = +[ + [ "ModellingWizard", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a85e08850a3ce8148f119f8e3d14f6d02", null ], + [ "ChangeAMLFilePath", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a26f6f59bc82891ccc525e509720d5302", null ], + [ "changeGUI", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a3426aa766858f85fbdcdc6f3cfe92dc1", null ], + [ "ChangeSelectedObject", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a467688bd862ea1e99e204f6d3735ed1d", null ], + [ "ExecuteCommand", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a4dc6bf714b86a1d9be420637c23a1307", null ], + [ "PublishAutomationMLFileAndObject", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#acedb8a1abb912c96703fd73d3267bcea", null ], + [ "InitialDockPosition", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#ad191779a3806423c951cf6839300c6e9", null ], + [ "PackageName", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a333ba75a3b713bdbae46969df659d06b", null ], + [ "PaneImage", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#ae6285059764c32a912289a8f0c97262d", null ], + [ "AboutCommand", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#ac767be8789446b8040a0d7fd9a8eb283", null ], + [ "ActivatePlugin", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a68418cf3879299385765d352ffc4731b", null ], + [ "CanClose", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a2f1de7716c88ed7de9cf7f716a0d4f76", null ], + [ "Commands", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#aa92890be9446ee5c87cc91739e41a5f0", null ], + [ "DisplayName", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a6d63f793ebaa384ba4bbf9903f06fdaa", null ], + [ "IsActive", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a2bd037ce5c76ad9051a995400e28a75e", null ], + [ "IsAutoActive", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a9ff5d55c0dd2f4113e5a9d41b5418c4a", null ], + [ "IsReactive", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a6b3b6e17a0159a4c6045c2b8751e2fc5", null ], + [ "IsReadonly", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a9700716878b0e98f507d30b396e2872f", null ], + [ "ReloadObjects", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a4311a3ca5fb875e5035bc029291e5920", null ], + [ "TerminatePlugin", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a1754b39a06b47d1b1f9010f6bcbbffde", null ], + [ "PluginActivated", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a5acb66f94a2026857791dcb495e200df", null ], + [ "PluginTerminated", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a3da02aecef3324c9c3b65a1b8fa73f6c", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.png b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.png new file mode 100644 index 0000000000000000000000000000000000000000..f6a86dcba5316b9b41f088530681bce5cf488941 GIT binary patch literal 998 zcmeAS@N?(olHy`uVBq!ia0y~yU|a!Y2XHV0$?98zMnFm;z$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-opyHxzy9eF{Fa=?c9rHs}%%XzwdeS=fC{@ z5Jq;>NYkx*`TVBsmO8+BSnrH>S{k$C?-?_BS=2laKXCQDWUxfTlgpuN(h>$ZV~$!D z*Jq_^w)T^*Y|OIEmRjC1EBdAY?xx(jCo#dgoyl0RX|<2ia+ zmfWkhs;)OW#2eWb=Xb^F_imx9Pahe7d;eP?Tv+vFSjnPY(Jp~Y-E@uP-_Pt_@i$7% z^ZwK6efy&Fl)IyXR!rMw?X~P_(amegn_G7-Sdr&e==w9HPGwc!+tXWBWFKwMzVa)C zM>EUx_;=G&{Wq6sdde5hT9Mg*{`;r1XSbLBT$BCGd$r2n3HL=q`!<$oZCh)$-Ku+C zi2mE_0;-<>=NG$pUOMU#I7y^IMAefK2V=R0@#eyUMQ6?&V|<`r!O(LeqjRZ7!|Tr# zJXu*=js%Gu_*%Klc-hK}Lf(N4iV|O*Nb7GDVHIc~gpWV|C?VXy^1xtc83WL2vatQZ zGdT(j$5Pf@2@-K&K*o8BSyNMfW?f!xdRF{GZ0VV0tMgaf{}vs8Z2iRV^}FZm9+2UXn#X_ksAol{HH3>iy!x9vkU`c@&}`McKDY4VRM(OpEvt`k6ZL-<|lcVpVzl9x@WUw#rvx(VgqXnqjVpKJ-NL&U(fEI z|Ljchch45RS{ZU`TlCFT#<^Fb?)`o!ZN0R + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html new file mode 100644 index 0000000..5c74db8 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html @@ -0,0 +1,359 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.PinParametersInPinInfoDataGridView Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.PinParametersInPinInfoDataGridView Class Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

     PinParametersInPinInfoDataGridView ()
     
     PinParametersInPinInfoDataGridView (string pinNumber, string referenceID, string attribute, string values, string units)
     
    override string ToString ()
     
    + + + + + + + + + + + +

    +Properties

    string PinNumber [get, set]
     
    string ReferenceID [get, set]
     
    string Attributes [get, set]
     
    string Values [get, set]
     
    string Units [get, set]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ PinParametersInPinInfoDataGridView() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.PinParametersInPinInfoDataGridView ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ PinParametersInPinInfoDataGridView() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.PinParametersInPinInfoDataGridView (string pinNumber,
    string referenceID,
    string attribute,
    string values,
    string units 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ ToString()

    + +
    +
    + + + + + +
    + + + + + + + +
    override string Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.ToString ()
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ Attributes

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.Attributes
    +
    +getset
    +
    + +
    +
    + +

    ◆ PinNumber

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.PinNumber
    +
    +getset
    +
    + +
    +
    + +

    ◆ ReferenceID

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.ReferenceID
    +
    +getset
    +
    + +
    +
    + +

    ◆ Units

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.Units
    +
    +getset
    +
    + +
    +
    + +

    ◆ Values

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.Values
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.js new file mode 100644 index 0000000..d476025 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.js @@ -0,0 +1,11 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view = +[ + [ "PinParametersInPinInfoDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a2b4f579583593fcd36ca4429849b3a92", null ], + [ "PinParametersInPinInfoDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a20c1ba8d8e62d2958a2a784ea993f12a", null ], + [ "ToString", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#aabde8d8400da538c0d695e3f2a13afcc", null ], + [ "Attributes", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a526a65510795b641175bdcc3aa946b4b", null ], + [ "PinNumber", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a0dc6c5df881ffe504570c7d74ad19fcc", null ], + [ "ReferenceID", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#aaa63e321a2e027653a6ec7ff00e57af5", null ], + [ "Units", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#ae1260c02a1e4e5a3f8a5dbace4df3192", null ], + [ "Values", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a0aa068480b67328eaa773ed8c5d7d3f5", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file-members.html new file mode 100644 index 0000000..756be36 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file-members.html @@ -0,0 +1,131 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.SearchAMLComponentFile Member List
    +
    +
    + +

    This is the complete list of members for Aml.Editor.Plugin.SearchAMLComponentFile, including all inherited members.

    + + + + + + + + + + + + + + + + + + +
    CheckForAttributesOfComponent(int i, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)Aml.Editor.Plugin.SearchAMLComponentFileinline
    CheckForAttributesOfEclectricalConnectorPins(int i, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)Aml.Editor.Plugin.SearchAMLComponentFileinline
    CheckForAttributesOfExternalIterface(int i, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLComponentFileinline
    CkeckForNestedAttributesOfComponent(int i, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)Aml.Editor.Plugin.SearchAMLComponentFileinline
    CkeckForNestedAttributesOfElectricalConnectorPins(int i, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)Aml.Editor.Plugin.SearchAMLComponentFileinline
    CkeckForNestedAttributesOfExternalIterface(int i, AttributeType attributeType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLComponentFileinline
    DictioanryofElectricalConnectorPinTypeAml.Editor.Plugin.SearchAMLComponentFile
    DictionaryofElectricalConnectorTypeAml.Editor.Plugin.SearchAMLComponentFile
    DictionaryofRolesAml.Editor.Plugin.SearchAMLComponentFile
    DictionaryofRolesforAutomationComponenetAml.Editor.Plugin.SearchAMLComponentFile
    SearchAMLComponentFile()Aml.Editor.Plugin.SearchAMLComponentFileinline
    StoreEachAttributeValueInListOfComponent(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)Aml.Editor.Plugin.SearchAMLComponentFileinline
    StoreEachAttributeValueInListOfComponent(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)Aml.Editor.Plugin.SearchAMLComponentFileinline
    StoreEachAttributeValueInListOfElectricalConnectorPins(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)Aml.Editor.Plugin.SearchAMLComponentFileinline
    StoreEachAttributeValueInListOfElectricalConnectorPins(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)Aml.Editor.Plugin.SearchAMLComponentFileinline
    StoreEachAttributeValueInListOfExternalIterface(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLComponentFileinline
    StoreEachAttributeValueInListOfExternalIterface(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLComponentFileinline
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html new file mode 100644 index 0000000..1062458 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html @@ -0,0 +1,864 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.SearchAMLComponentFile Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.SearchAMLComponentFile Class Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

     SearchAMLComponentFile ()
     
    void CheckForAttributesOfExternalIterface (int i, ExternalInterfaceType externalInterface)
     
    void CkeckForNestedAttributesOfExternalIterface (int i, AttributeType attributeType, ExternalInterfaceType externalInterface)
     
    void StoreEachAttributeValueInListOfExternalIterface (int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, ExternalInterfaceType externalInterface)
     
    void StoreEachAttributeValueInListOfExternalIterface (int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface)
     
    void CheckForAttributesOfEclectricalConnectorPins (int i, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)
     
    void CkeckForNestedAttributesOfElectricalConnectorPins (int i, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)
     
    void StoreEachAttributeValueInListOfElectricalConnectorPins (int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)
     
    void StoreEachAttributeValueInListOfElectricalConnectorPins (int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)
     
    void CheckForAttributesOfComponent (int i, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)
     
    void CkeckForNestedAttributesOfComponent (int i, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)
     
    void StoreEachAttributeValueInListOfComponent (int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)
     
    void StoreEachAttributeValueInListOfComponent (int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)
     
    + + + + + + + + + +

    +Properties

    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryofElectricalConnectorType [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictioanryofElectricalConnectorPinType [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryofRolesforAutomationComponenet [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryofRoles [get, set]
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ SearchAMLComponentFile()

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.SearchAMLComponentFile.SearchAMLComponentFile ()
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ CheckForAttributesOfComponent()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.CheckForAttributesOfComponent (int i,
    SupportedRoleClassType supportedRoleClass,
    SystemUnitFamilyType classType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ CheckForAttributesOfEclectricalConnectorPins()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.CheckForAttributesOfEclectricalConnectorPins (int i,
    ExternalInterfaceType externalInterface,
    ExternalInterfaceType classType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ CheckForAttributesOfExternalIterface()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.CheckForAttributesOfExternalIterface (int i,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfComponent()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.CkeckForNestedAttributesOfComponent (int i,
    AttributeType attributeType,
    SupportedRoleClassType supportedRoleClass,
    SystemUnitFamilyType classType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfElectricalConnectorPins()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.CkeckForNestedAttributesOfElectricalConnectorPins (int i,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface,
    ExternalInterfaceType classType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfExternalIterface()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.CkeckForNestedAttributesOfExternalIterface (int i,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfComponent() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfComponent (int i,
    List< List< ClassOfListsFromReferencefile >> list,
    AttributeType AttributeInAttribute,
    AttributeType attributeType,
    SupportedRoleClassType supportedRoleClass,
    SystemUnitFamilyType classType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfComponent() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfComponent (int i,
    List< List< ClassOfListsFromReferencefile >> list,
    AttributeType attributeType,
    SupportedRoleClassType supportedRoleClass,
    SystemUnitFamilyType classType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfElectricalConnectorPins() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfElectricalConnectorPins (int i,
    List< List< ClassOfListsFromReferencefile >> list,
    AttributeType AttributeInAttribute,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface,
    ExternalInterfaceType classType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfElectricalConnectorPins() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfElectricalConnectorPins (int i,
    List< List< ClassOfListsFromReferencefile >> list,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface,
    ExternalInterfaceType classType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfExternalIterface() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfExternalIterface (int i,
    List< List< ClassOfListsFromReferencefile >> list,
    AttributeType AttributeInAttribute,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfExternalIterface() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfExternalIterface (int i,
    List< List< ClassOfListsFromReferencefile >> list,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ DictioanryofElectricalConnectorPinType

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.SearchAMLComponentFile.DictioanryofElectricalConnectorPinType
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryofElectricalConnectorType

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.SearchAMLComponentFile.DictionaryofElectricalConnectorType
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryofRoles

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.SearchAMLComponentFile.DictionaryofRoles
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryofRolesforAutomationComponenet

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.SearchAMLComponentFile.DictionaryofRolesforAutomationComponenet
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.js new file mode 100644 index 0000000..1faf0b7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.js @@ -0,0 +1,20 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file = +[ + [ "SearchAMLComponentFile", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#abf1e485c8340a4ace50c1f3528ac31c6", null ], + [ "CheckForAttributesOfComponent", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#ad8e573b75dc40186f962fe62c047192f", null ], + [ "CheckForAttributesOfEclectricalConnectorPins", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a1b72b959bcfef0f2112c6c548891fc8b", null ], + [ "CheckForAttributesOfExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a287538dfad55ab58ee81fa819efa5dd1", null ], + [ "CkeckForNestedAttributesOfComponent", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a4021856bf9f4a11a141e4e3faa2a6c4a", null ], + [ "CkeckForNestedAttributesOfElectricalConnectorPins", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#ad023edfb7d36334b2baee9f02e21a309", null ], + [ "CkeckForNestedAttributesOfExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a7464e1841996b1f84bdd4f8223acde92", null ], + [ "StoreEachAttributeValueInListOfComponent", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#ae6987825477c5d277db9f57d84c3afae", null ], + [ "StoreEachAttributeValueInListOfComponent", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a9831cae9b9d5baec3afedd3c3a4266b8", null ], + [ "StoreEachAttributeValueInListOfElectricalConnectorPins", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a77f257e6118ee1af16421c90f2d72a95", null ], + [ "StoreEachAttributeValueInListOfElectricalConnectorPins", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a801781b46981a3776adbca80fd5be541", null ], + [ "StoreEachAttributeValueInListOfExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a35823b5736745c6982ad851270b3d09f", null ], + [ "StoreEachAttributeValueInListOfExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a33431d164f3f97f60fe6b316e266ed16", null ], + [ "DictioanryofElectricalConnectorPinType", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a08ad7a3a1907fb5545e71a02eaf20d43", null ], + [ "DictionaryofElectricalConnectorType", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a0c343579c1bbd8eed0668d8ce4dcee0c", null ], + [ "DictionaryofRoles", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a1e8ef567cfba2b43fac8afcdd3abb6b2", null ], + [ "DictionaryofRolesforAutomationComponenet", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a7e22c7aeba504efaeb89a38ce8bdbe71", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file-members.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file-members.html new file mode 100644 index 0000000..0fa8b24 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file-members.html @@ -0,0 +1,158 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Aml.Editor.Plugin.SearchAMLLibraryFile Member List
    +
    +
    + +

    This is the complete list of members for Aml.Editor.Plugin.SearchAMLLibraryFile, including all inherited members.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    CheckForAttributesOfReferencedClassName(InterfaceFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CheckForAttributesOfReferencedClassName(InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CheckForAttributesOfReferencedClassName(RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CheckForAttributesOfReferencedClassName(RoleFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CheckForAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CheckForAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CheckForAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CheckForAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CkeckForNestedAttributesOfReferencedClassName(AttributeType attributeType, InterfaceFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CkeckForNestedAttributesOfReferencedClassName(InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CkeckForNestedAttributesOfReferencedClassName(RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CkeckForNestedAttributesOfReferencedClassName(AttributeType attributeType, RoleFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    DictioanryOfIDofInterfaceClassLibraryNodesAml.Editor.Plugin.SearchAMLLibraryFile
    DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLibAml.Editor.Plugin.SearchAMLLibraryFile
    DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLibAml.Editor.Plugin.SearchAMLLibraryFile
    DictionaryForInterfaceClassInstancesAttributesAml.Editor.Plugin.SearchAMLLibraryFile
    DictionaryForRoleClassInstanceAttributesAml.Editor.Plugin.SearchAMLLibraryFile
    dictionaryofRoleClassattributesAml.Editor.Plugin.SearchAMLLibraryFile
    PrintExternalInterfaceNodes(CAEXDocument document, TreeNode oParentNode, ExternalInterfaceType classType, InterfaceFamilyType InterafceclassType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    PrintExternalInterfaceNodes(CAEXDocument document, TreeNode oParentNode, ExternalInterfaceType classType, RoleFamilyType RoleclassType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    PrintNodesRecursiveInInterfaceClassLib(CAEXDocument document, TreeNode oParentNode, InterfaceFamilyType classType, string referencedclassName)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    PrintNodesRecursiveInRoleClassLib(CAEXDocument document, TreeNode oParentNode, RoleFamilyType classType, string referencedclassName)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    referencedClassNameAml.Editor.Plugin.SearchAMLLibraryFile
    SearchAMLLibraryFile()Aml.Editor.Plugin.SearchAMLLibraryFileinline
    SearchForInterfaceClassesInsideInterfaceClass(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    SearchForInterfaceClassesInsideInterfaceClass(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    SearchForReferencedClassName(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    SearchForReferencedClassName(CAEXDocument doc, string referencedClassName, RoleFamilyType classType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    SearchForReferencedClassNameofExternalIterface(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    SearchForReferencedClassNameofExternalIterface(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, InterfaceFamilyType classType, AttributeType attributeType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, RoleFamilyType classType, AttributeType attributeType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)Aml.Editor.Plugin.SearchAMLLibraryFileinline
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html new file mode 100644 index 0000000..4af8f90 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html @@ -0,0 +1,2369 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin.SearchAMLLibraryFile Class Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin.SearchAMLLibraryFile Class Reference
    +
    +
    + +

    This class reads the library file loaded in to the plugin "Role Class Library TreeView" and "Interface Class Library TreeView" + More...

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

     SearchAMLLibraryFile ()
     This is the constructor of this class where all properties are intitialised to there early state More...
     
    void SearchForReferencedClassName (CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType)
     This method is responsible to iterate over "Interafce Class Libraries & Interafce Classes in it", and strore attributes of "Referenced Class Name" in the dictionary. More...
     
    void SearchForInterfaceClassesInsideInterfaceClass (CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName)
     This class is responsible to search for interface classes ´nested inside Interface classes and recursion of this interface classes. More...
     
    void CheckForAttributesOfReferencedClassName (InterfaceFamilyType classType)
     
    void CkeckForNestedAttributesOfReferencedClassName (AttributeType attributeType, InterfaceFamilyType classType)
     
    void CheckForAttributesOfReferencedClassName (InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType)
     This method search for "Attributes" of "referenced Class name". More...
     
    void CkeckForNestedAttributesOfReferencedClassName (InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType)
     This method is responsible to check nested attributes of "Referenced Class Name" More...
     
    void StoreEachAttributeValueInListOfReferencedClassName (List< List< ClassOfListsFromReferencefile >> list, InterfaceFamilyType classType, AttributeType attributeType)
     This the method that stores Attribute values of "Referened Class name" of "Interface Class" in the dictionary. More...
     
    void StoreEachAttributeValueInListOfReferencedClassName (List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType)
     This method store nested attributes of each attribute of "Referenced CLASS name" in the dictionary. More...
     
    void SearchForReferencedClassNameofExternalIterface (CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)
     //This method search for "Referenced Class" of "External Interface" More...
     
    void SearchForInterfaceClassesInsideInterfaceClassofExternalIterface (CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface)
     This method search for "Interface Classes" inside "Interface Classes" More...
     
    void CheckForAttributesOfReferencedClassNameofExternalIterface (InterfaceFamilyType classType, ExternalInterfaceType externalInterface)
     This method is responsible to Check "attributes" of "Referenced Class Name" More...
     
    void CkeckForNestedAttributesOfReferencedClassNameofExternalIterface (AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)
     This method is responsible to check "Nested ATtributes" of "External Interface's Attribute " More...
     
    void CheckForAttributesOfReferencedClassNameofExternalIterface (InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)
     This method is responsible to check "attributes" OF "Refrenced Class Name" of "ExternalInterface" More...
     
    void CkeckForNestedAttributesOfReferencedClassNameofExternalIterface (InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)
     This method is responsible to check the "Nested Attributes" of "Attributes" of"Interface Class's External interafce" More...
     
    void StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface (List< List< ClassOfListsFromReferencefile >> list, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)
     This method store each "Attribute value" into respective dictionary More...
     
    void StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface (List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)
     This method stores "Attributes" of "Referenced Class's External Interface" More...
     
    void SearchForReferencedClassName (CAEXDocument doc, string referencedClassName, RoleFamilyType classType)
     This function is responsible for checking whole document for the "Referenced Class Name": Note:- This function is a recursion function, which conduct many iterations in the document. More...
     
    void CheckForAttributesOfReferencedClassName (RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType)
     This method is responsible for checking "Attributes" under "Referenced Class Name" More...
     
    void CkeckForNestedAttributesOfReferencedClassName (RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType)
     This method check for nested attributes under attributes of "Referenced Class Name" More...
     
    void StoreEachAttributeValueInListOfReferencedClassName (List< List< ClassOfListsFromReferencefile >> list, RoleFamilyType classType, AttributeType attributeType)
     This fuunction stores "Attributes" of "Referenced Class Name" in the dictionary "DictionaryForRoleClassInstanceAttributes" More...
     
    void StoreEachAttributeValueInListOfReferencedClassName (List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType)
     This method is responsible to store "Nested Attributes" under "Attributes" of "Referenced Class Name" More...
     
    void CheckForAttributesOfReferencedClassNameofExternalIterface (RoleFamilyType classType, ExternalInterfaceType externalInterface)
     This Function is responsible to search attributes under the "Referenced Classs Name" i.e. More...
     
    void CkeckForNestedAttributesOfReferencedClassNameofExternalIterface (AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface)
     This function is responsible for checking "nested attributes" under "attributes" of the "External Interface" More...
     
    void CheckForAttributesOfReferencedClassNameofExternalIterface (RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface)
     This function is responsible to check and store "Attributes" under "External Interface" of "Referenced Class Name" of "Role Class" More...
     
    void CkeckForNestedAttributesOfReferencedClassNameofExternalIterface (RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface)
     This function is responsible to check "attribute" under "attributes" i.e. More...
     
    void StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface (List< List< ClassOfListsFromReferencefile >> list, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)
     This method is responsible to store each attribute value of "Referenced Class Name" of "External Interface" of Role Class. More...
     
    void StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface (List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)
     This method stores the nested attributes in "DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib" More...
     
    void SearchForReferencedClassNameofExternalIterface (CAEXDocument doc, string referencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface)
     This method is responsible to check for "Referenced Class Name" of "External Interfaces" under the "Role Class" This method is a recursive method, that looks for the "Referenced Class Name" of the "Extenal Interface" under "Role Class" More...
     
    void SearchForInterfaceClassesInsideInterfaceClass (CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName)
     This method searches "Role Classes" under "Referenced Class Name" More...
     
    void SearchForInterfaceClassesInsideInterfaceClassofExternalIterface (CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface)
     This method is a recursive method, which checks for "Refernced Class Name" under role class under role class More...
     
    void CheckForAttributesOfReferencedClassName (RoleFamilyType classType)
     This method is responsible for checking attributes under "Referenced Class Name" More...
     
    void CkeckForNestedAttributesOfReferencedClassName (AttributeType attributeType, RoleFamilyType classType)
     This method check for "nested attributes" of "referenced class name" More...
     
    void PrintNodesRecursiveInRoleClassLib (CAEXDocument document, TreeNode oParentNode, RoleFamilyType classType, string referencedclassName)
     This method takes arguments "TreeNode" and "RoleFamilyType" to print tree nodes in "Role Class Library TreeView " in Plugin. More...
     
    void PrintNodesRecursiveInInterfaceClassLib (CAEXDocument document, TreeNode oParentNode, InterfaceFamilyType classType, string referencedclassName)
     This method Takes parameters "TreeNode" and "InterfaceFamilyType" to print tree nodes in "Interface Class Library TreeView " in Plugin. More...
     
    void PrintExternalInterfaceNodes (CAEXDocument document, TreeNode oParentNode, ExternalInterfaceType classType, InterfaceFamilyType InterafceclassType)
     This method is called to print "External Interfaces" in both "Role class Library and Interface Class Library" in the plugin. More...
     
    void PrintExternalInterfaceNodes (CAEXDocument document, TreeNode oParentNode, ExternalInterfaceType classType, RoleFamilyType RoleclassType)
     This method is called to print "External Interfaces" in both "Role class Library and Interface Class Library" in the plugin. More...
     
    + + + + + + + + + + + + + + + + +

    +Properties

    Dictionary< string, string > DictioanryOfIDofInterfaceClassLibraryNodes [get, set]
     These are the properties of this class i.e. More...
     
    Dictionary< string, List< ClassOfListsFromReferencefile > > dictionaryofRoleClassattributes [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryForInterfaceClassInstancesAttributes [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryForRoleClassInstanceAttributes [get, set]
     
    Dictionary< string, List< List< ClassOfListsFromReferencefile > > > DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib [get, set]
     
    string referencedClassName [get, set]
     
    +

    Detailed Description

    +

    This class reads the library file loaded in to the plugin "Role Class Library TreeView" and "Interface Class Library TreeView"

    +

    Constructor & Destructor Documentation

    + +

    ◆ SearchAMLLibraryFile()

    + +
    +
    + + + + + +
    + + + + + + + +
    Aml.Editor.Plugin.SearchAMLLibraryFile.SearchAMLLibraryFile ()
    +
    +inline
    +
    + +

    This is the constructor of this class where all properties are intitialised to there early state

    + +
    +
    +

    Member Function Documentation

    + +

    ◆ CheckForAttributesOfReferencedClassName() [1/4]

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName (InterfaceFamilyType classType)
    +
    +inline
    +
    + +
    +
    + +

    ◆ CheckForAttributesOfReferencedClassName() [2/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName (InterfaceFamilyType classTypeSearchForReferencedClassName,
    InterfaceFamilyType classType 
    )
    +
    +inline
    +
    + +

    This method search for "Attributes" of "referenced Class name".

    +
    Parameters
    + + + +
    classTypeSearchForReferencedClassNameThis is "InterfaceFamilyType", for which attributes has to be stored in dictionary.
    classTypeThis is "InterfaceFamilyType", to which this "referenced Class name" belongs to
    +
    +
    + +
    +
    + +

    ◆ CheckForAttributesOfReferencedClassName() [3/4]

    + +
    +
    + + + + + +
    + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName (RoleFamilyType classType)
    +
    +inline
    +
    + +

    This method is responsible for checking attributes under "Referenced Class Name"

    +
    Parameters
    + + +
    classTypeThis is "RoleFamilyType", which is "GroudClass"
    +
    +
    + +
    +
    + +

    ◆ CheckForAttributesOfReferencedClassName() [4/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName (RoleFamilyType classTypeSearchForReferencedClassName,
    RoleFamilyType classType 
    )
    +
    +inline
    +
    + +

    This method is responsible for checking "Attributes" under "Referenced Class Name"

    +
    Parameters
    + + + +
    classTypeSearchForReferencedClassNamethis is "RoleFamilyType", which we are checking attributes for.
    classTypeThis is the "Ground Class"
    +
    +
    + +
    +
    + +

    ◆ CheckForAttributesOfReferencedClassNameofExternalIterface() [1/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface (InterfaceFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method is responsible to Check "attributes" of "Referenced Class Name"

    +
    Parameters
    + + + +
    classTypeThis is "InterfaceFamilyType", which is a "Ground Class".
    externalInterfaceThis is "ExternalInterfaceType", which attributes has to be stored in a dictionary
    +
    +
    + +
    +
    + +

    ◆ CheckForAttributesOfReferencedClassNameofExternalIterface() [2/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface (InterfaceFamilyType classTypeSearchForReferencedClassName,
    InterfaceFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method is responsible to check "attributes" OF "Refrenced Class Name" of "ExternalInterface"

    +
    Parameters
    + + + + +
    classTypeSearchForReferencedClassNameThis is "InterfaceFamilyType", for which attributes are checked.
    classTypeThis is "Interface Family Type", which is a "Ground Class" used for creating Key to the dictionary.
    externalInterface
    +
    +
    + +
    +
    + +

    ◆ CheckForAttributesOfReferencedClassNameofExternalIterface() [3/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface (RoleFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This Function is responsible to search attributes under the "Referenced Classs Name" i.e.

    +

    in this part "RoleFamilyType"

    +
    Parameters
    + + + +
    classTypeThis is "Ground Class we are checking attributes for."
    externalInterfaceThis is "ExternalInterfaceType", for which the attributes has to be checked and stored
    +
    +
    + +
    +
    + +

    ◆ CheckForAttributesOfReferencedClassNameofExternalIterface() [4/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface (RoleFamilyType classTypeSearchForReferencedClassName,
    RoleFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This function is responsible to check and store "Attributes" under "External Interface" of "Referenced Class Name" of "Role Class"

    +
    Parameters
    + + + + +
    classTypeSearchForReferencedClassNameThis is the "Referenced Class Name" of Role Classe's "External Interface".
    classTypeThis is the "Role Class"
    externalInterfaceThi is the "External Interface" we are looking for.
    +
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfReferencedClassName() [1/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName (AttributeType attributeType,
    InterfaceFamilyType classType 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfReferencedClassName() [2/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName (AttributeType attributeType,
    RoleFamilyType classType 
    )
    +
    +inline
    +
    + +

    This method check for "nested attributes" of "referenced class name"

    +
    Parameters
    + + + +
    attributeTypeThis is "AttributeType", for which nest attributes has to be checked.
    classTypeThis "RoleFamilyType", which is "Ground class"
    +
    +
    +

    Foreach attribute.....

    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfReferencedClassName() [3/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName (InterfaceFamilyType classTypeSearchForReferencedClassName,
    AttributeType attributeType,
    InterfaceFamilyType classType 
    )
    +
    +inline
    +
    + +

    This method is responsible to check nested attributes of "Referenced Class Name"

    +
    Parameters
    + + + + +
    classTypeSearchForReferencedClassNameThis is "InterfaceFamilyType", for which attributes has to be stored in dictionary.
    attributeTypeThis is "AttributeType", where the attributes values has to be stored
    classTypeThis is "InterfaceFamilyType", to which this "referenced Class name" belongs to
    +
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfReferencedClassName() [4/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName (RoleFamilyType classTypeSearchForReferencedClassName,
    AttributeType attributeType,
    RoleFamilyType classType 
    )
    +
    +inline
    +
    + +

    This method check for nested attributes under attributes of "Referenced Class Name"

    +
    Parameters
    + + + + +
    classTypeSearchForReferencedClassNameThis is "RoleFamilyType", which we are checking attributes
    attributeTypeThis is the "AttributeType", which is having "Nested Attributes"
    classTypeThis id the "Ground Class"
    +
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfReferencedClassNameofExternalIterface() [1/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface (AttributeType attributeType,
    InterfaceFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method is responsible to check "Nested ATtributes" of "External Interface's Attribute "

    +
    Parameters
    + + + +
    attributeTypeThis is "AttributeType" , for which nested attributes has to be checked.
    classTypeThis is "InterfaceFamilyType, which is "Ground Class" used while creating "keyname" in dictionary</param> +<param name="externalInterface">This "ExternalInterfaceType for which attributes are checked."
    +
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfReferencedClassNameofExternalIterface() [2/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface (AttributeType attributeType,
    RoleFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This function is responsible for checking "nested attributes" under "attributes" of the "External Interface"

    +
    Parameters
    + + + + +
    attributeTypeThis is the "AttributeType", which is having nested attributes.
    classTypeThis is the "Ground Class" we are Searching in.
    externalInterfaceThis is the "ExternalInterfaceType", which is having attributes.
    +
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfReferencedClassNameofExternalIterface() [3/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface (InterfaceFamilyType classTypeSearchForReferencedClassName,
    AttributeType attributeType,
    InterfaceFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method is responsible to check the "Nested Attributes" of "Attributes" of"Interface Class's External interafce"

    +
    Parameters
    + + + + + +
    classTypeSearchForReferencedClassNameThis is "InterfaceFamilyType", for which attributes are checked.
    attributeTypeThis is "AttributeType", which attribtes has to be stored.
    classTypeThis is "InterfceClassType", which is a "Ground Class" used for creating a key in dictionary.
    externalInterface
    +
    +
    + +
    +
    + +

    ◆ CkeckForNestedAttributesOfReferencedClassNameofExternalIterface() [4/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface (RoleFamilyType classTypeSearchForReferencedClassName,
    AttributeType attributeType,
    RoleFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This function is responsible to check "attribute" under "attributes" i.e.

    +

    nested attributes This function is a recursive function, which check nested attributes untill they were ended.

    +
    Parameters
    + + + + + +
    classTypeSearchForReferencedClassNameThis if "RoleFamilyType", which we are storing attributes for
    attributeTypeThis is "AttributeType ", which retrives attribute values
    classTypeThis is the "Ground Class", which we are looking in
    externalInterfaceThis is the "external interface", under which the attributes has to be stored.
    +
    +
    + +
    +
    + +

    ◆ PrintExternalInterfaceNodes() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.PrintExternalInterfaceNodes (CAEXDocument document,
    TreeNode oParentNode,
    ExternalInterfaceType classType,
    InterfaceFamilyType InterafceclassType 
    )
    +
    +inline
    +
    + +

    This method is called to print "External Interfaces" in both "Role class Library and Interface Class Library" in the plugin.

    +
    Parameters
    + + + +
    oParentNode
    classType
    +
    +
    + +
    +
    + +

    ◆ PrintExternalInterfaceNodes() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.PrintExternalInterfaceNodes (CAEXDocument document,
    TreeNode oParentNode,
    ExternalInterfaceType classType,
    RoleFamilyType RoleclassType 
    )
    +
    +inline
    +
    + +

    This method is called to print "External Interfaces" in both "Role class Library and Interface Class Library" in the plugin.

    +
    Parameters
    + + + +
    oParentNodeThis is "TreeNode", which is parent node for the new node that is going to be created using this method.
    classTypeThis is "RoleFamilyType", which is a "Ground Class"
    +
    +
    + +
    +
    + +

    ◆ PrintNodesRecursiveInInterfaceClassLib()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.PrintNodesRecursiveInInterfaceClassLib (CAEXDocument document,
    TreeNode oParentNode,
    InterfaceFamilyType classType,
    string referencedclassName 
    )
    +
    +inline
    +
    + +

    This method Takes parameters "TreeNode" and "InterfaceFamilyType" to print tree nodes in "Interface Class Library TreeView " in Plugin.

    +
    Parameters
    + + + +
    oParentNode
    classType
    +
    +
    + +
    +
    + +

    ◆ PrintNodesRecursiveInRoleClassLib()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.PrintNodesRecursiveInRoleClassLib (CAEXDocument document,
    TreeNode oParentNode,
    RoleFamilyType classType,
    string referencedclassName 
    )
    +
    +inline
    +
    + +

    This method takes arguments "TreeNode" and "RoleFamilyType" to print tree nodes in "Role Class Library TreeView " in Plugin.

    +
    Parameters
    + + + +
    oParentNodeThis is a "TreeNode", which is parent node for the new node that is going to be created using this method.
    classTypeThis is "RoleFamilyType", which is a "Ground Class"
    +
    +
    + +
    +
    + +

    ◆ SearchForInterfaceClassesInsideInterfaceClass() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClass (CAEXDocument doc,
    string referencedClassName,
    InterfaceFamilyType classType,
    InterfaceFamilyType classTypeSearchForReferencedClassName 
    )
    +
    +inline
    +
    + +

    This class is responsible to search for interface classes ´nested inside Interface classes and recursion of this interface classes.

    +
    Parameters
    + + + + + +
    docThis is the "CAEXDocument, where the search has to be done "
    referencedClassNameThis is "String" variable, that stores the name of the "Referenced Class Name"
    classTypeThis "InterfaceFamilyType", which is a"Ground Class"
    classTypeSearchForReferencedClassNameThis is "InterfaceFamilyType", where the "referenced Class Name" is presented
    +
    +
    + +
    +
    + +

    ◆ SearchForInterfaceClassesInsideInterfaceClass() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClass (CAEXDocument doc,
    string referencedClassName,
    RoleFamilyType classType,
    RoleFamilyType classTypeSearchForReferencedClassName 
    )
    +
    +inline
    +
    + +

    This method searches "Role Classes" under "Referenced Class Name"

    +
    Parameters
    + + + + + +
    docThis is the document, where we are searching for "Referenced Class Name"
    referencedClassNameThis is the "Referenced Class Name" i.e. "String" used to search for the name of thE "Referenced Class Name"
    classTypeThis is "RoleFamilyType" i.e. "Ground Class"
    classTypeSearchForReferencedClassNameThis is "RoleFamilyType", under which the role clasees are searched.
    +
    +
    + +
    +
    + +

    ◆ SearchForInterfaceClassesInsideInterfaceClassofExternalIterface() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClassofExternalIterface (CAEXDocument doc,
    string referencedClassName,
    InterfaceFamilyType classType,
    InterfaceFamilyType classTypeSearchForReferencedClassName,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method search for "Interface Classes" inside "Interface Classes"

    +
    Parameters
    + + + + + + +
    docThis is "CAEXDocuemt" in which the search has to be done:
    referencedClassNameThis is "String variable" in which "Refrenced Class name" is stored
    classTypeThis is "InterfaceFamilyType", which is a "Ground Class"´used to generate key name in dictionary.
    classTypeSearchForReferencedClassNameThis is "Interface Class TYPE"; where "Interfac Classes" inside has to be searched.
    externalInterfaceThis is the "ExternalInterfaceType", for which refernced name attributes has to be stored.
    +
    +
    + +
    +
    + +

    ◆ SearchForInterfaceClassesInsideInterfaceClassofExternalIterface() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClassofExternalIterface (CAEXDocument doc,
    string referencedClassName,
    RoleFamilyType classType,
    RoleFamilyType classTypeSearchForReferencedClassName,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method is a recursive method, which checks for "Refernced Class Name" under role class under role class

    +
    Parameters
    + + + + + + +
    docThis is the document or file, where the search has to be done
    referencedClassNameThis is the "Referenced ClassName", that we are looking i the document.
    classTypeThis is the "Ground Class" we stared search at.
    classTypeSearchForReferencedClassNameThis is "RoleFamilType" to search, if "Role Classes" are present.
    externalInterface
    +
    +
    + +
    +
    + +

    ◆ SearchForReferencedClassName() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassName (CAEXDocument doc,
    string referencedClassName,
    InterfaceFamilyType classType 
    )
    +
    +inline
    +
    + +

    This method is responsible to iterate over "Interafce Class Libraries & Interafce Classes in it", and strore attributes of "Referenced Class Name" in the dictionary.

    +
    Parameters
    + + + + +
    docThis is the "CAEXDocument, where the search has to be done "
    referencedClassNameThis is "String" variable, that stores the name of the "Referenced Class Name"
    classTypeThis "InterfaceFamilyType", which is a"Ground Class".
    +
    +
    + +
    +
    + +

    ◆ SearchForReferencedClassName() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassName (CAEXDocument doc,
    string referencedClassName,
    RoleFamilyType classType 
    )
    +
    +inline
    +
    + +

    This function is responsible for checking whole document for the "Referenced Class Name": Note:- This function is a recursion function, which conduct many iterations in the document.

    +
    Parameters
    + + + + +
    docThis is the loaded document. This might be loaded by user or can be from the plugin as well.
    referencedClassNameThis is the "Role Class Name" in the documentm, which the function is checking for
    classTypeThis is just the Class Type that we are asking this function to check in the document. i.e. (RoleFamilyType)
    +
    +
    + +
    +
    + +

    ◆ SearchForReferencedClassNameofExternalIterface() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface (CAEXDocument doc,
    string referencedClassName,
    InterfaceFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    //This method search for "Referenced Class" of "External Interface"

    +
    Parameters
    + + + + + +
    docThis is "CAEXDocuemt" in which the search has to be done.
    referencedClassNameThis is "String variable" in which "Refrenced Class name" is stored.
    classTypeThis is "InterfaceFamilyType", which is a "Ground Class"´used to generate key name in dictionary.
    externalInterfaceThis is the "ExternalInterfaceType", for which refernced name attributes has to be stored.
    +
    +
    + +
    +
    + +

    ◆ SearchForReferencedClassNameofExternalIterface() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface (CAEXDocument doc,
    string referencedClassName,
    RoleFamilyType classType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method is responsible to check for "Referenced Class Name" of "External Interfaces" under the "Role Class" This method is a recursive method, that looks for the "Referenced Class Name" of the "Extenal Interface" under "Role Class"

    +
    Parameters
    + + + + + +
    docThis is the document loaded from the plugin or loaded by user from his local machine.
    referencedClassNameThis is the string that we are looking for inside the document.
    classTypeThis is the Class Type i.e. "RoleFamliyType" i.e. under "Role Classes" we are looking for.
    externalInterfaceDon't forget we are looking for thev"ExtenalInterface"
    +
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfReferencedClassName() [1/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName (List< List< ClassOfListsFromReferencefile >> list,
    AttributeType AttributeInAttribute,
    InterfaceFamilyType classType,
    AttributeType attributeType 
    )
    +
    +inline
    +
    + +

    This method store nested attributes of each attribute of "Referenced CLASS name" in the dictionary.

    +
    Parameters
    + + + + + +
    listThis is list of attribute values .
    AttributeInAttributeThis is "AttributeType ", where the values has to be stored.
    classTypeThis is "Interafce Class", which is having "Referenced Class Name "
    attributeTypeThis is "AttributeType",
    +
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfReferencedClassName() [2/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName (List< List< ClassOfListsFromReferencefile >> list,
    AttributeType AttributeInAttribute,
    RoleFamilyType classType,
    AttributeType attributeType 
    )
    +
    +inline
    +
    + +

    This method is responsible to store "Nested Attributes" under "Attributes" of "Referenced Class Name"

    +
    Parameters
    + + + + + +
    listThis is the list of attributes which has to be intantiaed as an empty list .
    AttributeInAttributeThis is "AttributeType", which represents "nested attributes" of an "attribute"
    classTypeThis is the "Ground Class"
    attributeTypeThis is "AttributeType", which is the main attribute.
    +
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfReferencedClassName() [3/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName (List< List< ClassOfListsFromReferencefile >> list,
    InterfaceFamilyType classType,
    AttributeType attributeType 
    )
    +
    +inline
    +
    + +

    This the method that stores Attribute values of "Referened Class name" of "Interface Class" in the dictionary.

    +
    Parameters
    + + + + +
    listThis is list of attribute values .
    classTypeThis is "Interafce Class", which is having "Referenced Class Name "
    attributeTypeThis is "AttributeType", where the values has to be stored.
    +
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfReferencedClassName() [4/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName (List< List< ClassOfListsFromReferencefile >> list,
    RoleFamilyType classType,
    AttributeType attributeType 
    )
    +
    +inline
    +
    + +

    This fuunction stores "Attributes" of "Referenced Class Name" in the dictionary "DictionaryForRoleClassInstanceAttributes"

    +
    Parameters
    + + + + +
    listThis is the list of attributes, which has to be initiated and stores values
    classTypeThis is the "Ground Class"
    attributeTypeThis is "AttributeType", Which can give access to every value in the "Attribute"
    +
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface() [1/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface (List< List< ClassOfListsFromReferencefile >> list,
    AttributeType AttributeInAttribute,
    InterfaceFamilyType classType,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method stores "Attributes" of "Referenced Class's External Interface"

    +
    Parameters
    + + + +
    listThis is list of "attribute values", that a"ttribute values" of "External Interfacs" has to be stored in.
    AttributeInAttributeThis is "AttributeType, for which "Nested Attributes" has to be stored.</param> +<param name="classType">This is "InterfaceFamilyType", which is "Ground Class" used while naming a key in dictioonary.</param> +<param name="attributeType">This "AttributeType" is nested attribute of parent attribute. </param> +<param name="externalInterface">
    +
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface() [2/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface (List< List< ClassOfListsFromReferencefile >> list,
    AttributeType AttributeInAttribute,
    RoleFamilyType classType,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method stores the nested attributes in "DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib"

    +
    Parameters
    + + + + + + +
    listThis the list of attributes
    AttributeInAttributeThis is "AttributeType" i.e. nested attribute
    classTypeThis is the "RoleFamilyType" used to define the "keyname" of the dictionary
    attributeTypeThis is "AttributeType" under which "Nested Attributes" are present
    externalInterfaceThis is the "ExternalInterfaceType" used to define the "keyname" of the dictionary and also the attribute holder "External Interface"
    +
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface() [3/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface (List< List< ClassOfListsFromReferencefile >> list,
    InterfaceFamilyType classType,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method store each "Attribute value" into respective dictionary

    +
    Parameters
    + + + + + +
    listThis is the list of attribute values
    classTypeThis is "InterfaceFamilyType", which is "ground class" used while creating "key name" .
    attributeTypeThis is "AttributeType", whose values are going to be stored.
    externalInterfaceThis "ExternalInterfaceType", to which these attributes belong to.
    +
    +
    + +
    +
    + +

    ◆ StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface() [4/4]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface (List< List< ClassOfListsFromReferencefile >> list,
    RoleFamilyType classType,
    AttributeType attributeType,
    ExternalInterfaceType externalInterface 
    )
    +
    +inline
    +
    + +

    This method is responsible to store each attribute value of "Referenced Class Name" of "External Interface" of Role Class.

    +

    This method stores each value in attribute into a dictionary (DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib)

    +
    Parameters
    + + + + + +
    listThis is list of lists that can hold attribute values
    classTypeRoleFamilyType is the "ground Class" We are storing this "Attributes" for
    attributeTypeThis is each attribute
    externalInterfaceThis is "external interface" we are storing "Attributes" for
    +
    +
    + +
    +
    +

    Property Documentation

    + +

    ◆ DictioanryOfIDofInterfaceClassLibraryNodes

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, string> Aml.Editor.Plugin.SearchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes
    +
    +getset
    +
    + +

    These are the properties of this class i.e.

    +

    dictionaries where all attribute values from AML file are strored and# further retrived in "Device Description Class" to edit values by user.

    + +
    +
    + +

    ◆ DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.SearchAMLLibraryFile.DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.SearchAMLLibraryFile.DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryForInterfaceClassInstancesAttributes

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.SearchAMLLibraryFile.DictionaryForInterfaceClassInstancesAttributes
    +
    +getset
    +
    + +
    +
    + +

    ◆ DictionaryForRoleClassInstanceAttributes

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<List<ClassOfListsFromReferencefile> > > Aml.Editor.Plugin.SearchAMLLibraryFile.DictionaryForRoleClassInstanceAttributes
    +
    +getset
    +
    + +
    +
    + +

    ◆ dictionaryofRoleClassattributes

    + +
    +
    + + + + + +
    + + + + +
    Dictionary<string, List<ClassOfListsFromReferencefile> > Aml.Editor.Plugin.SearchAMLLibraryFile.dictionaryofRoleClassattributes
    +
    +getset
    +
    + +
    +
    + +

    ◆ referencedClassName

    + +
    +
    + + + + + +
    + + + + +
    string Aml.Editor.Plugin.SearchAMLLibraryFile.referencedClassName
    +
    +getset
    +
    + +
    +
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.js b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.js new file mode 100644 index 0000000..3d0901e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.js @@ -0,0 +1,47 @@ +var class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file = +[ + [ "SearchAMLLibraryFile", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#aec38502ce275c149500a135b82f3d4e9", null ], + [ "CheckForAttributesOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a018cf327c2e354cb04ead38c34307852", null ], + [ "CheckForAttributesOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a146489175fd769883842ca2c148f1a8c", null ], + [ "CheckForAttributesOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#adc56320b0d72660f2f45cadc498edffd", null ], + [ "CheckForAttributesOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#af14e0365f069689e2a345384a1d88561", null ], + [ "CheckForAttributesOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a0acb853cf4f5cdb3c8c4a35c6a551756", null ], + [ "CheckForAttributesOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a9dff615a305d66eb984477ba92b043b9", null ], + [ "CheckForAttributesOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#abe0ec2875b120645b6b2810eea32e603", null ], + [ "CheckForAttributesOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#aa03bb4f0eca822618c6e590acd091d30", null ], + [ "CkeckForNestedAttributesOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a82cf799b61e58be9c68e92949fc7842e", null ], + [ "CkeckForNestedAttributesOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a10b21544dd605907ae1b5de5f1523070", null ], + [ "CkeckForNestedAttributesOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a0ee3cf6b377de457bec9874531dedc83", null ], + [ "CkeckForNestedAttributesOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ad712edf69757e816d68ecb2b500584e0", null ], + [ "CkeckForNestedAttributesOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ab83a891496cd97f72f4756335513b360", null ], + [ "CkeckForNestedAttributesOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a93e56dee9780b0eb614ae9f63c654845", null ], + [ "CkeckForNestedAttributesOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a21e849724bea0e2528bc13522809aa04", null ], + [ "CkeckForNestedAttributesOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a929b87c2d6ac8ff5bac7ef6438c7fba0", null ], + [ "PrintExternalInterfaceNodes", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a84270fba66af2b2c4b1e550e9c232076", null ], + [ "PrintExternalInterfaceNodes", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a1b60137e70854d4b6988bb53feefbc02", null ], + [ "PrintNodesRecursiveInInterfaceClassLib", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a2d048625f052a65bd1a69c2622b013c3", null ], + [ "PrintNodesRecursiveInRoleClassLib", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a885dc0dac3ebebe9a4e264860d6c1bcf", null ], + [ "SearchForInterfaceClassesInsideInterfaceClass", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a59edcf46c97b643baec157aa2904bb62", null ], + [ "SearchForInterfaceClassesInsideInterfaceClass", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a09a785a7ce03cbcea1e305d2144b2963", null ], + [ "SearchForInterfaceClassesInsideInterfaceClassofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a74c126142b223c61a0315c31c1f0abe4", null ], + [ "SearchForInterfaceClassesInsideInterfaceClassofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a171c7b416129418d0b3c27514e98410c", null ], + [ "SearchForReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a10fd9a1fcbf4033415354765a7b5223e", null ], + [ "SearchForReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a5aa1ede5fe9adae926187baa8a33900e", null ], + [ "SearchForReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a5c19581d6a736a2a158b2645ca4630d7", null ], + [ "SearchForReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a7c6096f38f03c5e7e2e3b06a7e139017", null ], + [ "StoreEachAttributeValueInListOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ae8c186a47b1131b50fb6555f6ab169d0", null ], + [ "StoreEachAttributeValueInListOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a56dea9bce7b957ddbb7506f5b84ad236", null ], + [ "StoreEachAttributeValueInListOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a11a5f85235f45a9dd490ed80f116583c", null ], + [ "StoreEachAttributeValueInListOfReferencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a2c4569929beec8af516a2fe28da3bbdc", null ], + [ "StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a0048a13cd6298b8b942e52b04aedc624", null ], + [ "StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a66963e3c258c2bcc8f51353861a2bae6", null ], + [ "StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a8bf5d8868fda86a13eaa8efe5f8c6f7b", null ], + [ "StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a4d5da760852f65985eae02da24f5df06", null ], + [ "DictioanryOfIDofInterfaceClassLibraryNodes", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ae2a9f746ba71aac0e1af3a3e6576b842", null ], + [ "DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ac19b278b2e5411e59f04885d24418de9", null ], + [ "DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a574ca9332b8d007675793598ad421fb8", null ], + [ "DictionaryForInterfaceClassInstancesAttributes", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a05463d55d6ccbd8379a158a72bb3f595", null ], + [ "DictionaryForRoleClassInstanceAttributes", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#aefaaeac579bf73534e5101b4f4f52dcd", null ], + [ "dictionaryofRoleClassattributes", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ad15f0a5bc1513eb4379ff6d5ec7d8c32", null ], + [ "referencedClassName", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a614e280498e0017b87a23031a745b879", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/classes.html b/SOURCE/Plugin/Code Documentation/html/classes.html new file mode 100644 index 0000000..1d1cf7b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/classes.html @@ -0,0 +1,158 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Index + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/closed.png b/SOURCE/Plugin/Code Documentation/html/closed.png new file mode 100644 index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V-kvUwAr*{o@8{^CZMh(5KoB^r_<4^zF@3)Cp&&t3hdujKf f*?bjBoY!V+E))@{xMcbjXe@)LtDnm{r-UW|*e5JT literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/doc.png b/SOURCE/Plugin/Code Documentation/html/doc.png new file mode 100644 index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501 GIT binary patch literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/doxygen.css b/SOURCE/Plugin/Code Documentation/html/doxygen.css new file mode 100644 index 0000000..73ecbb2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/doxygen.css @@ -0,0 +1,1771 @@ +/* The standard CSS for doxygen 1.8.17 */ + +body, table, div, p, dl { + font: 400 14px/22px Roboto,sans-serif; +} + +p.reference, p.definition { + font: 400 14px/22px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font: 400 14px/28px Roboto,sans-serif; + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +ul.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; + column-count: 3; +} + +p.startli, p.startdd { + margin-top: 2px; +} + +th p.starttd, p.intertd, p.endtd { + font-size: 100%; + font-weight: 700; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +p.interli { +} + +p.interdd { +} + +p.intertd { +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #FFFFFF; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #FFFFFF; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited, a.line, a.line:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +ul { + overflow: hidden; /*Fixed: list item bullets overlap floating elements*/ +} + +#side-nav ul { + overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */ +} + +#main-nav ul { + overflow: visible; /* reset ul rule for the navigation bar drop down lists */ +} + +.fragment { + text-align: left; + direction: ltr; + overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/ + overflow-y: hidden; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/ + margin: 4px 8px 4px 2px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line:after { + content:"\000A"; + white-space: pre; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +.lineno { + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +div.ah, span.ah { + background-color: black; + font-weight: bold; + color: #FFFFFF; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); +} + +div.classindex ul { + list-style: none; + padding-left: 0; +} + +div.classindex span.ai { + display: inline-block; +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl, img.inline { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +blockquote.DocNodeRTL { + border-left: 0; + border-right: 2px solid #9CAFD4; + margin: 0 4px 0 24px; + padding: 0 16px 0 12px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight, .memTemplItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtitle { + padding: 8px; + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + border-top-right-radius: 4px; + border-top-left-radius: 4px; + margin-bottom: -1px; + background-image: url('nav_f.png'); + background-repeat: repeat-x; + background-color: #E2E8F2; + line-height: 1.25; + font-weight: 300; + float:left; +} + +.permalink +{ + font-size: 65%; + display: inline-block; + vertical-align: middle; +} + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: 400; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-color: #DFE5F1; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + +} + +.overload { + font-family: "courier new",courier,monospace; + font-size: 65%; +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype, .tparams .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir, .tparams .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view inside a (index) page */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #9CAFD4; + border-bottom: 1px solid #9CAFD4; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +.arrow { + color: #9CAFD4; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + font-size: 80%; + display: inline-block; + width: 16px; + height: 22px; +} + +.icon { + font-family: Arial, Helvetica; + font-weight: bold; + font-size: 12px; + height: 14px; + width: 16px; + display: inline-block; + background-color: #728DC1; + color: white; + text-align: center; + border-radius: 4px; + margin-left: 2px; + margin-right: 2px; +} + +.icona { + width: 24px; + height: 22px; + display: inline-block; +} + +.iconfopen { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderopen.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.iconfclosed { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderclosed.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.icondoc { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('doc.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +table.directory { + font: 400 14px Roboto,sans-serif; +} + +/* @end */ + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable caption { + caption-side: top; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + font-weight: 400; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +table.classindex +{ + margin: 10px; + white-space: nowrap; + margin-left: 3%; + margin-right: 3%; + width: 94%; + border: 0; + border-spacing: 0; + padding: 0; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +.PageDocRTL-title div.headertitle { + text-align: right; + direction: rtl; +} + +dl { + padding: 0 0 0 0; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */ +dl.section { + margin-left: 0px; + padding-left: 0px; +} + +dl.section.DocNodeRTL { + margin-right: 0px; + padding-right: 0px; +} + +dl.note { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #D0C000; +} + +dl.note.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #FF0000; +} + +dl.warning.DocNodeRTL, dl.attention.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00D000; +} + +dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #00D000; +} + +dl.deprecated { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #505050; +} + +dl.deprecated.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #505050; +} + +dl.todo { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00C0E0; +} + +dl.todo.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #00C0E0; +} + +dl.test { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #3030E0; +} + +dl.test.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #3030E0; +} + +dl.bug { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #C08050; +} + +dl.bug.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectalign +{ + vertical-align: middle; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.plantumlgraph +{ + text-align: center; +} + +.diagraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 8px 10px 10px; + width: 200px; +} + +.PageDocRTL-title div.toc { + float: left !important; + text-align: right; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +.PageDocRTL-title div.toc li { + background-position-x: right !important; + padding-left: 0 !important; + padding-right: 10px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.PageDocRTL-title div.toc li.level1 { + margin-left: 0 !important; + margin-right: 0; +} + +.PageDocRTL-title div.toc li.level2 { + margin-left: 0 !important; + margin-right: 15px; +} + +.PageDocRTL-title div.toc li.level3 { + margin-left: 0 !important; + margin-right: 30px; +} + +.PageDocRTL-title div.toc li.level4 { + margin-left: 0 !important; + margin-right: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + white-space: nowrap; + background-color: white; + border: 1px solid gray; + border-radius: 4px 4px 4px 4px; + box-shadow: 1px 1px 7px gray; + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: grey; + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: #006318; +} + +#powerTip div { + margin: 0px; + padding: 0px; + font: 12px/16px Roboto,sans-serif; +} + +#powerTip:before, #powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.s:after, #powerTip.s:before, +#powerTip.w:after, #powerTip.w:before, +#powerTip.e:after, #powerTip.e:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.nw:after, #powerTip.nw:before, +#powerTip.sw:after, #powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, #powerTip.s:after, +#powerTip.w:after, #powerTip.e:after, +#powerTip.nw:after, #powerTip.ne:after, +#powerTip.sw:after, #powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, #powerTip.s:before, +#powerTip.w:before, #powerTip.e:before, +#powerTip.nw:before, #powerTip.ne:before, +#powerTip.sw:before, #powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.nw:after, #powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { + border-top-color: #FFFFFF; + border-width: 10px; + margin: 0px -10px; +} +#powerTip.n:before { + border-top-color: #808080; + border-width: 11px; + margin: 0px -11px; +} +#powerTip.n:after, #powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, #powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, #powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, #powerTip.s:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.sw:after, #powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { + border-bottom-color: #FFFFFF; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { + border-bottom-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, #powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, #powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, #powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, #powerTip.e:before { + left: 100%; +} +#powerTip.e:after { + border-left-color: #FFFFFF; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.e:before { + border-left-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, #powerTip.w:before { + right: 100%; +} +#powerTip.w:after { + border-right-color: #FFFFFF; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.w:before { + border-right-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + +/* @group Markdown */ + +/* +table.markdownTable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.markdownTable td, table.markdownTable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.markdownTableHead tr { +} + +table.markdownTableBodyLeft td, table.markdownTable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +th.markdownTableHeadLeft th.markdownTableHeadRight th.markdownTableHeadCenter th.markdownTableHeadNone { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +th.markdownTableHeadLeft { + text-align: left +} + +th.markdownTableHeadRight { + text-align: right +} + +th.markdownTableHeadCenter { + text-align: center +} +*/ + +table.markdownTable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.markdownTable td, table.markdownTable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.markdownTable tr { +} + +th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +th.markdownTableHeadLeft, td.markdownTableBodyLeft { + text-align: left +} + +th.markdownTableHeadRight, td.markdownTableBodyRight { + text-align: right +} + +th.markdownTableHeadCenter, td.markdownTableBodyCenter { + text-align: center +} + +.DocNodeRTL { + text-align: right; + direction: rtl; +} + +.DocNodeLTR { + text-align: left; + direction: ltr; +} + +table.DocNodeRTL { + width: auto; + margin-right: 0; + margin-left: auto; +} + +table.DocNodeLTR { + width: auto; + margin-right: auto; + margin-left: 0; +} + +tt, code, kbd, samp +{ + display: inline-block; + direction:ltr; +} +/* @end */ + +u { + text-decoration: underline; +} + diff --git a/SOURCE/Plugin/Code Documentation/html/doxygen.png b/SOURCE/Plugin/Code Documentation/html/doxygen.png new file mode 100644 index 0000000000000000000000000000000000000000..3ff17d807fd8aa003bed8bb2a69e8f0909592fd1 GIT binary patch literal 3779 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 literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/dynsections.js b/SOURCE/Plugin/Code Documentation/html/dynsections.js new file mode 100644 index 0000000..ea0a7b3 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/dynsections.js @@ -0,0 +1,120 @@ +/* + @licstart The following is the entire license notice for the + JavaScript code in this file. + + Copyright (C) 1997-2017 by Dimitri van Heesch + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + @licend The above is the entire license notice + for the JavaScript code in this file + */ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} + +function toggleLevel(level) +{ + $('table.directory tr').each(function() { + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + + +Modeling Wizard Plugin for AutomationML Editor: File List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/files_dup.js b/SOURCE/Plugin/Code Documentation/html/files_dup.js new file mode 100644 index 0000000..488444e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/files_dup.js @@ -0,0 +1,49 @@ +var files_dup = +[ + [ "About.xaml.cs", "_about_8xaml_8cs.html", [ + [ "About", "class_aml_1_1_editor_1_1_plugin_1_1_about.html", "class_aml_1_1_editor_1_1_plugin_1_1_about" ] + ] ], + [ "AnimationClass.cs", "_animation_class_8cs.html", [ + [ "AnimationClass", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class" ] + ] ], + [ "AutomationMLDataTables.cs", "_automation_m_l_data_tables_8cs.html", [ + [ "AutomationMLDataTables", "class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html", "class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables" ] + ] ], + [ "ClassOfListsFromDataGridViews.cs", "_class_of_lists_from_data_grid_views_8cs.html", [ + [ "ClassOfListsFromDataGridViews", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views" ] + ] ], + [ "ClassOfListsFromReferencefile.cs", "_class_of_lists_from_referencefile_8cs.html", [ + [ "ClassOfListsFromReferencefile", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile" ] + ] ], + [ "DeviceDescription.cs", "_device_description_8cs.html", [ + [ "DeviceDescription", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html", "class_aml_1_1_editor_1_1_plugin_1_1_device_description" ] + ] ], + [ "DeviceDescription.Designer.cs", "_device_description_8_designer_8cs.html", [ + [ "DeviceDescription", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html", "class_aml_1_1_editor_1_1_plugin_1_1_device_description" ] + ] ], + [ "ModellingWizard.xaml.cs", "_modelling_wizard_8xaml_8cs.html", [ + [ "ModellingWizard", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard" ] + ] ], + [ "MWController.cs", "_m_w_controller_8cs.html", [ + [ "MWController", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller" ] + ] ], + [ "MWData.cs", "_m_w_data_8cs.html", [ + [ "MWData", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data" ], + [ "MWObject", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.html", null ] + ] ], + [ "MWDevice.cs", "_m_w_device_8cs.html", [ + [ "MWDevice", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device" ], + [ "DataGridParameters", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters" ], + [ "ElectricalParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters" ], + [ "ElectricalParametersInElectricalDataDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view" ], + [ "PinParametersInPinInfoDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view" ], + [ "AttachablesDataGridViewParameters", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters" ], + [ "ElectricalInterfaceParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters" ] + ] ], + [ "SearchAMLComponentFile.cs", "_search_a_m_l_component_file_8cs.html", [ + [ "SearchAMLComponentFile", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file" ] + ] ], + [ "SearchAMLLibraryFile.cs", "_search_a_m_l_library_file_8cs.html", [ + [ "SearchAMLLibraryFile", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file" ] + ] ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/folderclosed.png b/SOURCE/Plugin/Code Documentation/html/folderclosed.png new file mode 100644 index 0000000000000000000000000000000000000000..bb8ab35edce8e97554e360005ee9fc5bffb36e66 GIT binary patch literal 616 zcmV-u0+;=XP)a9#ETzayK)T~Jw&MMH>OIr#&;dC}is*2Mqdf&akCc=O@`qC+4i z5Iu3w#1M@KqXCz8TIZd1wli&kkl2HVcAiZ8PUn5z_kG@-y;?yK06=cA0U%H0PH+kU zl6dp}OR(|r8-RG+YLu`zbI}5TlOU6ToR41{9=uz^?dGTNL;wIMf|V3`d1Wj3y!#6` zBLZ?xpKR~^2x}?~zA(_NUu3IaDB$tKma*XUdOZN~c=dLt_h_k!dbxm_*ibDM zlFX`g{k$X}yIe%$N)cn1LNu=q9_CS)*>A zsX_mM4L@`(cSNQKMFc$RtYbx{79#j-J7hk*>*+ZZhM4Hw?I?rsXCi#mRWJ=-0LGV5a-WR0Qgt<|Nqf)C-@80`5gIz45^_20000IqP)X=#(TiCT&PiIIVc55T}TU}EUh*{q$|`3@{d>{Tc9Bo>e= zfmF3!f>fbI9#GoEHh0f`i5)wkLpva0ztf%HpZneK?w-7AK@b4Itw{y|Zd3k!fH?q2 zlhckHd_V2M_X7+)U&_Xcfvtw60l;--DgZmLSw-Y?S>)zIqMyJ1#FwLU*%bl38ok+! zh78H87n`ZTS;uhzAR$M`zZ`bVhq=+%u9^$5jDplgxd44}9;IRqUH1YHH|@6oFe%z( zo4)_>E$F&^P-f(#)>(TrnbE>Pefs9~@iN=|)Rz|V`sGfHNrJ)0gJb8xx+SBmRf@1l zvuzt=vGfI)<-F9!o&3l?>9~0QbUDT(wFdnQPv%xdD)m*g%!20>Bc9iYmGAp<9YAa( z0QgYgTWqf1qN++Gqp z8@AYPTB3E|6s=WLG?xw0tm|U!o=&zd+H0oRYE;Dbx+Na9s^STqX|Gnq%H8s(nGDGJ j8vwW|`Ts`)fSK|Kx=IK@RG@g200000NkvXXu0mjfauFEA literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/functions.html b/SOURCE/Plugin/Code Documentation/html/functions.html new file mode 100644 index 0000000..6dc8e26 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions.html @@ -0,0 +1,145 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_b.html b/SOURCE/Plugin/Code Documentation/html/functions_b.html new file mode 100644 index 0000000..3640f72 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_b.html @@ -0,0 +1,114 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - b -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_c.html b/SOURCE/Plugin/Code Documentation/html/functions_c.html new file mode 100644 index 0000000..b01f268 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_c.html @@ -0,0 +1,212 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - c -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_d.html b/SOURCE/Plugin/Code Documentation/html/functions_d.html new file mode 100644 index 0000000..aaab4e2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_d.html @@ -0,0 +1,203 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - d -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_dup.js b/SOURCE/Plugin/Code Documentation/html/functions_dup.js new file mode 100644 index 0000000..b9a2402 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_dup.js @@ -0,0 +1,22 @@ +var functions_dup = +[ + [ "a", "functions.html", null ], + [ "b", "functions_b.html", null ], + [ "c", "functions_c.html", null ], + [ "d", "functions_d.html", null ], + [ "e", "functions_e.html", null ], + [ "f", "functions_f.html", null ], + [ "g", "functions_g.html", null ], + [ "i", "functions_i.html", null ], + [ "l", "functions_l.html", null ], + [ "m", "functions_m.html", null ], + [ "n", "functions_n.html", null ], + [ "o", "functions_o.html", null ], + [ "p", "functions_p.html", null ], + [ "r", "functions_r.html", null ], + [ "s", "functions_s.html", null ], + [ "t", "functions_t.html", null ], + [ "u", "functions_u.html", null ], + [ "v", "functions_v.html", null ], + [ "w", "functions_w.html", null ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/functions_e.html b/SOURCE/Plugin/Code Documentation/html/functions_e.html new file mode 100644 index 0000000..276e832 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_e.html @@ -0,0 +1,135 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - e -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_enum.html b/SOURCE/Plugin/Code Documentation/html/functions_enum.html new file mode 100644 index 0000000..0965b12 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_enum.html @@ -0,0 +1,115 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members - Enumerations + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_evnt.html b/SOURCE/Plugin/Code Documentation/html/functions_evnt.html new file mode 100644 index 0000000..5935fdc --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_evnt.html @@ -0,0 +1,115 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members - Events + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_f.html b/SOURCE/Plugin/Code Documentation/html/functions_f.html new file mode 100644 index 0000000..0a9320a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_f.html @@ -0,0 +1,120 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - f -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_func.html b/SOURCE/Plugin/Code Documentation/html/functions_func.html new file mode 100644 index 0000000..b04ca2c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_func.html @@ -0,0 +1,382 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members - Functions + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +  + +

    - a -

    + + +

    - c -

    + + +

    - d -

    + + +

    - e -

    + + +

    - g -

    + + +

    - i -

    + + +

    - l -

    + + +

    - m -

    + + +

    - o -

    + + +

    - p -

    + + +

    - s -

    + + +

    - t -

    + + +

    - w -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_g.html b/SOURCE/Plugin/Code Documentation/html/functions_g.html new file mode 100644 index 0000000..4345e26 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_g.html @@ -0,0 +1,114 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - g -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_i.html b/SOURCE/Plugin/Code Documentation/html/functions_i.html new file mode 100644 index 0000000..5178c6d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_i.html @@ -0,0 +1,142 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - i -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_l.html b/SOURCE/Plugin/Code Documentation/html/functions_l.html new file mode 100644 index 0000000..1eaa5ec --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_l.html @@ -0,0 +1,126 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - l -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_m.html b/SOURCE/Plugin/Code Documentation/html/functions_m.html new file mode 100644 index 0000000..b04134f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_m.html @@ -0,0 +1,129 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - m -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_n.html b/SOURCE/Plugin/Code Documentation/html/functions_n.html new file mode 100644 index 0000000..9d7bcbf --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_n.html @@ -0,0 +1,115 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - n -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_o.html b/SOURCE/Plugin/Code Documentation/html/functions_o.html new file mode 100644 index 0000000..cedc894 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_o.html @@ -0,0 +1,114 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - o -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_p.html b/SOURCE/Plugin/Code Documentation/html/functions_p.html new file mode 100644 index 0000000..fe529bd --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_p.html @@ -0,0 +1,150 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - p -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_prop.html b/SOURCE/Plugin/Code Documentation/html/functions_prop.html new file mode 100644 index 0000000..0a1d9b9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_prop.html @@ -0,0 +1,435 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members - Properties + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +  + +

    - a -

    + + +

    - b -

    + + +

    - c -

    + + +

    - d -

    + + +

    - e -

    + + +

    - f -

    + + +

    - i -

    + + +

    - l -

    + + +

    - n -

    + + +

    - p -

    + + +

    - r -

    + + +

    - s -

    + + +

    - t -

    + + +

    - u -

    + + +

    - v -

    + + +

    - w -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_r.html b/SOURCE/Plugin/Code Documentation/html/functions_r.html new file mode 100644 index 0000000..d3f7fe6 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_r.html @@ -0,0 +1,143 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_s.html b/SOURCE/Plugin/Code Documentation/html/functions_s.html new file mode 100644 index 0000000..d909648 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_s.html @@ -0,0 +1,164 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - s -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_t.html b/SOURCE/Plugin/Code Documentation/html/functions_t.html new file mode 100644 index 0000000..c54a13a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_t.html @@ -0,0 +1,127 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_u.html b/SOURCE/Plugin/Code Documentation/html/functions_u.html new file mode 100644 index 0000000..5121c1f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_u.html @@ -0,0 +1,120 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_v.html b/SOURCE/Plugin/Code Documentation/html/functions_v.html new file mode 100644 index 0000000..a9e686e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_v.html @@ -0,0 +1,127 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + + + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_vars.html b/SOURCE/Plugin/Code Documentation/html/functions_vars.html new file mode 100644 index 0000000..2790a3d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_vars.html @@ -0,0 +1,121 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members - Variables + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + + +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/functions_w.html b/SOURCE/Plugin/Code Documentation/html/functions_w.html new file mode 100644 index 0000000..ccde88b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/functions_w.html @@ -0,0 +1,120 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Members + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all class members with links to the classes they belong to:
    + +

    - w -

    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/hierarchy.html b/SOURCE/Plugin/Code Documentation/html/hierarchy.html new file mode 100644 index 0000000..e814357 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/hierarchy.html @@ -0,0 +1,138 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Class Hierarchy + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Class Hierarchy
    +
    +
    +
    This inheritance list is sorted roughly, but not completely, alphabetically:
    +
    [detail level 123]
    + + + + + + + + + + + + + + + + + + + + + + + +
     CAml.Editor.Plugin.AnimationClass
     CAml.Editor.Plugin.AttachablesDataGridViewParameters
     CAml.Editor.Plugin.AutomationMLDataTables
     CAml.Editor.Plugin.ClassOfListsFromDataGridViews
     CAml.Editor.Plugin.ClassOfListsFromReferencefile
     CAml.Editor.Plugin.DataGridParameters
     CAml.Editor.Plugin.ElectricalInterfaceParameters
     CAml.Editor.Plugin.ElectricalParameters/The following classes are parameter holders for Electrical Interfaces
     CAml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView
     CIAMLEditorView
     CAml.Editor.Plugin.ModellingWizardModellingWizard is an PlugIn, which implements the IAMLEditorView Interface
     CAml.Editor.Plugin.MWControllerThis class passes the inputs of the GUIs to MWData where needed and it is in controll of what is displayed at the screen
     CAml.Editor.Plugin.MWData.MWObject
     CAml.Editor.Plugin.MWDevice
     CAml.Editor.Plugin.PinParametersInPinInfoDataGridView
     CAml.Editor.Plugin.SearchAMLComponentFile
     CAml.Editor.Plugin.SearchAMLLibraryFileThis class reads the library file loaded in to the plugin "Role Class Library TreeView" and "Interface Class Library TreeView"
     CUserControl
     CAml.Editor.Plugin.DeviceDescription
     CAml.Editor.Plugin.MWData
     CAml.Editor.Plugin.ModellingWizardModellingWizard is an PlugIn, which implements the IAMLEditorView Interface
     CWindow
     CAml.Editor.Plugin.AboutInteraction logic for About.xaml
    +
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/hierarchy.js b/SOURCE/Plugin/Code Documentation/html/hierarchy.js new file mode 100644 index 0000000..7ac76d0 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/hierarchy.js @@ -0,0 +1,31 @@ +var hierarchy = +[ + [ "Aml.Editor.Plugin.AnimationClass", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html", null ], + [ "Aml.Editor.Plugin.AttachablesDataGridViewParameters", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html", null ], + [ "Aml.Editor.Plugin.AutomationMLDataTables", "class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html", null ], + [ "Aml.Editor.Plugin.ClassOfListsFromDataGridViews", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html", null ], + [ "Aml.Editor.Plugin.ClassOfListsFromReferencefile", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html", null ], + [ "Aml.Editor.Plugin.DataGridParameters", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html", null ], + [ "Aml.Editor.Plugin.ElectricalInterfaceParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html", null ], + [ "Aml.Editor.Plugin.ElectricalParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html", null ], + [ "Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html", null ], + [ "IAMLEditorView", null, [ + [ "Aml.Editor.Plugin.ModellingWizard", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html", null ] + ] ], + [ "Aml.Editor.Plugin.MWController", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html", null ], + [ "Aml.Editor.Plugin.MWData.MWObject", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.html", [ + [ "Aml.Editor.Plugin.MWDevice", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html", null ] + ] ], + [ "Aml.Editor.Plugin.PinParametersInPinInfoDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html", null ], + [ "Aml.Editor.Plugin.SearchAMLComponentFile", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html", null ], + [ "Aml.Editor.Plugin.SearchAMLLibraryFile", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html", null ], + [ "UserControl", null, [ + [ "Aml.Editor.Plugin.DeviceDescription", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html", [ + [ "Aml.Editor.Plugin.MWData", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html", null ] + ] ], + [ "Aml.Editor.Plugin.ModellingWizard", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html", null ] + ] ], + [ "Window", null, [ + [ "Aml.Editor.Plugin.About", "class_aml_1_1_editor_1_1_plugin_1_1_about.html", null ] + ] ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/index.html b/SOURCE/Plugin/Code Documentation/html/index.html new file mode 100644 index 0000000..b7109cc --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/index.html @@ -0,0 +1,126 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Main Page + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Modeling Wizard Plugin for AutomationML Editor Documentation
    +
    + +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/jquery.js b/SOURCE/Plugin/Code Documentation/html/jquery.js new file mode 100644 index 0000000..103c32d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/jquery.js @@ -0,0 +1,35 @@ +/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
    ",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
    ",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
    "),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("
    ").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("
    "),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidtht.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("
    "),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element +},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/** + * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler + * Licensed under MIT + * @author Ariel Flesler + * @version 2.1.2 + */ +;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1=f[g]?0:Math.min(f[g],n));!a&&1-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.topviewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.leftviewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017 + * http://www.smartmenus.org/ + * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
    ').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('')[0],$('')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$}); \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/md__r_e_a_d_m_e.html b/SOURCE/Plugin/Code Documentation/html/md__r_e_a_d_m_e.html new file mode 100644 index 0000000..86472d0 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/md__r_e_a_d_m_e.html @@ -0,0 +1,165 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: ModellingWizardPlugin + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    ModellingWizardPlugin
    +
    +
    +

    This is a Plugin for the AutomationML Editor. It is able to create new AML Devices and Interfaces and save them as AMLX Package. It can also import IODD and GSDML Files using Converters

    +

    This project was developed as a student project at the Cooperative State University (DHBW) in Stuttgart under supervision of Markus Rentschler by the following student team in 2018/2019:

      +
    • Burkowitz, Steffen
    • +
    • Löffler, Tobias
    • +
    • Mayer, Simon
    • +
    • Joukhadar, Abdulkarim
    • +
    • Wandel, Simon
    • +
    +

    This project was further developed as a Mater Thesis work at [Innovative Software Services GmbH Stuttgart] by student from [Otto-Von-Guericke University Magdeburg] under supervision of Markus Rentschler.

      +
    • Raj Kumar Pulaparthi
    +

    This project was further developed as a student project at the Cooperative State University (DHBW) in Stuttgart under supervision of Markus Rentschler and Christian Holder by the following student team in 2020/2021:

      +
    • Banov, Stefan-Nemanja
    • +
    • Jess, Simon
    • +
    • Tran, Phillip
    • +
    • Schmidt Jakob
    • +
    • Zaoral, Timo
    • +
    • Roth, Tobias
    • +
    + +

    +Missing Labels and Text

    +

    Due to a bug in the window manager of the AMLEditor if you are using the theme "Metro Light" the text and icon will not be visible on startup. To fix this, simply select another theme using "View" > "Change Theme". (See also this issue)

    +

    +AML Devices Format

    +

    The Plugin creates Devices with the following DeviceIdentification InternalElement:

    <InternalElement Name="DeviceIdentification" ID="%DEVICEID%">
    +
    <Attribute Name="CommunicationTechnology" AttributeDataType="xs:string" />
    +
    <Attribute Name="VendorName" AttributeDataType="xs:string">
    +
    <Attribute Name="DeviceName" AttributeDataType="xs:string"/>
    +
    <Attribute Name="DeviceFamiliy" AttributeDataType="xs:string"/>
    +
    <Attribute Name="ProductName" AttributeDataType="xs:string"/>
    +
    <Attribute Name="OrderNumber" AttributeDataType="xs:string"/>
    +
    <Attribute Name="ProductText" AttributeDataType="xs:string" />
    +
    <Attribute Name="IPProtection" AttributeDataType="xs:string" />
    +
    <Attribute Name="VendorHompage" AttributeDataType="xs:string" />
    +
    <Attribute Name="HardwareRelease" AttributeDataType="xs:string" />
    +
    <Attribute Name="SoftwareRelease" AttributeDataType="xs:string" />
    +
    <Attribute Name="OperatingTemperatureMin" AttributeDataType="xs:double"/>
    +
    <Attribute Name="OperatingTemperatureMax" AttributeDataType="xs:double"/>
    +
    <Attribute Name="VendorId" AttributeDataType="xs:integer"/>
    +
    <Attribute Name="DeviceId" AttributeDataType="xs:integer"/>
    +
    </InternalElement>
    +

    If a Device has this InternelElement Attributes, our Plugin will be able to display and modifiy the device.

    +

    +Setup Projekt for development

    +
      +
    1. Open the .sln in Visual Studio
    2. +
    3. Make sure that the NuGet Packages are installed (Check using: 'Extras' -> 'NuGet-Packet-Manager' -> 'NuGet-Packete für diese Projektmappe verwalten')
    4. +
    5. Install the AMLEditor Version 5.1.3 or newer
    6. +
    7. To test the plugin, copy the build output (ModellingWizard.dll) to the PlugIn folder of the AMLEditor
    8. +
    +

    +Honorable mention

    +

    Christian K. und Philipp A.

    +
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/namespace_aml.html b/SOURCE/Plugin/Code Documentation/html/namespace_aml.html new file mode 100644 index 0000000..f5b6973 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/namespace_aml.html @@ -0,0 +1,120 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml Namespace Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml Namespace Reference
    +
    +
    + + + + +

    +Namespaces

    namespace  Editor
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/namespace_aml.js b/SOURCE/Plugin/Code Documentation/html/namespace_aml.js new file mode 100644 index 0000000..39f0219 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/namespace_aml.js @@ -0,0 +1,4 @@ +var namespace_aml = +[ + [ "Editor", "namespace_aml_1_1_editor.html", "namespace_aml_1_1_editor" ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor.html b/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor.html new file mode 100644 index 0000000..5905102 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor.html @@ -0,0 +1,120 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor Namespace Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor Namespace Reference
    +
    +
    + + + + +

    +Namespaces

    namespace  Plugin
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor.js b/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor.js new file mode 100644 index 0000000..721bf0c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor.js @@ -0,0 +1,4 @@ +var namespace_aml_1_1_editor = +[ + [ "Plugin", "namespace_aml_1_1_editor_1_1_plugin.html", "namespace_aml_1_1_editor_1_1_plugin" ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor_1_1_plugin.html b/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor_1_1_plugin.html new file mode 100644 index 0000000..14f7385 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor_1_1_plugin.html @@ -0,0 +1,159 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Aml.Editor.Plugin Namespace Reference + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Aml.Editor.Plugin Namespace Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Classes

    class  About
     Interaction logic for About.xaml More...
     
    class  AnimationClass
     
    class  AttachablesDataGridViewParameters
     
    class  AutomationMLDataTables
     
    class  ClassOfListsFromDataGridViews
     
    class  ClassOfListsFromReferencefile
     
    class  DataGridParameters
     
    class  DeviceDescription
     
    class  ElectricalInterfaceParameters
     
    class  ElectricalParameters
     /The following classes are parameter holders for Electrical Interfaces More...
     
    class  ElectricalParametersInElectricalDataDataGridView
     
    class  ModellingWizard
     ModellingWizard is an PlugIn, which implements the IAMLEditorView Interface. More...
     
    class  MWController
     This class passes the inputs of the GUIs to MWData where needed and it is in controll of what is displayed at the screen More...
     
    class  MWData
     
    class  MWDevice
     
    class  PinParametersInPinInfoDataGridView
     
    class  SearchAMLComponentFile
     
    class  SearchAMLLibraryFile
     This class reads the library file loaded in to the plugin "Role Class Library TreeView" and "Interface Class Library TreeView" More...
     
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor_1_1_plugin.js b/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor_1_1_plugin.js new file mode 100644 index 0000000..f9491ff --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/namespace_aml_1_1_editor_1_1_plugin.js @@ -0,0 +1,21 @@ +var namespace_aml_1_1_editor_1_1_plugin = +[ + [ "About", "class_aml_1_1_editor_1_1_plugin_1_1_about.html", "class_aml_1_1_editor_1_1_plugin_1_1_about" ], + [ "AnimationClass", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html", "class_aml_1_1_editor_1_1_plugin_1_1_animation_class" ], + [ "AttachablesDataGridViewParameters", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html", "class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters" ], + [ "AutomationMLDataTables", "class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html", "class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables" ], + [ "ClassOfListsFromDataGridViews", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views" ], + [ "ClassOfListsFromReferencefile", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html", "class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile" ], + [ "DataGridParameters", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html", "class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters" ], + [ "DeviceDescription", "class_aml_1_1_editor_1_1_plugin_1_1_device_description.html", "class_aml_1_1_editor_1_1_plugin_1_1_device_description" ], + [ "ElectricalInterfaceParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters" ], + [ "ElectricalParameters", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters" ], + [ "ElectricalParametersInElectricalDataDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html", "class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view" ], + [ "ModellingWizard", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html", "class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard" ], + [ "MWController", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller" ], + [ "MWData", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_data" ], + [ "MWDevice", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html", "class_aml_1_1_editor_1_1_plugin_1_1_m_w_device" ], + [ "PinParametersInPinInfoDataGridView", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html", "class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view" ], + [ "SearchAMLComponentFile", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file" ], + [ "SearchAMLLibraryFile", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html", "class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file" ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/namespaces.html b/SOURCE/Plugin/Code Documentation/html/namespaces.html new file mode 100644 index 0000000..1737391 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/namespaces.html @@ -0,0 +1,118 @@ + + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Namespace List + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Namespace List
    +
    +
    +
    Here is a list of all namespaces with brief descriptions:
    +
    [detail level 123]
    + + + +
     NAml
     NEditor
     NPlugin
    +
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/namespaces_dup.js b/SOURCE/Plugin/Code Documentation/html/namespaces_dup.js new file mode 100644 index 0000000..8e72818 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/namespaces_dup.js @@ -0,0 +1,4 @@ +var namespaces_dup = +[ + [ "Aml", "namespace_aml.html", "namespace_aml" ] +]; \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/html/nav_f.png b/SOURCE/Plugin/Code Documentation/html/nav_f.png new file mode 100644 index 0000000000000000000000000000000000000000..72a58a529ed3a9ed6aa0c51a79cf207e026deee2 GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^j6iI`!2~2XGqLUlQVE_ejv*C{Z|{2ZH7M}7UYxc) zn!W8uqtnIQ>_z8U literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/nav_g.png b/SOURCE/Plugin/Code Documentation/html/nav_g.png new file mode 100644 index 0000000000000000000000000000000000000000..2093a237a94f6c83e19ec6e5fd42f7ddabdafa81 GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrB!3HFm1ilyoDK$?Q$B+ufw|5PB85lU25BhtE tr?otc=hd~V+ws&_A@j8Fiv!KF$B+ufw|5=67#uj90@pIL wZ=Q8~_Ju`#59=RjDrmm`tMD@M=!-l18IR?&vFVdQ&MBb@0HFXL=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function hashValue() +{ + return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,''); +} + +function hashUrl() +{ + return '#'+hashValue(); +} + +function pathName() +{ + return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, ''); +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + var level=-1; + var n = node; + while (n.parentNode) { level++; n=n.parentNode; } + if (node.childrenData) { + var imgNode = document.createElement("span"); + imgNode.className = 'arrow'; + imgNode.style.paddingLeft=(16*level).toString()+'px'; + imgNode.innerHTML=arrowRight; + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + node.plus_img.innerHTML=arrowRight; + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + } else { + var span = document.createElement("span"); + span.className = 'arrow'; + span.style.width = 16*(level+1)+'px'; + span.innerHTML = ' '; + domNode.appendChild(span); + } +} + +var animationInProgress = false; + +function gotoAnchor(anchor,aname,updateLocation) +{ + var pos, docContent = $('#doc-content'); + var ancParent = $(anchor.parent()); + if (ancParent.hasClass('memItemLeft') || + ancParent.hasClass('memtitle') || + ancParent.hasClass('fieldname') || + ancParent.hasClass('fieldtype') || + ancParent.is(':header')) + { + pos = ancParent.position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + animationInProgress=true; + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + if (updateLocation) window.location.href=aname; + animationInProgress=false; + }); + } +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath(pathName()); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : "javascript:void(0)"; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var anchor = $(aname); + gotoAnchor(anchor,aname,true); + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',100,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).slideDown("fast"); + node.plus_img.innerHTML = arrowDown; + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var aname = hashUrl(); + var anchor = $(aname); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+hashValue()+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parent().attr('class')=='fieldname'){ + glowEffect(anchor.parent().parent(),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath(pathName())+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + if ($('#nav-tree-contents .item:first').hasClass('selected')) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).css({'display':'block'}); + node.plus_img.innerHTML = arrowDown; + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1].replace(/[^\w\-]/g,''); + else hash=''; + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2(pathName())+hashUrl()); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +var loadTriggered = false; +var readyTriggered = false; +var loadObject,loadToRoot,loadUrl,loadRelPath; + +$(window).on('load',function(){ + if (readyTriggered) { // ready first + navTo(loadObject,loadToRoot,loadUrl,loadRelPath); + showRoot(); + } + loadTriggered=true; +}); + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("span"); + o.node.plus_img.className = 'arrow'; + o.node.plus_img.innerHTML = arrowRight; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + if (loadTriggered) { // load before ready + navTo(o,toroot,hashUrl(),relpath); + showRoot(); + } else { // ready before load + loadObject = o; + loadToRoot = toroot; + loadUrl = hashUrl(); + loadRelPath = relpath; + readyTriggered=true; + } + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath(pathName())+':'+hashValue(); + a=$('.item a[class$="'+clslink.replace(/1|%O$WD@{VPM$7~Ar*{o?;hlAFyLXmaDC0y znK1_#cQqJWPES%4Uujug^TE?jMft$}Eq^WaR~)%f)vSNs&gek&x%A9X9sM + + + + + + +Modeling Wizard Plugin for AutomationML Editor: Related Pages + + + + + + + + + + + + + + +
    +
    + + + + + + + +
    +
    Modeling Wizard Plugin for AutomationML Editor +  Version1.0.0.1 +
    +
    Plugin
    +
    + + + + + + +
    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Related Pages
    +
    +
    +
    Here is a list of all related documentation pages:
    +
    +
    + + + + diff --git a/SOURCE/Plugin/Code Documentation/html/resize.js b/SOURCE/Plugin/Code Documentation/html/resize.js new file mode 100644 index 0000000..a0bb5f4 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/resize.js @@ -0,0 +1,137 @@ +/* + @licstart The following is the entire license notice for the + JavaScript code in this file. + + Copyright (C) 1997-2017 by Dimitri van Heesch + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + @licend The above is the entire license notice + for the JavaScript code in this file + */ +function initResizable() +{ + var cookie_namespace = 'doxygen'; + var sidenav,navtree,content,header,collapsed,collapsedWidth=0,barWidth=6,desktop_vp=768,titleHeight; + + function readCookie(cookie) + { + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) { + var index = document.cookie.indexOf(myCookie); + if (index != -1) { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; + } + + function writeCookie(cookie, val, expiration) + { + if (val==undefined) return; + if (expiration == null) { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; + } + + function resizeWidth() + { + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).outerWidth(); + content.css({marginLeft:parseInt(sidenavWidth)+"px"}); + writeCookie('width',sidenavWidth-barWidth, null); + } + + function restoreWidth(navWidth) + { + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+barWidth+"px"}); + sidenav.css({width:navWidth + "px"}); + } + + function resizeHeight() + { + var headerHeight = header.outerHeight(); + var footerHeight = footer.outerHeight(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px"}); + var width=$(window).width(); + if (width!=collapsedWidth) { + if (width=desktop_vp) { + if (!collapsed) { + collapseExpand(); + } + } else if (width>desktop_vp && collapsedWidth0) { + restoreWidth(0); + collapsed=true; + } + else { + var width = readCookie('width'); + if (width>200 && width<$(window).width()) { restoreWidth(width); } else { restoreWidth(200); } + collapsed=false; + } + } + + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(sidenav).resizable({ minWidth: 0 }); + $(window).resize(function() { resizeHeight(); }); + var device = navigator.userAgent.toLowerCase(); + var touch_device = device.match(/(iphone|ipod|ipad|android)/); + if (touch_device) { /* wider split bar for touch only devices */ + $(sidenav).css({ paddingRight:'20px' }); + $('.ui-resizable-e').css({ width:'20px' }); + $('#nav-sync').css({ right:'34px' }); + barWidth=20; + } + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(".ui-resizable-handle").dblclick(collapseExpand); + $(window).on('load',resizeHeight); +} +/* @license-end */ diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_0.html b/SOURCE/Plugin/Code Documentation/html/search/all_0.html new file mode 100644 index 0000000..26dd244 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_0.js b/SOURCE/Plugin/Code Documentation/html/search/all_0.js new file mode 100644 index 0000000..c34c8db --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_0.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['about_0',['About',['../class_aml_1_1_editor_1_1_plugin_1_1_about.html',1,'Aml.Editor.Plugin.About'],['../class_aml_1_1_editor_1_1_plugin_1_1_about.html#a0001137d5fb3972b81264ce5568cc4d8',1,'Aml.Editor.Plugin.About.About()']]], + ['about_2examl_2ecs_1',['About.xaml.cs',['../_about_8xaml_8cs.html',1,'']]], + ['aboutcommand_2',['AboutCommand',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#ac767be8789446b8040a0d7fd9a8eb283',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['activateplugin_3',['ActivatePlugin',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a68418cf3879299385765d352ffc4731b',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['addtofile_4',['AddToFile',['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#ac066151417d31343474366e089519f83',1,'Aml::Editor::Plugin::AttachablesDataGridViewParameters']]], + ['aml_5',['Aml',['../namespace_aml.html',1,'']]], + ['amlattributeparameters_6',['AMLAttributeParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#a504d5b014d4b10a3762a17b2b6b2ed6a',1,'Aml::Editor::Plugin::AutomationMLDataTables']]], + ['animationclass_7',['AnimationClass',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html',1,'Aml.Editor.Plugin.AnimationClass'],['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a99e06693a64c2eecb54276b906d14822',1,'Aml.Editor.Plugin.AnimationClass.AnimationClass()']]], + ['animationclass_2ecs_8',['AnimationClass.cs',['../_animation_class_8cs.html',1,'']]], + ['attachablesdatagridviewparameters_9',['AttachablesDataGridViewParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html',1,'Aml.Editor.Plugin.AttachablesDataGridViewParameters'],['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#a58df9ca5564d2e6002e7616793fa03d2',1,'Aml.Editor.Plugin.AttachablesDataGridViewParameters.AttachablesDataGridViewParameters()'],['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#a169521da74d35dad5bf31aa7073fcc86',1,'Aml.Editor.Plugin.AttachablesDataGridViewParameters.AttachablesDataGridViewParameters(string elementName, string filePath, bool addToFile)']]], + ['attributename_10',['AttributeName',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#aae6be1d86c3b36ada1ca2d229a62df75',1,'Aml::Editor::Plugin::ElectricalInterfaceParameters']]], + ['attributepath_11',['AttributePath',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a2da0dffa5a85f93c37da9b7c284ffc33',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.AttributePath()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a9750122c6e7b78f3a21fc4e89da8d7bc',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.AttributePath()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a12bdc7039d7f14b5358ae364947c0e78',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.AttributePath()']]], + ['attributes_12',['Attributes',['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#ab2a0e0dd77ffa6d715d70a5e112d3903',1,'Aml.Editor.Plugin.DataGridParameters.Attributes()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#ac1f19e7f6cfb0941b7ce630ca12a7c76',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.Attributes()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a526a65510795b641175bdcc3aa946b4b',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.Attributes()']]], + ['automationmldatatables_13',['AutomationMLDataTables',['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html',1,'Aml::Editor::Plugin']]], + ['automationmldatatables_2ecs_14',['AutomationMLDataTables.cs',['../_automation_m_l_data_tables_8cs.html',1,'']]], + ['editor_15',['Editor',['../namespace_aml_1_1_editor.html',1,'Aml']]], + ['plugin_16',['Plugin',['../namespace_aml_1_1_editor_1_1_plugin.html',1,'Aml::Editor']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_1.html b/SOURCE/Plugin/Code Documentation/html/search/all_1.html new file mode 100644 index 0000000..8eb215b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_1.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_1.js b/SOURCE/Plugin/Code Documentation/html/search/all_1.js new file mode 100644 index 0000000..5054286 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['buttonnumber_17',['ButtonNumber',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a60f3bd7a53a308a0963b9d603757c289',1,'Aml::Editor::Plugin::AnimationClass']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_10.html b/SOURCE/Plugin/Code Documentation/html/search/all_10.html new file mode 100644 index 0000000..6fd3a4a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_10.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_10.js b/SOURCE/Plugin/Code Documentation/html/search/all_10.js new file mode 100644 index 0000000..8010432 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_10.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['unit_172',['Unit',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a7be0e6cafa4b934c86e6a0d5c44ee8cb',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Unit()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a9277f25074496cfaff11f041441e1ec9',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Unit()']]], + ['units_173',['Units',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#a38a479b3e379cfdd431903504404d747',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.Units()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#ae1260c02a1e4e5a3f8a5dbace4df3192',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.Units()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a7a76f3f614c194a2b9b9276000faf5d2',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Units()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_11.html b/SOURCE/Plugin/Code Documentation/html/search/all_11.html new file mode 100644 index 0000000..f78343b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_11.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_11.js b/SOURCE/Plugin/Code Documentation/html/search/all_11.js new file mode 100644 index 0000000..8b003df --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_11.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['value_174',['Value',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a75676971f172722b3dd7a99bdf2f8b8a',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Value()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#ac58111d02e5a620cbd19818d544442ba',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Value()']]], + ['values_175',['Values',['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#aa56c2203849aa594e43637830a599014',1,'Aml.Editor.Plugin.DataGridParameters.Values()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#afad2f4d7970e790736854b23984fc600',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.Values()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a0aa068480b67328eaa773ed8c5d7d3f5',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.Values()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a4ae422487fb3066d2aea5b9842e0ca9f',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Values()']]], + ['vendorname_176',['vendorName',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a19ee5f6fa6e1d90d37cc3a8c876ef919',1,'Aml::Editor::Plugin::MWDevice']]], + ['version_177',['Version',['../class_aml_1_1_editor_1_1_plugin_1_1_about.html#a542282bf537e261e5294e607f88dc9e6',1,'Aml::Editor::Plugin::About']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_12.html b/SOURCE/Plugin/Code Documentation/html/search/all_12.html new file mode 100644 index 0000000..dd9ff1d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_12.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_12.js b/SOURCE/Plugin/Code Documentation/html/search/all_12.js new file mode 100644 index 0000000..4f49c45 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_12.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['webbrowser_178',['Webbrowser',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a3a43c6acd43cc44cd85ea42610db93e5',1,'Aml::Editor::Plugin::AnimationClass']]], + ['windowsizechanger_179',['WindowSizeChanger',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#ad95b75f8f5095b88ef3aa75d92e25263',1,'Aml.Editor.Plugin.AnimationClass.WindowSizeChanger(Panel panelNumber, Button buttonNumber)'],['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#ae9de03fc8ff4839dff7873a64d5eaf8c',1,'Aml.Editor.Plugin.AnimationClass.WindowSizeChanger(Panel panelNumber)']]], + ['words_180',['words',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#ae2dd3c44c8e8a9cc4ecb11cb7ad79682',1,'Aml::Editor::Plugin::AnimationClass']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_2.html b/SOURCE/Plugin/Code Documentation/html/search/all_2.html new file mode 100644 index 0000000..b26d916 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_2.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_2.js b/SOURCE/Plugin/Code Documentation/html/search/all_2.js new file mode 100644 index 0000000..2838363 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_2.js @@ -0,0 +1,38 @@ +var searchData= +[ + ['canclose_18',['CanClose',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a2f1de7716c88ed7de9cf7f716a0d4f76',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['changeamlfilepath_19',['ChangeAMLFilePath',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a26f6f59bc82891ccc525e509720d5302',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['changegui_20',['changeGUI',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a3426aa766858f85fbdcdc6f3cfe92dc1',1,'Aml.Editor.Plugin.ModellingWizard.changeGUI()'],['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#aa613a0bc4392c195c617dcd7aba257f5',1,'Aml.Editor.Plugin.MWController.ChangeGui()']]], + ['changeselectedobject_21',['ChangeSelectedObject',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a467688bd862ea1e99e204f6d3735ed1d',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['checkforattributesofcomponent_22',['CheckForAttributesOfComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#ad8e573b75dc40186f962fe62c047192f',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['checkforattributesofeclectricalconnectorpins_23',['CheckForAttributesOfEclectricalConnectorPins',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a1b72b959bcfef0f2112c6c548891fc8b',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['checkforattributesofexternaliterface_24',['CheckForAttributesOfExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a287538dfad55ab58ee81fa819efa5dd1',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['checkforattributesofreferencedclassname_25',['CheckForAttributesOfReferencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a018cf327c2e354cb04ead38c34307852',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName(InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a146489175fd769883842ca2c148f1a8c',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName(InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#af14e0365f069689e2a345384a1d88561',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName(RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#adc56320b0d72660f2f45cadc498edffd',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName(RoleFamilyType classType)']]], + ['checkforattributesofreferencedclassnameofexternaliterface_26',['CheckForAttributesOfReferencedClassNameofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a0acb853cf4f5cdb3c8c4a35c6a551756',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a9dff615a305d66eb984477ba92b043b9',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#abe0ec2875b120645b6b2810eea32e603',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#aa03bb4f0eca822618c6e590acd091d30',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface)']]], + ['checkforautomtioncomponent_27',['checkForAutomtionComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a23c4a5fcaa60e5b2de9f9d2c271fdb0e',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['checkforsamenametextofinternalattributes_28',['CheckForSameNameTextOfInternalAttributes',['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#a458fec8a343a700daeaa499ce499b5f3',1,'Aml::Editor::Plugin::AutomationMLDataTables']]], + ['ckeckfornestedattributesofcomponent_29',['CkeckForNestedAttributesOfComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a4021856bf9f4a11a141e4e3faa2a6c4a',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['ckeckfornestedattributesofelectricalconnectorpins_30',['CkeckForNestedAttributesOfElectricalConnectorPins',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#ad023edfb7d36334b2baee9f02e21a309',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['ckeckfornestedattributesofexternaliterface_31',['CkeckForNestedAttributesOfExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a7464e1841996b1f84bdd4f8223acde92',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['ckeckfornestedattributesofreferencedclassname_32',['CkeckForNestedAttributesOfReferencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a82cf799b61e58be9c68e92949fc7842e',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName(AttributeType attributeType, InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a0ee3cf6b377de457bec9874531dedc83',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName(InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ad712edf69757e816d68ecb2b500584e0',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName(RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a10b21544dd605907ae1b5de5f1523070',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName(AttributeType attributeType, RoleFamilyType classType)']]], + ['ckeckfornestedattributesofreferencedclassnameofexternaliterface_33',['CkeckForNestedAttributesOfReferencedClassNameofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ab83a891496cd97f72f4756335513b360',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a21e849724bea0e2528bc13522809aa04',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a93e56dee9780b0eb614ae9f63c654845',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a929b87c2d6ac8ff5bac7ef6438c7fba0',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface)']]], + ['classoflistsfromdatagridviews_34',['ClassOfListsFromDataGridViews',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a0e8a3323743c15f0d7a391d440214d8a',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ClassOfListsFromDataGridViews()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a88d3c0088d5f28a287ca5531a153ec0b',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ClassOfListsFromDataGridViews(string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath, string refBaseClassPath, string id, string referencedClassName)']]], + ['classoflistsfromdatagridviews_2ecs_35',['ClassOfListsFromDataGridViews.cs',['../_class_of_lists_from_data_grid_views_8cs.html',1,'']]], + ['classoflistsfromreferencefile_36',['ClassOfListsFromReferencefile',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a578795b95ac5f0363dd0f21153e49efb',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ClassOfListsFromReferencefile()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a54e9f428292f5dd6a6e9b5b335e00a6a',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ClassOfListsFromReferencefile(string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath, string refBaseClassPath, string id, string referencedClassName, CAEXSequence< RefSemanticType > refSemanticList, string supportesRoleClassType, string dataType)']]], + ['classoflistsfromreferencefile_2ecs_37',['ClassOfListsFromReferencefile.cs',['../_class_of_lists_from_referencefile_8cs.html',1,'']]], + ['clear_38',['clear',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a0c4099a413d2bf96ca8aacf75bee03e6',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['clearheadertabpagevaluesofelectricalinterfaces_39',['ClearHeaderTabPageValuesofElectricalInterfaces',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#ac3abe6c0e5635f553fca28615722a80f',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['clearheadertabpagevaluesofgenericdata_40',['ClearHeaderTabPageValuesofgenericData',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#af5ba2182ac553e9c73b532abb9aa6820',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['commands_41',['Commands',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#aa92890be9446ee5c87cc91739e41a5f0',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['connector_42',['Connector',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#ae654b44fdd0a058cd3a6f6eb8dc47969',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['connectorcode_43',['ConnectorCode',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#acc6774cd7ddc2b52dbe8f688a6211630',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['connectortype_44',['ConnectorType',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a17ebc9a1e5d2c756f22447f633174d20',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['copyfiles_45',['copyFiles',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a90291aedf55074223efa93204edb3dbb',1,'Aml::Editor::Plugin::MWData']]], + ['copyright_46',['CopyRight',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a97aa6ce9a7458c216785837491325e9d',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.CopyRight()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#ac76172d9552575c6f519859248c60788',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.CopyRight()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a9542dcb67cca638df6df6d853e878c36',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.CopyRight()']]], + ['createdatatablewithcolumns_47',['CreateDataTableWithColumns',['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#a09ab6e8a0fc0d12b1e1f681e22b237c9',1,'Aml.Editor.Plugin.AutomationMLDataTables.CreateDataTableWithColumns(DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< List< ClassOfListsFromReferencefile >>> pair)'],['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#afb66a5f37e2ade40f3f73967cfa3b65a',1,'Aml.Editor.Plugin.AutomationMLDataTables.CreateDataTableWithColumns(DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< ElectricalInterfaceParameters >> pair)']]], + ['createdevice_48',['CreateDevice',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a71cc9a3da731421b4b58bf0d5902471d',1,'Aml.Editor.Plugin.MWData.CreateDevice()'],['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0a08139fc253db7964964002703bda052e',1,'Aml.Editor.Plugin.MWController.CreateDevice()']]], + ['createdeviceonclick_49',['CreateDeviceOnClick',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#ad0432669e3a6e29aadfb7892746b5068',1,'Aml::Editor::Plugin::MWController']]], + ['createdocumentref_50',['createDocumentRef',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a3d43709c34fb4171f4999a72bfc439b2',1,'Aml::Editor::Plugin::MWData']]], + ['createinterface_51',['CreateInterface',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0afd44e4ee14bded07d2f3dff42dea0f6e',1,'Aml::Editor::Plugin::MWController']]], + ['createpictureref_52',['createPictureRef',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#ac060052e0d94500e5ed2c3747790195e',1,'Aml::Editor::Plugin::MWData']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_3.html b/SOURCE/Plugin/Code Documentation/html/search/all_3.html new file mode 100644 index 0000000..b61b96f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_3.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_3.js b/SOURCE/Plugin/Code Documentation/html/search/all_3.js new file mode 100644 index 0000000..1be5750 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_3.js @@ -0,0 +1,34 @@ +var searchData= +[ + ['datagridattachablesparametrslist_53',['dataGridAttachablesParametrsList',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a0a3b60dd4bea5558566aa7a50e0f91b5',1,'Aml::Editor::Plugin::MWDevice']]], + ['datagridparameters_54',['DataGridParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html',1,'Aml.Editor.Plugin.DataGridParameters'],['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#adddca2861fb0e123d8d2c02a296cee15',1,'Aml.Editor.Plugin.DataGridParameters.DataGridParameters()'],['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#a8eaebdff6d41dea7a8b7033674d1f981',1,'Aml.Editor.Plugin.DataGridParameters.DataGridParameters(string refSemantic, string attributes, string value)']]], + ['datagridparameterslists_55',['dataGridParametersLists',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a6038813fa356059a4fdc94c32ea79e47',1,'Aml::Editor::Plugin::MWDevice']]], + ['datagridview_56',['dataGridView',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a30e0efbd0cfdcc718d2bb26f8dc3a0f8',1,'Aml::Editor::Plugin::AnimationClass']]], + ['datatype_57',['DataType',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a12110843109248f422b15548d9c3c1d2',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.DataType()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a60d6e9588dcad17528bd134169533c17',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.DataType()']]], + ['default_58',['Default',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#ad3b50c5b8cc491af905f895449cc3ab2',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Default()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#ae77f5e7de1578ebd1d13fc1875b00f2d',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Default()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a476b2378ae234a5108b9748169a27a34',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Default()']]], + ['description_59',['Description',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a6baeec084c45f3c534c3d99383ec5611',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Description()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a05fc8dcadd1ee497fb5211428585312e',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Description()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#ae675816f7be5d22f23bfd93dc41bb078',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Description()']]], + ['devicedescription_60',['DeviceDescription',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html',1,'Aml.Editor.Plugin.DeviceDescription'],['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a43910d4963765bbb83fb00f8f60b3149',1,'Aml.Editor.Plugin.DeviceDescription.DeviceDescription()'],['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#aeaaa5d48d1117d26fce90474dea55a5b',1,'Aml.Editor.Plugin.DeviceDescription.DeviceDescription(MWController mWController)'],['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0a5d2adcfd71637096d3d16648971c33c5',1,'Aml.Editor.Plugin.MWController.DeviceDescription()']]], + ['devicedescription_2ecs_61',['DeviceDescription.cs',['../_device_description_8cs.html',1,'']]], + ['devicedescription_2edesigner_2ecs_62',['DeviceDescription.Designer.cs',['../_device_description_8_designer_8cs.html',1,'']]], + ['devicename_63',['deviceName',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a1039c54203b3bba6dc9b348ba2c1c876',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictioanryofelectricalconnectorpintype_64',['DictioanryofElectricalConnectorPinType',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a08ad7a3a1907fb5545e71a02eaf20d43',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['dictioanryofidofinterfaceclasslibrarynodes_65',['DictioanryOfIDofInterfaceClassLibraryNodes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ae2a9f746ba71aac0e1af3a3e6576b842',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforexternalinterfacesinstanceattributesofinterfaceclasslib_66',['DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ac19b278b2e5411e59f04885d24418de9',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforexternalinterfacesinstancesattributesofroleclasslib_67',['DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a574ca9332b8d007675793598ad421fb8',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforexternalinterfacesunderinterfaceclassinelectricalinterfaces_68',['DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a0e196b056a21d36a26c48303178d0fb9',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictionaryforexternalinterfacesunderroleclassofcomponent_69',['DictionaryForExternalInterfacesUnderRoleClassofComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#ab3a9f9a95e979c569393c41f137b37d3',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictionaryforinterfaceclassesinelectricalinterfaces_70',['DictionaryForInterfaceClassesInElectricalInterfaces',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a34513f92d4611fa73fb98ca4607b111b',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictionaryforinterfaceclassinstancesattributes_71',['DictionaryForInterfaceClassInstancesAttributes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a05463d55d6ccbd8379a158a72bb3f595',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforroleclassinstanceattributes_72',['DictionaryForRoleClassInstanceAttributes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#aefaaeac579bf73534e5101b4f4f52dcd',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforroleclassofcomponent_73',['DictionaryForRoleClassofComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a619c83acdfc5baae1c1d363fb3989381',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictionaryofelectricalconnectortype_74',['DictionaryofElectricalConnectorType',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a0c343579c1bbd8eed0668d8ce4dcee0c',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['dictionaryofroleclassattributes_75',['dictionaryofRoleClassattributes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ad15f0a5bc1513eb4379ff6d5ec7d8c32',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryofroles_76',['DictionaryofRoles',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a1e8ef567cfba2b43fac8afcdd3abb6b2',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['dictionaryofrolesforautomationcomponenet_77',['DictionaryofRolesforAutomationComponenet',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a7e22c7aeba504efaeb89a38ce8bdbe71',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['dictofelectricalinterfaceparameters_78',['DictofElectricalInterfaceParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#aec64d8e95546e10e503e977b93b8949e',1,'Aml::Editor::Plugin::MWDevice']]], + ['dispalysemanticbtn_79',['DispalySemanticBtn',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#aa7de242b566e80898c52fe89d19626b0',1,'Aml::Editor::Plugin::AnimationClass']]], + ['displaybtn_80',['DisplayBtn',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a9c5863b36d871cca1a96d53be4637c65',1,'Aml::Editor::Plugin::AnimationClass']]], + ['displayname_81',['DisplayName',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a6d63f793ebaa384ba4bbf9903f06fdaa',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['dispose_82',['Dispose',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a0237a062c9718be0cc5bbdb61342ab0b',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['dragging_83',['dragging',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#ab5a4c5637056e4c6d2649fa7373839fa',1,'Aml::Editor::Plugin::DeviceDescription']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_4.html b/SOURCE/Plugin/Code Documentation/html/search/all_4.html new file mode 100644 index 0000000..06de155 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_4.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_4.js b/SOURCE/Plugin/Code Documentation/html/search/all_4.js new file mode 100644 index 0000000..1486e41 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_4.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['electricalinterfaceinstances_84',['ElectricalInterfaceInstances',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a65ccfd989b124d2e257b6f42578db336',1,'Aml::Editor::Plugin::MWDevice']]], + ['electricalinterfaceparameters_85',['ElectricalInterfaceParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a64129081230a1ce2dedac0522336001a',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.ElectricalInterfaceParameters()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a2425301b26c5eafbb023537874f81656',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.ElectricalInterfaceParameters(string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath)']]], + ['electricalinterfaces_86',['ElectricalInterfaces',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a98628a6b85464ccfb27fb083da7f1dfd',1,'Aml::Editor::Plugin::MWDevice']]], + ['electricalparameters_87',['ElectricalParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html',1,'Aml.Editor.Plugin.ElectricalParameters'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a1dcaebc309e32a207a7a49982aaaeed3',1,'Aml.Editor.Plugin.ElectricalParameters.ElectricalParameters()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a975986d2d8141fc680be571a81b94ee4',1,'Aml.Editor.Plugin.ElectricalParameters.ElectricalParameters(string connector, string connectorCode, string connectorType, string pins, string lis)']]], + ['electricalparametersinelectricaldatadatagridview_88',['ElectricalParametersInElectricalDataDataGridView',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#aeb0bd8fee678d1d2b2cb17ccca492b32',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ElectricalParametersInElectricalDataDataGridView()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#ac6d42645334f211b7612db4c268b847e',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ElectricalParametersInElectricalDataDataGridView(string referenceID, string attribute, string values, string units)']]], + ['elementname_89',['ElementName',['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#aace740ed93ef1af8570d1cc2c244ad70',1,'Aml::Editor::Plugin::AttachablesDataGridViewParameters']]], + ['environment_90',['environment',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a252e8e2a021284c3cdd5d8624179958b',1,'Aml::Editor::Plugin::MWDevice']]], + ['executecommand_91',['ExecuteCommand',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a4dc6bf714b86a1d9be420637c23a1307',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_5.html b/SOURCE/Plugin/Code Documentation/html/search/all_5.html new file mode 100644 index 0000000..2544c4e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_5.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_5.js b/SOURCE/Plugin/Code Documentation/html/search/all_5.js new file mode 100644 index 0000000..9e2253e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['filename_92',['fileName',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a3663feace37ced657ce078295d2e4759',1,'Aml::Editor::Plugin::MWDevice']]], + ['filepath_93',['FilePath',['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#a9f5245fd7be3ec1af0400bc0280279c0',1,'Aml.Editor.Plugin.AttachablesDataGridViewParameters.FilePath()'],['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a6e04054395d64c6c5947600cce015f6d',1,'Aml.Editor.Plugin.MWDevice.filepath()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_6.html b/SOURCE/Plugin/Code Documentation/html/search/all_6.html new file mode 100644 index 0000000..43f14ea --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_6.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_6.js b/SOURCE/Plugin/Code Documentation/html/search/all_6.js new file mode 100644 index 0000000..7e8758f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['getdevicedescriptionform_94',['GetDeviceDescriptionForm',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#adba55c4a5135c58c69a0d92d495a0ad1',1,'Aml::Editor::Plugin::MWController']]], + ['gsd_95',['GSD',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a932def9f5f257f8c1cbc4949e549d233a8e78dfecfc3872d38eb7f78c8427987a',1,'Aml::Editor::Plugin::MWData']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_7.html b/SOURCE/Plugin/Code Documentation/html/search/all_7.html new file mode 100644 index 0000000..af52f82 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_7.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_7.js b/SOURCE/Plugin/Code Documentation/html/search/all_7.js new file mode 100644 index 0000000..1034b53 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_7.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['id_96',['ID',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#adc03aaee82e06b704b1c350a6833f611',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ID()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a349e791c119e8a3e4afa9a9b9ccf46cc',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ID()']]], + ['importfile_97',['importFile',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#ad2f99785d2a3b068dd3ce6c1d7f7fceb',1,'Aml::Editor::Plugin::MWController']]], + ['importgsd2aml_98',['ImportGSD2AML',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a629fe82e27f15bbd5616e78c1e3f41bb',1,'Aml::Editor::Plugin::MWData']]], + ['importiodd2aml_99',['ImportIODD2AML',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a9968abc7dcc16187dd2f604d8c3a927e',1,'Aml::Editor::Plugin::MWData']]], + ['initialdockposition_100',['InitialDockPosition',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#ad191779a3806423c951cf6839300c6e9',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['interneturl_101',['interneturl',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a89057897b9fb2106ee38d14a2ff070aa',1,'Aml::Editor::Plugin::MWData']]], + ['iodd_102',['IODD',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a932def9f5f257f8c1cbc4949e549d233a39b9e3b34cacf78c2c21cf073949a2ad',1,'Aml::Editor::Plugin::MWData']]], + ['isactive_103',['IsActive',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a2bd037ce5c76ad9051a995400e28a75e',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['isautoactive_104',['IsAutoActive',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a9ff5d55c0dd2f4113e5a9d41b5418c4a',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['isreactive_105',['IsReactive',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a6b3b6e17a0159a4c6045c2b8751e2fc5',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['isreadonly_106',['IsReadonly',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a9700716878b0e98f507d30b396e2872f',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_8.html b/SOURCE/Plugin/Code Documentation/html/search/all_8.html new file mode 100644 index 0000000..cf2b5df --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_8.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_8.js b/SOURCE/Plugin/Code Documentation/html/search/all_8.js new file mode 100644 index 0000000..69c4305 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_8.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['listofelectricaldatadatagridviewparameters_107',['listofElectricalDataDataGridViewParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#ab601f8d815e184180d6ffb5e08c6d5e6',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['listofelectricalinterfaceparameters_108',['listofElectricalInterfaceParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a851204d24146ab1eff048bfe0a44010d',1,'Aml::Editor::Plugin::MWDevice']]], + ['listofpininfodatagridviewparameters_109',['listOfPinInfoDataGridViewParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#aa298f8f20aa8eb03430eacec9d097f5b',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['listwithuriconvertedtostring_110',['listWithURIConvertedToString',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a3c056d06b76f10cc782e8b4862810e5f',1,'Aml::Editor::Plugin::MWDevice']]], + ['loadstandardlibrary_111',['loadStandardLibrary',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#ab9575cb89491e4d3f71d8f94b58b5cc3',1,'Aml::Editor::Plugin::DeviceDescription']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_9.html b/SOURCE/Plugin/Code Documentation/html/search/all_9.html new file mode 100644 index 0000000..690785a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_9.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_9.js b/SOURCE/Plugin/Code Documentation/html/search/all_9.js new file mode 100644 index 0000000..a1901c3 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_9.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['manualopener_112',['ManualOpener',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a77d8bf72f7d54a50df736fee1006836d',1,'Aml::Editor::Plugin::AnimationClass']]], + ['modellingwizardplugin_113',['ModellingWizardPlugin',['../md__r_e_a_d_m_e.html',1,'']]], + ['modellingwizard_114',['ModellingWizard',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html',1,'Aml.Editor.Plugin.ModellingWizard'],['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a85e08850a3ce8148f119f8e3d14f6d02',1,'Aml.Editor.Plugin.ModellingWizard.ModellingWizard()']]], + ['modellingwizard_2examl_2ecs_115',['ModellingWizard.xaml.cs',['../_modelling_wizard_8xaml_8cs.html',1,'']]], + ['mwcontroller_116',['MWController',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html',1,'Aml.Editor.Plugin.MWController'],['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#a9c87165813d6f480fb4d1141de016565',1,'Aml.Editor.Plugin.MWController.MWController()']]], + ['mwcontroller_2ecs_117',['MWController.cs',['../_m_w_controller_8cs.html',1,'']]], + ['mwdata_118',['MWData',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html',1,'Aml.Editor.Plugin.MWData'],['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a767c914fb975ac022140ea314fa8a425',1,'Aml.Editor.Plugin.MWData.MWData()']]], + ['mwdata_2ecs_119',['MWData.cs',['../_m_w_data_8cs.html',1,'']]], + ['mwdevice_120',['MWDevice',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html',1,'Aml::Editor::Plugin']]], + ['mwdevice_2ecs_121',['MWDevice.cs',['../_m_w_device_8cs.html',1,'']]], + ['mwfiletype_122',['MWFileType',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a932def9f5f257f8c1cbc4949e549d233',1,'Aml::Editor::Plugin::MWData']]], + ['mwguitype_123',['MWGUIType',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0',1,'Aml::Editor::Plugin::MWController']]], + ['mwobject_124',['MWObject',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.html',1,'Aml::Editor::Plugin::MWData']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_a.html b/SOURCE/Plugin/Code Documentation/html/search/all_a.html new file mode 100644 index 0000000..f2f3d3a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_a.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_a.js b/SOURCE/Plugin/Code Documentation/html/search/all_a.js new file mode 100644 index 0000000..ce1c5c3 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['name_125',['Name',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a2b05161d540d7cd91ae360c5d3ce931d',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Name()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a615ebad7839429334256ad90d985b1e3',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Name()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_b.html b/SOURCE/Plugin/Code Documentation/html/search/all_b.html new file mode 100644 index 0000000..14f3403 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_b.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_b.js b/SOURCE/Plugin/Code Documentation/html/search/all_b.js new file mode 100644 index 0000000..47dbf6c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['openfiledialog_126',['OpenFileDialog',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a4fba2da1c2015740334e10dd50d1fb4a',1,'Aml.Editor.Plugin.AnimationClass.OpenFileDialog(TextBox textboxName)'],['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#af622bb4ee8c59d14abad92dd8ceb976e',1,'Aml.Editor.Plugin.AnimationClass.OpenFileDialog(TextBox textboxName, Button pdfDisplayBtn)'],['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#aac584071d94916c2df7d91bbe39e5c6c',1,'Aml.Editor.Plugin.AnimationClass.OpenFileDialog(TextBox textboxName, PictureBox pictureBoxNumber)'],['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a9aecddc8211b6ef2cb45103ee8cee319',1,'Aml.Editor.Plugin.AnimationClass.OpenFileDialog(TextBox textboxName, PictureBox pictureBoxNumber, Button displayButton)']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_c.html b/SOURCE/Plugin/Code Documentation/html/search/all_c.html new file mode 100644 index 0000000..da60ab8 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_c.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_c.js b/SOURCE/Plugin/Code Documentation/html/search/all_c.js new file mode 100644 index 0000000..7cfb5b2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_c.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['packagename_127',['PackageName',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a333ba75a3b713bdbae46969df659d06b',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['paneimage_128',['PaneImage',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#ae6285059764c32a912289a8f0c97262d',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['panelnumber_129',['PanelNumber',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a978d71a487ceb1fab343b33afca66775',1,'Aml::Editor::Plugin::AnimationClass']]], + ['pictureboxnumber_130',['PictureboxNumber',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a07f73e83f366c180d868edb155629349',1,'Aml::Editor::Plugin::AnimationClass']]], + ['pinnumber_131',['PinNumber',['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a0dc6c5df881ffe504570c7d74ad19fcc',1,'Aml::Editor::Plugin::PinParametersInPinInfoDataGridView']]], + ['pinparametersinpininfodatagridview_132',['PinParametersInPinInfoDataGridView',['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a2b4f579583593fcd36ca4429849b3a92',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.PinParametersInPinInfoDataGridView()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a20c1ba8d8e62d2958a2a784ea993f12a',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.PinParametersInPinInfoDataGridView(string pinNumber, string referenceID, string attribute, string values, string units)']]], + ['pins_133',['Pins',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#ac98fb3c0870ade0b85413ca8d0cfeaa0',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['pluginactivated_134',['PluginActivated',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a5acb66f94a2026857791dcb495e200df',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['pluginterminated_135',['PluginTerminated',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a3da02aecef3324c9c3b65a1b8fa73f6c',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['printexternalinterfacenodes_136',['PrintExternalInterfaceNodes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a84270fba66af2b2c4b1e550e9c232076',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.PrintExternalInterfaceNodes(CAEXDocument document, TreeNode oParentNode, ExternalInterfaceType classType, InterfaceFamilyType InterafceclassType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a1b60137e70854d4b6988bb53feefbc02',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.PrintExternalInterfaceNodes(CAEXDocument document, TreeNode oParentNode, ExternalInterfaceType classType, RoleFamilyType RoleclassType)']]], + ['printnodesrecursiveininterfaceclasslib_137',['PrintNodesRecursiveInInterfaceClassLib',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a2d048625f052a65bd1a69c2622b013c3',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['printnodesrecursiveinroleclasslib_138',['PrintNodesRecursiveInRoleClassLib',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a885dc0dac3ebebe9a4e264860d6c1bcf',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['publishautomationmlfileandobject_139',['PublishAutomationMLFileAndObject',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#acedb8a1abb912c96703fd73d3267bcea',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_d.html b/SOURCE/Plugin/Code Documentation/html/search/all_d.html new file mode 100644 index 0000000..bc376fe --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_d.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_d.js b/SOURCE/Plugin/Code Documentation/html/search/all_d.js new file mode 100644 index 0000000..ce235a7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_d.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['readme_2emd_140',['README.md',['../_r_e_a_d_m_e_8md.html',1,'']]], + ['refbaseclasspath_141',['RefBaseClassPath',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a24c19702edd78b6628d70b516c6e6ab8',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.RefBaseClassPath()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a95d7023958dcaba928b0282405f0203b',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.RefBaseClassPath()']]], + ['reference_142',['Reference',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a16935dd08fa0c1b25410b7297aa5760c',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Reference()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#af7f0d4fd668472123a6aa76ec3d41bdc',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Reference()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a91c2d8c6f81ab6e64b3f735e7d8f49e0',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Reference()']]], + ['referencedclassname_143',['referencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a614e280498e0017b87a23031a745b879',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.referencedClassName()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a168e93de06adae33dd337416674d98d4',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ReferencedClassName()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a009c972b83ad9845970ac9fede52fbad',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ReferencedClassName()']]], + ['referenceid_144',['ReferenceID',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#a7ec764e68408965696d6e63a4f5b1940',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ReferenceID()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#aaa63e321a2e027653a6ec7ff00e57af5',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.ReferenceID()']]], + ['refsemanticlist_145',['RefSemanticList',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a17b87abdd2b4e792aeff7d8b3d0cdfb4',1,'Aml::Editor::Plugin::ClassOfListsFromReferencefile']]], + ['refsemantics_146',['RefSemantics',['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#abbec7835f2cbd9be8123ddd041883ad2',1,'Aml::Editor::Plugin::DataGridParameters']]], + ['reloadobjects_147',['ReloadObjects',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a4311a3ca5fb875e5035bc029291e5920',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['row_148',['row',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#aca047e64073b4250242f0b8cea862efe',1,'Aml::Editor::Plugin::DeviceDescription']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_e.html b/SOURCE/Plugin/Code Documentation/html/search/all_e.html new file mode 100644 index 0000000..2e3c74d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_e.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_e.js b/SOURCE/Plugin/Code Documentation/html/search/all_e.js new file mode 100644 index 0000000..1971773 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_e.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['searchamlcomponentfile_149',['SearchAMLComponentFile',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html',1,'Aml.Editor.Plugin.SearchAMLComponentFile'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#abf1e485c8340a4ace50c1f3528ac31c6',1,'Aml.Editor.Plugin.SearchAMLComponentFile.SearchAMLComponentFile()']]], + ['searchamlcomponentfile_2ecs_150',['SearchAMLComponentFile.cs',['../_search_a_m_l_component_file_8cs.html',1,'']]], + ['searchamllibraryfile_151',['SearchAMLLibraryFile',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html',1,'Aml.Editor.Plugin.SearchAMLLibraryFile'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#aec38502ce275c149500a135b82f3d4e9',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchAMLLibraryFile()']]], + ['searchamllibraryfile_2ecs_152',['SearchAMLLibraryFile.cs',['../_search_a_m_l_library_file_8cs.html',1,'']]], + ['searchattributesinsideattributesofelectricconnectortype_153',['SearchAttributesInsideAttributesOFElectricConnectorType',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a05f0351fc99bd19136a3fc6888506020',1,'Aml::Editor::Plugin::MWData']]], + ['searchforattributesinsideattributesofautomationcomponent_154',['SearchForAttributesInsideAttributesofAutomationComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a27f6de7395f7fd5dbbddcbc3655dc35b',1,'Aml::Editor::Plugin::MWData']]], + ['searchforcomponentnames_155',['searchForComponentNames',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a0cea107ee651f7b9567bf305f26c2918',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['searchforinterfaceclassesinsideinterfaceclass_156',['SearchForInterfaceClassesInsideInterfaceClass',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a59edcf46c97b643baec157aa2904bb62',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClass(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a09a785a7ce03cbcea1e305d2144b2963',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClass(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName)']]], + ['searchforinterfaceclassesinsideinterfaceclassofexternaliterface_157',['SearchForInterfaceClassesInsideInterfaceClassofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a74c126142b223c61a0315c31c1f0abe4',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a171c7b416129418d0b3c27514e98410c',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface)']]], + ['searchforreferencedclassname_158',['SearchForReferencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a10fd9a1fcbf4033415354765a7b5223e',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassName(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a5aa1ede5fe9adae926187baa8a33900e',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassName(CAEXDocument doc, string referencedClassName, RoleFamilyType classType)']]], + ['searchforreferencedclassnameofexternaliterface_159',['SearchForReferencedClassNameofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a5c19581d6a736a2a158b2645ca4630d7',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a7c6096f38f03c5e7e2e3b06a7e139017',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface)']]], + ['selectlibrary_160',['selectLibrary',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a925af3db84bdc0f89f6285c989c073cc',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['semantic_161',['Semantic',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#add70e060fa6395e05d9f60443304b7dd',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Semantic()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a3dc85cafdc162bfdedba8720b654ee3f',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Semantic()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#adb09787efcf00be86699ce8fa6479361',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Semantic()']]], + ['start_162',['Start',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0aa6122a65eaa676f700ae68d393054a37',1,'Aml::Editor::Plugin::MWController']]], + ['storeeachattributevalueinlistofcomponent_163',['StoreEachAttributeValueInListOfComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a9831cae9b9d5baec3afedd3c3a4266b8',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfComponent(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#ae6987825477c5d277db9f57d84c3afae',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfComponent(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)']]], + ['storeeachattributevalueinlistofelectricalconnectorpins_164',['StoreEachAttributeValueInListOfElectricalConnectorPins',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a801781b46981a3776adbca80fd5be541',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfElectricalConnectorPins(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a77f257e6118ee1af16421c90f2d72a95',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfElectricalConnectorPins(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)']]], + ['storeeachattributevalueinlistofexternaliterface_165',['StoreEachAttributeValueInListOfExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a33431d164f3f97f60fe6b316e266ed16',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfExternalIterface(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a35823b5736745c6982ad851270b3d09f',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfExternalIterface(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface)']]], + ['storeeachattributevalueinlistofreferencedclassname_166',['StoreEachAttributeValueInListOfReferencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a11a5f85235f45a9dd490ed80f116583c',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, InterfaceFamilyType classType, AttributeType attributeType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ae8c186a47b1131b50fb6555f6ab169d0',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a2c4569929beec8af516a2fe28da3bbdc',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, RoleFamilyType classType, AttributeType attributeType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a56dea9bce7b957ddbb7506f5b84ad236',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType)']]], + ['storeeachattributevalueinlistofreferencedclassnameofexternaliterface_167',['StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a8bf5d8868fda86a13eaa8efe5f8c6f7b',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a0048a13cd6298b8b942e52b04aedc624',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a4d5da760852f65985eae02da24f5df06',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a66963e3c258c2bcc8f51353861a2bae6',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)']]], + ['supportesroleclasstype_168',['SupportesRoleClassType',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#aa20d2e52af2ab5bcddd720acb789b2d0',1,'Aml::Editor::Plugin::ClassOfListsFromReferencefile']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_f.html b/SOURCE/Plugin/Code Documentation/html/search/all_f.html new file mode 100644 index 0000000..246f8ab --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_f.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/all_f.js b/SOURCE/Plugin/Code Documentation/html/search/all_f.js new file mode 100644 index 0000000..659a7ef --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/all_f.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['terminateplugin_169',['TerminatePlugin',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a1754b39a06b47d1b1f9010f6bcbbffde',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['textboxname_170',['TextboxName',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a19dcafe11285ec11f235d3c84e765151',1,'Aml::Editor::Plugin::AnimationClass']]], + ['tostring_171',['ToString',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a44a20c90a03807c981772a574a1d9eca',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a7d76b5c340287155248d3cd6275585b0',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#a4e5626067de539c4e0d8c7c642ebb12a',1,'Aml.Editor.Plugin.DataGridParameters.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a943d71e879a36ccbc5a9fbaa021bfe7e',1,'Aml.Editor.Plugin.ElectricalParameters.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#aba4c25ac5e517f9f360d5501767bcbfd',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#aabde8d8400da538c0d695e3f2a13afcc',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#ac56d0c84695e18c0c8793ff63dff0644',1,'Aml.Editor.Plugin.AttachablesDataGridViewParameters.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a110a9f1c713de6edc31a590e846aeb36',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.ToString()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_0.html b/SOURCE/Plugin/Code Documentation/html/search/classes_0.html new file mode 100644 index 0000000..f7e4c14 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_0.js b/SOURCE/Plugin/Code Documentation/html/search/classes_0.js new file mode 100644 index 0000000..fab9d81 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_0.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['about_181',['About',['../class_aml_1_1_editor_1_1_plugin_1_1_about.html',1,'Aml::Editor::Plugin']]], + ['animationclass_182',['AnimationClass',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html',1,'Aml::Editor::Plugin']]], + ['attachablesdatagridviewparameters_183',['AttachablesDataGridViewParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html',1,'Aml::Editor::Plugin']]], + ['automationmldatatables_184',['AutomationMLDataTables',['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html',1,'Aml::Editor::Plugin']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_1.html b/SOURCE/Plugin/Code Documentation/html/search/classes_1.html new file mode 100644 index 0000000..c7ff4b3 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_1.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_1.js b/SOURCE/Plugin/Code Documentation/html/search/classes_1.js new file mode 100644 index 0000000..c5698e7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['classoflistsfromdatagridviews_185',['ClassOfListsFromDataGridViews',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html',1,'Aml::Editor::Plugin']]], + ['classoflistsfromreferencefile_186',['ClassOfListsFromReferencefile',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html',1,'Aml::Editor::Plugin']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_2.html b/SOURCE/Plugin/Code Documentation/html/search/classes_2.html new file mode 100644 index 0000000..0d1e8a0 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_2.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_2.js b/SOURCE/Plugin/Code Documentation/html/search/classes_2.js new file mode 100644 index 0000000..a15ea55 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_2.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['datagridparameters_187',['DataGridParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html',1,'Aml::Editor::Plugin']]], + ['devicedescription_188',['DeviceDescription',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html',1,'Aml::Editor::Plugin']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_3.html b/SOURCE/Plugin/Code Documentation/html/search/classes_3.html new file mode 100644 index 0000000..2102545 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_3.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_3.js b/SOURCE/Plugin/Code Documentation/html/search/classes_3.js new file mode 100644 index 0000000..c19179e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_3.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['electricalinterfaceparameters_189',['ElectricalInterfaceParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html',1,'Aml::Editor::Plugin']]], + ['electricalparameters_190',['ElectricalParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html',1,'Aml::Editor::Plugin']]], + ['electricalparametersinelectricaldatadatagridview_191',['ElectricalParametersInElectricalDataDataGridView',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html',1,'Aml::Editor::Plugin']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_4.html b/SOURCE/Plugin/Code Documentation/html/search/classes_4.html new file mode 100644 index 0000000..095ab59 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_4.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_4.js b/SOURCE/Plugin/Code Documentation/html/search/classes_4.js new file mode 100644 index 0000000..18deaa7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_4.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['modellingwizard_192',['ModellingWizard',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html',1,'Aml::Editor::Plugin']]], + ['mwcontroller_193',['MWController',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html',1,'Aml::Editor::Plugin']]], + ['mwdata_194',['MWData',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html',1,'Aml::Editor::Plugin']]], + ['mwdevice_195',['MWDevice',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html',1,'Aml::Editor::Plugin']]], + ['mwobject_196',['MWObject',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.html',1,'Aml::Editor::Plugin::MWData']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_5.html b/SOURCE/Plugin/Code Documentation/html/search/classes_5.html new file mode 100644 index 0000000..fc9cdc9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_5.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_5.js b/SOURCE/Plugin/Code Documentation/html/search/classes_5.js new file mode 100644 index 0000000..d7290a0 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['pinparametersinpininfodatagridview_197',['PinParametersInPinInfoDataGridView',['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html',1,'Aml::Editor::Plugin']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_6.html b/SOURCE/Plugin/Code Documentation/html/search/classes_6.html new file mode 100644 index 0000000..1ecfddd --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_6.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/classes_6.js b/SOURCE/Plugin/Code Documentation/html/search/classes_6.js new file mode 100644 index 0000000..c553ccc --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/classes_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['searchamlcomponentfile_198',['SearchAMLComponentFile',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html',1,'Aml::Editor::Plugin']]], + ['searchamllibraryfile_199',['SearchAMLLibraryFile',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html',1,'Aml::Editor::Plugin']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/close.png b/SOURCE/Plugin/Code Documentation/html/search/close.png new file mode 100644 index 0000000000000000000000000000000000000000..9342d3dfeea7b7c4ee610987e717804b5a42ceb9 GIT binary patch literal 273 zcmV+s0q*{ZP)4(RlMby96)VwnbG{ zbe&}^BDn7x>$<{ck4zAK-=nT;=hHG)kmplIF${xqm8db3oX6wT3bvp`TE@m0cg;b) zBuSL}5?N7O(iZLdAlz@)b)Rd~DnSsSX&P5qC`XwuFwcAYLC+d2>+1(8on;wpt8QIC X2MT$R4iQDd00000NkvXXu0mjfia~GN literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/search/enums_0.html b/SOURCE/Plugin/Code Documentation/html/search/enums_0.html new file mode 100644 index 0000000..9669700 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enums_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/enums_0.js b/SOURCE/Plugin/Code Documentation/html/search/enums_0.js new file mode 100644 index 0000000..f4639d7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enums_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['mwfiletype_292',['MWFileType',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a932def9f5f257f8c1cbc4949e549d233',1,'Aml::Editor::Plugin::MWData']]], + ['mwguitype_293',['MWGUIType',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0',1,'Aml::Editor::Plugin::MWController']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_0.html b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_0.html new file mode 100644 index 0000000..9286248 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_0.js b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_0.js new file mode 100644 index 0000000..ab5c8e1 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['createdevice_294',['CreateDevice',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0a08139fc253db7964964002703bda052e',1,'Aml::Editor::Plugin::MWController']]], + ['createinterface_295',['CreateInterface',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0afd44e4ee14bded07d2f3dff42dea0f6e',1,'Aml::Editor::Plugin::MWController']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_1.html b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_1.html new file mode 100644 index 0000000..e22a79f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_1.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_1.js b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_1.js new file mode 100644 index 0000000..7f2b92e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['devicedescription_296',['DeviceDescription',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0a5d2adcfd71637096d3d16648971c33c5',1,'Aml::Editor::Plugin::MWController']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_2.html b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_2.html new file mode 100644 index 0000000..01a77bf --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_2.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_2.js b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_2.js new file mode 100644 index 0000000..cf8b9b3 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['gsd_297',['GSD',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a932def9f5f257f8c1cbc4949e549d233a8e78dfecfc3872d38eb7f78c8427987a',1,'Aml::Editor::Plugin::MWData']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_3.html b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_3.html new file mode 100644 index 0000000..4e761d6 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_3.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_3.js b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_3.js new file mode 100644 index 0000000..9c46047 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['iodd_298',['IODD',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a932def9f5f257f8c1cbc4949e549d233a39b9e3b34cacf78c2c21cf073949a2ad',1,'Aml::Editor::Plugin::MWData']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_4.html b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_4.html new file mode 100644 index 0000000..e2977a0 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_4.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/enumvalues_4.js b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_4.js new file mode 100644 index 0000000..715c2c9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/enumvalues_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['start_299',['Start',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#add13bd390b8d39fee5fb2b73d85ec6b0aa6122a65eaa676f700ae68d393054a37',1,'Aml::Editor::Plugin::MWController']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/events_0.html b/SOURCE/Plugin/Code Documentation/html/search/events_0.html new file mode 100644 index 0000000..46e307b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/events_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/events_0.js b/SOURCE/Plugin/Code Documentation/html/search/events_0.js new file mode 100644 index 0000000..7bd940a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/events_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['pluginactivated_377',['PluginActivated',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a5acb66f94a2026857791dcb495e200df',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['pluginterminated_378',['PluginTerminated',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a3da02aecef3324c9c3b65a1b8fa73f6c',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_0.html b/SOURCE/Plugin/Code Documentation/html/search/files_0.html new file mode 100644 index 0000000..737608e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_0.js b/SOURCE/Plugin/Code Documentation/html/search/files_0.js new file mode 100644 index 0000000..a2c0a73 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_0.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['about_2examl_2ecs_203',['About.xaml.cs',['../_about_8xaml_8cs.html',1,'']]], + ['animationclass_2ecs_204',['AnimationClass.cs',['../_animation_class_8cs.html',1,'']]], + ['automationmldatatables_2ecs_205',['AutomationMLDataTables.cs',['../_automation_m_l_data_tables_8cs.html',1,'']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_1.html b/SOURCE/Plugin/Code Documentation/html/search/files_1.html new file mode 100644 index 0000000..f27a62d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_1.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_1.js b/SOURCE/Plugin/Code Documentation/html/search/files_1.js new file mode 100644 index 0000000..7cd4166 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['classoflistsfromdatagridviews_2ecs_206',['ClassOfListsFromDataGridViews.cs',['../_class_of_lists_from_data_grid_views_8cs.html',1,'']]], + ['classoflistsfromreferencefile_2ecs_207',['ClassOfListsFromReferencefile.cs',['../_class_of_lists_from_referencefile_8cs.html',1,'']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_2.html b/SOURCE/Plugin/Code Documentation/html/search/files_2.html new file mode 100644 index 0000000..a45066e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_2.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_2.js b/SOURCE/Plugin/Code Documentation/html/search/files_2.js new file mode 100644 index 0000000..d7ca3df --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_2.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['devicedescription_2ecs_208',['DeviceDescription.cs',['../_device_description_8cs.html',1,'']]], + ['devicedescription_2edesigner_2ecs_209',['DeviceDescription.Designer.cs',['../_device_description_8_designer_8cs.html',1,'']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_3.html b/SOURCE/Plugin/Code Documentation/html/search/files_3.html new file mode 100644 index 0000000..1076bc5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_3.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_3.js b/SOURCE/Plugin/Code Documentation/html/search/files_3.js new file mode 100644 index 0000000..1de9eab --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_3.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['modellingwizard_2examl_2ecs_210',['ModellingWizard.xaml.cs',['../_modelling_wizard_8xaml_8cs.html',1,'']]], + ['mwcontroller_2ecs_211',['MWController.cs',['../_m_w_controller_8cs.html',1,'']]], + ['mwdata_2ecs_212',['MWData.cs',['../_m_w_data_8cs.html',1,'']]], + ['mwdevice_2ecs_213',['MWDevice.cs',['../_m_w_device_8cs.html',1,'']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_4.html b/SOURCE/Plugin/Code Documentation/html/search/files_4.html new file mode 100644 index 0000000..e5cd7f4 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_4.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_4.js b/SOURCE/Plugin/Code Documentation/html/search/files_4.js new file mode 100644 index 0000000..862925f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['readme_2emd_214',['README.md',['../_r_e_a_d_m_e_8md.html',1,'']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_5.html b/SOURCE/Plugin/Code Documentation/html/search/files_5.html new file mode 100644 index 0000000..2cc480f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_5.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/files_5.js b/SOURCE/Plugin/Code Documentation/html/search/files_5.js new file mode 100644 index 0000000..c127e34 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/files_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['searchamlcomponentfile_2ecs_215',['SearchAMLComponentFile.cs',['../_search_a_m_l_component_file_8cs.html',1,'']]], + ['searchamllibraryfile_2ecs_216',['SearchAMLLibraryFile.cs',['../_search_a_m_l_library_file_8cs.html',1,'']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_0.html b/SOURCE/Plugin/Code Documentation/html/search/functions_0.html new file mode 100644 index 0000000..e17c711 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_0.js b/SOURCE/Plugin/Code Documentation/html/search/functions_0.js new file mode 100644 index 0000000..f903e33 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_0.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['about_217',['About',['../class_aml_1_1_editor_1_1_plugin_1_1_about.html#a0001137d5fb3972b81264ce5568cc4d8',1,'Aml::Editor::Plugin::About']]], + ['amlattributeparameters_218',['AMLAttributeParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#a504d5b014d4b10a3762a17b2b6b2ed6a',1,'Aml::Editor::Plugin::AutomationMLDataTables']]], + ['animationclass_219',['AnimationClass',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a99e06693a64c2eecb54276b906d14822',1,'Aml::Editor::Plugin::AnimationClass']]], + ['attachablesdatagridviewparameters_220',['AttachablesDataGridViewParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#a58df9ca5564d2e6002e7616793fa03d2',1,'Aml.Editor.Plugin.AttachablesDataGridViewParameters.AttachablesDataGridViewParameters()'],['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#a169521da74d35dad5bf31aa7073fcc86',1,'Aml.Editor.Plugin.AttachablesDataGridViewParameters.AttachablesDataGridViewParameters(string elementName, string filePath, bool addToFile)']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_1.html b/SOURCE/Plugin/Code Documentation/html/search/functions_1.html new file mode 100644 index 0000000..0ddac0a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_1.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_1.js b/SOURCE/Plugin/Code Documentation/html/search/functions_1.js new file mode 100644 index 0000000..2bc05c9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_1.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['changeamlfilepath_221',['ChangeAMLFilePath',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a26f6f59bc82891ccc525e509720d5302',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['changegui_222',['changeGUI',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a3426aa766858f85fbdcdc6f3cfe92dc1',1,'Aml.Editor.Plugin.ModellingWizard.changeGUI()'],['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#aa613a0bc4392c195c617dcd7aba257f5',1,'Aml.Editor.Plugin.MWController.ChangeGui()']]], + ['changeselectedobject_223',['ChangeSelectedObject',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a467688bd862ea1e99e204f6d3735ed1d',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['checkforattributesofcomponent_224',['CheckForAttributesOfComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#ad8e573b75dc40186f962fe62c047192f',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['checkforattributesofeclectricalconnectorpins_225',['CheckForAttributesOfEclectricalConnectorPins',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a1b72b959bcfef0f2112c6c548891fc8b',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['checkforattributesofexternaliterface_226',['CheckForAttributesOfExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a287538dfad55ab58ee81fa819efa5dd1',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['checkforattributesofreferencedclassname_227',['CheckForAttributesOfReferencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a018cf327c2e354cb04ead38c34307852',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName(InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a146489175fd769883842ca2c148f1a8c',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName(InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#af14e0365f069689e2a345384a1d88561',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName(RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#adc56320b0d72660f2f45cadc498edffd',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassName(RoleFamilyType classType)']]], + ['checkforattributesofreferencedclassnameofexternaliterface_228',['CheckForAttributesOfReferencedClassNameofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a0acb853cf4f5cdb3c8c4a35c6a551756',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a9dff615a305d66eb984477ba92b043b9',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#abe0ec2875b120645b6b2810eea32e603',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#aa03bb4f0eca822618c6e590acd091d30',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface)']]], + ['checkforautomtioncomponent_229',['checkForAutomtionComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a23c4a5fcaa60e5b2de9f9d2c271fdb0e',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['checkforsamenametextofinternalattributes_230',['CheckForSameNameTextOfInternalAttributes',['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#a458fec8a343a700daeaa499ce499b5f3',1,'Aml::Editor::Plugin::AutomationMLDataTables']]], + ['ckeckfornestedattributesofcomponent_231',['CkeckForNestedAttributesOfComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a4021856bf9f4a11a141e4e3faa2a6c4a',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['ckeckfornestedattributesofelectricalconnectorpins_232',['CkeckForNestedAttributesOfElectricalConnectorPins',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#ad023edfb7d36334b2baee9f02e21a309',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['ckeckfornestedattributesofexternaliterface_233',['CkeckForNestedAttributesOfExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a7464e1841996b1f84bdd4f8223acde92',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['ckeckfornestedattributesofreferencedclassname_234',['CkeckForNestedAttributesOfReferencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a82cf799b61e58be9c68e92949fc7842e',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName(AttributeType attributeType, InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a0ee3cf6b377de457bec9874531dedc83',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName(InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ad712edf69757e816d68ecb2b500584e0',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName(RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a10b21544dd605907ae1b5de5f1523070',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassName(AttributeType attributeType, RoleFamilyType classType)']]], + ['ckeckfornestedattributesofreferencedclassnameofexternaliterface_235',['CkeckForNestedAttributesOfReferencedClassNameofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ab83a891496cd97f72f4756335513b360',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a21e849724bea0e2528bc13522809aa04',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a93e56dee9780b0eb614ae9f63c654845',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a929b87c2d6ac8ff5bac7ef6438c7fba0',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface)']]], + ['classoflistsfromdatagridviews_236',['ClassOfListsFromDataGridViews',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a0e8a3323743c15f0d7a391d440214d8a',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ClassOfListsFromDataGridViews()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a88d3c0088d5f28a287ca5531a153ec0b',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ClassOfListsFromDataGridViews(string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath, string refBaseClassPath, string id, string referencedClassName)']]], + ['classoflistsfromreferencefile_237',['ClassOfListsFromReferencefile',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a578795b95ac5f0363dd0f21153e49efb',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ClassOfListsFromReferencefile()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a54e9f428292f5dd6a6e9b5b335e00a6a',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ClassOfListsFromReferencefile(string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath, string refBaseClassPath, string id, string referencedClassName, CAEXSequence< RefSemanticType > refSemanticList, string supportesRoleClassType, string dataType)']]], + ['clear_238',['clear',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a0c4099a413d2bf96ca8aacf75bee03e6',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['clearheadertabpagevaluesofelectricalinterfaces_239',['ClearHeaderTabPageValuesofElectricalInterfaces',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#ac3abe6c0e5635f553fca28615722a80f',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['clearheadertabpagevaluesofgenericdata_240',['ClearHeaderTabPageValuesofgenericData',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#af5ba2182ac553e9c73b532abb9aa6820',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['copyfiles_241',['copyFiles',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a90291aedf55074223efa93204edb3dbb',1,'Aml::Editor::Plugin::MWData']]], + ['createdatatablewithcolumns_242',['CreateDataTableWithColumns',['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#a09ab6e8a0fc0d12b1e1f681e22b237c9',1,'Aml.Editor.Plugin.AutomationMLDataTables.CreateDataTableWithColumns(DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< List< ClassOfListsFromReferencefile >>> pair)'],['../class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.html#afb66a5f37e2ade40f3f73967cfa3b65a',1,'Aml.Editor.Plugin.AutomationMLDataTables.CreateDataTableWithColumns(DataTable dataRowName, DataGridView dataGridViewName, KeyValuePair< string, List< ElectricalInterfaceParameters >> pair)']]], + ['createdevice_243',['CreateDevice',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a71cc9a3da731421b4b58bf0d5902471d',1,'Aml::Editor::Plugin::MWData']]], + ['createdeviceonclick_244',['CreateDeviceOnClick',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#ad0432669e3a6e29aadfb7892746b5068',1,'Aml::Editor::Plugin::MWController']]], + ['createdocumentref_245',['createDocumentRef',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a3d43709c34fb4171f4999a72bfc439b2',1,'Aml::Editor::Plugin::MWData']]], + ['createpictureref_246',['createPictureRef',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#ac060052e0d94500e5ed2c3747790195e',1,'Aml::Editor::Plugin::MWData']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_2.html b/SOURCE/Plugin/Code Documentation/html/search/functions_2.html new file mode 100644 index 0000000..2737c5a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_2.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_2.js b/SOURCE/Plugin/Code Documentation/html/search/functions_2.js new file mode 100644 index 0000000..d9499cd --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_2.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['datagridparameters_247',['DataGridParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#adddca2861fb0e123d8d2c02a296cee15',1,'Aml.Editor.Plugin.DataGridParameters.DataGridParameters()'],['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#a8eaebdff6d41dea7a8b7033674d1f981',1,'Aml.Editor.Plugin.DataGridParameters.DataGridParameters(string refSemantic, string attributes, string value)']]], + ['devicedescription_248',['DeviceDescription',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a43910d4963765bbb83fb00f8f60b3149',1,'Aml.Editor.Plugin.DeviceDescription.DeviceDescription()'],['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#aeaaa5d48d1117d26fce90474dea55a5b',1,'Aml.Editor.Plugin.DeviceDescription.DeviceDescription(MWController mWController)']]], + ['dispalysemanticbtn_249',['DispalySemanticBtn',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#aa7de242b566e80898c52fe89d19626b0',1,'Aml::Editor::Plugin::AnimationClass']]], + ['dispose_250',['Dispose',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a0237a062c9718be0cc5bbdb61342ab0b',1,'Aml::Editor::Plugin::DeviceDescription']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_3.html b/SOURCE/Plugin/Code Documentation/html/search/functions_3.html new file mode 100644 index 0000000..6da86e7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_3.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_3.js b/SOURCE/Plugin/Code Documentation/html/search/functions_3.js new file mode 100644 index 0000000..cc3009b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_3.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['electricalinterfaceparameters_251',['ElectricalInterfaceParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a64129081230a1ce2dedac0522336001a',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.ElectricalInterfaceParameters()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a2425301b26c5eafbb023537874f81656',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.ElectricalInterfaceParameters(string name, string value, string _default, string unit, string reference, string description, string copyRight, string semantic, string attributePath)']]], + ['electricalparameters_252',['ElectricalParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a1dcaebc309e32a207a7a49982aaaeed3',1,'Aml.Editor.Plugin.ElectricalParameters.ElectricalParameters()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a975986d2d8141fc680be571a81b94ee4',1,'Aml.Editor.Plugin.ElectricalParameters.ElectricalParameters(string connector, string connectorCode, string connectorType, string pins, string lis)']]], + ['electricalparametersinelectricaldatadatagridview_253',['ElectricalParametersInElectricalDataDataGridView',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#aeb0bd8fee678d1d2b2cb17ccca492b32',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ElectricalParametersInElectricalDataDataGridView()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#ac6d42645334f211b7612db4c268b847e',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ElectricalParametersInElectricalDataDataGridView(string referenceID, string attribute, string values, string units)']]], + ['executecommand_254',['ExecuteCommand',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a4dc6bf714b86a1d9be420637c23a1307',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_4.html b/SOURCE/Plugin/Code Documentation/html/search/functions_4.html new file mode 100644 index 0000000..911304e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_4.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_4.js b/SOURCE/Plugin/Code Documentation/html/search/functions_4.js new file mode 100644 index 0000000..23165e6 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['getdevicedescriptionform_255',['GetDeviceDescriptionForm',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#adba55c4a5135c58c69a0d92d495a0ad1',1,'Aml::Editor::Plugin::MWController']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_5.html b/SOURCE/Plugin/Code Documentation/html/search/functions_5.html new file mode 100644 index 0000000..61b920d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_5.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_5.js b/SOURCE/Plugin/Code Documentation/html/search/functions_5.js new file mode 100644 index 0000000..886ad84 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_5.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['importfile_256',['importFile',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#ad2f99785d2a3b068dd3ce6c1d7f7fceb',1,'Aml::Editor::Plugin::MWController']]], + ['importgsd2aml_257',['ImportGSD2AML',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a629fe82e27f15bbd5616e78c1e3f41bb',1,'Aml::Editor::Plugin::MWData']]], + ['importiodd2aml_258',['ImportIODD2AML',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a9968abc7dcc16187dd2f604d8c3a927e',1,'Aml::Editor::Plugin::MWData']]], + ['interneturl_259',['interneturl',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a89057897b9fb2106ee38d14a2ff070aa',1,'Aml::Editor::Plugin::MWData']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_6.html b/SOURCE/Plugin/Code Documentation/html/search/functions_6.html new file mode 100644 index 0000000..dc70a4a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_6.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_6.js b/SOURCE/Plugin/Code Documentation/html/search/functions_6.js new file mode 100644 index 0000000..5dda402 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['loadstandardlibrary_260',['loadStandardLibrary',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#ab9575cb89491e4d3f71d8f94b58b5cc3',1,'Aml::Editor::Plugin::DeviceDescription']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_7.html b/SOURCE/Plugin/Code Documentation/html/search/functions_7.html new file mode 100644 index 0000000..7de3106 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_7.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_7.js b/SOURCE/Plugin/Code Documentation/html/search/functions_7.js new file mode 100644 index 0000000..ea4aef6 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_7.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['manualopener_261',['ManualOpener',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a77d8bf72f7d54a50df736fee1006836d',1,'Aml::Editor::Plugin::AnimationClass']]], + ['modellingwizard_262',['ModellingWizard',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a85e08850a3ce8148f119f8e3d14f6d02',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['mwcontroller_263',['MWController',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.html#a9c87165813d6f480fb4d1141de016565',1,'Aml::Editor::Plugin::MWController']]], + ['mwdata_264',['MWData',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a767c914fb975ac022140ea314fa8a425',1,'Aml::Editor::Plugin::MWData']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_8.html b/SOURCE/Plugin/Code Documentation/html/search/functions_8.html new file mode 100644 index 0000000..7422be2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_8.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_8.js b/SOURCE/Plugin/Code Documentation/html/search/functions_8.js new file mode 100644 index 0000000..79ceea5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['openfiledialog_265',['OpenFileDialog',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a4fba2da1c2015740334e10dd50d1fb4a',1,'Aml.Editor.Plugin.AnimationClass.OpenFileDialog(TextBox textboxName)'],['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#af622bb4ee8c59d14abad92dd8ceb976e',1,'Aml.Editor.Plugin.AnimationClass.OpenFileDialog(TextBox textboxName, Button pdfDisplayBtn)'],['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#aac584071d94916c2df7d91bbe39e5c6c',1,'Aml.Editor.Plugin.AnimationClass.OpenFileDialog(TextBox textboxName, PictureBox pictureBoxNumber)'],['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a9aecddc8211b6ef2cb45103ee8cee319',1,'Aml.Editor.Plugin.AnimationClass.OpenFileDialog(TextBox textboxName, PictureBox pictureBoxNumber, Button displayButton)']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_9.html b/SOURCE/Plugin/Code Documentation/html/search/functions_9.html new file mode 100644 index 0000000..befd4fa --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_9.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_9.js b/SOURCE/Plugin/Code Documentation/html/search/functions_9.js new file mode 100644 index 0000000..1a6fab4 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_9.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['pinparametersinpininfodatagridview_266',['PinParametersInPinInfoDataGridView',['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a2b4f579583593fcd36ca4429849b3a92',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.PinParametersInPinInfoDataGridView()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a20c1ba8d8e62d2958a2a784ea993f12a',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.PinParametersInPinInfoDataGridView(string pinNumber, string referenceID, string attribute, string values, string units)']]], + ['printexternalinterfacenodes_267',['PrintExternalInterfaceNodes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a84270fba66af2b2c4b1e550e9c232076',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.PrintExternalInterfaceNodes(CAEXDocument document, TreeNode oParentNode, ExternalInterfaceType classType, InterfaceFamilyType InterafceclassType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a1b60137e70854d4b6988bb53feefbc02',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.PrintExternalInterfaceNodes(CAEXDocument document, TreeNode oParentNode, ExternalInterfaceType classType, RoleFamilyType RoleclassType)']]], + ['printnodesrecursiveininterfaceclasslib_268',['PrintNodesRecursiveInInterfaceClassLib',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a2d048625f052a65bd1a69c2622b013c3',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['printnodesrecursiveinroleclasslib_269',['PrintNodesRecursiveInRoleClassLib',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a885dc0dac3ebebe9a4e264860d6c1bcf',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['publishautomationmlfileandobject_270',['PublishAutomationMLFileAndObject',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#acedb8a1abb912c96703fd73d3267bcea',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_a.html b/SOURCE/Plugin/Code Documentation/html/search/functions_a.html new file mode 100644 index 0000000..a81e963 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_a.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_a.js b/SOURCE/Plugin/Code Documentation/html/search/functions_a.js new file mode 100644 index 0000000..ccb0fce --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_a.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['searchamlcomponentfile_271',['SearchAMLComponentFile',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#abf1e485c8340a4ace50c1f3528ac31c6',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['searchamllibraryfile_272',['SearchAMLLibraryFile',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#aec38502ce275c149500a135b82f3d4e9',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['searchattributesinsideattributesofelectricconnectortype_273',['SearchAttributesInsideAttributesOFElectricConnectorType',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a05f0351fc99bd19136a3fc6888506020',1,'Aml::Editor::Plugin::MWData']]], + ['searchforattributesinsideattributesofautomationcomponent_274',['SearchForAttributesInsideAttributesofAutomationComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.html#a27f6de7395f7fd5dbbddcbc3655dc35b',1,'Aml::Editor::Plugin::MWData']]], + ['searchforcomponentnames_275',['searchForComponentNames',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a0cea107ee651f7b9567bf305f26c2918',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['searchforinterfaceclassesinsideinterfaceclass_276',['SearchForInterfaceClassesInsideInterfaceClass',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a59edcf46c97b643baec157aa2904bb62',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClass(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a09a785a7ce03cbcea1e305d2144b2963',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClass(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName)']]], + ['searchforinterfaceclassesinsideinterfaceclassofexternaliterface_277',['SearchForInterfaceClassesInsideInterfaceClassofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a74c126142b223c61a0315c31c1f0abe4',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a171c7b416129418d0b3c27514e98410c',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface)']]], + ['searchforreferencedclassname_278',['SearchForReferencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a10fd9a1fcbf4033415354765a7b5223e',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassName(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a5aa1ede5fe9adae926187baa8a33900e',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassName(CAEXDocument doc, string referencedClassName, RoleFamilyType classType)']]], + ['searchforreferencedclassnameofexternaliterface_279',['SearchForReferencedClassNameofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a5c19581d6a736a2a158b2645ca4630d7',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a7c6096f38f03c5e7e2e3b06a7e139017',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface)']]], + ['selectlibrary_280',['selectLibrary',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#a925af3db84bdc0f89f6285c989c073cc',1,'Aml::Editor::Plugin::DeviceDescription']]], + ['storeeachattributevalueinlistofcomponent_281',['StoreEachAttributeValueInListOfComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a9831cae9b9d5baec3afedd3c3a4266b8',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfComponent(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#ae6987825477c5d277db9f57d84c3afae',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfComponent(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType)']]], + ['storeeachattributevalueinlistofelectricalconnectorpins_282',['StoreEachAttributeValueInListOfElectricalConnectorPins',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a801781b46981a3776adbca80fd5be541',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfElectricalConnectorPins(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a77f257e6118ee1af16421c90f2d72a95',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfElectricalConnectorPins(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType)']]], + ['storeeachattributevalueinlistofexternaliterface_283',['StoreEachAttributeValueInListOfExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a33431d164f3f97f60fe6b316e266ed16',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfExternalIterface(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType attributeType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a35823b5736745c6982ad851270b3d09f',1,'Aml.Editor.Plugin.SearchAMLComponentFile.StoreEachAttributeValueInListOfExternalIterface(int i, List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface)']]], + ['storeeachattributevalueinlistofreferencedclassname_284',['StoreEachAttributeValueInListOfReferencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a11a5f85235f45a9dd490ed80f116583c',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, InterfaceFamilyType classType, AttributeType attributeType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ae8c186a47b1131b50fb6555f6ab169d0',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a2c4569929beec8af516a2fe28da3bbdc',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, RoleFamilyType classType, AttributeType attributeType)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a56dea9bce7b957ddbb7506f5b84ad236',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassName(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType)']]], + ['storeeachattributevalueinlistofreferencedclassnameofexternaliterface_285',['StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a8bf5d8868fda86a13eaa8efe5f8c6f7b',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a0048a13cd6298b8b942e52b04aedc624',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a4d5da760852f65985eae02da24f5df06',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)'],['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a66963e3c258c2bcc8f51353861a2bae6',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List< List< ClassOfListsFromReferencefile >> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface)']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_b.html b/SOURCE/Plugin/Code Documentation/html/search/functions_b.html new file mode 100644 index 0000000..345265d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_b.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_b.js b/SOURCE/Plugin/Code Documentation/html/search/functions_b.js new file mode 100644 index 0000000..4939130 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['tostring_286',['ToString',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a44a20c90a03807c981772a574a1d9eca',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a7d76b5c340287155248d3cd6275585b0',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#a4e5626067de539c4e0d8c7c642ebb12a',1,'Aml.Editor.Plugin.DataGridParameters.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a943d71e879a36ccbc5a9fbaa021bfe7e',1,'Aml.Editor.Plugin.ElectricalParameters.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#aba4c25ac5e517f9f360d5501767bcbfd',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#aabde8d8400da538c0d695e3f2a13afcc',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#ac56d0c84695e18c0c8793ff63dff0644',1,'Aml.Editor.Plugin.AttachablesDataGridViewParameters.ToString()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a110a9f1c713de6edc31a590e846aeb36',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.ToString()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_c.html b/SOURCE/Plugin/Code Documentation/html/search/functions_c.html new file mode 100644 index 0000000..858bfd6 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_c.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/functions_c.js b/SOURCE/Plugin/Code Documentation/html/search/functions_c.js new file mode 100644 index 0000000..1a98946 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/functions_c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['windowsizechanger_287',['WindowSizeChanger',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#ad95b75f8f5095b88ef3aa75d92e25263',1,'Aml.Editor.Plugin.AnimationClass.WindowSizeChanger(Panel panelNumber, Button buttonNumber)'],['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#ae9de03fc8ff4839dff7873a64d5eaf8c',1,'Aml.Editor.Plugin.AnimationClass.WindowSizeChanger(Panel panelNumber)']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/mag_sel.png b/SOURCE/Plugin/Code Documentation/html/search/mag_sel.png new file mode 100644 index 0000000000000000000000000000000000000000..39c0ed52a25dd9d080ee0d42ae6c6042bdfa04d7 GIT binary patch literal 465 zcmeAS@N?(olHy`uVBq!ia0vp^B0wz6!2%?$TA$hhDVB6cUq=Rpjs4tz5?O(Kg=CK) zUj~NU84L`?eGCi_EEpJ?t}-xGu`@87+QPtK?83kxQ`TapwHK(CDaqU2h2ejD|C#+j z9%q3^WHAE+w=f7ZGR&GI0Tg5}@$_|Nf5gMiEhFgvHvB$N=!mC_V~EE2vzPXI9ZnEo zd+1zHor@dYLod2Y{ z@R$7$Z!PXTbY$|@#T!bMzm?`b<(R`cbw(gxJHzu zB$lLFB^RXvDF!10LknF)BV7aY5JN*NBMU1-b8Q0yD+2>vd*|CI8glbfGSez?Ylunu RoetE%;OXk;vd$@?2>>CYplSdB literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/search/namespaces_0.html b/SOURCE/Plugin/Code Documentation/html/search/namespaces_0.html new file mode 100644 index 0000000..76996d1 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/namespaces_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/namespaces_0.js b/SOURCE/Plugin/Code Documentation/html/search/namespaces_0.js new file mode 100644 index 0000000..e57f20b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/namespaces_0.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['aml_200',['Aml',['../namespace_aml.html',1,'']]], + ['editor_201',['Editor',['../namespace_aml_1_1_editor.html',1,'Aml']]], + ['plugin_202',['Plugin',['../namespace_aml_1_1_editor_1_1_plugin.html',1,'Aml::Editor']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/nomatches.html b/SOURCE/Plugin/Code Documentation/html/search/nomatches.html new file mode 100644 index 0000000..4377320 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
    +
    No Matches
    +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/pages_0.html b/SOURCE/Plugin/Code Documentation/html/search/pages_0.html new file mode 100644 index 0000000..9a6a29a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/pages_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/pages_0.js b/SOURCE/Plugin/Code Documentation/html/search/pages_0.js new file mode 100644 index 0000000..2f60141 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/pages_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['modellingwizardplugin_379',['ModellingWizardPlugin',['../md__r_e_a_d_m_e.html',1,'']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_0.html b/SOURCE/Plugin/Code Documentation/html/search/properties_0.html new file mode 100644 index 0000000..17b7dca --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_0.js b/SOURCE/Plugin/Code Documentation/html/search/properties_0.js new file mode 100644 index 0000000..df719f3 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_0.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['aboutcommand_300',['AboutCommand',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#ac767be8789446b8040a0d7fd9a8eb283',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['activateplugin_301',['ActivatePlugin',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a68418cf3879299385765d352ffc4731b',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['addtofile_302',['AddToFile',['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#ac066151417d31343474366e089519f83',1,'Aml::Editor::Plugin::AttachablesDataGridViewParameters']]], + ['attributename_303',['AttributeName',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#aae6be1d86c3b36ada1ca2d229a62df75',1,'Aml::Editor::Plugin::ElectricalInterfaceParameters']]], + ['attributepath_304',['AttributePath',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a2da0dffa5a85f93c37da9b7c284ffc33',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.AttributePath()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a9750122c6e7b78f3a21fc4e89da8d7bc',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.AttributePath()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a12bdc7039d7f14b5358ae364947c0e78',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.AttributePath()']]], + ['attributes_305',['Attributes',['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#ab2a0e0dd77ffa6d715d70a5e112d3903',1,'Aml.Editor.Plugin.DataGridParameters.Attributes()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#ac1f19e7f6cfb0941b7ce630ca12a7c76',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.Attributes()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a526a65510795b641175bdcc3aa946b4b',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.Attributes()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_1.html b/SOURCE/Plugin/Code Documentation/html/search/properties_1.html new file mode 100644 index 0000000..6a49403 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_1.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_1.js b/SOURCE/Plugin/Code Documentation/html/search/properties_1.js new file mode 100644 index 0000000..4d4ca5d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['buttonnumber_306',['ButtonNumber',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a60f3bd7a53a308a0963b9d603757c289',1,'Aml::Editor::Plugin::AnimationClass']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_2.html b/SOURCE/Plugin/Code Documentation/html/search/properties_2.html new file mode 100644 index 0000000..5d18452 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_2.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_2.js b/SOURCE/Plugin/Code Documentation/html/search/properties_2.js new file mode 100644 index 0000000..ecfd858 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_2.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['canclose_307',['CanClose',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a2f1de7716c88ed7de9cf7f716a0d4f76',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['commands_308',['Commands',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#aa92890be9446ee5c87cc91739e41a5f0',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['connector_309',['Connector',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#ae654b44fdd0a058cd3a6f6eb8dc47969',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['connectorcode_310',['ConnectorCode',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#acc6774cd7ddc2b52dbe8f688a6211630',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['connectortype_311',['ConnectorType',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#a17ebc9a1e5d2c756f22447f633174d20',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['copyright_312',['CopyRight',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a97aa6ce9a7458c216785837491325e9d',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.CopyRight()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#ac76172d9552575c6f519859248c60788',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.CopyRight()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a9542dcb67cca638df6df6d853e878c36',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.CopyRight()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_3.html b/SOURCE/Plugin/Code Documentation/html/search/properties_3.html new file mode 100644 index 0000000..ba74eb0 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_3.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_3.js b/SOURCE/Plugin/Code Documentation/html/search/properties_3.js new file mode 100644 index 0000000..6e7f7fe --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_3.js @@ -0,0 +1,27 @@ +var searchData= +[ + ['datagridattachablesparametrslist_313',['dataGridAttachablesParametrsList',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a0a3b60dd4bea5558566aa7a50e0f91b5',1,'Aml::Editor::Plugin::MWDevice']]], + ['datagridparameterslists_314',['dataGridParametersLists',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a6038813fa356059a4fdc94c32ea79e47',1,'Aml::Editor::Plugin::MWDevice']]], + ['datagridview_315',['dataGridView',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a30e0efbd0cfdcc718d2bb26f8dc3a0f8',1,'Aml::Editor::Plugin::AnimationClass']]], + ['datatype_316',['DataType',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a12110843109248f422b15548d9c3c1d2',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.DataType()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a60d6e9588dcad17528bd134169533c17',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.DataType()']]], + ['default_317',['Default',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#ad3b50c5b8cc491af905f895449cc3ab2',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Default()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#ae77f5e7de1578ebd1d13fc1875b00f2d',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Default()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a476b2378ae234a5108b9748169a27a34',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Default()']]], + ['description_318',['Description',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a6baeec084c45f3c534c3d99383ec5611',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Description()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a05fc8dcadd1ee497fb5211428585312e',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Description()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#ae675816f7be5d22f23bfd93dc41bb078',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Description()']]], + ['devicename_319',['deviceName',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a1039c54203b3bba6dc9b348ba2c1c876',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictioanryofelectricalconnectorpintype_320',['DictioanryofElectricalConnectorPinType',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a08ad7a3a1907fb5545e71a02eaf20d43',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['dictioanryofidofinterfaceclasslibrarynodes_321',['DictioanryOfIDofInterfaceClassLibraryNodes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ae2a9f746ba71aac0e1af3a3e6576b842',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforexternalinterfacesinstanceattributesofinterfaceclasslib_322',['DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ac19b278b2e5411e59f04885d24418de9',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforexternalinterfacesinstancesattributesofroleclasslib_323',['DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a574ca9332b8d007675793598ad421fb8',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforexternalinterfacesunderinterfaceclassinelectricalinterfaces_324',['DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a0e196b056a21d36a26c48303178d0fb9',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictionaryforexternalinterfacesunderroleclassofcomponent_325',['DictionaryForExternalInterfacesUnderRoleClassofComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#ab3a9f9a95e979c569393c41f137b37d3',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictionaryforinterfaceclassesinelectricalinterfaces_326',['DictionaryForInterfaceClassesInElectricalInterfaces',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a34513f92d4611fa73fb98ca4607b111b',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictionaryforinterfaceclassinstancesattributes_327',['DictionaryForInterfaceClassInstancesAttributes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a05463d55d6ccbd8379a158a72bb3f595',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforroleclassinstanceattributes_328',['DictionaryForRoleClassInstanceAttributes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#aefaaeac579bf73534e5101b4f4f52dcd',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryforroleclassofcomponent_329',['DictionaryForRoleClassofComponent',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a619c83acdfc5baae1c1d363fb3989381',1,'Aml::Editor::Plugin::MWDevice']]], + ['dictionaryofelectricalconnectortype_330',['DictionaryofElectricalConnectorType',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a0c343579c1bbd8eed0668d8ce4dcee0c',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['dictionaryofroleclassattributes_331',['dictionaryofRoleClassattributes',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#ad15f0a5bc1513eb4379ff6d5ec7d8c32',1,'Aml::Editor::Plugin::SearchAMLLibraryFile']]], + ['dictionaryofroles_332',['DictionaryofRoles',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a1e8ef567cfba2b43fac8afcdd3abb6b2',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['dictionaryofrolesforautomationcomponenet_333',['DictionaryofRolesforAutomationComponenet',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.html#a7e22c7aeba504efaeb89a38ce8bdbe71',1,'Aml::Editor::Plugin::SearchAMLComponentFile']]], + ['dictofelectricalinterfaceparameters_334',['DictofElectricalInterfaceParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#aec64d8e95546e10e503e977b93b8949e',1,'Aml::Editor::Plugin::MWDevice']]], + ['displaybtn_335',['DisplayBtn',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a9c5863b36d871cca1a96d53be4637c65',1,'Aml::Editor::Plugin::AnimationClass']]], + ['displayname_336',['DisplayName',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a6d63f793ebaa384ba4bbf9903f06fdaa',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_4.html b/SOURCE/Plugin/Code Documentation/html/search/properties_4.html new file mode 100644 index 0000000..b76e529 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_4.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_4.js b/SOURCE/Plugin/Code Documentation/html/search/properties_4.js new file mode 100644 index 0000000..f912182 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_4.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['electricalinterfaceinstances_337',['ElectricalInterfaceInstances',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a65ccfd989b124d2e257b6f42578db336',1,'Aml::Editor::Plugin::MWDevice']]], + ['electricalinterfaces_338',['ElectricalInterfaces',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a98628a6b85464ccfb27fb083da7f1dfd',1,'Aml::Editor::Plugin::MWDevice']]], + ['elementname_339',['ElementName',['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#aace740ed93ef1af8570d1cc2c244ad70',1,'Aml::Editor::Plugin::AttachablesDataGridViewParameters']]], + ['environment_340',['environment',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a252e8e2a021284c3cdd5d8624179958b',1,'Aml::Editor::Plugin::MWDevice']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_5.html b/SOURCE/Plugin/Code Documentation/html/search/properties_5.html new file mode 100644 index 0000000..73628c9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_5.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_5.js b/SOURCE/Plugin/Code Documentation/html/search/properties_5.js new file mode 100644 index 0000000..31e7a0f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['filename_341',['fileName',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a3663feace37ced657ce078295d2e4759',1,'Aml::Editor::Plugin::MWDevice']]], + ['filepath_342',['FilePath',['../class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.html#a9f5245fd7be3ec1af0400bc0280279c0',1,'Aml.Editor.Plugin.AttachablesDataGridViewParameters.FilePath()'],['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a6e04054395d64c6c5947600cce015f6d',1,'Aml.Editor.Plugin.MWDevice.filepath()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_6.html b/SOURCE/Plugin/Code Documentation/html/search/properties_6.html new file mode 100644 index 0000000..71f9a59 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_6.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_6.js b/SOURCE/Plugin/Code Documentation/html/search/properties_6.js new file mode 100644 index 0000000..4bb7794 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_6.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['id_343',['ID',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#adc03aaee82e06b704b1c350a6833f611',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ID()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a349e791c119e8a3e4afa9a9b9ccf46cc',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ID()']]], + ['isactive_344',['IsActive',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a2bd037ce5c76ad9051a995400e28a75e',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['isautoactive_345',['IsAutoActive',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a9ff5d55c0dd2f4113e5a9d41b5418c4a',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['isreactive_346',['IsReactive',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a6b3b6e17a0159a4c6045c2b8751e2fc5',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['isreadonly_347',['IsReadonly',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a9700716878b0e98f507d30b396e2872f',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_7.html b/SOURCE/Plugin/Code Documentation/html/search/properties_7.html new file mode 100644 index 0000000..8296a09 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_7.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_7.js b/SOURCE/Plugin/Code Documentation/html/search/properties_7.js new file mode 100644 index 0000000..8e6988c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_7.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['listofelectricaldatadatagridviewparameters_348',['listofElectricalDataDataGridViewParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#ab601f8d815e184180d6ffb5e08c6d5e6',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['listofelectricalinterfaceparameters_349',['listofElectricalInterfaceParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a851204d24146ab1eff048bfe0a44010d',1,'Aml::Editor::Plugin::MWDevice']]], + ['listofpininfodatagridviewparameters_350',['listOfPinInfoDataGridViewParameters',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#aa298f8f20aa8eb03430eacec9d097f5b',1,'Aml::Editor::Plugin::ElectricalParameters']]], + ['listwithuriconvertedtostring_351',['listWithURIConvertedToString',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a3c056d06b76f10cc782e8b4862810e5f',1,'Aml::Editor::Plugin::MWDevice']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_8.html b/SOURCE/Plugin/Code Documentation/html/search/properties_8.html new file mode 100644 index 0000000..da85f8a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_8.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_8.js b/SOURCE/Plugin/Code Documentation/html/search/properties_8.js new file mode 100644 index 0000000..b1de157 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['name_352',['Name',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a2b05161d540d7cd91ae360c5d3ce931d',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Name()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a615ebad7839429334256ad90d985b1e3',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Name()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_9.html b/SOURCE/Plugin/Code Documentation/html/search/properties_9.html new file mode 100644 index 0000000..3187a99 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_9.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_9.js b/SOURCE/Plugin/Code Documentation/html/search/properties_9.js new file mode 100644 index 0000000..7dbe73c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_9.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['panelnumber_353',['PanelNumber',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a978d71a487ceb1fab343b33afca66775',1,'Aml::Editor::Plugin::AnimationClass']]], + ['pictureboxnumber_354',['PictureboxNumber',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a07f73e83f366c180d868edb155629349',1,'Aml::Editor::Plugin::AnimationClass']]], + ['pinnumber_355',['PinNumber',['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a0dc6c5df881ffe504570c7d74ad19fcc',1,'Aml::Editor::Plugin::PinParametersInPinInfoDataGridView']]], + ['pins_356',['Pins',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.html#ac98fb3c0870ade0b85413ca8d0cfeaa0',1,'Aml::Editor::Plugin::ElectricalParameters']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_a.html b/SOURCE/Plugin/Code Documentation/html/search/properties_a.html new file mode 100644 index 0000000..b02432a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_a.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_a.js b/SOURCE/Plugin/Code Documentation/html/search/properties_a.js new file mode 100644 index 0000000..1e3d3ed --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_a.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['refbaseclasspath_357',['RefBaseClassPath',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a24c19702edd78b6628d70b516c6e6ab8',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.RefBaseClassPath()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a95d7023958dcaba928b0282405f0203b',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.RefBaseClassPath()']]], + ['reference_358',['Reference',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a16935dd08fa0c1b25410b7297aa5760c',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Reference()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#af7f0d4fd668472123a6aa76ec3d41bdc',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Reference()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a91c2d8c6f81ab6e64b3f735e7d8f49e0',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Reference()']]], + ['referencedclassname_359',['referencedClassName',['../class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.html#a614e280498e0017b87a23031a745b879',1,'Aml.Editor.Plugin.SearchAMLLibraryFile.referencedClassName()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a168e93de06adae33dd337416674d98d4',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.ReferencedClassName()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a009c972b83ad9845970ac9fede52fbad',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.ReferencedClassName()']]], + ['referenceid_360',['ReferenceID',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#a7ec764e68408965696d6e63a4f5b1940',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.ReferenceID()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#aaa63e321a2e027653a6ec7ff00e57af5',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.ReferenceID()']]], + ['refsemanticlist_361',['RefSemanticList',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a17b87abdd2b4e792aeff7d8b3d0cdfb4',1,'Aml::Editor::Plugin::ClassOfListsFromReferencefile']]], + ['refsemantics_362',['RefSemantics',['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#abbec7835f2cbd9be8123ddd041883ad2',1,'Aml::Editor::Plugin::DataGridParameters']]], + ['reloadobjects_363',['ReloadObjects',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a4311a3ca5fb875e5035bc029291e5920',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['row_364',['row',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#aca047e64073b4250242f0b8cea862efe',1,'Aml::Editor::Plugin::DeviceDescription']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_b.html b/SOURCE/Plugin/Code Documentation/html/search/properties_b.html new file mode 100644 index 0000000..3dbeb07 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_b.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_b.js b/SOURCE/Plugin/Code Documentation/html/search/properties_b.js new file mode 100644 index 0000000..346cf89 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_b.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['semantic_365',['Semantic',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#add70e060fa6395e05d9f60443304b7dd',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Semantic()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a3dc85cafdc162bfdedba8720b654ee3f',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Semantic()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#adb09787efcf00be86699ce8fa6479361',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Semantic()']]], + ['supportesroleclasstype_366',['SupportesRoleClassType',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#aa20d2e52af2ab5bcddd720acb789b2d0',1,'Aml::Editor::Plugin::ClassOfListsFromReferencefile']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_c.html b/SOURCE/Plugin/Code Documentation/html/search/properties_c.html new file mode 100644 index 0000000..e4ce90c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_c.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_c.js b/SOURCE/Plugin/Code Documentation/html/search/properties_c.js new file mode 100644 index 0000000..4a7f059 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_c.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['terminateplugin_367',['TerminatePlugin',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a1754b39a06b47d1b1f9010f6bcbbffde',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['textboxname_368',['TextboxName',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a19dcafe11285ec11f235d3c84e765151',1,'Aml::Editor::Plugin::AnimationClass']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_d.html b/SOURCE/Plugin/Code Documentation/html/search/properties_d.html new file mode 100644 index 0000000..c65fb9b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_d.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_d.js b/SOURCE/Plugin/Code Documentation/html/search/properties_d.js new file mode 100644 index 0000000..2bb3fc6 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_d.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['unit_369',['Unit',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a7be0e6cafa4b934c86e6a0d5c44ee8cb',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Unit()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#a9277f25074496cfaff11f041441e1ec9',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Unit()']]], + ['units_370',['Units',['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#a38a479b3e379cfdd431903504404d747',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.Units()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#ae1260c02a1e4e5a3f8a5dbace4df3192',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.Units()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a7a76f3f614c194a2b9b9276000faf5d2',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Units()']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_e.html b/SOURCE/Plugin/Code Documentation/html/search/properties_e.html new file mode 100644 index 0000000..2b6e4f7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_e.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_e.js b/SOURCE/Plugin/Code Documentation/html/search/properties_e.js new file mode 100644 index 0000000..81617da --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_e.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['value_371',['Value',['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.html#a75676971f172722b3dd7a99bdf2f8b8a',1,'Aml.Editor.Plugin.ClassOfListsFromDataGridViews.Value()'],['../class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.html#ac58111d02e5a620cbd19818d544442ba',1,'Aml.Editor.Plugin.ClassOfListsFromReferencefile.Value()']]], + ['values_372',['Values',['../class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.html#aa56c2203849aa594e43637830a599014',1,'Aml.Editor.Plugin.DataGridParameters.Values()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.html#afad2f4d7970e790736854b23984fc600',1,'Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView.Values()'],['../class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.html#a0aa068480b67328eaa773ed8c5d7d3f5',1,'Aml.Editor.Plugin.PinParametersInPinInfoDataGridView.Values()'],['../class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.html#a4ae422487fb3066d2aea5b9842e0ca9f',1,'Aml.Editor.Plugin.ElectricalInterfaceParameters.Values()']]], + ['vendorname_373',['vendorName',['../class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.html#a19ee5f6fa6e1d90d37cc3a8c876ef919',1,'Aml::Editor::Plugin::MWDevice']]], + ['version_374',['Version',['../class_aml_1_1_editor_1_1_plugin_1_1_about.html#a542282bf537e261e5294e607f88dc9e6',1,'Aml::Editor::Plugin::About']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_f.html b/SOURCE/Plugin/Code Documentation/html/search/properties_f.html new file mode 100644 index 0000000..9327c3f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_f.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/properties_f.js b/SOURCE/Plugin/Code Documentation/html/search/properties_f.js new file mode 100644 index 0000000..229ee83 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/properties_f.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['webbrowser_375',['Webbrowser',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#a3a43c6acd43cc44cd85ea42610db93e5',1,'Aml::Editor::Plugin::AnimationClass']]], + ['words_376',['words',['../class_aml_1_1_editor_1_1_plugin_1_1_animation_class.html#ae2dd3c44c8e8a9cc4ecb11cb7ad79682',1,'Aml::Editor::Plugin::AnimationClass']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/search.css b/SOURCE/Plugin/Code Documentation/html/search/search.css new file mode 100644 index 0000000..a0dba44 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/search.css @@ -0,0 +1,273 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#MSearchBox { + white-space : nowrap; + float: none; + margin-top: 0px; + right: 0px; + width: 170px; + height: 24px; + z-index: 102; + display: inline; + position: absolute; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:111px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; + -webkit-border-radius: 0px; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 10001; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; + z-index:10000; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.searchresult { + background-color: #F0F3F8; +} + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: url("../tab_a.png"); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/SOURCE/Plugin/Code Documentation/html/search/search.js b/SOURCE/Plugin/Code Documentation/html/search/search.js new file mode 100644 index 0000000..a554ab9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/search.js @@ -0,0 +1,814 @@ +/* + @licstart The following is the entire license notice for the + JavaScript code in this file. + + Copyright (C) 1997-2017 by Dimitri van Heesch + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + @licend The above is the entire license notice + for the JavaScript code in this file + */ +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var idxChar = searchValue.substr(0, 1).toLowerCase(); + if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair + { + idxChar = searchValue.substr(0, 2); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); + if (idx!=-1) + { + var hexCode=idx.toString(16); + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e(R!W8j_r#qQ#gnr4kAxdU#F0+OBry$Z+ z_0PMi;P|#{d%mw(dnw=jM%@$onTJa%@6Nm3`;2S#nwtVFJI#`U@2Q@@JCCctagvF- z8H=anvo~dTmJ2YA%wA6IHRv%{vxvUm|R)kgZeo zmX%Zb;mpflGZdXCTAgit`||AFzkI#z&(3d4(htA?U2FOL4WF6wY&TB#n3n*I4+hl| z*NBpo#FA92vEu822WQ%mvv4FO#qs` BFGc_W literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/search/search_r.png b/SOURCE/Plugin/Code Documentation/html/search/search_r.png new file mode 100644 index 0000000000000000000000000000000000000000..1af5d21ee13e070d7600f1c4657fde843b953a69 GIT binary patch literal 553 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9c!2%@BXHTsJQY`6?zK#qG8~eHcB(ehe3dtTp zz6=bxGZ+|(`xqD=STHa&U1eaXVrO7DwS|Gf*oA>XrmV$GYcEhOQT(QLuS{~ooZ2P@v=Xc@RKW@Irliv8_;wroU0*)0O?temdsA~70jrdux+`@W7 z-N(<(C)L?hOO?KV{>8(jC{hpKsws)#Fh zvsO>IB+gb@b+rGWaO&!a9Z{!U+fV*s7TS>fdt&j$L%^U@Epd$~Nl7e8wMs5Z1yT$~ z28I^8hDN#u<{^fLRz?<9hUVG^237_Jy7tbuQ8eV{r(~v8;?@w8^gA7>fx*+&&t;uc GLK6VEQpiUD literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/search/searchdata.js b/SOURCE/Plugin/Code Documentation/html/search/searchdata.js new file mode 100644 index 0000000..34ef462 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/searchdata.js @@ -0,0 +1,45 @@ +var indexSectionsWithContent = +{ + 0: "abcdefgilmnoprstuvw", + 1: "acdemps", + 2: "a", + 3: "acdmrs", + 4: "acdegilmopstw", + 5: "dip", + 6: "m", + 7: "cdgis", + 8: "abcdefilnprstuvw", + 9: "p", + 10: "m" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "namespaces", + 3: "files", + 4: "functions", + 5: "variables", + 6: "enums", + 7: "enumvalues", + 8: "properties", + 9: "events", + 10: "pages" +}; + +var indexSectionLabels = +{ + 0: "All", + 1: "Classes", + 2: "Namespaces", + 3: "Files", + 4: "Functions", + 5: "Variables", + 6: "Enumerations", + 7: "Enumerator", + 8: "Properties", + 9: "Events", + 10: "Pages" +}; + diff --git a/SOURCE/Plugin/Code Documentation/html/search/variables_0.html b/SOURCE/Plugin/Code Documentation/html/search/variables_0.html new file mode 100644 index 0000000..bf3eba5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/variables_0.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/variables_0.js b/SOURCE/Plugin/Code Documentation/html/search/variables_0.js new file mode 100644 index 0000000..ea6dab9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/variables_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['dragging_288',['dragging',['../class_aml_1_1_editor_1_1_plugin_1_1_device_description.html#ab5a4c5637056e4c6d2649fa7373839fa',1,'Aml::Editor::Plugin::DeviceDescription']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/variables_1.html b/SOURCE/Plugin/Code Documentation/html/search/variables_1.html new file mode 100644 index 0000000..49fe59a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/variables_1.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/variables_1.js b/SOURCE/Plugin/Code Documentation/html/search/variables_1.js new file mode 100644 index 0000000..6139584 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/variables_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['initialdockposition_289',['InitialDockPosition',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#ad191779a3806423c951cf6839300c6e9',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/search/variables_2.html b/SOURCE/Plugin/Code Documentation/html/search/variables_2.html new file mode 100644 index 0000000..0c8a18c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/variables_2.html @@ -0,0 +1,30 @@ + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/SOURCE/Plugin/Code Documentation/html/search/variables_2.js b/SOURCE/Plugin/Code Documentation/html/search/variables_2.js new file mode 100644 index 0000000..083d652 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/search/variables_2.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['packagename_290',['PackageName',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#a333ba75a3b713bdbae46969df659d06b',1,'Aml::Editor::Plugin::ModellingWizard']]], + ['paneimage_291',['PaneImage',['../class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.html#ae6285059764c32a912289a8f0c97262d',1,'Aml::Editor::Plugin::ModellingWizard']]] +]; diff --git a/SOURCE/Plugin/Code Documentation/html/splitbar.png b/SOURCE/Plugin/Code Documentation/html/splitbar.png new file mode 100644 index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e GIT binary patch literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^Yzz!63>-{AmhX=Jf(#6djGiuzAr*{o?=JLmPLyc> z_*`QK&+BH@jWrYJ7>r6%keRM@)Qyv8R=enp0jiI>aWlGyB58O zFVR20d+y`K7vDw(hJF3;>dD*3-?v=<8M)@x|EEGLnJsniYK!2U1 Y!`|5biEc?d1`HDhPgg&ebxsLQ02F6;9RL6T literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/sync_off.png b/SOURCE/Plugin/Code Documentation/html/sync_off.png new file mode 100644 index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc GIT binary patch literal 853 zcmV-b1FHOqP)oT|#XixUYy%lpuf3i8{fX!o zUyDD0jOrAiT^tq>fLSOOABs-#u{dV^F$b{L9&!2=9&RmV;;8s^x&UqB$PCj4FdKbh zoB1WTskPUPu05XzFbA}=KZ-GP1fPpAfSs>6AHb12UlR%-i&uOlTpFNS7{jm@mkU1V zh`nrXr~+^lsV-s1dkZOaI|kYyVj3WBpPCY{n~yd%u%e+d=f%`N0FItMPtdgBb@py; zq@v6NVArhyTC7)ULw-Jy8y42S1~4n(3LkrW8mW(F-4oXUP3E`e#g**YyqI7h-J2zK zK{m9##m4ri!7N>CqQqCcnI3hqo1I;Yh&QLNY4T`*ptiQGozK>FF$!$+84Z`xwmeMh zJ0WT+OH$WYFALEaGj2_l+#DC3t7_S`vHpSivNeFbP6+r50cO8iu)`7i%Z4BTPh@_m3Tk!nAm^)5Bqnr%Ov|Baunj#&RPtRuK& z4RGz|D5HNrW83-#ydk}tVKJrNmyYt-sTxLGlJY5nc&Re zU4SgHNPx8~Yxwr$bsju?4q&%T1874xxzq+_%?h8_ofw~(bld=o3iC)LUNR*BY%c0y zWd_jX{Y8`l%z+ol1$@Qa?Cy!(0CVIEeYpKZ`(9{z>3$CIe;pJDQk$m3p}$>xBm4lb zKo{4S)`wdU9Ba9jJbVJ0C=SOefZe%d$8=2r={nu<_^a3~>c#t_U6dye5)JrR(_a^E f@}b6j1K9lwFJq@>o)+Ry00000NkvXXu0mjfWa5j* literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/sync_on.png b/SOURCE/Plugin/Code Documentation/html/sync_on.png new file mode 100644 index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76 GIT binary patch literal 845 zcmV-T1G4;yP)Y;xxyHF2B5Wzm| zOOGupOTn@c(JmBOl)e;XMNnZuiTJP>rM8<|Q`7I_))aP?*T)ow&n59{}X4$3Goat zgjs?*aasfbrokzG5cT4K=uG`E14xZl@z)F={P0Y^?$4t z>v!teRnNZym<6h{7sLyF1V0HsfEl+l6TrZpsfr1}luH~F7L}ktXu|*uVX^RG$L0`K zWs3j|0tIvVe(N%_?2{(iCPFGf#B6Hjy6o&}D$A%W%jfO8_W%ZO#-mh}EM$LMn7joJ z05dHr!5Y92g+31l<%i1(=L1a1pXX+OYnalY>31V4K}BjyRe3)9n#;-cCVRD_IG1fT zOKGeNY8q;TL@K{dj@D^scf&VCs*-Jb>8b>|`b*osv52-!A?BpbYtTQBns5EAU**$m zSnVSm(teh>tQi*S*A>#ySc=n;`BHz`DuG4&g4Kf8lLhca+zvZ7t7RflD6-i-mcK=M z!=^P$*u2)bkY5asG4gsss!Hn%u~>}kIW`vMs%lJLH+u*9<4PaV_c6U`KqWXQH%+Nu zTv41O(^ZVi@qhjQdG!fbZw&y+2o!iYymO^?ud3{P*HdoX83YV*Uu_HB=?U&W9%AU# z80}k1SS-CXTU7dcQlsm<^oYLxVSseqY6NO}dc`Nj?8vrhNuCdm@^{a3AQ_>6myOj+ z`1RsLUXF|dm|3k7s2jD(B{rzE>WI2scH8i1;=O5Cc9xB3^aJk%fQjqsu+kH#0=_5a z0nCE8@dbQa-|YIuUVvG0L_IwHMEhOj$Mj4Uq05 X8=0q~qBNan00000NkvXXu0mjfptF>5 literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/tab_a.png b/SOURCE/Plugin/Code Documentation/html/tab_a.png new file mode 100644 index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247 GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QlXwMjv*C{Z|8b*H5dputLHD# z=<0|*y7z(Vor?d;H&?EG&cXR}?!j-Lm&u1OOI7AIF5&c)RFE;&p0MYK>*Kl@eiymD r@|NpwKX@^z+;{u_Z~trSBfrMKa%3`zocFjEXaR$#tDnm{r-UW|TZ1%4 literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/tab_b.png b/SOURCE/Plugin/Code Documentation/html/tab_b.png new file mode 100644 index 0000000000000000000000000000000000000000..e2b4a8638cb3496a016eaed9e16ffc12846dea18 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QU#tajv*C{Z}0l@H7kg?K0Lnr z!j&C6_(~HV9oQ0Pa6x{-v0AGV_E?vLn=ZI-;YrdjIl`U`uzuDWSP?o#Dmo{%SgM#oan kX~E1%D-|#H#QbHoIja2U-MgvsK&LQxy85}Sb4q9e0Efg%P5=M^ literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/html/tabs.css b/SOURCE/Plugin/Code Documentation/html/tabs.css new file mode 100644 index 0000000..85a0cd5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/html/tabs.css @@ -0,0 +1 @@ +.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0 1px 1px rgba(255,255,255,0.9);color:#283a5d;outline:0}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace!important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283a5d transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;-moz-border-radius:0!important;-webkit-border-radius:0;border-radius:0!important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a:hover span.sub-arrow{border-color:white transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;-moz-border-radius:5px!important;-webkit-border-radius:5px;border-radius:5px!important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0!important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent white}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px!important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}} \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/latex/Makefile b/SOURCE/Plugin/Code Documentation/latex/Makefile new file mode 100644 index 0000000..877c9cc --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/Makefile @@ -0,0 +1,23 @@ +LATEX_CMD=pdflatex + +all: refman.pdf + +pdf: refman.pdf + +refman.pdf: clean refman.tex + $(LATEX_CMD) refman + makeindex refman.idx + $(LATEX_CMD) refman + latex_count=8 ; \ + while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] ;\ + do \ + echo "Rerunning latex...." ;\ + $(LATEX_CMD) refman ;\ + latex_count=`expr $$latex_count - 1` ;\ + done + makeindex refman.idx + $(LATEX_CMD) refman + + +clean: + rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf diff --git a/SOURCE/Plugin/Code Documentation/latex/_about_8xaml_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_about_8xaml_8cs.tex new file mode 100644 index 0000000..791d35f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_about_8xaml_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_about_8xaml_8cs}{}\doxysection{About.\+xaml.\+cs File Reference} +\label{_about_8xaml_8cs}\index{About.xaml.cs@{About.xaml.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_about}{Aml.\+Editor.\+Plugin.\+About}} +\begin{DoxyCompactList}\small\item\em Interaction logic for About.\+xaml \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_animation_class_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_animation_class_8cs.tex new file mode 100644 index 0000000..358dc70 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_animation_class_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_animation_class_8cs}{}\doxysection{Animation\+Class.\+cs File Reference} +\label{_animation_class_8cs}\index{AnimationClass.cs@{AnimationClass.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class}{Aml.\+Editor.\+Plugin.\+Animation\+Class}} +\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_automation_m_l_data_tables_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_automation_m_l_data_tables_8cs.tex new file mode 100644 index 0000000..f70a053 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_automation_m_l_data_tables_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_automation_m_l_data_tables_8cs}{}\doxysection{Automation\+M\+L\+Data\+Tables.\+cs File Reference} +\label{_automation_m_l_data_tables_8cs}\index{AutomationMLDataTables.cs@{AutomationMLDataTables.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables}{Aml.\+Editor.\+Plugin.\+Automation\+M\+L\+Data\+Tables}} +\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_class_of_lists_from_data_grid_views_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_class_of_lists_from_data_grid_views_8cs.tex new file mode 100644 index 0000000..06a5fe2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_class_of_lists_from_data_grid_views_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_class_of_lists_from_data_grid_views_8cs}{}\doxysection{Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+cs File Reference} +\label{_class_of_lists_from_data_grid_views_8cs}\index{ClassOfListsFromDataGridViews.cs@{ClassOfListsFromDataGridViews.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views}{Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views}} +\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_class_of_lists_from_referencefile_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_class_of_lists_from_referencefile_8cs.tex new file mode 100644 index 0000000..2a07175 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_class_of_lists_from_referencefile_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_class_of_lists_from_referencefile_8cs}{}\doxysection{Class\+Of\+Lists\+From\+Referencefile.\+cs File Reference} +\label{_class_of_lists_from_referencefile_8cs}\index{ClassOfListsFromReferencefile.cs@{ClassOfListsFromReferencefile.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile}} +\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_device_description_8_designer_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_device_description_8_designer_8cs.tex new file mode 100644 index 0000000..cbdf6cb --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_device_description_8_designer_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_device_description_8_designer_8cs}{}\doxysection{Device\+Description.\+Designer.\+cs File Reference} +\label{_device_description_8_designer_8cs}\index{DeviceDescription.Designer.cs@{DeviceDescription.Designer.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description}{Aml.\+Editor.\+Plugin.\+Device\+Description}} +\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_device_description_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_device_description_8cs.tex new file mode 100644 index 0000000..079f6a7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_device_description_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_device_description_8cs}{}\doxysection{Device\+Description.\+cs File Reference} +\label{_device_description_8cs}\index{DeviceDescription.cs@{DeviceDescription.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description}{Aml.\+Editor.\+Plugin.\+Device\+Description}} +\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_m_w_controller_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_m_w_controller_8cs.tex new file mode 100644 index 0000000..bb5f467 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_m_w_controller_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_m_w_controller_8cs}{}\doxysection{M\+W\+Controller.\+cs File Reference} +\label{_m_w_controller_8cs}\index{MWController.cs@{MWController.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller}{Aml.\+Editor.\+Plugin.\+M\+W\+Controller}} +\begin{DoxyCompactList}\small\item\em This class passes the inputs of the G\+U\+Is to \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}{M\+W\+Data}} where needed and it is in controll of what is displayed at the screen \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_m_w_data_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_m_w_data_8cs.tex new file mode 100644 index 0000000..4d1c56b --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_m_w_data_8cs.tex @@ -0,0 +1,18 @@ +\hypertarget{_m_w_data_8cs}{}\doxysection{M\+W\+Data.\+cs File Reference} +\label{_m_w_data_8cs}\index{MWData.cs@{MWData.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}{Aml.\+Editor.\+Plugin.\+M\+W\+Data}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object}{Aml.\+Editor.\+Plugin.\+M\+W\+Data.\+M\+W\+Object}} +\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_m_w_device_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_m_w_device_8cs.tex new file mode 100644 index 0000000..0faec7d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_m_w_device_8cs.tex @@ -0,0 +1,28 @@ +\hypertarget{_m_w_device_8cs}{}\doxysection{M\+W\+Device.\+cs File Reference} +\label{_m_w_device_8cs}\index{MWDevice.cs@{MWDevice.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device}{Aml.\+Editor.\+Plugin.\+M\+W\+Device}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters}{Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}{Aml.\+Editor.\+Plugin.\+Electrical\+Parameters}} +\begin{DoxyCompactList}\small\item\em /\+The following classes are parameter holders for Electrical Interfaces \end{DoxyCompactList}\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view}{Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view}{Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}{Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters}} +\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_modelling_wizard_8xaml_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_modelling_wizard_8xaml_8cs.tex new file mode 100644 index 0000000..0835637 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_modelling_wizard_8xaml_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_modelling_wizard_8xaml_8cs}{}\doxysection{Modelling\+Wizard.\+xaml.\+cs File Reference} +\label{_modelling_wizard_8xaml_8cs}\index{ModellingWizard.xaml.cs@{ModellingWizard.xaml.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Aml.\+Editor.\+Plugin.\+Modelling\+Wizard}} +\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Modelling\+Wizard}} is an Plug\+In, which implements the I\+A\+M\+L\+Editor\+View Interface. \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_r_e_a_d_m_e_8md.tex b/SOURCE/Plugin/Code Documentation/latex/_r_e_a_d_m_e_8md.tex new file mode 100644 index 0000000..95e1c45 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_r_e_a_d_m_e_8md.tex @@ -0,0 +1,2 @@ +\hypertarget{_r_e_a_d_m_e_8md}{}\doxysection{R\+E\+A\+D\+M\+E.\+md File Reference} +\label{_r_e_a_d_m_e_8md}\index{README.md@{README.md}} diff --git a/SOURCE/Plugin/Code Documentation/latex/_search_a_m_l_component_file_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_search_a_m_l_component_file_8cs.tex new file mode 100644 index 0000000..ad421cf --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_search_a_m_l_component_file_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_search_a_m_l_component_file_8cs}{}\doxysection{Search\+A\+M\+L\+Component\+File.\+cs File Reference} +\label{_search_a_m_l_component_file_8cs}\index{SearchAMLComponentFile.cs@{SearchAMLComponentFile.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file}{Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File}} +\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/_search_a_m_l_library_file_8cs.tex b/SOURCE/Plugin/Code Documentation/latex/_search_a_m_l_library_file_8cs.tex new file mode 100644 index 0000000..c0335a5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/_search_a_m_l_library_file_8cs.tex @@ -0,0 +1,16 @@ +\hypertarget{_search_a_m_l_library_file_8cs}{}\doxysection{Search\+A\+M\+L\+Library\+File.\+cs File Reference} +\label{_search_a_m_l_library_file_8cs}\index{SearchAMLLibraryFile.cs@{SearchAMLLibraryFile.cs}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file}{Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File}} +\begin{DoxyCompactList}\small\item\em This class reads the library file loaded in to the plugin \char`\"{}\+Role Class Library Tree\+View\char`\"{} and \char`\"{}\+Interface Class Library Tree\+View\char`\"{} \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml}{Aml}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/annotated.tex b/SOURCE/Plugin/Code Documentation/latex/annotated.tex new file mode 100644 index 0000000..0b87259 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/annotated.tex @@ -0,0 +1,22 @@ +\doxysection{Class List} +Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_about}{Aml.\+Editor.\+Plugin.\+About}} \\*Interaction logic for About.\+xaml }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_about}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class}{Aml.\+Editor.\+Plugin.\+Animation\+Class}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_animation_class}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}{Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables}{Aml.\+Editor.\+Plugin.\+Automation\+M\+L\+Data\+Tables}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views}{Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters}{Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description}{Aml.\+Editor.\+Plugin.\+Device\+Description}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_device_description}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}{Aml.\+Editor.\+Plugin.\+Electrical\+Parameters}} \\*/\+The following classes are parameter holders for Electrical Interfaces }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view}{Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Aml.\+Editor.\+Plugin.\+Modelling\+Wizard}} \\*\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Modelling\+Wizard}} is an Plug\+In, which implements the I\+A\+M\+L\+Editor\+View Interface }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller}{Aml.\+Editor.\+Plugin.\+M\+W\+Controller}} \\*This class passes the inputs of the G\+U\+Is to \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}{M\+W\+Data}} where needed and it is in controll of what is displayed at the screen }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}{Aml.\+Editor.\+Plugin.\+M\+W\+Data}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device}{Aml.\+Editor.\+Plugin.\+M\+W\+Device}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object}{Aml.\+Editor.\+Plugin.\+M\+W\+Data.\+M\+W\+Object}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view}{Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file}{Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File}} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file}{Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File}} \\*This class reads the library file loaded in to the plugin \char`\"{}\+Role Class Library Tree\+View\char`\"{} and \char`\"{}\+Interface Class Library Tree\+View\char`\"{} }{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file}}{} +\end{DoxyCompactList} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.eps b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.eps new file mode 100644 index 0000000..84633d2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 259.740260 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.925000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(Aml.Editor.Plugin.About) cw +(Window) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (Aml.Editor.Plugin.About) 0.000000 0.000000 box + (Window) 0.000000 1.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.pdf b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.pdf new file mode 100644 index 0000000..20e8da9 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.pdf @@ -0,0 +1,95 @@ +%PDF-1.7 +%쏢 +5 0 obj +<> +stream +xPN0W8,~Tq;ZYQ#a933*Ҩp#` +k88.K%{vX`\Ԩ#48v^ozu{W{*> +/Contents 5 0 R +>> +endobj +3 0 obj +<< /Type /Pages /Kids [ +4 0 R +] /Count 1 +>> +endobj +1 0 obj +<> +endobj +7 0 obj +<>endobj +9 0 obj +<> +endobj +10 0 obj +<> +endobj +8 0 obj +<> +endobj +11 0 obj +<>stream + + + + + +2020-01-27T18:41:50+01:00 +2020-01-27T18:41:50+01:00 +Doxygen + +ClassName + + + + + +endstream +endobj +2 0 obj +<>endobj +xref +0 12 +0000000000 65535 f +0000000573 00000 n +0000002283 00000 n +0000000514 00000 n +0000000364 00000 n +0000000015 00000 n +0000000345 00000 n +0000000638 00000 n +0000000738 00000 n +0000000679 00000 n +0000000708 00000 n +0000000804 00000 n +trailer +<< /Size 12 /Root 1 0 R /Info 2 0 R +/ID [<0FCB9BB0C5B396120D4E1766EC31F1C2><0FCB9BB0C5B396120D4E1766EC31F1C2>] +>> +startxref +2459 +%%EOF diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.tex new file mode 100644 index 0000000..14729ab --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_about.tex @@ -0,0 +1,51 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_about}{}\doxysection{Aml.\+Editor.\+Plugin.\+About Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_about}\index{Aml.Editor.Plugin.About@{Aml.Editor.Plugin.About}} + + +Interaction logic for About.\+xaml + + +Inheritance diagram for Aml.\+Editor.\+Plugin.\+About\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2.000000cm]{class_aml_1_1_editor_1_1_plugin_1_1_about} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_about_a0001137d5fb3972b81264ce5568cc4d8}{About}} () +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_about_a542282bf537e261e5294e607f88dc9e6}{Version}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Detailed Description} +Interaction logic for About.\+xaml + + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_about_a0001137d5fb3972b81264ce5568cc4d8}\label{class_aml_1_1_editor_1_1_plugin_1_1_about_a0001137d5fb3972b81264ce5568cc4d8}} +\index{Aml.Editor.Plugin.About@{Aml.Editor.Plugin.About}!About@{About}} +\index{About@{About}!Aml.Editor.Plugin.About@{Aml.Editor.Plugin.About}} +\doxysubsubsection{\texorpdfstring{About()}{About()}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+About.\+About (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_about_a542282bf537e261e5294e607f88dc9e6}\label{class_aml_1_1_editor_1_1_plugin_1_1_about_a542282bf537e261e5294e607f88dc9e6}} +\index{Aml.Editor.Plugin.About@{Aml.Editor.Plugin.About}!Version@{Version}} +\index{Version@{Version}!Aml.Editor.Plugin.About@{Aml.Editor.Plugin.About}} +\doxysubsubsection{\texorpdfstring{Version}{Version}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+About.\+Version\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_about_8xaml_8cs}{About.\+xaml.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.tex new file mode 100644 index 0000000..1a37e3a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_animation_class.tex @@ -0,0 +1,158 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class}{}\doxysection{Aml.\+Editor.\+Plugin.\+Animation\+Class Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class}\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a99e06693a64c2eecb54276b906d14822}{Animation\+Class}} () +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_ad95b75f8f5095b88ef3aa75d92e25263}{Window\+Size\+Changer}} (Panel panel\+Number, Button button\+Number) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_ae9de03fc8ff4839dff7873a64d5eaf8c}{Window\+Size\+Changer}} (Panel panel\+Number) +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a4fba2da1c2015740334e10dd50d1fb4a}{Open\+File\+Dialog}} (Text\+Box textbox\+Name) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_af622bb4ee8c59d14abad92dd8ceb976e}{Open\+File\+Dialog}} (Text\+Box textbox\+Name, Button pdf\+Display\+Btn) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a77d8bf72f7d54a50df736fee1006836d}{Manual\+Opener}} (string btn\+Text) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_aac584071d94916c2df7d91bbe39e5c6c}{Open\+File\+Dialog}} (Text\+Box textbox\+Name, Picture\+Box picture\+Box\+Number) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a9aecddc8211b6ef2cb45103ee8cee319}{Open\+File\+Dialog}} (Text\+Box textbox\+Name, Picture\+Box picture\+Box\+Number, Button display\+Button) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_aa7de242b566e80898c52fe89d19626b0}{Dispaly\+Semantic\+Btn}} (Button ref\+Semantic\+Btn, Data\+Grid\+View data\+Grids, string word) +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +Panel \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a978d71a487ceb1fab343b33afca66775}{Panel\+Number}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Button \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a60f3bd7a53a308a0963b9d603757c289}{Button\+Number}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Web\+Browser \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a3a43c6acd43cc44cd85ea42610db93e5}{Webbrowser}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Text\+Box \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a19dcafe11285ec11f235d3c84e765151}{Textbox\+Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Picture\+Box \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a07f73e83f366c180d868edb155629349}{Picturebox\+Number}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Button \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a9c5863b36d871cca1a96d53be4637c65}{Display\+Btn}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Data\+Grid\+View \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a30e0efbd0cfdcc718d2bb26f8dc3a0f8}{data\+Grid\+View}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_ae2dd3c44c8e8a9cc4ecb11cb7ad79682}{words}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a99e06693a64c2eecb54276b906d14822}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a99e06693a64c2eecb54276b906d14822}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!AnimationClass@{AnimationClass}} +\index{AnimationClass@{AnimationClass}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{AnimationClass()}{AnimationClass()}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Animation\+Class (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_aa7de242b566e80898c52fe89d19626b0}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_aa7de242b566e80898c52fe89d19626b0}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!DispalySemanticBtn@{DispalySemanticBtn}} +\index{DispalySemanticBtn@{DispalySemanticBtn}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{DispalySemanticBtn()}{DispalySemanticBtn()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Dispaly\+Semantic\+Btn (\begin{DoxyParamCaption}\item[{Button}]{ref\+Semantic\+Btn, }\item[{Data\+Grid\+View}]{data\+Grids, }\item[{string}]{word }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a77d8bf72f7d54a50df736fee1006836d}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a77d8bf72f7d54a50df736fee1006836d}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!ManualOpener@{ManualOpener}} +\index{ManualOpener@{ManualOpener}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{ManualOpener()}{ManualOpener()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Manual\+Opener (\begin{DoxyParamCaption}\item[{string}]{btn\+Text }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a4fba2da1c2015740334e10dd50d1fb4a}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a4fba2da1c2015740334e10dd50d1fb4a}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!OpenFileDialog@{OpenFileDialog}} +\index{OpenFileDialog@{OpenFileDialog}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{OpenFileDialog()}{OpenFileDialog()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Open\+File\+Dialog (\begin{DoxyParamCaption}\item[{Text\+Box}]{textbox\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_af622bb4ee8c59d14abad92dd8ceb976e}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_af622bb4ee8c59d14abad92dd8ceb976e}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!OpenFileDialog@{OpenFileDialog}} +\index{OpenFileDialog@{OpenFileDialog}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{OpenFileDialog()}{OpenFileDialog()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Open\+File\+Dialog (\begin{DoxyParamCaption}\item[{Text\+Box}]{textbox\+Name, }\item[{Button}]{pdf\+Display\+Btn }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_aac584071d94916c2df7d91bbe39e5c6c}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_aac584071d94916c2df7d91bbe39e5c6c}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!OpenFileDialog@{OpenFileDialog}} +\index{OpenFileDialog@{OpenFileDialog}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{OpenFileDialog()}{OpenFileDialog()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Open\+File\+Dialog (\begin{DoxyParamCaption}\item[{Text\+Box}]{textbox\+Name, }\item[{Picture\+Box}]{picture\+Box\+Number }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a9aecddc8211b6ef2cb45103ee8cee319}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a9aecddc8211b6ef2cb45103ee8cee319}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!OpenFileDialog@{OpenFileDialog}} +\index{OpenFileDialog@{OpenFileDialog}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{OpenFileDialog()}{OpenFileDialog()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Open\+File\+Dialog (\begin{DoxyParamCaption}\item[{Text\+Box}]{textbox\+Name, }\item[{Picture\+Box}]{picture\+Box\+Number, }\item[{Button}]{display\+Button }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_ae9de03fc8ff4839dff7873a64d5eaf8c}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_ae9de03fc8ff4839dff7873a64d5eaf8c}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!WindowSizeChanger@{WindowSizeChanger}} +\index{WindowSizeChanger@{WindowSizeChanger}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{WindowSizeChanger()}{WindowSizeChanger()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Window\+Size\+Changer (\begin{DoxyParamCaption}\item[{Panel}]{panel\+Number }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_ad95b75f8f5095b88ef3aa75d92e25263}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_ad95b75f8f5095b88ef3aa75d92e25263}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!WindowSizeChanger@{WindowSizeChanger}} +\index{WindowSizeChanger@{WindowSizeChanger}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{WindowSizeChanger()}{WindowSizeChanger()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Window\+Size\+Changer (\begin{DoxyParamCaption}\item[{Panel}]{panel\+Number, }\item[{Button}]{button\+Number }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a60f3bd7a53a308a0963b9d603757c289}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a60f3bd7a53a308a0963b9d603757c289}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!ButtonNumber@{ButtonNumber}} +\index{ButtonNumber@{ButtonNumber}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{ButtonNumber}{ButtonNumber}} +{\footnotesize\ttfamily Button Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Button\+Number\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a30e0efbd0cfdcc718d2bb26f8dc3a0f8}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a30e0efbd0cfdcc718d2bb26f8dc3a0f8}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!dataGridView@{dataGridView}} +\index{dataGridView@{dataGridView}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{dataGridView}{dataGridView}} +{\footnotesize\ttfamily Data\+Grid\+View Aml.\+Editor.\+Plugin.\+Animation\+Class.\+data\+Grid\+View\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a9c5863b36d871cca1a96d53be4637c65}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a9c5863b36d871cca1a96d53be4637c65}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!DisplayBtn@{DisplayBtn}} +\index{DisplayBtn@{DisplayBtn}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{DisplayBtn}{DisplayBtn}} +{\footnotesize\ttfamily Button Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Display\+Btn\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a978d71a487ceb1fab343b33afca66775}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a978d71a487ceb1fab343b33afca66775}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!PanelNumber@{PanelNumber}} +\index{PanelNumber@{PanelNumber}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{PanelNumber}{PanelNumber}} +{\footnotesize\ttfamily Panel Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Panel\+Number\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a07f73e83f366c180d868edb155629349}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a07f73e83f366c180d868edb155629349}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!PictureboxNumber@{PictureboxNumber}} +\index{PictureboxNumber@{PictureboxNumber}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{PictureboxNumber}{PictureboxNumber}} +{\footnotesize\ttfamily Picture\+Box Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Picturebox\+Number\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a19dcafe11285ec11f235d3c84e765151}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a19dcafe11285ec11f235d3c84e765151}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!TextboxName@{TextboxName}} +\index{TextboxName@{TextboxName}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{TextboxName}{TextboxName}} +{\footnotesize\ttfamily Text\+Box Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Textbox\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a3a43c6acd43cc44cd85ea42610db93e5}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_a3a43c6acd43cc44cd85ea42610db93e5}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!Webbrowser@{Webbrowser}} +\index{Webbrowser@{Webbrowser}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{Webbrowser}{Webbrowser}} +{\footnotesize\ttfamily Web\+Browser Aml.\+Editor.\+Plugin.\+Animation\+Class.\+Webbrowser\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_ae2dd3c44c8e8a9cc4ecb11cb7ad79682}\label{class_aml_1_1_editor_1_1_plugin_1_1_animation_class_ae2dd3c44c8e8a9cc4ecb11cb7ad79682}} +\index{Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}!words@{words}} +\index{words@{words}!Aml.Editor.Plugin.AnimationClass@{Aml.Editor.Plugin.AnimationClass}} +\doxysubsubsection{\texorpdfstring{words}{words}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Animation\+Class.\+words\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_animation_class_8cs}{Animation\+Class.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.tex new file mode 100644 index 0000000..0b1411e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters.tex @@ -0,0 +1,70 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}{}\doxysection{Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}\index{Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_a58df9ca5564d2e6002e7616793fa03d2}{Attachables\+Data\+Grid\+View\+Parameters}} () +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_a169521da74d35dad5bf31aa7073fcc86}{Attachables\+Data\+Grid\+View\+Parameters}} (string element\+Name, string file\+Path, bool add\+To\+File) +\item +override string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_ac56d0c84695e18c0c8793ff63dff0644}{To\+String}} () +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_aace740ed93ef1af8570d1cc2c244ad70}{Element\+Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_a9f5245fd7be3ec1af0400bc0280279c0}{File\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_ac066151417d31343474366e089519f83}{Add\+To\+File}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_a58df9ca5564d2e6002e7616793fa03d2}\label{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_a58df9ca5564d2e6002e7616793fa03d2}} +\index{Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}!AttachablesDataGridViewParameters@{AttachablesDataGridViewParameters}} +\index{AttachablesDataGridViewParameters@{AttachablesDataGridViewParameters}!Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}} +\doxysubsubsection{\texorpdfstring{AttachablesDataGridViewParameters()}{AttachablesDataGridViewParameters()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters.\+Attachables\+Data\+Grid\+View\+Parameters (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_a169521da74d35dad5bf31aa7073fcc86}\label{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_a169521da74d35dad5bf31aa7073fcc86}} +\index{Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}!AttachablesDataGridViewParameters@{AttachablesDataGridViewParameters}} +\index{AttachablesDataGridViewParameters@{AttachablesDataGridViewParameters}!Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}} +\doxysubsubsection{\texorpdfstring{AttachablesDataGridViewParameters()}{AttachablesDataGridViewParameters()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters.\+Attachables\+Data\+Grid\+View\+Parameters (\begin{DoxyParamCaption}\item[{string}]{element\+Name, }\item[{string}]{file\+Path, }\item[{bool}]{add\+To\+File }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_ac56d0c84695e18c0c8793ff63dff0644}\label{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_ac56d0c84695e18c0c8793ff63dff0644}} +\index{Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}!ToString@{ToString}} +\index{ToString@{ToString}!Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}} +\doxysubsubsection{\texorpdfstring{ToString()}{ToString()}} +{\footnotesize\ttfamily override string Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters.\+To\+String (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_ac066151417d31343474366e089519f83}\label{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_ac066151417d31343474366e089519f83}} +\index{Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}!AddToFile@{AddToFile}} +\index{AddToFile@{AddToFile}!Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}} +\doxysubsubsection{\texorpdfstring{AddToFile}{AddToFile}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters.\+Add\+To\+File\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_aace740ed93ef1af8570d1cc2c244ad70}\label{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_aace740ed93ef1af8570d1cc2c244ad70}} +\index{Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}!ElementName@{ElementName}} +\index{ElementName@{ElementName}!Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}} +\doxysubsubsection{\texorpdfstring{ElementName}{ElementName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters.\+Element\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_a9f5245fd7be3ec1af0400bc0280279c0}\label{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters_a9f5245fd7be3ec1af0400bc0280279c0}} +\index{Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}!FilePath@{FilePath}} +\index{FilePath@{FilePath}!Aml.Editor.Plugin.AttachablesDataGridViewParameters@{Aml.Editor.Plugin.AttachablesDataGridViewParameters}} +\doxysubsubsection{\texorpdfstring{FilePath}{FilePath}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters.\+File\+Path\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_m_w_device_8cs}{M\+W\+Device.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.tex new file mode 100644 index 0000000..15399d4 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables.tex @@ -0,0 +1,45 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables}{}\doxysection{Aml.\+Editor.\+Plugin.\+Automation\+M\+L\+Data\+Tables Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables}\index{Aml.Editor.Plugin.AutomationMLDataTables@{Aml.Editor.Plugin.AutomationMLDataTables}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +Data\+Table \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_a504d5b014d4b10a3762a17b2b6b2ed6a}{A\+M\+L\+Attribute\+Parameters}} () +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_a09ab6e8a0fc0d12b1e1f681e22b237c9}{Create\+Data\+Table\+With\+Columns}} (Data\+Table data\+Row\+Name, Data\+Grid\+View data\+Grid\+View\+Name, Key\+Value\+Pair$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$$>$ pair) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_a458fec8a343a700daeaa499ce499b5f3}{Check\+For\+Same\+Name\+Text\+Of\+Internal\+Attributes}} (Data\+Table data\+Row\+Name, Data\+Grid\+View data\+Grid\+View\+Name, Key\+Value\+Pair$<$ string, List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ pair) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_afb66a5f37e2ade40f3f73967cfa3b65a}{Create\+Data\+Table\+With\+Columns}} (Data\+Table data\+Row\+Name, Data\+Grid\+View data\+Grid\+View\+Name, Key\+Value\+Pair$<$ string, List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{Electrical\+Interface\+Parameters}} $>$$>$ pair) +\end{DoxyCompactItemize} + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_a504d5b014d4b10a3762a17b2b6b2ed6a}\label{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_a504d5b014d4b10a3762a17b2b6b2ed6a}} +\index{Aml.Editor.Plugin.AutomationMLDataTables@{Aml.Editor.Plugin.AutomationMLDataTables}!AMLAttributeParameters@{AMLAttributeParameters}} +\index{AMLAttributeParameters@{AMLAttributeParameters}!Aml.Editor.Plugin.AutomationMLDataTables@{Aml.Editor.Plugin.AutomationMLDataTables}} +\doxysubsubsection{\texorpdfstring{AMLAttributeParameters()}{AMLAttributeParameters()}} +{\footnotesize\ttfamily Data\+Table Aml.\+Editor.\+Plugin.\+Automation\+M\+L\+Data\+Tables.\+A\+M\+L\+Attribute\+Parameters (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_a458fec8a343a700daeaa499ce499b5f3}\label{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_a458fec8a343a700daeaa499ce499b5f3}} +\index{Aml.Editor.Plugin.AutomationMLDataTables@{Aml.Editor.Plugin.AutomationMLDataTables}!CheckForSameNameTextOfInternalAttributes@{CheckForSameNameTextOfInternalAttributes}} +\index{CheckForSameNameTextOfInternalAttributes@{CheckForSameNameTextOfInternalAttributes}!Aml.Editor.Plugin.AutomationMLDataTables@{Aml.Editor.Plugin.AutomationMLDataTables}} +\doxysubsubsection{\texorpdfstring{CheckForSameNameTextOfInternalAttributes()}{CheckForSameNameTextOfInternalAttributes()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Automation\+M\+L\+Data\+Tables.\+Check\+For\+Same\+Name\+Text\+Of\+Internal\+Attributes (\begin{DoxyParamCaption}\item[{Data\+Table}]{data\+Row\+Name, }\item[{Data\+Grid\+View}]{data\+Grid\+View\+Name, }\item[{Key\+Value\+Pair$<$ string, List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{pair }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_afb66a5f37e2ade40f3f73967cfa3b65a}\label{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_afb66a5f37e2ade40f3f73967cfa3b65a}} +\index{Aml.Editor.Plugin.AutomationMLDataTables@{Aml.Editor.Plugin.AutomationMLDataTables}!CreateDataTableWithColumns@{CreateDataTableWithColumns}} +\index{CreateDataTableWithColumns@{CreateDataTableWithColumns}!Aml.Editor.Plugin.AutomationMLDataTables@{Aml.Editor.Plugin.AutomationMLDataTables}} +\doxysubsubsection{\texorpdfstring{CreateDataTableWithColumns()}{CreateDataTableWithColumns()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Automation\+M\+L\+Data\+Tables.\+Create\+Data\+Table\+With\+Columns (\begin{DoxyParamCaption}\item[{Data\+Table}]{data\+Row\+Name, }\item[{Data\+Grid\+View}]{data\+Grid\+View\+Name, }\item[{Key\+Value\+Pair$<$ string, List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{Electrical\+Interface\+Parameters}} $>$$>$}]{pair }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_a09ab6e8a0fc0d12b1e1f681e22b237c9}\label{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables_a09ab6e8a0fc0d12b1e1f681e22b237c9}} +\index{Aml.Editor.Plugin.AutomationMLDataTables@{Aml.Editor.Plugin.AutomationMLDataTables}!CreateDataTableWithColumns@{CreateDataTableWithColumns}} +\index{CreateDataTableWithColumns@{CreateDataTableWithColumns}!Aml.Editor.Plugin.AutomationMLDataTables@{Aml.Editor.Plugin.AutomationMLDataTables}} +\doxysubsubsection{\texorpdfstring{CreateDataTableWithColumns()}{CreateDataTableWithColumns()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Automation\+M\+L\+Data\+Tables.\+Create\+Data\+Table\+With\+Columns (\begin{DoxyParamCaption}\item[{Data\+Table}]{data\+Row\+Name, }\item[{Data\+Grid\+View}]{data\+Grid\+View\+Name, }\item[{Key\+Value\+Pair$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$$>$}]{pair }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_automation_m_l_data_tables_8cs}{Automation\+M\+L\+Data\+Tables.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.tex new file mode 100644 index 0000000..630967e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views.tex @@ -0,0 +1,142 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views}{}\doxysection{Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views}\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a0e8a3323743c15f0d7a391d440214d8a}{Class\+Of\+Lists\+From\+Data\+Grid\+Views}} () +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a88d3c0088d5f28a287ca5531a153ec0b}{Class\+Of\+Lists\+From\+Data\+Grid\+Views}} (string name, string value, string \+\_\+default, string unit, string reference, string description, string copy\+Right, string semantic, string attribute\+Path, string ref\+Base\+Class\+Path, string id, string referenced\+Class\+Name) +\item +override string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a44a20c90a03807c981772a574a1d9eca}{To\+String}} () +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a2b05161d540d7cd91ae360c5d3ce931d}{Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a75676971f172722b3dd7a99bdf2f8b8a}{Value}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_ad3b50c5b8cc491af905f895449cc3ab2}{Default}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a7be0e6cafa4b934c86e6a0d5c44ee8cb}{Unit}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_add70e060fa6395e05d9f60443304b7dd}{Semantic}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a16935dd08fa0c1b25410b7297aa5760c}{Reference}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a6baeec084c45f3c534c3d99383ec5611}{Description}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a97aa6ce9a7458c216785837491325e9d}{Copy\+Right}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a2da0dffa5a85f93c37da9b7c284ffc33}{Attribute\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a24c19702edd78b6628d70b516c6e6ab8}{Ref\+Base\+Class\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_adc03aaee82e06b704b1c350a6833f611}{ID}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a168e93de06adae33dd337416674d98d4}{Referenced\+Class\+Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a0e8a3323743c15f0d7a391d440214d8a}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a0e8a3323743c15f0d7a391d440214d8a}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!ClassOfListsFromDataGridViews@{ClassOfListsFromDataGridViews}} +\index{ClassOfListsFromDataGridViews@{ClassOfListsFromDataGridViews}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{ClassOfListsFromDataGridViews()}{ClassOfListsFromDataGridViews()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a88d3c0088d5f28a287ca5531a153ec0b}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a88d3c0088d5f28a287ca5531a153ec0b}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!ClassOfListsFromDataGridViews@{ClassOfListsFromDataGridViews}} +\index{ClassOfListsFromDataGridViews@{ClassOfListsFromDataGridViews}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{ClassOfListsFromDataGridViews()}{ClassOfListsFromDataGridViews()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views (\begin{DoxyParamCaption}\item[{string}]{name, }\item[{string}]{value, }\item[{string}]{\+\_\+default, }\item[{string}]{unit, }\item[{string}]{reference, }\item[{string}]{description, }\item[{string}]{copy\+Right, }\item[{string}]{semantic, }\item[{string}]{attribute\+Path, }\item[{string}]{ref\+Base\+Class\+Path, }\item[{string}]{id, }\item[{string}]{referenced\+Class\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a44a20c90a03807c981772a574a1d9eca}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a44a20c90a03807c981772a574a1d9eca}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!ToString@{ToString}} +\index{ToString@{ToString}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{ToString()}{ToString()}} +{\footnotesize\ttfamily override string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+To\+String (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a2da0dffa5a85f93c37da9b7c284ffc33}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a2da0dffa5a85f93c37da9b7c284ffc33}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!AttributePath@{AttributePath}} +\index{AttributePath@{AttributePath}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{AttributePath}{AttributePath}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Attribute\+Path\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a97aa6ce9a7458c216785837491325e9d}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a97aa6ce9a7458c216785837491325e9d}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!CopyRight@{CopyRight}} +\index{CopyRight@{CopyRight}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{CopyRight}{CopyRight}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Copy\+Right\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_ad3b50c5b8cc491af905f895449cc3ab2}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_ad3b50c5b8cc491af905f895449cc3ab2}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!Default@{Default}} +\index{Default@{Default}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{Default}{Default}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Default\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a6baeec084c45f3c534c3d99383ec5611}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a6baeec084c45f3c534c3d99383ec5611}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!Description@{Description}} +\index{Description@{Description}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{Description}{Description}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Description\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_adc03aaee82e06b704b1c350a6833f611}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_adc03aaee82e06b704b1c350a6833f611}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!ID@{ID}} +\index{ID@{ID}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{ID}{ID}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+ID\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a2b05161d540d7cd91ae360c5d3ce931d}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a2b05161d540d7cd91ae360c5d3ce931d}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!Name@{Name}} +\index{Name@{Name}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{Name}{Name}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a24c19702edd78b6628d70b516c6e6ab8}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a24c19702edd78b6628d70b516c6e6ab8}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!RefBaseClassPath@{RefBaseClassPath}} +\index{RefBaseClassPath@{RefBaseClassPath}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{RefBaseClassPath}{RefBaseClassPath}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Ref\+Base\+Class\+Path\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a16935dd08fa0c1b25410b7297aa5760c}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a16935dd08fa0c1b25410b7297aa5760c}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!Reference@{Reference}} +\index{Reference@{Reference}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{Reference}{Reference}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Reference\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a168e93de06adae33dd337416674d98d4}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a168e93de06adae33dd337416674d98d4}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!ReferencedClassName@{ReferencedClassName}} +\index{ReferencedClassName@{ReferencedClassName}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{ReferencedClassName}{ReferencedClassName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Referenced\+Class\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_add70e060fa6395e05d9f60443304b7dd}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_add70e060fa6395e05d9f60443304b7dd}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!Semantic@{Semantic}} +\index{Semantic@{Semantic}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{Semantic}{Semantic}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Semantic\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a7be0e6cafa4b934c86e6a0d5c44ee8cb}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a7be0e6cafa4b934c86e6a0d5c44ee8cb}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!Unit@{Unit}} +\index{Unit@{Unit}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{Unit}{Unit}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Unit\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a75676971f172722b3dd7a99bdf2f8b8a}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views_a75676971f172722b3dd7a99bdf2f8b8a}} +\index{Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}!Value@{Value}} +\index{Value@{Value}!Aml.Editor.Plugin.ClassOfListsFromDataGridViews@{Aml.Editor.Plugin.ClassOfListsFromDataGridViews}} +\doxysubsubsection{\texorpdfstring{Value}{Value}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+Value\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_class_of_lists_from_data_grid_views_8cs}{Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.tex new file mode 100644 index 0000000..6ed8244 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile.tex @@ -0,0 +1,166 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{}\doxysection{Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a578795b95ac5f0363dd0f21153e49efb}{Class\+Of\+Lists\+From\+Referencefile}} () +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a54e9f428292f5dd6a6e9b5b335e00a6a}{Class\+Of\+Lists\+From\+Referencefile}} (string name, string value, string \+\_\+default, string unit, string reference, string description, string copy\+Right, string semantic, string attribute\+Path, string ref\+Base\+Class\+Path, string id, string referenced\+Class\+Name, C\+A\+E\+X\+Sequence$<$ Ref\+Semantic\+Type $>$ ref\+Semantic\+List, string supportes\+Role\+Class\+Type, string data\+Type) +\item +override string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a7d76b5c340287155248d3cd6275585b0}{To\+String}} () +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a615ebad7839429334256ad90d985b1e3}{Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_ac58111d02e5a620cbd19818d544442ba}{Value}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_ae77f5e7de1578ebd1d13fc1875b00f2d}{Default}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a9277f25074496cfaff11f041441e1ec9}{Unit}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a3dc85cafdc162bfdedba8720b654ee3f}{Semantic}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_af7f0d4fd668472123a6aa76ec3d41bdc}{Reference}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a05fc8dcadd1ee497fb5211428585312e}{Description}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_ac76172d9552575c6f519859248c60788}{Copy\+Right}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a9750122c6e7b78f3a21fc4e89da8d7bc}{Attribute\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a95d7023958dcaba928b0282405f0203b}{Ref\+Base\+Class\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a349e791c119e8a3e4afa9a9b9ccf46cc}{ID}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a009c972b83ad9845970ac9fede52fbad}{Referenced\+Class\+Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +C\+A\+E\+X\+Sequence$<$ Ref\+Semantic\+Type $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a17b87abdd2b4e792aeff7d8b3d0cdfb4}{Ref\+Semantic\+List}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_aa20d2e52af2ab5bcddd720acb789b2d0}{Supportes\+Role\+Class\+Type}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a12110843109248f422b15548d9c3c1d2}{Data\+Type}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a578795b95ac5f0363dd0f21153e49efb}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a578795b95ac5f0363dd0f21153e49efb}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!ClassOfListsFromReferencefile@{ClassOfListsFromReferencefile}} +\index{ClassOfListsFromReferencefile@{ClassOfListsFromReferencefile}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{ClassOfListsFromReferencefile()}{ClassOfListsFromReferencefile()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Class\+Of\+Lists\+From\+Referencefile (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a54e9f428292f5dd6a6e9b5b335e00a6a}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a54e9f428292f5dd6a6e9b5b335e00a6a}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!ClassOfListsFromReferencefile@{ClassOfListsFromReferencefile}} +\index{ClassOfListsFromReferencefile@{ClassOfListsFromReferencefile}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{ClassOfListsFromReferencefile()}{ClassOfListsFromReferencefile()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Class\+Of\+Lists\+From\+Referencefile (\begin{DoxyParamCaption}\item[{string}]{name, }\item[{string}]{value, }\item[{string}]{\+\_\+default, }\item[{string}]{unit, }\item[{string}]{reference, }\item[{string}]{description, }\item[{string}]{copy\+Right, }\item[{string}]{semantic, }\item[{string}]{attribute\+Path, }\item[{string}]{ref\+Base\+Class\+Path, }\item[{string}]{id, }\item[{string}]{referenced\+Class\+Name, }\item[{C\+A\+E\+X\+Sequence$<$ Ref\+Semantic\+Type $>$}]{ref\+Semantic\+List, }\item[{string}]{supportes\+Role\+Class\+Type, }\item[{string}]{data\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a7d76b5c340287155248d3cd6275585b0}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a7d76b5c340287155248d3cd6275585b0}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!ToString@{ToString}} +\index{ToString@{ToString}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{ToString()}{ToString()}} +{\footnotesize\ttfamily override string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+To\+String (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a9750122c6e7b78f3a21fc4e89da8d7bc}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a9750122c6e7b78f3a21fc4e89da8d7bc}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!AttributePath@{AttributePath}} +\index{AttributePath@{AttributePath}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{AttributePath}{AttributePath}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Attribute\+Path\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_ac76172d9552575c6f519859248c60788}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_ac76172d9552575c6f519859248c60788}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!CopyRight@{CopyRight}} +\index{CopyRight@{CopyRight}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{CopyRight}{CopyRight}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Copy\+Right\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a12110843109248f422b15548d9c3c1d2}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a12110843109248f422b15548d9c3c1d2}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!DataType@{DataType}} +\index{DataType@{DataType}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{DataType}{DataType}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Data\+Type\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_ae77f5e7de1578ebd1d13fc1875b00f2d}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_ae77f5e7de1578ebd1d13fc1875b00f2d}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!Default@{Default}} +\index{Default@{Default}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{Default}{Default}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Default\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a05fc8dcadd1ee497fb5211428585312e}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a05fc8dcadd1ee497fb5211428585312e}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!Description@{Description}} +\index{Description@{Description}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{Description}{Description}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Description\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a349e791c119e8a3e4afa9a9b9ccf46cc}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a349e791c119e8a3e4afa9a9b9ccf46cc}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!ID@{ID}} +\index{ID@{ID}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{ID}{ID}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+ID\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a615ebad7839429334256ad90d985b1e3}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a615ebad7839429334256ad90d985b1e3}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!Name@{Name}} +\index{Name@{Name}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{Name}{Name}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a95d7023958dcaba928b0282405f0203b}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a95d7023958dcaba928b0282405f0203b}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!RefBaseClassPath@{RefBaseClassPath}} +\index{RefBaseClassPath@{RefBaseClassPath}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{RefBaseClassPath}{RefBaseClassPath}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Ref\+Base\+Class\+Path\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_af7f0d4fd668472123a6aa76ec3d41bdc}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_af7f0d4fd668472123a6aa76ec3d41bdc}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!Reference@{Reference}} +\index{Reference@{Reference}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{Reference}{Reference}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Reference\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a009c972b83ad9845970ac9fede52fbad}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a009c972b83ad9845970ac9fede52fbad}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!ReferencedClassName@{ReferencedClassName}} +\index{ReferencedClassName@{ReferencedClassName}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{ReferencedClassName}{ReferencedClassName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Referenced\+Class\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a17b87abdd2b4e792aeff7d8b3d0cdfb4}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a17b87abdd2b4e792aeff7d8b3d0cdfb4}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!RefSemanticList@{RefSemanticList}} +\index{RefSemanticList@{RefSemanticList}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{RefSemanticList}{RefSemanticList}} +{\footnotesize\ttfamily C\+A\+E\+X\+Sequence$<$Ref\+Semantic\+Type$>$ Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Ref\+Semantic\+List\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a3dc85cafdc162bfdedba8720b654ee3f}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a3dc85cafdc162bfdedba8720b654ee3f}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!Semantic@{Semantic}} +\index{Semantic@{Semantic}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{Semantic}{Semantic}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Semantic\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_aa20d2e52af2ab5bcddd720acb789b2d0}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_aa20d2e52af2ab5bcddd720acb789b2d0}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!SupportesRoleClassType@{SupportesRoleClassType}} +\index{SupportesRoleClassType@{SupportesRoleClassType}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{SupportesRoleClassType}{SupportesRoleClassType}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Supportes\+Role\+Class\+Type\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a9277f25074496cfaff11f041441e1ec9}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_a9277f25074496cfaff11f041441e1ec9}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!Unit@{Unit}} +\index{Unit@{Unit}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{Unit}{Unit}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Unit\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_ac58111d02e5a620cbd19818d544442ba}\label{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile_ac58111d02e5a620cbd19818d544442ba}} +\index{Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}!Value@{Value}} +\index{Value@{Value}!Aml.Editor.Plugin.ClassOfListsFromReferencefile@{Aml.Editor.Plugin.ClassOfListsFromReferencefile}} +\doxysubsubsection{\texorpdfstring{Value}{Value}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile.\+Value\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_class_of_lists_from_referencefile_8cs}{Class\+Of\+Lists\+From\+Referencefile.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.tex new file mode 100644 index 0000000..199cca6 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters.tex @@ -0,0 +1,70 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters}{}\doxysection{Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters}\index{Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_adddca2861fb0e123d8d2c02a296cee15}{Data\+Grid\+Parameters}} () +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_a8eaebdff6d41dea7a8b7033674d1f981}{Data\+Grid\+Parameters}} (string ref\+Semantic, string attributes, string value) +\item +override string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_a4e5626067de539c4e0d8c7c642ebb12a}{To\+String}} () +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_abbec7835f2cbd9be8123ddd041883ad2}{Ref\+Semantics}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_ab2a0e0dd77ffa6d715d70a5e112d3903}{Attributes}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_aa56c2203849aa594e43637830a599014}{Values}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_adddca2861fb0e123d8d2c02a296cee15}\label{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_adddca2861fb0e123d8d2c02a296cee15}} +\index{Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}!DataGridParameters@{DataGridParameters}} +\index{DataGridParameters@{DataGridParameters}!Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}} +\doxysubsubsection{\texorpdfstring{DataGridParameters()}{DataGridParameters()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters.\+Data\+Grid\+Parameters (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_a8eaebdff6d41dea7a8b7033674d1f981}\label{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_a8eaebdff6d41dea7a8b7033674d1f981}} +\index{Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}!DataGridParameters@{DataGridParameters}} +\index{DataGridParameters@{DataGridParameters}!Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}} +\doxysubsubsection{\texorpdfstring{DataGridParameters()}{DataGridParameters()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters.\+Data\+Grid\+Parameters (\begin{DoxyParamCaption}\item[{string}]{ref\+Semantic, }\item[{string}]{attributes, }\item[{string}]{value }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_a4e5626067de539c4e0d8c7c642ebb12a}\label{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_a4e5626067de539c4e0d8c7c642ebb12a}} +\index{Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}!ToString@{ToString}} +\index{ToString@{ToString}!Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}} +\doxysubsubsection{\texorpdfstring{ToString()}{ToString()}} +{\footnotesize\ttfamily override string Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters.\+To\+String (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_ab2a0e0dd77ffa6d715d70a5e112d3903}\label{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_ab2a0e0dd77ffa6d715d70a5e112d3903}} +\index{Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}!Attributes@{Attributes}} +\index{Attributes@{Attributes}!Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}} +\doxysubsubsection{\texorpdfstring{Attributes}{Attributes}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters.\+Attributes\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_abbec7835f2cbd9be8123ddd041883ad2}\label{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_abbec7835f2cbd9be8123ddd041883ad2}} +\index{Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}!RefSemantics@{RefSemantics}} +\index{RefSemantics@{RefSemantics}!Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}} +\doxysubsubsection{\texorpdfstring{RefSemantics}{RefSemantics}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters.\+Ref\+Semantics\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_aa56c2203849aa594e43637830a599014}\label{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters_aa56c2203849aa594e43637830a599014}} +\index{Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}!Values@{Values}} +\index{Values@{Values}!Aml.Editor.Plugin.DataGridParameters@{Aml.Editor.Plugin.DataGridParameters}} +\doxysubsubsection{\texorpdfstring{Values}{Values}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters.\+Values\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_m_w_device_8cs}{M\+W\+Device.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.eps b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.eps new file mode 100644 index 0000000..5dbdbfa --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 266.666667 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.875000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 3 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(Aml.Editor.Plugin.DeviceDescription) cw +(UserControl) cw +(Aml.Editor.Plugin.MWData) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (Aml.Editor.Plugin.DeviceDescription) 0.000000 1.000000 box + (UserControl) 0.000000 2.000000 box + (Aml.Editor.Plugin.MWData) 0.000000 0.000000 box + +% ----- relations ----- + +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in +solid +1 0.000000 0.250000 out +solid +0 0.000000 0.750000 in diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.pdf b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6cadd152c6c4e44a433232824a156b79508fde1e GIT binary patch literal 2954 zcmb_eYitx%6c(b14B#Uci2~-PrJYjPy)(1#Wp^vx?F+i4Y*#EaRi`s|w?lV#mYG?* zZ6z_jP)ls&@dJe)Vlaq_Q3INQ4}=f`C?LwiKSUxzOz?qF%hP!7zWRWGCY?Wf_nh;c zbMATG(xyO-i8ni#(tYRqH!(KEA+>!O;B8z?_TWKX3Tte z-PFHV?fWwN;R<>BJwGouE|%^3t&i+{DEaA&C9g)-q`oiv=-OIldh_@xjtL7sJMvgj zL;0E4+N!rqIg zUVm@%iRQ)LwJUd2^o`qS*}t*+_uiAf^UrKPec$`r?{&5Utm$aQr9}ry>f64Vzh(E# zHzuq+T6dxU#zM7k@al^3hkE5xdzQ^Qvh>(pjVC@I2rpfEVD+RWC9Q|fp8oZh!)V}) zQZ?1B^;b;Xx}kK(jqhF>@H{xUu6Ewj2iCk5+!82zrFO7v{goNLCr@p2O`GuT93-+LR;g*!$^qNPaY(Q`+8AJJBw-*6O)`T+L|0RqM07}hlcq||#AwA(AP9#^ z+5qwDv{Bn^KnWmM7Ez-Dnx{HL3={=#QS_X zOY~B?>JK>>3JVQ$gWfXFbu!M8T>3Z1tP*uX!qL_ENT$mHEAecbHq<1F_F>OldC15Y(h|*Gk zC3JJfC$pr+vC@KhGl%nr0&pEoNg9fpK-93oR*TbN;&~#P zIQUHMqTTM~IcN{7EpIM4%*_$@fB^?h=Az*N8Fx^Xl}L90n%5_A0%ziQli&#RPPdhJ+xXcW@8&oU z9wiAi08l@Sc^Lcu0Xj@_7*y55P#L~}n(mI0MAk?~GRN>>nw?<*8S4;<$zbsIL5jy| zF;h8rK$TK)7-IE-|5GYsomN>YIGjvru}ojc5+*T1ebXVcJa{Zi?ue?zMW|{qnT#ot zNQ)gqHL^YrFb&0s5nrb3=EaQcA*RqSa>v9()XSz#GKq+(n8Et|F;UkWp5=rzGkvKuQ-P&Kr<`~EdXwj=?n>G0wf(5CXSCmWAu%kqMK{8T~v)XT_as16#s}&aRD6GQ@OLr8_c?+7u3CnY|9DSCIqPe(Xz8IRQ#E1rO zU4)yJ9s)5yIHaoZ`k=cV;rc{GMKquAG^!7vR!^YH$q81Q%f<()1wpXZR0%GZ)9LW@ f4krgR-<>7e=)*=gM9s(qUa;ADrnIzrVGZ*yE@+UT literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.tex new file mode 100644 index 0000000..3aa3806 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_device_description.tex @@ -0,0 +1,160 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description}{}\doxysection{Aml.\+Editor.\+Plugin.\+Device\+Description Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description}\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +Inheritance diagram for Aml.\+Editor.\+Plugin.\+Device\+Description\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=3.000000cm]{class_aml_1_1_editor_1_1_plugin_1_1_device_description} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a43910d4963765bbb83fb00f8f60b3149}{Device\+Description}} () +\begin{DoxyCompactList}\small\item\em Constructor with no arguments that intilizes Device Description G\+UI \end{DoxyCompactList}\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_aeaaa5d48d1117d26fce90474dea55a5b}{Device\+Description}} (\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller}{M\+W\+Controller}} m\+W\+Controller) +\begin{DoxyCompactList}\small\item\em This is a constructor of this class with M\+W\+Controlle rargument. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_ab9575cb89491e4d3f71d8f94b58b5cc3}{load\+Standard\+Library}} () +\begin{DoxyCompactList}\small\item\em This function loads \char`\"{}\+Interface Class Libraries\char`\"{} and\char`\"{}\+Role Class Libraries\char`\"{} from already defined libaraies in plugin or, libraries from the A\+ML file those user want ot load from local machine. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a23c4a5fcaa60e5b2de9f9d2c271fdb0e}{check\+For\+Automtion\+Component}} () +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a0c4099a413d2bf96ca8aacf75bee03e6}{clear}} () +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a0cea107ee651f7b9567bf305f26c2918}{search\+For\+Component\+Names}} (Attribute\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_ac3abe6c0e5635f553fca28615722a80f}{Clear\+Header\+Tab\+Page\+Valuesof\+Electrical\+Interfaces}} () +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_af5ba2182ac553e9c73b532abb9aa6820}{Clear\+Header\+Tab\+Page\+Valuesofgeneric\+Data}} () +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a925af3db84bdc0f89f6285c989c073cc}{select\+Library}} (byte\mbox{[}$\,$\mbox{]} file) +\end{DoxyCompactItemize} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +bool \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_ab5a4c5637056e4c6d2649fa7373839fa}{dragging}} = false +\end{DoxyCompactItemize} +\doxysubsection*{Protected Member Functions} +\begin{DoxyCompactItemize} +\item +override void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a0237a062c9718be0cc5bbdb61342ab0b}{Dispose}} (bool disposing) +\begin{DoxyCompactList}\small\item\em Clean up any resources being used. \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +object \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description_aca047e64073b4250242f0b8cea862efe}{row}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a43910d4963765bbb83fb00f8f60b3149}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a43910d4963765bbb83fb00f8f60b3149}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!DeviceDescription@{DeviceDescription}} +\index{DeviceDescription@{DeviceDescription}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{DeviceDescription()}{DeviceDescription()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Device\+Description.\+Device\+Description (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +Constructor with no arguments that intilizes Device Description G\+UI + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_aeaaa5d48d1117d26fce90474dea55a5b}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_aeaaa5d48d1117d26fce90474dea55a5b}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!DeviceDescription@{DeviceDescription}} +\index{DeviceDescription@{DeviceDescription}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{DeviceDescription()}{DeviceDescription()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Device\+Description.\+Device\+Description (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller}{M\+W\+Controller}}}]{m\+W\+Controller }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This is a constructor of this class with M\+W\+Controlle rargument. + + +\begin{DoxyParams}{Parameters} +{\em m\+W\+Controller} & \\ +\hline +\end{DoxyParams} + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a23c4a5fcaa60e5b2de9f9d2c271fdb0e}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a23c4a5fcaa60e5b2de9f9d2c271fdb0e}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!checkForAutomtionComponent@{checkForAutomtionComponent}} +\index{checkForAutomtionComponent@{checkForAutomtionComponent}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{checkForAutomtionComponent()}{checkForAutomtionComponent()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Device\+Description.\+check\+For\+Automtion\+Component (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a0c4099a413d2bf96ca8aacf75bee03e6}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a0c4099a413d2bf96ca8aacf75bee03e6}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!clear@{clear}} +\index{clear@{clear}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{clear()}{clear()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Device\+Description.\+clear (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_ac3abe6c0e5635f553fca28615722a80f}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_ac3abe6c0e5635f553fca28615722a80f}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!ClearHeaderTabPageValuesofElectricalInterfaces@{ClearHeaderTabPageValuesofElectricalInterfaces}} +\index{ClearHeaderTabPageValuesofElectricalInterfaces@{ClearHeaderTabPageValuesofElectricalInterfaces}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{ClearHeaderTabPageValuesofElectricalInterfaces()}{ClearHeaderTabPageValuesofElectricalInterfaces()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Device\+Description.\+Clear\+Header\+Tab\+Page\+Valuesof\+Electrical\+Interfaces (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_af5ba2182ac553e9c73b532abb9aa6820}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_af5ba2182ac553e9c73b532abb9aa6820}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!ClearHeaderTabPageValuesofgenericData@{ClearHeaderTabPageValuesofgenericData}} +\index{ClearHeaderTabPageValuesofgenericData@{ClearHeaderTabPageValuesofgenericData}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{ClearHeaderTabPageValuesofgenericData()}{ClearHeaderTabPageValuesofgenericData()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Device\+Description.\+Clear\+Header\+Tab\+Page\+Valuesofgeneric\+Data (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a0237a062c9718be0cc5bbdb61342ab0b}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a0237a062c9718be0cc5bbdb61342ab0b}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!Dispose@{Dispose}} +\index{Dispose@{Dispose}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{Dispose()}{Dispose()}} +{\footnotesize\ttfamily override void Aml.\+Editor.\+Plugin.\+Device\+Description.\+Dispose (\begin{DoxyParamCaption}\item[{bool}]{disposing }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}} + + + +Clean up any resources being used. + + +\begin{DoxyParams}{Parameters} +{\em disposing} & true if managed resources should be disposed; otherwise, false.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_ab9575cb89491e4d3f71d8f94b58b5cc3}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_ab9575cb89491e4d3f71d8f94b58b5cc3}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!loadStandardLibrary@{loadStandardLibrary}} +\index{loadStandardLibrary@{loadStandardLibrary}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{loadStandardLibrary()}{loadStandardLibrary()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Device\+Description.\+load\+Standard\+Library (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This function loads \char`\"{}\+Interface Class Libraries\char`\"{} and\char`\"{}\+Role Class Libraries\char`\"{} from already defined libaraies in plugin or, libraries from the A\+ML file those user want ot load from local machine. + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a0cea107ee651f7b9567bf305f26c2918}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a0cea107ee651f7b9567bf305f26c2918}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!searchForComponentNames@{searchForComponentNames}} +\index{searchForComponentNames@{searchForComponentNames}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{searchForComponentNames()}{searchForComponentNames()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Device\+Description.\+search\+For\+Component\+Names (\begin{DoxyParamCaption}\item[{Attribute\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a925af3db84bdc0f89f6285c989c073cc}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_a925af3db84bdc0f89f6285c989c073cc}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!selectLibrary@{selectLibrary}} +\index{selectLibrary@{selectLibrary}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{selectLibrary()}{selectLibrary()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Device\+Description.\+select\+Library (\begin{DoxyParamCaption}\item[{byte\mbox{[}$\,$\mbox{]}}]{file }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_ab5a4c5637056e4c6d2649fa7373839fa}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_ab5a4c5637056e4c6d2649fa7373839fa}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!dragging@{dragging}} +\index{dragging@{dragging}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{dragging}{dragging}} +{\footnotesize\ttfamily bool Aml.\+Editor.\+Plugin.\+Device\+Description.\+dragging = false} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_device_description_aca047e64073b4250242f0b8cea862efe}\label{class_aml_1_1_editor_1_1_plugin_1_1_device_description_aca047e64073b4250242f0b8cea862efe}} +\index{Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}!row@{row}} +\index{row@{row}!Aml.Editor.Plugin.DeviceDescription@{Aml.Editor.Plugin.DeviceDescription}} +\doxysubsubsection{\texorpdfstring{row}{row}} +{\footnotesize\ttfamily object Aml.\+Editor.\+Plugin.\+Device\+Description.\+row\hspace{0.3cm}{\ttfamily [get]}} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_device_description_8cs}{Device\+Description.\+cs}}\item +\mbox{\hyperlink{_device_description_8_designer_8cs}{Device\+Description.\+Designer.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.tex new file mode 100644 index 0000000..96b8c1c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters.tex @@ -0,0 +1,126 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{}\doxysection{Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a64129081230a1ce2dedac0522336001a}{Electrical\+Interface\+Parameters}} () +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a2425301b26c5eafbb023537874f81656}{Electrical\+Interface\+Parameters}} (string name, string value, string \+\_\+default, string unit, string reference, string description, string copy\+Right, string semantic, string attribute\+Path) +\item +override string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a110a9f1c713de6edc31a590e846aeb36}{To\+String}} () +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_aae6be1d86c3b36ada1ca2d229a62df75}{Attribute\+Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a4ae422487fb3066d2aea5b9842e0ca9f}{Values}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a476b2378ae234a5108b9748169a27a34}{Default}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a7a76f3f614c194a2b9b9276000faf5d2}{Units}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a60d6e9588dcad17528bd134169533c17}{Data\+Type}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_adb09787efcf00be86699ce8fa6479361}{Semantic}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a91c2d8c6f81ab6e64b3f735e7d8f49e0}{Reference}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_ae675816f7be5d22f23bfd93dc41bb078}{Description}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a9542dcb67cca638df6df6d853e878c36}{Copy\+Right}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a12bdc7039d7f14b5358ae364947c0e78}{Attribute\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a64129081230a1ce2dedac0522336001a}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a64129081230a1ce2dedac0522336001a}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!ElectricalInterfaceParameters@{ElectricalInterfaceParameters}} +\index{ElectricalInterfaceParameters@{ElectricalInterfaceParameters}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{ElectricalInterfaceParameters()}{ElectricalInterfaceParameters()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Electrical\+Interface\+Parameters (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a2425301b26c5eafbb023537874f81656}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a2425301b26c5eafbb023537874f81656}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!ElectricalInterfaceParameters@{ElectricalInterfaceParameters}} +\index{ElectricalInterfaceParameters@{ElectricalInterfaceParameters}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{ElectricalInterfaceParameters()}{ElectricalInterfaceParameters()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Electrical\+Interface\+Parameters (\begin{DoxyParamCaption}\item[{string}]{name, }\item[{string}]{value, }\item[{string}]{\+\_\+default, }\item[{string}]{unit, }\item[{string}]{reference, }\item[{string}]{description, }\item[{string}]{copy\+Right, }\item[{string}]{semantic, }\item[{string}]{attribute\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a110a9f1c713de6edc31a590e846aeb36}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a110a9f1c713de6edc31a590e846aeb36}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!ToString@{ToString}} +\index{ToString@{ToString}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{ToString()}{ToString()}} +{\footnotesize\ttfamily override string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+To\+String (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_aae6be1d86c3b36ada1ca2d229a62df75}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_aae6be1d86c3b36ada1ca2d229a62df75}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!AttributeName@{AttributeName}} +\index{AttributeName@{AttributeName}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{AttributeName}{AttributeName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Attribute\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a12bdc7039d7f14b5358ae364947c0e78}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a12bdc7039d7f14b5358ae364947c0e78}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!AttributePath@{AttributePath}} +\index{AttributePath@{AttributePath}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{AttributePath}{AttributePath}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Attribute\+Path\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a9542dcb67cca638df6df6d853e878c36}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a9542dcb67cca638df6df6d853e878c36}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!CopyRight@{CopyRight}} +\index{CopyRight@{CopyRight}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{CopyRight}{CopyRight}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Copy\+Right\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a60d6e9588dcad17528bd134169533c17}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a60d6e9588dcad17528bd134169533c17}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!DataType@{DataType}} +\index{DataType@{DataType}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{DataType}{DataType}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Data\+Type\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a476b2378ae234a5108b9748169a27a34}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a476b2378ae234a5108b9748169a27a34}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!Default@{Default}} +\index{Default@{Default}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{Default}{Default}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Default\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_ae675816f7be5d22f23bfd93dc41bb078}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_ae675816f7be5d22f23bfd93dc41bb078}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!Description@{Description}} +\index{Description@{Description}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{Description}{Description}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Description\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a91c2d8c6f81ab6e64b3f735e7d8f49e0}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a91c2d8c6f81ab6e64b3f735e7d8f49e0}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!Reference@{Reference}} +\index{Reference@{Reference}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{Reference}{Reference}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Reference\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_adb09787efcf00be86699ce8fa6479361}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_adb09787efcf00be86699ce8fa6479361}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!Semantic@{Semantic}} +\index{Semantic@{Semantic}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{Semantic}{Semantic}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Semantic\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a7a76f3f614c194a2b9b9276000faf5d2}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a7a76f3f614c194a2b9b9276000faf5d2}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!Units@{Units}} +\index{Units@{Units}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{Units}{Units}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Units\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a4ae422487fb3066d2aea5b9842e0ca9f}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters_a4ae422487fb3066d2aea5b9842e0ca9f}} +\index{Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}!Values@{Values}} +\index{Values@{Values}!Aml.Editor.Plugin.ElectricalInterfaceParameters@{Aml.Editor.Plugin.ElectricalInterfaceParameters}} +\doxysubsubsection{\texorpdfstring{Values}{Values}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters.\+Values\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_m_w_device_8cs}{M\+W\+Device.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.tex new file mode 100644 index 0000000..7e39972 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters.tex @@ -0,0 +1,104 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}{}\doxysection{Aml.\+Editor.\+Plugin.\+Electrical\+Parameters Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} + + +/\+The following classes are parameter holders for Electrical Interfaces + + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a1dcaebc309e32a207a7a49982aaaeed3}{Electrical\+Parameters}} () +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a975986d2d8141fc680be571a81b94ee4}{Electrical\+Parameters}} (string connector, string connector\+Code, string connector\+Type, string pins, string lis) +\item +override string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a943d71e879a36ccbc5a9fbaa021bfe7e}{To\+String}} () +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_ae654b44fdd0a058cd3a6f6eb8dc47969}{Connector}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_acc6774cd7ddc2b52dbe8f688a6211630}{Connector\+Code}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a17ebc9a1e5d2c756f22447f633174d20}{Connector\+Type}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_ac98fb3c0870ade0b85413ca8d0cfeaa0}{Pins}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view}{Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View}} $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_ab601f8d815e184180d6ffb5e08c6d5e6}{listof\+Electrical\+Data\+Data\+Grid\+View\+Parameters}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view}{Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View}} $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_aa298f8f20aa8eb03430eacec9d097f5b}{list\+Of\+Pin\+Info\+Data\+Grid\+View\+Parameters}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Detailed Description} +/\+The following classes are parameter holders for Electrical Interfaces + + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a1dcaebc309e32a207a7a49982aaaeed3}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a1dcaebc309e32a207a7a49982aaaeed3}} +\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}!ElectricalParameters@{ElectricalParameters}} +\index{ElectricalParameters@{ElectricalParameters}!Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} +\doxysubsubsection{\texorpdfstring{ElectricalParameters()}{ElectricalParameters()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Electrical\+Parameters.\+Electrical\+Parameters (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a975986d2d8141fc680be571a81b94ee4}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a975986d2d8141fc680be571a81b94ee4}} +\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}!ElectricalParameters@{ElectricalParameters}} +\index{ElectricalParameters@{ElectricalParameters}!Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} +\doxysubsubsection{\texorpdfstring{ElectricalParameters()}{ElectricalParameters()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Electrical\+Parameters.\+Electrical\+Parameters (\begin{DoxyParamCaption}\item[{string}]{connector, }\item[{string}]{connector\+Code, }\item[{string}]{connector\+Type, }\item[{string}]{pins, }\item[{string}]{lis }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a943d71e879a36ccbc5a9fbaa021bfe7e}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a943d71e879a36ccbc5a9fbaa021bfe7e}} +\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}!ToString@{ToString}} +\index{ToString@{ToString}!Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} +\doxysubsubsection{\texorpdfstring{ToString()}{ToString()}} +{\footnotesize\ttfamily override string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters.\+To\+String (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_ae654b44fdd0a058cd3a6f6eb8dc47969}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_ae654b44fdd0a058cd3a6f6eb8dc47969}} +\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}!Connector@{Connector}} +\index{Connector@{Connector}!Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} +\doxysubsubsection{\texorpdfstring{Connector}{Connector}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters.\+Connector\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_acc6774cd7ddc2b52dbe8f688a6211630}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_acc6774cd7ddc2b52dbe8f688a6211630}} +\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}!ConnectorCode@{ConnectorCode}} +\index{ConnectorCode@{ConnectorCode}!Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} +\doxysubsubsection{\texorpdfstring{ConnectorCode}{ConnectorCode}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters.\+Connector\+Code\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a17ebc9a1e5d2c756f22447f633174d20}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_a17ebc9a1e5d2c756f22447f633174d20}} +\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}!ConnectorType@{ConnectorType}} +\index{ConnectorType@{ConnectorType}!Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} +\doxysubsubsection{\texorpdfstring{ConnectorType}{ConnectorType}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters.\+Connector\+Type\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_ab601f8d815e184180d6ffb5e08c6d5e6}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_ab601f8d815e184180d6ffb5e08c6d5e6}} +\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}!listofElectricalDataDataGridViewParameters@{listofElectricalDataDataGridViewParameters}} +\index{listofElectricalDataDataGridViewParameters@{listofElectricalDataDataGridViewParameters}!Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} +\doxysubsubsection{\texorpdfstring{listofElectricalDataDataGridViewParameters}{listofElectricalDataDataGridViewParameters}} +{\footnotesize\ttfamily List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view}{Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View}}$>$ Aml.\+Editor.\+Plugin.\+Electrical\+Parameters.\+listof\+Electrical\+Data\+Data\+Grid\+View\+Parameters\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_aa298f8f20aa8eb03430eacec9d097f5b}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_aa298f8f20aa8eb03430eacec9d097f5b}} +\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}!listOfPinInfoDataGridViewParameters@{listOfPinInfoDataGridViewParameters}} +\index{listOfPinInfoDataGridViewParameters@{listOfPinInfoDataGridViewParameters}!Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} +\doxysubsubsection{\texorpdfstring{listOfPinInfoDataGridViewParameters}{listOfPinInfoDataGridViewParameters}} +{\footnotesize\ttfamily List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view}{Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View}}$>$ Aml.\+Editor.\+Plugin.\+Electrical\+Parameters.\+list\+Of\+Pin\+Info\+Data\+Grid\+View\+Parameters\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_ac98fb3c0870ade0b85413ca8d0cfeaa0}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_ac98fb3c0870ade0b85413ca8d0cfeaa0}} +\index{Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}!Pins@{Pins}} +\index{Pins@{Pins}!Aml.Editor.Plugin.ElectricalParameters@{Aml.Editor.Plugin.ElectricalParameters}} +\doxysubsubsection{\texorpdfstring{Pins}{Pins}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters.\+Pins\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_m_w_device_8cs}{M\+W\+Device.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.tex new file mode 100644 index 0000000..65f20a0 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view.tex @@ -0,0 +1,78 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view}{}\doxysection{Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view}\index{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_aeb0bd8fee678d1d2b2cb17ccca492b32}{Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View}} () +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_ac6d42645334f211b7612db4c268b847e}{Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View}} (string reference\+ID, string attribute, string values, string units) +\item +override string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_aba4c25ac5e517f9f360d5501767bcbfd}{To\+String}} () +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_a7ec764e68408965696d6e63a4f5b1940}{Reference\+ID}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_ac1f19e7f6cfb0941b7ce630ca12a7c76}{Attributes}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_afad2f4d7970e790736854b23984fc600}{Values}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_a38a479b3e379cfdd431903504404d747}{Units}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_aeb0bd8fee678d1d2b2cb17ccca492b32}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_aeb0bd8fee678d1d2b2cb17ccca492b32}} +\index{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}!ElectricalParametersInElectricalDataDataGridView@{ElectricalParametersInElectricalDataDataGridView}} +\index{ElectricalParametersInElectricalDataDataGridView@{ElectricalParametersInElectricalDataDataGridView}!Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}} +\doxysubsubsection{\texorpdfstring{ElectricalParametersInElectricalDataDataGridView()}{ElectricalParametersInElectricalDataDataGridView()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_ac6d42645334f211b7612db4c268b847e}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_ac6d42645334f211b7612db4c268b847e}} +\index{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}!ElectricalParametersInElectricalDataDataGridView@{ElectricalParametersInElectricalDataDataGridView}} +\index{ElectricalParametersInElectricalDataDataGridView@{ElectricalParametersInElectricalDataDataGridView}!Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}} +\doxysubsubsection{\texorpdfstring{ElectricalParametersInElectricalDataDataGridView()}{ElectricalParametersInElectricalDataDataGridView()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View (\begin{DoxyParamCaption}\item[{string}]{reference\+ID, }\item[{string}]{attribute, }\item[{string}]{values, }\item[{string}]{units }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_aba4c25ac5e517f9f360d5501767bcbfd}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_aba4c25ac5e517f9f360d5501767bcbfd}} +\index{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}!ToString@{ToString}} +\index{ToString@{ToString}!Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}} +\doxysubsubsection{\texorpdfstring{ToString()}{ToString()}} +{\footnotesize\ttfamily override string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View.\+To\+String (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_ac1f19e7f6cfb0941b7ce630ca12a7c76}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_ac1f19e7f6cfb0941b7ce630ca12a7c76}} +\index{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}!Attributes@{Attributes}} +\index{Attributes@{Attributes}!Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}} +\doxysubsubsection{\texorpdfstring{Attributes}{Attributes}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View.\+Attributes\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_a7ec764e68408965696d6e63a4f5b1940}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_a7ec764e68408965696d6e63a4f5b1940}} +\index{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}!ReferenceID@{ReferenceID}} +\index{ReferenceID@{ReferenceID}!Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}} +\doxysubsubsection{\texorpdfstring{ReferenceID}{ReferenceID}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View.\+Reference\+ID\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_a38a479b3e379cfdd431903504404d747}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_a38a479b3e379cfdd431903504404d747}} +\index{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}!Units@{Units}} +\index{Units@{Units}!Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}} +\doxysubsubsection{\texorpdfstring{Units}{Units}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View.\+Units\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_afad2f4d7970e790736854b23984fc600}\label{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view_afad2f4d7970e790736854b23984fc600}} +\index{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}!Values@{Values}} +\index{Values@{Values}!Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView@{Aml.Editor.Plugin.ElectricalParametersInElectricalDataDataGridView}} +\doxysubsubsection{\texorpdfstring{Values}{Values}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View.\+Values\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_m_w_device_8cs}{M\+W\+Device.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.tex new file mode 100644 index 0000000..0fa241c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller.tex @@ -0,0 +1,172 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller}{}\doxysection{Aml.\+Editor.\+Plugin.\+M\+W\+Controller Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller}\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}} + + +This class passes the inputs of the G\+U\+Is to \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}{M\+W\+Data}} where needed and it is in controll of what is displayed at the screen + + +\doxysubsection*{Public Types} +\begin{DoxyCompactItemize} +\item +enum \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0}{M\+W\+G\+U\+I\+Type}} \{ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0a08139fc253db7964964002703bda052e}{M\+W\+G\+U\+I\+Type.\+Create\+Device}}, +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0afd44e4ee14bded07d2f3dff42dea0f6e}{M\+W\+G\+U\+I\+Type.\+Create\+Interface}}, +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0aa6122a65eaa676f700ae68d393054a37}{M\+W\+G\+U\+I\+Type.\+Start}}, +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0a5d2adcfd71637096d3d16648971c33c5}{M\+W\+G\+U\+I\+Type.\+Device\+Description}} + \} +\begin{DoxyCompactList}\small\item\em Enum to represent the G\+UI \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_a9c87165813d6f480fb4d1141de016565}{M\+W\+Controller}} (\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Modelling\+Wizard}} modelling\+Wizard) +\begin{DoxyCompactList}\small\item\em Init the controller and reload all amlx devices \end{DoxyCompactList}\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description}{Device\+Description}} \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_adba55c4a5135c58c69a0d92d495a0ad1}{Get\+Device\+Description\+Form}} () +\begin{DoxyCompactList}\small\item\em Create the new Create\+Device G\+UI or return the previously created G\+UI \end{DoxyCompactList}\item +String \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_ad0432669e3a6e29aadfb7892746b5068}{Create\+Device\+On\+Click}} (\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device}{M\+W\+Device}} new\+Device, bool is\+Edit) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_aa613a0bc4392c195c617dcd7aba257f5}{Change\+Gui}} (\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0}{M\+W\+G\+U\+I\+Type}} target\+G\+UI) +\begin{DoxyCompactList}\small\item\em Show the correct G\+UI for the selected device \end{DoxyCompactList}\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_ad2f99785d2a3b068dd3ce6c1d7f7fceb}{import\+File}} (string filename, \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_a932def9f5f257f8c1cbc4949e549d233}{M\+W\+Data.\+M\+W\+File\+Type}} filetype) +\begin{DoxyCompactList}\small\item\em Call the Converter with the given file \end{DoxyCompactList}\end{DoxyCompactItemize} + + +\doxysubsection{Detailed Description} +This class passes the inputs of the G\+U\+Is to \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}{M\+W\+Data}} where needed and it is in controll of what is displayed at the screen + + + +\doxysubsection{Member Enumeration Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0}} +\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!MWGUIType@{MWGUIType}} +\index{MWGUIType@{MWGUIType}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}} +\doxysubsubsection{\texorpdfstring{MWGUIType}{MWGUIType}} +{\footnotesize\ttfamily enum \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0}{Aml.\+Editor.\+Plugin.\+M\+W\+Controller.\+M\+W\+G\+U\+I\+Type}}\hspace{0.3cm}{\ttfamily [strong]}} + + + +Enum to represent the G\+UI + +\begin{DoxyEnumFields}{Enumerator} +\raisebox{\heightof{T}}[0pt][0pt]{\index{CreateDevice@{CreateDevice}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}}\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!CreateDevice@{CreateDevice}}}\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0a08139fc253db7964964002703bda052e}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0a08139fc253db7964964002703bda052e}} +Create\+Device&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{CreateInterface@{CreateInterface}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}}\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!CreateInterface@{CreateInterface}}}\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0afd44e4ee14bded07d2f3dff42dea0f6e}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0afd44e4ee14bded07d2f3dff42dea0f6e}} +Create\+Interface&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{Start@{Start}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}}\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!Start@{Start}}}\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0aa6122a65eaa676f700ae68d393054a37}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0aa6122a65eaa676f700ae68d393054a37}} +Start&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{DeviceDescription@{DeviceDescription}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}}\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!DeviceDescription@{DeviceDescription}}}\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0a5d2adcfd71637096d3d16648971c33c5}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0a5d2adcfd71637096d3d16648971c33c5}} +Device\+Description&\\ +\hline + +\end{DoxyEnumFields} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_a9c87165813d6f480fb4d1141de016565}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_a9c87165813d6f480fb4d1141de016565}} +\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!MWController@{MWController}} +\index{MWController@{MWController}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}} +\doxysubsubsection{\texorpdfstring{MWController()}{MWController()}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+M\+W\+Controller.\+M\+W\+Controller (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Modelling\+Wizard}}}]{modelling\+Wizard }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +Init the controller and reload all amlx devices + + +\begin{DoxyParams}{Parameters} +{\em modelling\+Wizard} & \\ +\hline +\end{DoxyParams} + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_aa613a0bc4392c195c617dcd7aba257f5}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_aa613a0bc4392c195c617dcd7aba257f5}} +\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!ChangeGui@{ChangeGui}} +\index{ChangeGui@{ChangeGui}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}} +\doxysubsubsection{\texorpdfstring{ChangeGui()}{ChangeGui()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+M\+W\+Controller.\+Change\+Gui (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_add13bd390b8d39fee5fb2b73d85ec6b0}{M\+W\+G\+U\+I\+Type}}}]{target\+G\+UI }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +Show the correct G\+UI for the selected device + + +\begin{DoxyParams}{Parameters} +{\em selected\+Index} & The index of the selected item in the dropdown\\ +\hline +\end{DoxyParams} + + +Reload all .amlx files in ./modellingwizard/ and update the dropdown. + +Switch the displayed + + +\begin{DoxyParams}{Parameters} +{\em target\+G\+UI} & the G\+UI Type to display\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_ad0432669e3a6e29aadfb7892746b5068}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_ad0432669e3a6e29aadfb7892746b5068}} +\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!CreateDeviceOnClick@{CreateDeviceOnClick}} +\index{CreateDeviceOnClick@{CreateDeviceOnClick}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}} +\doxysubsubsection{\texorpdfstring{CreateDeviceOnClick()}{CreateDeviceOnClick()}} +{\footnotesize\ttfamily String Aml.\+Editor.\+Plugin.\+M\+W\+Controller.\+Create\+Device\+On\+Click (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device}{M\+W\+Device}}}]{new\+Device, }\item[{bool}]{is\+Edit }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + + + + +\begin{DoxyParams}{Parameters} +{\em new\+Device} & \\ +\hline +{\em is\+Edit} & \\ +\hline +\end{DoxyParams} +\begin{DoxyReturn}{Returns} + +\end{DoxyReturn} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_adba55c4a5135c58c69a0d92d495a0ad1}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_adba55c4a5135c58c69a0d92d495a0ad1}} +\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!GetDeviceDescriptionForm@{GetDeviceDescriptionForm}} +\index{GetDeviceDescriptionForm@{GetDeviceDescriptionForm}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}} +\doxysubsubsection{\texorpdfstring{GetDeviceDescriptionForm()}{GetDeviceDescriptionForm()}} +{\footnotesize\ttfamily \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description}{Device\+Description}} Aml.\+Editor.\+Plugin.\+M\+W\+Controller.\+Get\+Device\+Description\+Form (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +Create the new Create\+Device G\+UI or return the previously created G\+UI + +\begin{DoxyReturn}{Returns} +the Create\+Device G\+UI for this session +\end{DoxyReturn} + + +creáte the new \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description}{Device\+Description}} G\+UI or return the previously created G\+UI\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_ad2f99785d2a3b068dd3ce6c1d7f7fceb}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller_ad2f99785d2a3b068dd3ce6c1d7f7fceb}} +\index{Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}!importFile@{importFile}} +\index{importFile@{importFile}!Aml.Editor.Plugin.MWController@{Aml.Editor.Plugin.MWController}} +\doxysubsubsection{\texorpdfstring{importFile()}{importFile()}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+M\+W\+Controller.\+import\+File (\begin{DoxyParamCaption}\item[{string}]{filename, }\item[{\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_a932def9f5f257f8c1cbc4949e549d233}{M\+W\+Data.\+M\+W\+File\+Type}}}]{filetype }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +Call the Converter with the given file + + +\begin{DoxyParams}{Parameters} +{\em filename} & the full path to the file\\ +\hline +{\em filetype} & whether the file is an I\+O\+DD or an G\+SD file\\ +\hline +\end{DoxyParams} +\begin{DoxyReturn}{Returns} + +\end{DoxyReturn} + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_m_w_controller_8cs}{M\+W\+Controller.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.eps b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.eps new file mode 100644 index 0000000..f25c588 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 266.666667 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.875000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 3 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(Aml.Editor.Plugin.MWData) cw +(Aml.Editor.Plugin.DeviceDescription) cw +(UserControl) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (Aml.Editor.Plugin.MWData) 0.000000 0.000000 box + (Aml.Editor.Plugin.DeviceDescription) 0.000000 1.000000 box + (UserControl) 0.000000 2.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.pdf b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c2715d75fc4f46da2bd361aacb5398fc0a3c8e5d GIT binary patch literal 2952 zcmb_ed5jZP7$+J*N01|dfDrP+HA`grW~QAUL)(>YcVXErtlf>SS&7Wfymp73cIwPD zTR=ntA|!Z_fXEdT41b{p1(YC)Xv9bee~2Q4gu_T;qH-*UfTG{)wFd+=+4-lh-~GPd zcf5%W(Hc&0`Iw1^etTmpBOxA{t@D^*5Z9A*(rH6ppu};FZaBn3xW-T%5+$msk#Lx? z9g8R_Cbwzr>d@@3_#w-$-x@x4$=Qo1E**b(S8LVQ2`lz8`sg(t&!8(8RCd-uUdA2?Hqh%>z`a_>r-Po_x$z8 zcZtR42iFZ-IrFts+eZIdtG^Pz^0oWcbLUUb-5vSmfu%J^Gk=e+f0-R|bMvS*iz`R` z-uUr_liN2OVA6vu-@(_@%Z6`gxw2(wzvQ*O#(?<9m98CDTmStFAKAa09Ww8-a`nuH zi|&)xx4SD7Sbneb$#3gkov{AVb>p8OH|)rR-%k*?>|Av)C&k)?8 zBngfYO;@VS9BSc#E%7`Oy}mgNFfEdHkefox;5f0(tfdkgz;CcjwUIb27|H|TCX#bN zygKJhZ*-slP@teuV}iCoZN?cW2ONR_V9-XijPj&nRMbPEtiTwAh4OLP2-oSFjanEQ zb)1=lz(SUqq}Gb6LRqz_8BrX?Fq0({#o%MaQ8eHnfhu(O?dxfv>lO^2-4H`UI9&8Z zFIBAlxR0S~@or(zTb8(f#@~}m{}!25icM%1WsXz@8E~jL;M83OiL~J!QE)uV=8Ak8P1f9S(F!X+Cyw}tN}TuX|(GO5?uk8zzOatC}Aln(qUTdNN{;sFllKC zISv(7FbMxbY@6d`WQ;pHI$RxYmuV%j5C{Y?FJe*TK!UU9ryV87rS0+HFCU2BTvkil zu6#@`)l6Z%84E5RmmEdmI+mVsbTf^pW2M#1Iw3Zj)iqhwB)8~IXq?CG_i=(i6pn|F z^9!0Js-A$P_yQ$&nQmeB@COWV=!QJNNrsluvMRAcY)r3fBF$)eLp_?_X4+063>0vQ z5{rvj=&RrWqPr&pa4lvd2r_ca)bzysC^T`*XlynhD?r4WDkn@Ur9f3HnT(;U3N3aF z)yRf}z;txSAmM!1O*5Rr!O&?J$%c|nhS(gZk%W>p95x&=6x*H!{aS#-(8Gm8UJ-X0 zgOf@N!n6wZ8p#VK!$pmJUC!IGsPN|$J&+kXd*_X@Db zd&==1@0~PWfcHUfInSLmpBwgSFFF5RXg(jT?%s0zow@> +stream +xPN@+ag-ADT qG6`H +bMha+耇&Nh2e Bcq%ِN.چVuFwGUպ_p+4* &$~Ekp9Q"#Ē5cEH2#DP$fg=i-,#W~ECeYL^b6JJ#lu_Ƌ#g!]HW|@ )VqFjW{[؜ 1f Yrendstream +endobj +6 0 obj +281 +endobj +4 0 obj +<> +/Contents 5 0 R +>> +endobj +3 0 obj +<< /Type /Pages /Kids [ +4 0 R +] /Count 1 +>> +endobj +1 0 obj +<> +endobj +7 0 obj +<>endobj +9 0 obj +<> +endobj +10 0 obj +<> +endobj +8 0 obj +<> +endobj +11 0 obj +<>stream + + + + + +2020-01-27T18:41:52+01:00 +2020-01-27T18:41:52+01:00 +Doxygen + +ClassName + + + + + +endstream +endobj +2 0 obj +<>endobj +xref +0 12 +0000000000 65535 f +0000000594 00000 n +0000002304 00000 n +0000000535 00000 n +0000000385 00000 n +0000000015 00000 n +0000000366 00000 n +0000000659 00000 n +0000000759 00000 n +0000000700 00000 n +0000000729 00000 n +0000000825 00000 n +trailer +<< /Size 12 /Root 1 0 R /Info 2 0 R +/ID [] +>> +startxref +2480 +%%EOF diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.tex new file mode 100644 index 0000000..3151e05 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object.tex @@ -0,0 +1,13 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object}{}\doxysection{Aml.\+Editor.\+Plugin.\+M\+W\+Data.\+M\+W\+Object Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object}\index{Aml.Editor.Plugin.MWData.MWObject@{Aml.Editor.Plugin.MWData.MWObject}} +Inheritance diagram for Aml.\+Editor.\+Plugin.\+M\+W\+Data.\+M\+W\+Object\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2.000000cm]{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object} +\end{center} +\end{figure} + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_m_w_data_8cs}{M\+W\+Data.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.eps b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.eps new file mode 100644 index 0000000..9c78cd7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 172.413793 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 2.900000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(Aml.Editor.Plugin.MWDevice) cw +(Aml.Editor.Plugin.MWData.MWObject) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (Aml.Editor.Plugin.MWDevice) 0.000000 0.000000 box + (Aml.Editor.Plugin.MWData.MWObject) 0.000000 1.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.pdf b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_m_w_device.pdf new file mode 100644 index 0000000000000000000000000000000000000000..43efc6bf8cdc387f0f7e54ca21dedb3a7df9e7d7 GIT binary patch literal 2876 zcmb_eX=of(99O}j(*r9QENFS8hDouzZ)WyhcPCBvNJG2Hx>+YC zZlZX#)mFh4p;E9#34V}Lj7p_iKd7iZM64A-QK=S+^+Q3i#X>#m|IHpbT3Ut7mwo%c z-~abNUPm^W_K4mP*Ky?Rj!7@3_1LjC&z>Le*?+Qo_{KYb+xdz1TpK=@{psGKHaPnEK_Mt@=-;sL z`Lk=^4(>i!woe2POuX^uH=#pg^1h2(&E->{9Y56Be=fe?9^Cx3CT)L6ITfJc%(}v) z{?ScK_ZBHVe7dr2$q&0vK6RgQG`;l2$!%@R%YSz*dFd|Sjyo1C!!hip7q_>kZr=LN!lBdGy?Or3zSXDquK4-&BiS!~w=Qlkz5CtN*028B)0ygv z*ulQ#FKjxX?(03Z3O%ywiNb>q{Jw0$TKg6k$PL}r;eC8b@$B%UZRWYfG`ZO(rq;+3 zoLFXAKH0An_HzxAe>&;;@iM_#WrW}i(R5{vRYOApumggC#E@?z2TZU@k&nT`;T&KbVav_)n!#{q;m0sq0EgBbKKsSy?P zP%i~A24NvLE(hUty5^uEjzyj0HX^W4VJ4ZihN{?7ZD=MGsuy1f zDk-KLIc8K24^#@20mIS&zFXIvb5FpmexYfN!OZ$*BZ+=NlI2D*#JXx_MI9p)708Hg z#`$00|A0rj7U%B|WQ0sPK}Pkp6E+!`=*z1UV`@a>yJRlbr9cf4PfaO%if%_bh&XDz zJ&{|VZf63uXsuK(K^Ul3GE660i}S8Z6wZu{dE|=Fu{b}N$s%f5#+Xi#t(82CSs12f>oh$zEaV(sH%}d zK?`Xfzb_o}h$2xu0(>4Jq6&)Q5BU8Nsp+mfBg|R;fB_DDkOw$Lp=Gp+O6)kF(bwh4 zAnM7kM?IsKL+fFnh*t{mxRHhV3JxH;axwtdMmAy~6U|tfUK~$C^U9JS!9_)n6v~U? zs9%f*e0K|CR1ji#jwI9os3u@A!=U~Tsxu^Ks9JU&Dnm|Mweb;R)}6SL4Mq$zbY>)E zzEh->GnuO=sZ?Uc%;cg;ORbb(i1jA_PpQl|teV;ixLmOfw=Xmm6N9kW96(lth&44@ zwCs`sRjriEhOR2C*fCTiFUNpMb!rgV?YeG*)(?ixx+rQW=182cc{EZ~DhB1{grPW2 zAM|S-4nvpg2UihK8-tU|3c|AM_6EqNrs0N0OVwpD)t15)kakHh699DFnm96t=INV1 zL(^jx_C=hpvLOnm*&A7!UIfi~(0P?{uo8AAOD3Sk`l~Y;Wz8vwQb-K@MYk_`LEu3Q z`u7?Vc?Nc83&y5t%kFG+9#Fa~bQB0HTRX32lOhMt0f}Sdul}K6Am9t2B5KkC5m<)o zLuQjE`Gm`8Lcj-maJHP_3tvtXM0g*}l?%f9okI%-A)Rw*p)1h@cm&Lq^IfhRmS)64 zZACYT4X;y#2lNR7IY2mPS@8N`yB*$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a6038813fa356059a4fdc94c32ea79e47}{data\+Grid\+Parameters\+Lists}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}{Electrical\+Parameters}} $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a98628a6b85464ccfb27fb083da7f1dfd}{Electrical\+Interfaces}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}{Electrical\+Parameters}} $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a65ccfd989b124d2e257b6f42578db336}{Electrical\+Interface\+Instances}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}{Attachables\+Data\+Grid\+View\+Parameters}} $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a0a3b60dd4bea5558566aa7a50e0f91b5}{data\+Grid\+Attachables\+Parametrs\+List}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}{Attachables\+Data\+Grid\+View\+Parameters}} $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a3c056d06b76f10cc782e8b4862810e5f}{list\+With\+U\+R\+I\+Converted\+To\+String}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{Electrical\+Interface\+Parameters}} $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a851204d24146ab1eff048bfe0a44010d}{listof\+Electrical\+Interface\+Parameters}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{Electrical\+Interface\+Parameters}} $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_aec64d8e95546e10e503e977b93b8949e}{Dictof\+Electrical\+Interface\+Parameters}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a34513f92d4611fa73fb98ca4607b111b}{Dictionary\+For\+Interface\+Classes\+In\+Electrical\+Interfaces}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a0e196b056a21d36a26c48303178d0fb9}{Dictionary\+For\+External\+Interfaces\+Under\+Interface\+Class\+In\+Electrical\+Interfaces}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a619c83acdfc5baae1c1d363fb3989381}{Dictionary\+For\+Role\+Classof\+Component}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_ab3a9f9a95e979c569393c41f137b37d3}{Dictionary\+For\+External\+Interfaces\+Under\+Role\+Classof\+Component}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a0a3b60dd4bea5558566aa7a50e0f91b5}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a0a3b60dd4bea5558566aa7a50e0f91b5}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!dataGridAttachablesParametrsList@{dataGridAttachablesParametrsList}} +\index{dataGridAttachablesParametrsList@{dataGridAttachablesParametrsList}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{dataGridAttachablesParametrsList}{dataGridAttachablesParametrsList}} +{\footnotesize\ttfamily List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}{Attachables\+Data\+Grid\+View\+Parameters}}$>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+data\+Grid\+Attachables\+Parametrs\+List\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a6038813fa356059a4fdc94c32ea79e47}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a6038813fa356059a4fdc94c32ea79e47}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!dataGridParametersLists@{dataGridParametersLists}} +\index{dataGridParametersLists@{dataGridParametersLists}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{dataGridParametersLists}{dataGridParametersLists}} +{\footnotesize\ttfamily List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters}{Data\+Grid\+Parameters}}$>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+data\+Grid\+Parameters\+Lists\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a1039c54203b3bba6dc9b348ba2c1c876}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a1039c54203b3bba6dc9b348ba2c1c876}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!deviceName@{deviceName}} +\index{deviceName@{deviceName}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{deviceName}{deviceName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+device\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a0e196b056a21d36a26c48303178d0fb9}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a0e196b056a21d36a26c48303178d0fb9}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces@{DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces}} +\index{DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces@{DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces}{DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+Dictionary\+For\+External\+Interfaces\+Under\+Interface\+Class\+In\+Electrical\+Interfaces\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_ab3a9f9a95e979c569393c41f137b37d3}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_ab3a9f9a95e979c569393c41f137b37d3}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!DictionaryForExternalInterfacesUnderRoleClassofComponent@{DictionaryForExternalInterfacesUnderRoleClassofComponent}} +\index{DictionaryForExternalInterfacesUnderRoleClassofComponent@{DictionaryForExternalInterfacesUnderRoleClassofComponent}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{DictionaryForExternalInterfacesUnderRoleClassofComponent}{DictionaryForExternalInterfacesUnderRoleClassofComponent}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+Dictionary\+For\+External\+Interfaces\+Under\+Role\+Classof\+Component\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a34513f92d4611fa73fb98ca4607b111b}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a34513f92d4611fa73fb98ca4607b111b}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!DictionaryForInterfaceClassesInElectricalInterfaces@{DictionaryForInterfaceClassesInElectricalInterfaces}} +\index{DictionaryForInterfaceClassesInElectricalInterfaces@{DictionaryForInterfaceClassesInElectricalInterfaces}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{DictionaryForInterfaceClassesInElectricalInterfaces}{DictionaryForInterfaceClassesInElectricalInterfaces}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+Dictionary\+For\+Interface\+Classes\+In\+Electrical\+Interfaces\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a619c83acdfc5baae1c1d363fb3989381}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a619c83acdfc5baae1c1d363fb3989381}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!DictionaryForRoleClassofComponent@{DictionaryForRoleClassofComponent}} +\index{DictionaryForRoleClassofComponent@{DictionaryForRoleClassofComponent}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{DictionaryForRoleClassofComponent}{DictionaryForRoleClassofComponent}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+Dictionary\+For\+Role\+Classof\+Component\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_aec64d8e95546e10e503e977b93b8949e}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_aec64d8e95546e10e503e977b93b8949e}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!DictofElectricalInterfaceParameters@{DictofElectricalInterfaceParameters}} +\index{DictofElectricalInterfaceParameters@{DictofElectricalInterfaceParameters}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{DictofElectricalInterfaceParameters}{DictofElectricalInterfaceParameters}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{Electrical\+Interface\+Parameters}}$>$ $>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+Dictof\+Electrical\+Interface\+Parameters\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a65ccfd989b124d2e257b6f42578db336}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a65ccfd989b124d2e257b6f42578db336}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!ElectricalInterfaceInstances@{ElectricalInterfaceInstances}} +\index{ElectricalInterfaceInstances@{ElectricalInterfaceInstances}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{ElectricalInterfaceInstances}{ElectricalInterfaceInstances}} +{\footnotesize\ttfamily List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}{Electrical\+Parameters}}$>$ $>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+Electrical\+Interface\+Instances\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a98628a6b85464ccfb27fb083da7f1dfd}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a98628a6b85464ccfb27fb083da7f1dfd}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!ElectricalInterfaces@{ElectricalInterfaces}} +\index{ElectricalInterfaces@{ElectricalInterfaces}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{ElectricalInterfaces}{ElectricalInterfaces}} +{\footnotesize\ttfamily List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}{Electrical\+Parameters}}$>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+Electrical\+Interfaces\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a252e8e2a021284c3cdd5d8624179958b}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a252e8e2a021284c3cdd5d8624179958b}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!environment@{environment}} +\index{environment@{environment}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{environment}{environment}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+environment\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a3663feace37ced657ce078295d2e4759}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a3663feace37ced657ce078295d2e4759}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!fileName@{fileName}} +\index{fileName@{fileName}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{fileName}{fileName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+file\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a6e04054395d64c6c5947600cce015f6d}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a6e04054395d64c6c5947600cce015f6d}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!filepath@{filepath}} +\index{filepath@{filepath}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{filepath}{filepath}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+filepath\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a851204d24146ab1eff048bfe0a44010d}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a851204d24146ab1eff048bfe0a44010d}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!listofElectricalInterfaceParameters@{listofElectricalInterfaceParameters}} +\index{listofElectricalInterfaceParameters@{listofElectricalInterfaceParameters}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{listofElectricalInterfaceParameters}{listofElectricalInterfaceParameters}} +{\footnotesize\ttfamily List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{Electrical\+Interface\+Parameters}}$>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+listof\+Electrical\+Interface\+Parameters\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a3c056d06b76f10cc782e8b4862810e5f}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a3c056d06b76f10cc782e8b4862810e5f}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!listWithURIConvertedToString@{listWithURIConvertedToString}} +\index{listWithURIConvertedToString@{listWithURIConvertedToString}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{listWithURIConvertedToString}{listWithURIConvertedToString}} +{\footnotesize\ttfamily List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}{Attachables\+Data\+Grid\+View\+Parameters}}$>$ Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+list\+With\+U\+R\+I\+Converted\+To\+String\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a19ee5f6fa6e1d90d37cc3a8c876ef919}\label{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device_a19ee5f6fa6e1d90d37cc3a8c876ef919}} +\index{Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}!vendorName@{vendorName}} +\index{vendorName@{vendorName}!Aml.Editor.Plugin.MWDevice@{Aml.Editor.Plugin.MWDevice}} +\doxysubsubsection{\texorpdfstring{vendorName}{vendorName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+M\+W\+Device.\+vendor\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_m_w_device_8cs}{M\+W\+Device.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.eps b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.eps new file mode 100644 index 0000000..77e27c2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 93.023256 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 5.375000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 2 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(Aml.Editor.Plugin.ModellingWizard) cw +(UserControl) cw +(IAMLEditorView) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (Aml.Editor.Plugin.ModellingWizard) 0.500000 0.000000 box + (UserControl) 0.000000 1.000000 box + (IAMLEditorView) 1.000000 1.000000 box + +% ----- relations ----- + +solid +0 0.500000 0.000000 out +solid +0.000000 1.000000 1.000000 conn +solid +1 0.000000 1.000000 in +solid +1 1.000000 1.000000 in diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.pdf b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.pdf new file mode 100644 index 0000000..64e3fc8 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.pdf @@ -0,0 +1,95 @@ +%PDF-1.7 +%쏢 +5 0 obj +<> +stream +x[K@W0},XYzI#IC/R;i4i@Pݓ3ZH$!pE)RX>kZ AE,dA zDD"H +9gٮsf+yg=̮O&0(bύTPh--@{huެh(rrʿBT&4Q8.^}mʼ U*@!6J(>*[a\9w$A֊0 ?FO$޲VYbRq3W 8C В4竸d3(9E_=V݀zNd*v % 譩 EQ^%,nzgvK]A*ڻwJc Zendstream +endobj +6 0 obj +376 +endobj +4 0 obj +<> +/Contents 5 0 R +>> +endobj +3 0 obj +<< /Type /Pages /Kids [ +4 0 R +] /Count 1 +>> +endobj +1 0 obj +<> +endobj +7 0 obj +<>endobj +9 0 obj +<> +endobj +10 0 obj +<> +endobj +8 0 obj +<> +endobj +11 0 obj +<>stream + + + + + +2020-01-27T18:41:51+01:00 +2020-01-27T18:41:51+01:00 +Doxygen + +ClassName + + + + + +endstream +endobj +2 0 obj +<>endobj +xref +0 12 +0000000000 65535 f +0000000688 00000 n +0000002398 00000 n +0000000629 00000 n +0000000480 00000 n +0000000015 00000 n +0000000461 00000 n +0000000753 00000 n +0000000853 00000 n +0000000794 00000 n +0000000823 00000 n +0000000919 00000 n +trailer +<< /Size 12 /Root 1 0 R /Info 2 0 R +/ID [<37F210F5871A17FF6D3F3FBA9E0EC421><37F210F5871A17FF6D3F3FBA9E0EC421>] +>> +startxref +2574 +%%EOF diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.tex new file mode 100644 index 0000000..4c6755c --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard.tex @@ -0,0 +1,357 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{}\doxysection{Aml.\+Editor.\+Plugin.\+Modelling\+Wizard Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} + + +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Modelling\+Wizard}} is an Plug\+In, which implements the I\+A\+M\+L\+Editor\+View Interface. + + +Inheritance diagram for Aml.\+Editor.\+Plugin.\+Modelling\+Wizard\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2.000000cm]{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a85e08850a3ce8148f119f8e3d14f6d02}{Modelling\+Wizard}} () +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a26f6f59bc82891ccc525e509720d5302}{Change\+A\+M\+L\+File\+Path}} (string aml\+File\+Path) +\begin{DoxyCompactList}\small\item\em Changes the current aml\+File\+Path. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a467688bd862ea1e99e204f6d3735ed1d}{Change\+Selected\+Object}} (C\+A\+E\+X\+Basic\+Object selected\+Object) +\begin{DoxyCompactList}\small\item\em Changes the selected object. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a4dc6bf714b86a1d9be420637c23a1307}{Execute\+Command}} (Plugin\+Commands\+Enum command, string aml\+File\+Path) +\begin{DoxyCompactList}\small\item\em This Method is called from the Automation\+ML \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}} to execute a specific command. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_acedb8a1abb912c96703fd73d3267bcea}{Publish\+Automation\+M\+L\+File\+And\+Object}} (string aml\+File\+Path, C\+A\+E\+X\+Basic\+Object selected\+Object) +\begin{DoxyCompactList}\small\item\em This Method is called on activation of a Plug\+In. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a3426aa766858f85fbdcdc6f3cfe92dc1}{change\+G\+UI}} (System.\+Windows.\+Forms.\+Control content) +\begin{DoxyCompactList}\small\item\em Replace the Content in the \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Plugin}} window with the Windows Forms G\+UI \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +Dock\+Position\+Enum \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_ad191779a3806423c951cf6839300c6e9}{Initial\+Dock\+Position}} =$>$ Dock\+Position\+Enum.\+Floating +\begin{DoxyCompactList}\small\item\em Gets the initial dock position for the Plug\+In window. \end{DoxyCompactList}\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a333ba75a3b713bdbae46969df659d06b}{Package\+Name}} =$>$ \char`\"{}\char`\"{} +\begin{DoxyCompactList}\small\item\em Gets the package name which is used to download the Plug\+In package from a Nu\+Get feed. \end{DoxyCompactList}\item +Bitmap\+Image \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_ae6285059764c32a912289a8f0c97262d}{Pane\+Image}} =$>$ null +\begin{DoxyCompactList}\small\item\em Gets the image which should be used in the Header of the Plug\+In window. \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +System.\+Windows.\+Input.\+I\+Command?? \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_ac767be8789446b8040a0d7fd9a8eb283}{About\+Command}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em The About\+Command -\/ Command \end{DoxyCompactList}\item +Plugin\+Command \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a68418cf3879299385765d352ffc4731b}{Activate\+Plugin}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets the Command to activate the Plug\+In. \end{DoxyCompactList}\item +Plugin\+Command \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a4311a3ca5fb875e5035bc029291e5920}{Reload\+Objects}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets the Command to reload the A\+M\+LX Files in . \end{DoxyCompactList}\item +bool \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a2f1de7716c88ed7de9cf7f716a0d4f76}{Can\+Close}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets a value indicating whether this User\+Control could be closed from the \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}}\textquotesingle{}s Window\+Manager. \end{DoxyCompactList}\item +List$<$ Plugin\+Command $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_aa92890be9446ee5c87cc91739e41a5f0}{Commands}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets the List of commands, which are viewed in the Plug\+In Menu in the Host Application \end{DoxyCompactList}\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a6d63f793ebaa384ba4bbf9903f06fdaa}{Display\+Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets the display name which is shown in the Plug\+In Menu in the Host Application \end{DoxyCompactList}\item +bool \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a2bd037ce5c76ad9051a995400e28a75e}{Is\+Active}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets a value indicating whether this instance is active. \end{DoxyCompactList}\item +bool \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a6b3b6e17a0159a4c6045c2b8751e2fc5}{Is\+Reactive}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets a value indicating whether this instance is reactive. \end{DoxyCompactList}\item +bool \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a9700716878b0e98f507d30b396e2872f}{Is\+Readonly}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets a value indicating whether this instance is read only. \end{DoxyCompactList}\item +Plugin\+Command \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a1754b39a06b47d1b1f9010f6bcbbffde}{Terminate\+Plugin}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets the terminate Plug\+In command. \end{DoxyCompactList}\item +bool \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a9ff5d55c0dd2f4113e5a9d41b5418c4a}{Is\+Auto\+Active}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\begin{DoxyCompactList}\small\item\em Gets or sets a value indicating whether this instance is automatic active when loaded. \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Events} +\begin{DoxyCompactItemize} +\item +Event\+Handler \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a5acb66f94a2026857791dcb495e200df}{Plugin\+Activated}} +\begin{DoxyCompactList}\small\item\em Occurs when the Plug\+In is activated (for example via the Start\+Command ). \end{DoxyCompactList}\item +Event\+Handler \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a3da02aecef3324c9c3b65a1b8fa73f6c}{Plugin\+Terminated}} +\begin{DoxyCompactList}\small\item\em Occurs when the Plug\+In is deactivated (some User\+Interaction inside the Plug\+In or via the Stop\+Command ). \end{DoxyCompactList}\end{DoxyCompactItemize} + + +\doxysubsection{Detailed Description} +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Modelling\+Wizard}} is an Plug\+In, which implements the I\+A\+M\+L\+Editor\+View Interface. + +The Plug\+In is a User\+Control, which is managed by the Automation\+ML Editors Window-\/ and Docking -\/ Manager. The Export Attribute enables the Automation\+ML \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}} to load the Plug\+In with the \href{http://msdn.microsoft.com/en-us/library/dd460648\%28v=vs.110\%29.aspx}{\texttt{ Microsoft Managed Extensibility Framework}}. + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a85e08850a3ce8148f119f8e3d14f6d02}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a85e08850a3ce8148f119f8e3d14f6d02}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!ModellingWizard@{ModellingWizard}} +\index{ModellingWizard@{ModellingWizard}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{ModellingWizard()}{ModellingWizard()}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Modelling\+Wizard (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a26f6f59bc82891ccc525e509720d5302}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a26f6f59bc82891ccc525e509720d5302}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!ChangeAMLFilePath@{ChangeAMLFilePath}} +\index{ChangeAMLFilePath@{ChangeAMLFilePath}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{ChangeAMLFilePath()}{ChangeAMLFilePath()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Change\+A\+M\+L\+File\+Path (\begin{DoxyParamCaption}\item[{string}]{aml\+File\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +Changes the current aml\+File\+Path. + +The Host Application will call this method when the Plug\+Ins P\+:\+Aml.\+Editor.\+Plugin.\+Contracts.\+I\+A\+M\+L\+Editor\+Plugin.\+Is\+Reactive Property is set to true and the Currently opened Automation\+ML File changes in the A\+M\+L\+Editor Host Application. + + +\begin{DoxyParams}{Parameters} +{\em aml\+File\+Path} & The Path to the current A\+ML File in the A\+ML \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}}.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a3426aa766858f85fbdcdc6f3cfe92dc1}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a3426aa766858f85fbdcdc6f3cfe92dc1}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!changeGUI@{changeGUI}} +\index{changeGUI@{changeGUI}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{changeGUI()}{changeGUI()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+change\+G\+UI (\begin{DoxyParamCaption}\item[{System.\+Windows.\+Forms.\+Control}]{content }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +Replace the Content in the \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Plugin}} window with the Windows Forms G\+UI + + +\begin{DoxyParams}{Parameters} +{\em content} & The Form to be displayed in the plugin window\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a467688bd862ea1e99e204f6d3735ed1d}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a467688bd862ea1e99e204f6d3735ed1d}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!ChangeSelectedObject@{ChangeSelectedObject}} +\index{ChangeSelectedObject@{ChangeSelectedObject}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{ChangeSelectedObject()}{ChangeSelectedObject()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Change\+Selected\+Object (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Basic\+Object}]{selected\+Object }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +Changes the selected object. + +The Host Application will call this method when the Plug\+Ins P\+:\+Aml.\+Editor.\+Plugin.\+Contracts.\+I\+A\+M\+L\+Editor\+Plugin.\+Is\+Reactive Property is set to true and the Current Selection changes in the A\+M\+L\+Editor Host Application. + + +\begin{DoxyParams}{Parameters} +{\em selected\+Object} & The selected C\+A\+EX -\/ object.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a4dc6bf714b86a1d9be420637c23a1307}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a4dc6bf714b86a1d9be420637c23a1307}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!ExecuteCommand@{ExecuteCommand}} +\index{ExecuteCommand@{ExecuteCommand}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{ExecuteCommand()}{ExecuteCommand()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Execute\+Command (\begin{DoxyParamCaption}\item[{Plugin\+Commands\+Enum}]{command, }\item[{string}]{aml\+File\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This Method is called from the Automation\+ML \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}} to execute a specific command. + +The \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}} can only execute those commands, which are identified by the Plugin\+Commands\+Enum Enumeration. The \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}} may execute the termination command of the Plug\+In, so here some preparations for a clean termination should be performed. + + +\begin{DoxyParams}{Parameters} +{\em command} & The command.\\ +\hline +{\em aml\+File\+Path} & The aml\+File\+Path.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_acedb8a1abb912c96703fd73d3267bcea}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_acedb8a1abb912c96703fd73d3267bcea}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!PublishAutomationMLFileAndObject@{PublishAutomationMLFileAndObject}} +\index{PublishAutomationMLFileAndObject@{PublishAutomationMLFileAndObject}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{PublishAutomationMLFileAndObject()}{PublishAutomationMLFileAndObject()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Publish\+Automation\+M\+L\+File\+And\+Object (\begin{DoxyParamCaption}\item[{string}]{aml\+File\+Path, }\item[{C\+A\+E\+X\+Basic\+Object}]{selected\+Object }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This Method is called on activation of a Plug\+In. + +The Automation\+ML \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}} \textquotesingle{}publishes\textquotesingle{} its current state to the Plug\+In, that is the Path of the loaded Automation\+ML Document and the currently selected Automation\+ML Object\textquotesingle{}. Please note, that the objects may be empty or null. + + +\begin{DoxyParams}{Parameters} +{\em aml\+File\+Path} & The A\+ML file path, may be empty.\\ +\hline +{\em selected\+Object} & The selected object, may be null.\\ +\hline +\end{DoxyParams} + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_ad191779a3806423c951cf6839300c6e9}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_ad191779a3806423c951cf6839300c6e9}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!InitialDockPosition@{InitialDockPosition}} +\index{InitialDockPosition@{InitialDockPosition}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{InitialDockPosition}{InitialDockPosition}} +{\footnotesize\ttfamily Dock\+Position\+Enum Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Initial\+Dock\+Position =$>$ Dock\+Position\+Enum.\+Floating} + + + +Gets the initial dock position for the Plug\+In window. + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a333ba75a3b713bdbae46969df659d06b}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a333ba75a3b713bdbae46969df659d06b}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!PackageName@{PackageName}} +\index{PackageName@{PackageName}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{PackageName}{PackageName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Package\+Name =$>$ \char`\"{}\char`\"{}} + + + +Gets the package name which is used to download the Plug\+In package from a Nu\+Get feed. + +If a Package name is defined, the A\+M\+L\+Editor can update Plug\+In packages independently from its own update cycle. + +The package name. \mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_ae6285059764c32a912289a8f0c97262d}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_ae6285059764c32a912289a8f0c97262d}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!PaneImage@{PaneImage}} +\index{PaneImage@{PaneImage}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{PaneImage}{PaneImage}} +{\footnotesize\ttfamily Bitmap\+Image Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Pane\+Image =$>$ null} + + + +Gets the image which should be used in the Header of the Plug\+In window. + +If no image is defined the editor uses a default image. + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_ac767be8789446b8040a0d7fd9a8eb283}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_ac767be8789446b8040a0d7fd9a8eb283}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!AboutCommand@{AboutCommand}} +\index{AboutCommand@{AboutCommand}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{AboutCommand}{AboutCommand}} +{\footnotesize\ttfamily System.\+Windows.\+Input.\+I\+Command?? Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+About\+Command\hspace{0.3cm}{\ttfamily [get]}} + + + +The About\+Command -\/ Command + +The about command.\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a68418cf3879299385765d352ffc4731b}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a68418cf3879299385765d352ffc4731b}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!ActivatePlugin@{ActivatePlugin}} +\index{ActivatePlugin@{ActivatePlugin}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{ActivatePlugin}{ActivatePlugin}} +{\footnotesize\ttfamily Plugin\+Command Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Activate\+Plugin\hspace{0.3cm}{\ttfamily [get]}} + + + +Gets the Command to activate the Plug\+In. + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a2f1de7716c88ed7de9cf7f716a0d4f76}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a2f1de7716c88ed7de9cf7f716a0d4f76}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!CanClose@{CanClose}} +\index{CanClose@{CanClose}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{CanClose}{CanClose}} +{\footnotesize\ttfamily bool Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Can\+Close\hspace{0.3cm}{\ttfamily [get]}} + + + +Gets a value indicating whether this User\+Control could be closed from the \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}}\textquotesingle{}s Window\+Manager. + +When a close occurs from the Window\+Manager, the Stop\+Command will be executed via the \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a4dc6bf714b86a1d9be420637c23a1307}{Execute\+Command}} Method. + +{\ttfamily true} if this instance can close; otherwise, {\ttfamily false}.\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_aa92890be9446ee5c87cc91739e41a5f0}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_aa92890be9446ee5c87cc91739e41a5f0}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!Commands@{Commands}} +\index{Commands@{Commands}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{Commands}{Commands}} +{\footnotesize\ttfamily List$<$Plugin\+Command$>$ Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Commands\hspace{0.3cm}{\ttfamily [get]}} + + + +Gets the List of commands, which are viewed in the Plug\+In Menu in the Host Application + +The command List.\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a6d63f793ebaa384ba4bbf9903f06fdaa}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a6d63f793ebaa384ba4bbf9903f06fdaa}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!DisplayName@{DisplayName}} +\index{DisplayName@{DisplayName}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{DisplayName}{DisplayName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Display\+Name\hspace{0.3cm}{\ttfamily [get]}} + + + +Gets the display name which is shown in the Plug\+In Menu in the Host Application + +The display name.\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a2bd037ce5c76ad9051a995400e28a75e}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a2bd037ce5c76ad9051a995400e28a75e}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!IsActive@{IsActive}} +\index{IsActive@{IsActive}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{IsActive}{IsActive}} +{\footnotesize\ttfamily bool Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Is\+Active\hspace{0.3cm}{\ttfamily [get]}} + + + +Gets a value indicating whether this instance is active. + +The Property should be set to true in the Start\+Command and set to false in the Stop\+Command + +{\ttfamily true} if this instance is active; otherwise, {\ttfamily false}.\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a9ff5d55c0dd2f4113e5a9d41b5418c4a}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a9ff5d55c0dd2f4113e5a9d41b5418c4a}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!IsAutoActive@{IsAutoActive}} +\index{IsAutoActive@{IsAutoActive}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{IsAutoActive}{IsAutoActive}} +{\footnotesize\ttfamily bool Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Is\+Auto\+Active\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +Gets or sets a value indicating whether this instance is automatic active when loaded. + +This value can be initially set and will be defined by the user.\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a6b3b6e17a0159a4c6045c2b8751e2fc5}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a6b3b6e17a0159a4c6045c2b8751e2fc5}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!IsReactive@{IsReactive}} +\index{IsReactive@{IsReactive}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{IsReactive}{IsReactive}} +{\footnotesize\ttfamily bool Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Is\+Reactive\hspace{0.3cm}{\ttfamily [get]}} + + + +Gets a value indicating whether this instance is reactive. + +Reactive Plug\+In will be notified, when the actual C\+A\+E\+X-\/\+Object changes (Selection of the Tree view Item) \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a26f6f59bc82891ccc525e509720d5302}{Change\+A\+M\+L\+File\+Path}} and \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a467688bd862ea1e99e204f6d3735ed1d}{Change\+Selected\+Object}}. + +{\ttfamily true} if this instance is reactive; otherwise, {\ttfamily false}.\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a9700716878b0e98f507d30b396e2872f}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a9700716878b0e98f507d30b396e2872f}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!IsReadonly@{IsReadonly}} +\index{IsReadonly@{IsReadonly}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{IsReadonly}{IsReadonly}} +{\footnotesize\ttfamily bool Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Is\+Readonly\hspace{0.3cm}{\ttfamily [get]}} + + + +Gets a value indicating whether this instance is read only. + +A Read only Plug\+In should not change any C\+A\+EX Objects. + +{\ttfamily true} if this instance is read only; otherwise, {\ttfamily false}. \mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a4311a3ca5fb875e5035bc029291e5920}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a4311a3ca5fb875e5035bc029291e5920}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!ReloadObjects@{ReloadObjects}} +\index{ReloadObjects@{ReloadObjects}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{ReloadObjects}{ReloadObjects}} +{\footnotesize\ttfamily Plugin\+Command Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Reload\+Objects\hspace{0.3cm}{\ttfamily [get]}} + + + +Gets the Command to reload the A\+M\+LX Files in . + +/modellingwizard/\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a1754b39a06b47d1b1f9010f6bcbbffde}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a1754b39a06b47d1b1f9010f6bcbbffde}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!TerminatePlugin@{TerminatePlugin}} +\index{TerminatePlugin@{TerminatePlugin}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{TerminatePlugin}{TerminatePlugin}} +{\footnotesize\ttfamily Plugin\+Command Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Terminate\+Plugin\hspace{0.3cm}{\ttfamily [get]}} + + + +Gets the terminate Plug\+In command. + + + +\doxysubsection{Event Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a5acb66f94a2026857791dcb495e200df}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a5acb66f94a2026857791dcb495e200df}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!PluginActivated@{PluginActivated}} +\index{PluginActivated@{PluginActivated}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{PluginActivated}{PluginActivated}} +{\footnotesize\ttfamily Event\+Handler Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Plugin\+Activated} + + + +Occurs when the Plug\+In is activated (for example via the Start\+Command ). + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a3da02aecef3324c9c3b65a1b8fa73f6c}\label{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard_a3da02aecef3324c9c3b65a1b8fa73f6c}} +\index{Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}!PluginTerminated@{PluginTerminated}} +\index{PluginTerminated@{PluginTerminated}!Aml.Editor.Plugin.ModellingWizard@{Aml.Editor.Plugin.ModellingWizard}} +\doxysubsubsection{\texorpdfstring{PluginTerminated}{PluginTerminated}} +{\footnotesize\ttfamily Event\+Handler Aml.\+Editor.\+Plugin.\+Modelling\+Wizard.\+Plugin\+Terminated} + + + +Occurs when the Plug\+In is deactivated (some User\+Interaction inside the Plug\+In or via the Stop\+Command ). + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_modelling_wizard_8xaml_8cs}{Modelling\+Wizard.\+xaml.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.tex new file mode 100644 index 0000000..30879b3 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view.tex @@ -0,0 +1,86 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view}{}\doxysection{Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view}\index{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a2b4f579583593fcd36ca4429849b3a92}{Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View}} () +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a20c1ba8d8e62d2958a2a784ea993f12a}{Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View}} (string pin\+Number, string reference\+ID, string attribute, string values, string units) +\item +override string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_aabde8d8400da538c0d695e3f2a13afcc}{To\+String}} () +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a0dc6c5df881ffe504570c7d74ad19fcc}{Pin\+Number}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_aaa63e321a2e027653a6ec7ff00e57af5}{Reference\+ID}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a526a65510795b641175bdcc3aa946b4b}{Attributes}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a0aa068480b67328eaa773ed8c5d7d3f5}{Values}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_ae1260c02a1e4e5a3f8a5dbace4df3192}{Units}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a2b4f579583593fcd36ca4429849b3a92}\label{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a2b4f579583593fcd36ca4429849b3a92}} +\index{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}!PinParametersInPinInfoDataGridView@{PinParametersInPinInfoDataGridView}} +\index{PinParametersInPinInfoDataGridView@{PinParametersInPinInfoDataGridView}!Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}} +\doxysubsubsection{\texorpdfstring{PinParametersInPinInfoDataGridView()}{PinParametersInPinInfoDataGridView()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a20c1ba8d8e62d2958a2a784ea993f12a}\label{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a20c1ba8d8e62d2958a2a784ea993f12a}} +\index{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}!PinParametersInPinInfoDataGridView@{PinParametersInPinInfoDataGridView}} +\index{PinParametersInPinInfoDataGridView@{PinParametersInPinInfoDataGridView}!Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}} +\doxysubsubsection{\texorpdfstring{PinParametersInPinInfoDataGridView()}{PinParametersInPinInfoDataGridView()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View (\begin{DoxyParamCaption}\item[{string}]{pin\+Number, }\item[{string}]{reference\+ID, }\item[{string}]{attribute, }\item[{string}]{values, }\item[{string}]{units }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_aabde8d8400da538c0d695e3f2a13afcc}\label{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_aabde8d8400da538c0d695e3f2a13afcc}} +\index{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}!ToString@{ToString}} +\index{ToString@{ToString}!Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}} +\doxysubsubsection{\texorpdfstring{ToString()}{ToString()}} +{\footnotesize\ttfamily override string Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View.\+To\+String (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a526a65510795b641175bdcc3aa946b4b}\label{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a526a65510795b641175bdcc3aa946b4b}} +\index{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}!Attributes@{Attributes}} +\index{Attributes@{Attributes}!Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}} +\doxysubsubsection{\texorpdfstring{Attributes}{Attributes}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View.\+Attributes\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a0dc6c5df881ffe504570c7d74ad19fcc}\label{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a0dc6c5df881ffe504570c7d74ad19fcc}} +\index{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}!PinNumber@{PinNumber}} +\index{PinNumber@{PinNumber}!Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}} +\doxysubsubsection{\texorpdfstring{PinNumber}{PinNumber}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View.\+Pin\+Number\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_aaa63e321a2e027653a6ec7ff00e57af5}\label{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_aaa63e321a2e027653a6ec7ff00e57af5}} +\index{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}!ReferenceID@{ReferenceID}} +\index{ReferenceID@{ReferenceID}!Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}} +\doxysubsubsection{\texorpdfstring{ReferenceID}{ReferenceID}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View.\+Reference\+ID\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_ae1260c02a1e4e5a3f8a5dbace4df3192}\label{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_ae1260c02a1e4e5a3f8a5dbace4df3192}} +\index{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}!Units@{Units}} +\index{Units@{Units}!Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}} +\doxysubsubsection{\texorpdfstring{Units}{Units}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View.\+Units\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a0aa068480b67328eaa773ed8c5d7d3f5}\label{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view_a0aa068480b67328eaa773ed8c5d7d3f5}} +\index{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}!Values@{Values}} +\index{Values@{Values}!Aml.Editor.Plugin.PinParametersInPinInfoDataGridView@{Aml.Editor.Plugin.PinParametersInPinInfoDataGridView}} +\doxysubsubsection{\texorpdfstring{Values}{Values}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View.\+Values\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_m_w_device_8cs}{M\+W\+Device.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.tex new file mode 100644 index 0000000..183951a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file.tex @@ -0,0 +1,158 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file}{}\doxysection{Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file}\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_abf1e485c8340a4ace50c1f3528ac31c6}{Search\+A\+M\+L\+Component\+File}} () +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a287538dfad55ab58ee81fa819efa5dd1}{Check\+For\+Attributes\+Of\+External\+Iterface}} (int i, External\+Interface\+Type external\+Interface) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a7464e1841996b1f84bdd4f8223acde92}{Ckeck\+For\+Nested\+Attributes\+Of\+External\+Iterface}} (int i, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a33431d164f3f97f60fe6b316e266ed16}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+External\+Iterface}} (int i, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a35823b5736745c6982ad851270b3d09f}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+External\+Iterface}} (int i, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type Attribute\+In\+Attribute, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a1b72b959bcfef0f2112c6c548891fc8b}{Check\+For\+Attributes\+Of\+Eclectrical\+Connector\+Pins}} (int i, External\+Interface\+Type external\+Interface, External\+Interface\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_ad023edfb7d36334b2baee9f02e21a309}{Ckeck\+For\+Nested\+Attributes\+Of\+Electrical\+Connector\+Pins}} (int i, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface, External\+Interface\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a801781b46981a3776adbca80fd5be541}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Electrical\+Connector\+Pins}} (int i, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface, External\+Interface\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a77f257e6118ee1af16421c90f2d72a95}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Electrical\+Connector\+Pins}} (int i, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type Attribute\+In\+Attribute, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface, External\+Interface\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_ad8e573b75dc40186f962fe62c047192f}{Check\+For\+Attributes\+Of\+Component}} (int i, Supported\+Role\+Class\+Type supported\+Role\+Class, System\+Unit\+Family\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a4021856bf9f4a11a141e4e3faa2a6c4a}{Ckeck\+For\+Nested\+Attributes\+Of\+Component}} (int i, Attribute\+Type attribute\+Type, Supported\+Role\+Class\+Type supported\+Role\+Class, System\+Unit\+Family\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a9831cae9b9d5baec3afedd3c3a4266b8}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Component}} (int i, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type attribute\+Type, Supported\+Role\+Class\+Type supported\+Role\+Class, System\+Unit\+Family\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_ae6987825477c5d277db9f57d84c3afae}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Component}} (int i, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type Attribute\+In\+Attribute, Attribute\+Type attribute\+Type, Supported\+Role\+Class\+Type supported\+Role\+Class, System\+Unit\+Family\+Type class\+Type) +\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a0c343579c1bbd8eed0668d8ce4dcee0c}{Dictionaryof\+Electrical\+Connector\+Type}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a08ad7a3a1907fb5545e71a02eaf20d43}{Dictioanryof\+Electrical\+Connector\+Pin\+Type}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a7e22c7aeba504efaeb89a38ce8bdbe71}{Dictionaryof\+Rolesfor\+Automation\+Componenet}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a1e8ef567cfba2b43fac8afcdd3abb6b2}{Dictionaryof\+Roles}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_abf1e485c8340a4ace50c1f3528ac31c6}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_abf1e485c8340a4ace50c1f3528ac31c6}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!SearchAMLComponentFile@{SearchAMLComponentFile}} +\index{SearchAMLComponentFile@{SearchAMLComponentFile}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{SearchAMLComponentFile()}{SearchAMLComponentFile()}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Search\+A\+M\+L\+Component\+File (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_ad8e573b75dc40186f962fe62c047192f}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_ad8e573b75dc40186f962fe62c047192f}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!CheckForAttributesOfComponent@{CheckForAttributesOfComponent}} +\index{CheckForAttributesOfComponent@{CheckForAttributesOfComponent}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfComponent()}{CheckForAttributesOfComponent()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Check\+For\+Attributes\+Of\+Component (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{Supported\+Role\+Class\+Type}]{supported\+Role\+Class, }\item[{System\+Unit\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a1b72b959bcfef0f2112c6c548891fc8b}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a1b72b959bcfef0f2112c6c548891fc8b}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!CheckForAttributesOfEclectricalConnectorPins@{CheckForAttributesOfEclectricalConnectorPins}} +\index{CheckForAttributesOfEclectricalConnectorPins@{CheckForAttributesOfEclectricalConnectorPins}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfEclectricalConnectorPins()}{CheckForAttributesOfEclectricalConnectorPins()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Check\+For\+Attributes\+Of\+Eclectrical\+Connector\+Pins (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{External\+Interface\+Type}]{external\+Interface, }\item[{External\+Interface\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a287538dfad55ab58ee81fa819efa5dd1}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a287538dfad55ab58ee81fa819efa5dd1}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!CheckForAttributesOfExternalIterface@{CheckForAttributesOfExternalIterface}} +\index{CheckForAttributesOfExternalIterface@{CheckForAttributesOfExternalIterface}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfExternalIterface()}{CheckForAttributesOfExternalIterface()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Check\+For\+Attributes\+Of\+External\+Iterface (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a4021856bf9f4a11a141e4e3faa2a6c4a}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a4021856bf9f4a11a141e4e3faa2a6c4a}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!CkeckForNestedAttributesOfComponent@{CkeckForNestedAttributesOfComponent}} +\index{CkeckForNestedAttributesOfComponent@{CkeckForNestedAttributesOfComponent}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfComponent()}{CkeckForNestedAttributesOfComponent()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Component (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{Supported\+Role\+Class\+Type}]{supported\+Role\+Class, }\item[{System\+Unit\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_ad023edfb7d36334b2baee9f02e21a309}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_ad023edfb7d36334b2baee9f02e21a309}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!CkeckForNestedAttributesOfElectricalConnectorPins@{CkeckForNestedAttributesOfElectricalConnectorPins}} +\index{CkeckForNestedAttributesOfElectricalConnectorPins@{CkeckForNestedAttributesOfElectricalConnectorPins}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfElectricalConnectorPins()}{CkeckForNestedAttributesOfElectricalConnectorPins()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Electrical\+Connector\+Pins (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface, }\item[{External\+Interface\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a7464e1841996b1f84bdd4f8223acde92}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a7464e1841996b1f84bdd4f8223acde92}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!CkeckForNestedAttributesOfExternalIterface@{CkeckForNestedAttributesOfExternalIterface}} +\index{CkeckForNestedAttributesOfExternalIterface@{CkeckForNestedAttributesOfExternalIterface}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfExternalIterface()}{CkeckForNestedAttributesOfExternalIterface()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+External\+Iterface (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_ae6987825477c5d277db9f57d84c3afae}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_ae6987825477c5d277db9f57d84c3afae}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!StoreEachAttributeValueInListOfComponent@{StoreEachAttributeValueInListOfComponent}} +\index{StoreEachAttributeValueInListOfComponent@{StoreEachAttributeValueInListOfComponent}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfComponent()}{StoreEachAttributeValueInListOfComponent()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Component (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{Attribute\+In\+Attribute, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{Supported\+Role\+Class\+Type}]{supported\+Role\+Class, }\item[{System\+Unit\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a9831cae9b9d5baec3afedd3c3a4266b8}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a9831cae9b9d5baec3afedd3c3a4266b8}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!StoreEachAttributeValueInListOfComponent@{StoreEachAttributeValueInListOfComponent}} +\index{StoreEachAttributeValueInListOfComponent@{StoreEachAttributeValueInListOfComponent}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfComponent()}{StoreEachAttributeValueInListOfComponent()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Component (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{Supported\+Role\+Class\+Type}]{supported\+Role\+Class, }\item[{System\+Unit\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a77f257e6118ee1af16421c90f2d72a95}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a77f257e6118ee1af16421c90f2d72a95}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!StoreEachAttributeValueInListOfElectricalConnectorPins@{StoreEachAttributeValueInListOfElectricalConnectorPins}} +\index{StoreEachAttributeValueInListOfElectricalConnectorPins@{StoreEachAttributeValueInListOfElectricalConnectorPins}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfElectricalConnectorPins()}{StoreEachAttributeValueInListOfElectricalConnectorPins()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Electrical\+Connector\+Pins (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{Attribute\+In\+Attribute, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface, }\item[{External\+Interface\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a801781b46981a3776adbca80fd5be541}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a801781b46981a3776adbca80fd5be541}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!StoreEachAttributeValueInListOfElectricalConnectorPins@{StoreEachAttributeValueInListOfElectricalConnectorPins}} +\index{StoreEachAttributeValueInListOfElectricalConnectorPins@{StoreEachAttributeValueInListOfElectricalConnectorPins}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfElectricalConnectorPins()}{StoreEachAttributeValueInListOfElectricalConnectorPins()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Electrical\+Connector\+Pins (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface, }\item[{External\+Interface\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a35823b5736745c6982ad851270b3d09f}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a35823b5736745c6982ad851270b3d09f}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!StoreEachAttributeValueInListOfExternalIterface@{StoreEachAttributeValueInListOfExternalIterface}} +\index{StoreEachAttributeValueInListOfExternalIterface@{StoreEachAttributeValueInListOfExternalIterface}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfExternalIterface()}{StoreEachAttributeValueInListOfExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+External\+Iterface (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{Attribute\+In\+Attribute, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a33431d164f3f97f60fe6b316e266ed16}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a33431d164f3f97f60fe6b316e266ed16}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!StoreEachAttributeValueInListOfExternalIterface@{StoreEachAttributeValueInListOfExternalIterface}} +\index{StoreEachAttributeValueInListOfExternalIterface@{StoreEachAttributeValueInListOfExternalIterface}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfExternalIterface()}{StoreEachAttributeValueInListOfExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+External\+Iterface (\begin{DoxyParamCaption}\item[{int}]{i, }\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a08ad7a3a1907fb5545e71a02eaf20d43}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a08ad7a3a1907fb5545e71a02eaf20d43}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!DictioanryofElectricalConnectorPinType@{DictioanryofElectricalConnectorPinType}} +\index{DictioanryofElectricalConnectorPinType@{DictioanryofElectricalConnectorPinType}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{DictioanryofElectricalConnectorPinType}{DictioanryofElectricalConnectorPinType}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Dictioanryof\+Electrical\+Connector\+Pin\+Type\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a0c343579c1bbd8eed0668d8ce4dcee0c}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a0c343579c1bbd8eed0668d8ce4dcee0c}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!DictionaryofElectricalConnectorType@{DictionaryofElectricalConnectorType}} +\index{DictionaryofElectricalConnectorType@{DictionaryofElectricalConnectorType}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{DictionaryofElectricalConnectorType}{DictionaryofElectricalConnectorType}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Dictionaryof\+Electrical\+Connector\+Type\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a1e8ef567cfba2b43fac8afcdd3abb6b2}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a1e8ef567cfba2b43fac8afcdd3abb6b2}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!DictionaryofRoles@{DictionaryofRoles}} +\index{DictionaryofRoles@{DictionaryofRoles}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{DictionaryofRoles}{DictionaryofRoles}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Dictionaryof\+Roles\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a7e22c7aeba504efaeb89a38ce8bdbe71}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file_a7e22c7aeba504efaeb89a38ce8bdbe71}} +\index{Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}!DictionaryofRolesforAutomationComponenet@{DictionaryofRolesforAutomationComponenet}} +\index{DictionaryofRolesforAutomationComponenet@{DictionaryofRolesforAutomationComponenet}!Aml.Editor.Plugin.SearchAMLComponentFile@{Aml.Editor.Plugin.SearchAMLComponentFile}} +\doxysubsubsection{\texorpdfstring{DictionaryofRolesforAutomationComponenet}{DictionaryofRolesforAutomationComponenet}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File.\+Dictionaryof\+Rolesfor\+Automation\+Componenet\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_search_a_m_l_component_file_8cs}{Search\+A\+M\+L\+Component\+File.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.tex b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.tex new file mode 100644 index 0000000..4122ec4 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file.tex @@ -0,0 +1,850 @@ +\hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file}{}\doxysection{Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File Class Reference} +\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file}\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} + + +This class reads the library file loaded in to the plugin \char`\"{}\+Role Class Library Tree\+View\char`\"{} and \char`\"{}\+Interface Class Library Tree\+View\char`\"{} + + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_aec38502ce275c149500a135b82f3d4e9}{Search\+A\+M\+L\+Library\+File}} () +\begin{DoxyCompactList}\small\item\em This is the constructor of this class where all properties are intitialised to there early state \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a10fd9a1fcbf4033415354765a7b5223e}{Search\+For\+Referenced\+Class\+Name}} (C\+A\+E\+X\+Document doc, string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}{referenced\+Class\+Name}}, Interface\+Family\+Type class\+Type) +\begin{DoxyCompactList}\small\item\em This method is responsible to iterate over \char`\"{}\+Interafce Class Libraries \& Interafce Classes in it\char`\"{}, and strore attributes of \char`\"{}\+Referenced Class Name\char`\"{} in the dictionary. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a59edcf46c97b643baec157aa2904bb62}{Search\+For\+Interface\+Classes\+Inside\+Interface\+Class}} (C\+A\+E\+X\+Document doc, string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}{referenced\+Class\+Name}}, Interface\+Family\+Type class\+Type, Interface\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name) +\begin{DoxyCompactList}\small\item\em This class is responsible to search for interface classes ´nested inside Interface classes and recursion of this interface classes. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a018cf327c2e354cb04ead38c34307852}{Check\+For\+Attributes\+Of\+Referenced\+Class\+Name}} (Interface\+Family\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a82cf799b61e58be9c68e92949fc7842e}{Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Name}} (Attribute\+Type attribute\+Type, Interface\+Family\+Type class\+Type) +\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a146489175fd769883842ca2c148f1a8c}{Check\+For\+Attributes\+Of\+Referenced\+Class\+Name}} (Interface\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, Interface\+Family\+Type class\+Type) +\begin{DoxyCompactList}\small\item\em This method search for \char`\"{}\+Attributes\char`\"{} of \char`\"{}referenced Class name\char`\"{}. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a0ee3cf6b377de457bec9874531dedc83}{Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Name}} (Interface\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, Attribute\+Type attribute\+Type, Interface\+Family\+Type class\+Type) +\begin{DoxyCompactList}\small\item\em This method is responsible to check nested attributes of \char`\"{}\+Referenced Class Name\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a11a5f85235f45a9dd490ed80f116583c}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Name}} (List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Interface\+Family\+Type class\+Type, Attribute\+Type attribute\+Type) +\begin{DoxyCompactList}\small\item\em This the method that stores Attribute values of \char`\"{}\+Referened Class name\char`\"{} of \char`\"{}\+Interface Class\char`\"{} in the dictionary. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ae8c186a47b1131b50fb6555f6ab169d0}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Name}} (List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type Attribute\+In\+Attribute, Interface\+Family\+Type class\+Type, Attribute\+Type attribute\+Type) +\begin{DoxyCompactList}\small\item\em This method store nested attributes of each attribute of \char`\"{}\+Referenced C\+L\+A\+S\+S name\char`\"{} in the dictionary. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a5c19581d6a736a2a158b2645ca4630d7}{Search\+For\+Referenced\+Class\+Nameof\+External\+Iterface}} (C\+A\+E\+X\+Document doc, string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}{referenced\+Class\+Name}}, Interface\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em //\+This method search for \char`\"{}\+Referenced Class\char`\"{} of \char`\"{}\+External Interface\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a74c126142b223c61a0315c31c1f0abe4}{Search\+For\+Interface\+Classes\+Inside\+Interface\+Classof\+External\+Iterface}} (C\+A\+E\+X\+Document doc, string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}{referenced\+Class\+Name}}, Interface\+Family\+Type class\+Type, Interface\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method search for \char`\"{}\+Interface Classes\char`\"{} inside \char`\"{}\+Interface Classes\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a0acb853cf4f5cdb3c8c4a35c6a551756}{Check\+For\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (Interface\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method is responsible to Check \char`\"{}attributes\char`\"{} of \char`\"{}\+Referenced Class Name\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ab83a891496cd97f72f4756335513b360}{Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (Attribute\+Type attribute\+Type, Interface\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method is responsible to check \char`\"{}\+Nested A\+Ttributes\char`\"{} of \char`\"{}\+External Interface\textquotesingle{}s Attribute \char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a9dff615a305d66eb984477ba92b043b9}{Check\+For\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (Interface\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, Interface\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method is responsible to check \char`\"{}attributes\char`\"{} OF \char`\"{}\+Refrenced Class Name\char`\"{} of \char`\"{}\+External\+Interface\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a21e849724bea0e2528bc13522809aa04}{Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (Interface\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, Attribute\+Type attribute\+Type, Interface\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method is responsible to check the \char`\"{}\+Nested Attributes\char`\"{} of \char`\"{}\+Attributes\char`\"{} of\char`\"{}\+Interface Class\textquotesingle{}s External interafce\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a8bf5d8868fda86a13eaa8efe5f8c6f7b}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Interface\+Family\+Type class\+Type, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method store each \char`\"{}\+Attribute value\char`\"{} into respective dictionary \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a0048a13cd6298b8b942e52b04aedc624}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type Attribute\+In\+Attribute, Interface\+Family\+Type class\+Type, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method stores \char`\"{}\+Attributes\char`\"{} of \char`\"{}\+Referenced Class\textquotesingle{}s External Interface\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a5aa1ede5fe9adae926187baa8a33900e}{Search\+For\+Referenced\+Class\+Name}} (C\+A\+E\+X\+Document doc, string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}{referenced\+Class\+Name}}, Role\+Family\+Type class\+Type) +\begin{DoxyCompactList}\small\item\em This function is responsible for checking whole document for the \char`\"{}\+Referenced Class Name\char`\"{}\+: Note\+:-\/ This function is a recursion function, which conduct many iterations in the document. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_af14e0365f069689e2a345384a1d88561}{Check\+For\+Attributes\+Of\+Referenced\+Class\+Name}} (Role\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, Role\+Family\+Type class\+Type) +\begin{DoxyCompactList}\small\item\em This method is responsible for checking \char`\"{}\+Attributes\char`\"{} under \char`\"{}\+Referenced Class Name\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ad712edf69757e816d68ecb2b500584e0}{Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Name}} (Role\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, Attribute\+Type attribute\+Type, Role\+Family\+Type class\+Type) +\begin{DoxyCompactList}\small\item\em This method check for nested attributes under attributes of \char`\"{}\+Referenced Class Name\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a2c4569929beec8af516a2fe28da3bbdc}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Name}} (List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Role\+Family\+Type class\+Type, Attribute\+Type attribute\+Type) +\begin{DoxyCompactList}\small\item\em This fuunction stores \char`\"{}\+Attributes\char`\"{} of \char`\"{}\+Referenced Class Name\char`\"{} in the dictionary \char`\"{}\+Dictionary\+For\+Role\+Class\+Instance\+Attributes\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a56dea9bce7b957ddbb7506f5b84ad236}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Name}} (List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type Attribute\+In\+Attribute, Role\+Family\+Type class\+Type, Attribute\+Type attribute\+Type) +\begin{DoxyCompactList}\small\item\em This method is responsible to store \char`\"{}\+Nested Attributes\char`\"{} under \char`\"{}\+Attributes\char`\"{} of \char`\"{}\+Referenced Class Name\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_abe0ec2875b120645b6b2810eea32e603}{Check\+For\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (Role\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This Function is responsible to search attributes under the \char`\"{}\+Referenced Classs Name\char`\"{} i.\+e. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a93e56dee9780b0eb614ae9f63c654845}{Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (Attribute\+Type attribute\+Type, Role\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This function is responsible for checking \char`\"{}nested attributes\char`\"{} under \char`\"{}attributes\char`\"{} of the \char`\"{}\+External Interface\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_aa03bb4f0eca822618c6e590acd091d30}{Check\+For\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (Role\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, Role\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This function is responsible to check and store \char`\"{}\+Attributes\char`\"{} under \char`\"{}\+External Interface\char`\"{} of \char`\"{}\+Referenced Class Name\char`\"{} of \char`\"{}\+Role Class\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a929b87c2d6ac8ff5bac7ef6438c7fba0}{Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (Role\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, Attribute\+Type attribute\+Type, Role\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This function is responsible to check \char`\"{}attribute\char`\"{} under \char`\"{}attributes\char`\"{} i.\+e. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a4d5da760852f65985eae02da24f5df06}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Role\+Family\+Type class\+Type, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method is responsible to store each attribute value of \char`\"{}\+Referenced Class Name\char`\"{} of \char`\"{}\+External Interface\char`\"{} of Role Class. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a66963e3c258c2bcc8f51353861a2bae6}{Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Nameof\+External\+Iterface}} (List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$ list, Attribute\+Type Attribute\+In\+Attribute, Role\+Family\+Type class\+Type, Attribute\+Type attribute\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method stores the nested attributes in \char`\"{}\+Dictionary\+For\+External\+Interfaces\+Instances\+Attributes\+Of\+Role\+Class\+Lib\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a7c6096f38f03c5e7e2e3b06a7e139017}{Search\+For\+Referenced\+Class\+Nameof\+External\+Iterface}} (C\+A\+E\+X\+Document doc, string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}{referenced\+Class\+Name}}, Role\+Family\+Type class\+Type, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method is responsible to check for \char`\"{}\+Referenced Class Name\char`\"{} of \char`\"{}\+External Interfaces\char`\"{} under the \char`\"{}\+Role Class\char`\"{} This method is a recursive method, that looks for the \char`\"{}\+Referenced Class Name\char`\"{} of the \char`\"{}\+Extenal Interface\char`\"{} under \char`\"{}\+Role Class\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a09a785a7ce03cbcea1e305d2144b2963}{Search\+For\+Interface\+Classes\+Inside\+Interface\+Class}} (C\+A\+E\+X\+Document doc, string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}{referenced\+Class\+Name}}, Role\+Family\+Type class\+Type, Role\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name) +\begin{DoxyCompactList}\small\item\em This method searches \char`\"{}\+Role Classes\char`\"{} under \char`\"{}\+Referenced Class Name\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a171c7b416129418d0b3c27514e98410c}{Search\+For\+Interface\+Classes\+Inside\+Interface\+Classof\+External\+Iterface}} (C\+A\+E\+X\+Document doc, string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}{referenced\+Class\+Name}}, Role\+Family\+Type class\+Type, Role\+Family\+Type class\+Type\+Search\+For\+Referenced\+Class\+Name, External\+Interface\+Type external\+Interface) +\begin{DoxyCompactList}\small\item\em This method is a recursive method, which checks for \char`\"{}\+Refernced Class Name\char`\"{} under role class under role class \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_adc56320b0d72660f2f45cadc498edffd}{Check\+For\+Attributes\+Of\+Referenced\+Class\+Name}} (Role\+Family\+Type class\+Type) +\begin{DoxyCompactList}\small\item\em This method is responsible for checking attributes under \char`\"{}\+Referenced Class Name\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a10b21544dd605907ae1b5de5f1523070}{Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Name}} (Attribute\+Type attribute\+Type, Role\+Family\+Type class\+Type) +\begin{DoxyCompactList}\small\item\em This method check for \char`\"{}nested attributes\char`\"{} of \char`\"{}referenced class name\char`\"{} \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a885dc0dac3ebebe9a4e264860d6c1bcf}{Print\+Nodes\+Recursive\+In\+Role\+Class\+Lib}} (C\+A\+E\+X\+Document document, Tree\+Node o\+Parent\+Node, Role\+Family\+Type class\+Type, string referencedclass\+Name) +\begin{DoxyCompactList}\small\item\em This method takes arguments \char`\"{}\+Tree\+Node\char`\"{} and \char`\"{}\+Role\+Family\+Type\char`\"{} to print tree nodes in \char`\"{}\+Role Class Library Tree\+View \char`\"{} in \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Plugin}}. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a2d048625f052a65bd1a69c2622b013c3}{Print\+Nodes\+Recursive\+In\+Interface\+Class\+Lib}} (C\+A\+E\+X\+Document document, Tree\+Node o\+Parent\+Node, Interface\+Family\+Type class\+Type, string referencedclass\+Name) +\begin{DoxyCompactList}\small\item\em This method Takes parameters \char`\"{}\+Tree\+Node\char`\"{} and \char`\"{}\+Interface\+Family\+Type\char`\"{} to print tree nodes in \char`\"{}\+Interface Class Library Tree\+View \char`\"{} in \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Plugin}}. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a84270fba66af2b2c4b1e550e9c232076}{Print\+External\+Interface\+Nodes}} (C\+A\+E\+X\+Document document, Tree\+Node o\+Parent\+Node, External\+Interface\+Type class\+Type, Interface\+Family\+Type Interafceclass\+Type) +\begin{DoxyCompactList}\small\item\em This method is called to print \char`\"{}\+External Interfaces\char`\"{} in both \char`\"{}\+Role class Library and Interface Class Library\char`\"{} in the plugin. \end{DoxyCompactList}\item +void \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a1b60137e70854d4b6988bb53feefbc02}{Print\+External\+Interface\+Nodes}} (C\+A\+E\+X\+Document document, Tree\+Node o\+Parent\+Node, External\+Interface\+Type class\+Type, Role\+Family\+Type Roleclass\+Type) +\begin{DoxyCompactList}\small\item\em This method is called to print \char`\"{}\+External Interfaces\char`\"{} in both \char`\"{}\+Role class Library and Interface Class Library\char`\"{} in the plugin. \end{DoxyCompactList}\end{DoxyCompactItemize} +\doxysubsection*{Properties} +\begin{DoxyCompactItemize} +\item +Dictionary$<$ string, string $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ae2a9f746ba71aac0e1af3a3e6576b842}{Dictioanry\+Of\+I\+Dof\+Interface\+Class\+Library\+Nodes}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\begin{DoxyCompactList}\small\item\em These are the properties of this class i.\+e. \end{DoxyCompactList}\item +Dictionary$<$ string, List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ad15f0a5bc1513eb4379ff6d5ec7d8c32}{dictionaryof\+Role\+Classattributes}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a05463d55d6ccbd8379a158a72bb3f595}{Dictionary\+For\+Interface\+Class\+Instances\+Attributes}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ac19b278b2e5411e59f04885d24418de9}{Dictionary\+For\+External\+Interfaces\+Instance\+Attributesof\+Interface\+Class\+Lib}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_aefaaeac579bf73534e5101b4f4f52dcd}{Dictionary\+For\+Role\+Class\+Instance\+Attributes}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +Dictionary$<$ string, List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$ $>$ $>$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a574ca9332b8d007675793598ad421fb8}{Dictionary\+For\+External\+Interfaces\+Instances\+Attributes\+Of\+Role\+Class\+Lib}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\item +string \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}{referenced\+Class\+Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}} +\end{DoxyCompactItemize} + + +\doxysubsection{Detailed Description} +This class reads the library file loaded in to the plugin \char`\"{}\+Role Class Library Tree\+View\char`\"{} and \char`\"{}\+Interface Class Library Tree\+View\char`\"{} + + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_aec38502ce275c149500a135b82f3d4e9}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_aec38502ce275c149500a135b82f3d4e9}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!SearchAMLLibraryFile@{SearchAMLLibraryFile}} +\index{SearchAMLLibraryFile@{SearchAMLLibraryFile}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{SearchAMLLibraryFile()}{SearchAMLLibraryFile()}} +{\footnotesize\ttfamily Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Search\+A\+M\+L\+Library\+File (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This is the constructor of this class where all properties are intitialised to there early state + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a018cf327c2e354cb04ead38c34307852}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a018cf327c2e354cb04ead38c34307852}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CheckForAttributesOfReferencedClassName@{CheckForAttributesOfReferencedClassName}} +\index{CheckForAttributesOfReferencedClassName@{CheckForAttributesOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfReferencedClassName()}{CheckForAttributesOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Check\+For\+Attributes\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{Interface\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a146489175fd769883842ca2c148f1a8c}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a146489175fd769883842ca2c148f1a8c}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CheckForAttributesOfReferencedClassName@{CheckForAttributesOfReferencedClassName}} +\index{CheckForAttributesOfReferencedClassName@{CheckForAttributesOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfReferencedClassName()}{CheckForAttributesOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Check\+For\+Attributes\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{Interface\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{Interface\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method search for \char`\"{}\+Attributes\char`\"{} of \char`\"{}referenced Class name\char`\"{}. + + +\begin{DoxyParams}{Parameters} +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, for which attributes has to be stored in dictionary.\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, to which this \char`\"{}referenced Class name\char`\"{} belongs to \\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_adc56320b0d72660f2f45cadc498edffd}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_adc56320b0d72660f2f45cadc498edffd}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CheckForAttributesOfReferencedClassName@{CheckForAttributesOfReferencedClassName}} +\index{CheckForAttributesOfReferencedClassName@{CheckForAttributesOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfReferencedClassName()}{CheckForAttributesOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Check\+For\+Attributes\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{Role\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible for checking attributes under \char`\"{}\+Referenced Class Name\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em class\+Type} & This is \char`\"{}\+Role\+Family\+Type\char`\"{}, which is \char`\"{}\+Groud\+Class\char`\"{}\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_af14e0365f069689e2a345384a1d88561}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_af14e0365f069689e2a345384a1d88561}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CheckForAttributesOfReferencedClassName@{CheckForAttributesOfReferencedClassName}} +\index{CheckForAttributesOfReferencedClassName@{CheckForAttributesOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfReferencedClassName()}{CheckForAttributesOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Check\+For\+Attributes\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{Role\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{Role\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible for checking \char`\"{}\+Attributes\char`\"{} under \char`\"{}\+Referenced Class Name\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & this is \char`\"{}\+Role\+Family\+Type\char`\"{}, which we are checking attributes for.\\ +\hline +{\em class\+Type} & This is the \char`\"{}\+Ground Class\char`\"{}\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a0acb853cf4f5cdb3c8c4a35c6a551756}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a0acb853cf4f5cdb3c8c4a35c6a551756}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CheckForAttributesOfReferencedClassNameofExternalIterface@{CheckForAttributesOfReferencedClassNameofExternalIterface}} +\index{CheckForAttributesOfReferencedClassNameofExternalIterface@{CheckForAttributesOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfReferencedClassNameofExternalIterface()}{CheckForAttributesOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Check\+For\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{Interface\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible to Check \char`\"{}attributes\char`\"{} of \char`\"{}\+Referenced Class Name\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em class\+Type} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, which is a \char`\"{}\+Ground Class\char`\"{}.\\ +\hline +{\em external\+Interface} & This is \char`\"{}\+External\+Interface\+Type\char`\"{}, which attributes has to be stored in a dictionary\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a9dff615a305d66eb984477ba92b043b9}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a9dff615a305d66eb984477ba92b043b9}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CheckForAttributesOfReferencedClassNameofExternalIterface@{CheckForAttributesOfReferencedClassNameofExternalIterface}} +\index{CheckForAttributesOfReferencedClassNameofExternalIterface@{CheckForAttributesOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfReferencedClassNameofExternalIterface()}{CheckForAttributesOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Check\+For\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{Interface\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible to check \char`\"{}attributes\char`\"{} OF \char`\"{}\+Refrenced Class Name\char`\"{} of \char`\"{}\+External\+Interface\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, for which attributes are checked.\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interface Family Type\char`\"{}, which is a \char`\"{}\+Ground Class\char`\"{} used for creating Key to the dictionary.\\ +\hline +{\em external\+Interface} & \\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_abe0ec2875b120645b6b2810eea32e603}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_abe0ec2875b120645b6b2810eea32e603}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CheckForAttributesOfReferencedClassNameofExternalIterface@{CheckForAttributesOfReferencedClassNameofExternalIterface}} +\index{CheckForAttributesOfReferencedClassNameofExternalIterface@{CheckForAttributesOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfReferencedClassNameofExternalIterface()}{CheckForAttributesOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Check\+For\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{Role\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This Function is responsible to search attributes under the \char`\"{}\+Referenced Classs Name\char`\"{} i.\+e. + +in this part \char`\"{}\+Role\+Family\+Type\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em class\+Type} & This is \char`\"{}\+Ground Class we are checking attributes for.\char`\"{} \\ +\hline +{\em external\+Interface} & This is \char`\"{}\+External\+Interface\+Type\char`\"{}, for which the attributes has to be checked and stored\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_aa03bb4f0eca822618c6e590acd091d30}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_aa03bb4f0eca822618c6e590acd091d30}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CheckForAttributesOfReferencedClassNameofExternalIterface@{CheckForAttributesOfReferencedClassNameofExternalIterface}} +\index{CheckForAttributesOfReferencedClassNameofExternalIterface@{CheckForAttributesOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CheckForAttributesOfReferencedClassNameofExternalIterface()}{CheckForAttributesOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Check\+For\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{Role\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This function is responsible to check and store \char`\"{}\+Attributes\char`\"{} under \char`\"{}\+External Interface\char`\"{} of \char`\"{}\+Referenced Class Name\char`\"{} of \char`\"{}\+Role Class\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is the \char`\"{}\+Referenced Class Name\char`\"{} of Role Classe\textquotesingle{}s \char`\"{}\+External Interface\char`\"{}.\\ +\hline +{\em class\+Type} & This is the \char`\"{}\+Role Class\char`\"{}\\ +\hline +{\em external\+Interface} & Thi is the \char`\"{}\+External Interface\char`\"{} we are looking for.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a82cf799b61e58be9c68e92949fc7842e}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a82cf799b61e58be9c68e92949fc7842e}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CkeckForNestedAttributesOfReferencedClassName@{CkeckForNestedAttributesOfReferencedClassName}} +\index{CkeckForNestedAttributesOfReferencedClassName@{CkeckForNestedAttributesOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfReferencedClassName()}{CkeckForNestedAttributesOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{Attribute\+Type}]{attribute\+Type, }\item[{Interface\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a10b21544dd605907ae1b5de5f1523070}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a10b21544dd605907ae1b5de5f1523070}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CkeckForNestedAttributesOfReferencedClassName@{CkeckForNestedAttributesOfReferencedClassName}} +\index{CkeckForNestedAttributesOfReferencedClassName@{CkeckForNestedAttributesOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfReferencedClassName()}{CkeckForNestedAttributesOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{Attribute\+Type}]{attribute\+Type, }\item[{Role\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method check for \char`\"{}nested attributes\char`\"{} of \char`\"{}referenced class name\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{}, for which nest attributes has to be checked.\\ +\hline +{\em class\+Type} & This \char`\"{}\+Role\+Family\+Type\char`\"{}, which is \char`\"{}\+Ground class\char`\"{}\\ +\hline +\end{DoxyParams} +Foreach attribute.....\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a0ee3cf6b377de457bec9874531dedc83}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a0ee3cf6b377de457bec9874531dedc83}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CkeckForNestedAttributesOfReferencedClassName@{CkeckForNestedAttributesOfReferencedClassName}} +\index{CkeckForNestedAttributesOfReferencedClassName@{CkeckForNestedAttributesOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfReferencedClassName()}{CkeckForNestedAttributesOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{Interface\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{Interface\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible to check nested attributes of \char`\"{}\+Referenced Class Name\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, for which attributes has to be stored in dictionary.\\ +\hline +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{}, where the attributes values has to be stored\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, to which this \char`\"{}referenced Class name\char`\"{} belongs to\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ad712edf69757e816d68ecb2b500584e0}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ad712edf69757e816d68ecb2b500584e0}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CkeckForNestedAttributesOfReferencedClassName@{CkeckForNestedAttributesOfReferencedClassName}} +\index{CkeckForNestedAttributesOfReferencedClassName@{CkeckForNestedAttributesOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfReferencedClassName()}{CkeckForNestedAttributesOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{Role\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{Role\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method check for nested attributes under attributes of \char`\"{}\+Referenced Class Name\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is \char`\"{}\+Role\+Family\+Type\char`\"{}, which we are checking attributes \\ +\hline +{\em attribute\+Type} & This is the \char`\"{}\+Attribute\+Type\char`\"{}, which is having \char`\"{}\+Nested Attributes\char`\"{}\\ +\hline +{\em class\+Type} & This id the \char`\"{}\+Ground Class\char`\"{}\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ab83a891496cd97f72f4756335513b360}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ab83a891496cd97f72f4756335513b360}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CkeckForNestedAttributesOfReferencedClassNameofExternalIterface@{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface}} +\index{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface@{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface()}{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{Attribute\+Type}]{attribute\+Type, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible to check \char`\"{}\+Nested A\+Ttributes\char`\"{} of \char`\"{}\+External Interface\textquotesingle{}s Attribute \char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{} , for which nested attributes has to be checked.\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interface\+Family\+Type, which is \char`\"{}Ground Class\char`\"{} used while creating \char`\"{}keyname\char`\"{} in dictionary$<$/param$>$ +$<$param name=\char`\"{}external\+Interface\char`\"{}$>$\+This \char`\"{}External\+Interface\+Type for which attributes are checked."\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a93e56dee9780b0eb614ae9f63c654845}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a93e56dee9780b0eb614ae9f63c654845}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CkeckForNestedAttributesOfReferencedClassNameofExternalIterface@{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface}} +\index{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface@{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface()}{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{Attribute\+Type}]{attribute\+Type, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This function is responsible for checking \char`\"{}nested attributes\char`\"{} under \char`\"{}attributes\char`\"{} of the \char`\"{}\+External Interface\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em attribute\+Type} & This is the \char`\"{}\+Attribute\+Type\char`\"{}, which is having nested attributes.\\ +\hline +{\em class\+Type} & This is the \char`\"{}\+Ground Class\char`\"{} we are Searching in.\\ +\hline +{\em external\+Interface} & This is the \char`\"{}\+External\+Interface\+Type\char`\"{}, which is having attributes.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a21e849724bea0e2528bc13522809aa04}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a21e849724bea0e2528bc13522809aa04}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CkeckForNestedAttributesOfReferencedClassNameofExternalIterface@{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface}} +\index{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface@{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface()}{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{Interface\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible to check the \char`\"{}\+Nested Attributes\char`\"{} of \char`\"{}\+Attributes\char`\"{} of\char`\"{}\+Interface Class\textquotesingle{}s External interafce\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, for which attributes are checked.\\ +\hline +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{}, which attribtes has to be stored.\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interfce\+Class\+Type\char`\"{}, which is a \char`\"{}\+Ground Class\char`\"{} used for creating a key in dictionary. \\ +\hline +{\em external\+Interface} & \\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a929b87c2d6ac8ff5bac7ef6438c7fba0}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a929b87c2d6ac8ff5bac7ef6438c7fba0}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!CkeckForNestedAttributesOfReferencedClassNameofExternalIterface@{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface}} +\index{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface@{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface()}{CkeckForNestedAttributesOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Ckeck\+For\+Nested\+Attributes\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{Role\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This function is responsible to check \char`\"{}attribute\char`\"{} under \char`\"{}attributes\char`\"{} i.\+e. + +nested attributes This function is a recursive function, which check nested attributes untill they were ended. + + +\begin{DoxyParams}{Parameters} +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This if \char`\"{}\+Role\+Family\+Type\char`\"{}, which we are storing attributes for \\ +\hline +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type \char`\"{}, which retrives attribute values \\ +\hline +{\em class\+Type} & This is the \char`\"{}\+Ground Class\char`\"{}, which we are looking in\\ +\hline +{\em external\+Interface} & This is the \char`\"{}external interface\char`\"{}, under which the attributes has to be stored. \\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a84270fba66af2b2c4b1e550e9c232076}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a84270fba66af2b2c4b1e550e9c232076}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!PrintExternalInterfaceNodes@{PrintExternalInterfaceNodes}} +\index{PrintExternalInterfaceNodes@{PrintExternalInterfaceNodes}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{PrintExternalInterfaceNodes()}{PrintExternalInterfaceNodes()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Print\+External\+Interface\+Nodes (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{document, }\item[{Tree\+Node}]{o\+Parent\+Node, }\item[{External\+Interface\+Type}]{class\+Type, }\item[{Interface\+Family\+Type}]{Interafceclass\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is called to print \char`\"{}\+External Interfaces\char`\"{} in both \char`\"{}\+Role class Library and Interface Class Library\char`\"{} in the plugin. + + +\begin{DoxyParams}{Parameters} +{\em o\+Parent\+Node} & \\ +\hline +{\em class\+Type} & \\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a1b60137e70854d4b6988bb53feefbc02}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a1b60137e70854d4b6988bb53feefbc02}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!PrintExternalInterfaceNodes@{PrintExternalInterfaceNodes}} +\index{PrintExternalInterfaceNodes@{PrintExternalInterfaceNodes}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{PrintExternalInterfaceNodes()}{PrintExternalInterfaceNodes()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Print\+External\+Interface\+Nodes (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{document, }\item[{Tree\+Node}]{o\+Parent\+Node, }\item[{External\+Interface\+Type}]{class\+Type, }\item[{Role\+Family\+Type}]{Roleclass\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is called to print \char`\"{}\+External Interfaces\char`\"{} in both \char`\"{}\+Role class Library and Interface Class Library\char`\"{} in the plugin. + + +\begin{DoxyParams}{Parameters} +{\em o\+Parent\+Node} & This is \char`\"{}\+Tree\+Node\char`\"{}, which is parent node for the new node that is going to be created using this method. \\ +\hline +{\em class\+Type} & This is \char`\"{}\+Role\+Family\+Type\char`\"{}, which is a \char`\"{}\+Ground Class\char`\"{}\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a2d048625f052a65bd1a69c2622b013c3}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a2d048625f052a65bd1a69c2622b013c3}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!PrintNodesRecursiveInInterfaceClassLib@{PrintNodesRecursiveInInterfaceClassLib}} +\index{PrintNodesRecursiveInInterfaceClassLib@{PrintNodesRecursiveInInterfaceClassLib}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{PrintNodesRecursiveInInterfaceClassLib()}{PrintNodesRecursiveInInterfaceClassLib()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Print\+Nodes\+Recursive\+In\+Interface\+Class\+Lib (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{document, }\item[{Tree\+Node}]{o\+Parent\+Node, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{string}]{referencedclass\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method Takes parameters \char`\"{}\+Tree\+Node\char`\"{} and \char`\"{}\+Interface\+Family\+Type\char`\"{} to print tree nodes in \char`\"{}\+Interface Class Library Tree\+View \char`\"{} in \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Plugin}}. + + +\begin{DoxyParams}{Parameters} +{\em o\+Parent\+Node} & \\ +\hline +{\em class\+Type} & \\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a885dc0dac3ebebe9a4e264860d6c1bcf}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a885dc0dac3ebebe9a4e264860d6c1bcf}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!PrintNodesRecursiveInRoleClassLib@{PrintNodesRecursiveInRoleClassLib}} +\index{PrintNodesRecursiveInRoleClassLib@{PrintNodesRecursiveInRoleClassLib}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{PrintNodesRecursiveInRoleClassLib()}{PrintNodesRecursiveInRoleClassLib()}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Print\+Nodes\+Recursive\+In\+Role\+Class\+Lib (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{document, }\item[{Tree\+Node}]{o\+Parent\+Node, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{string}]{referencedclass\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method takes arguments \char`\"{}\+Tree\+Node\char`\"{} and \char`\"{}\+Role\+Family\+Type\char`\"{} to print tree nodes in \char`\"{}\+Role Class Library Tree\+View \char`\"{} in \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Plugin}}. + + +\begin{DoxyParams}{Parameters} +{\em o\+Parent\+Node} & This is a \char`\"{}\+Tree\+Node\char`\"{}, which is parent node for the new node that is going to be created using this method. \\ +\hline +{\em class\+Type} & This is \char`\"{}\+Role\+Family\+Type\char`\"{}, which is a \char`\"{}\+Ground Class\char`\"{}\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a59edcf46c97b643baec157aa2904bb62}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a59edcf46c97b643baec157aa2904bb62}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!SearchForInterfaceClassesInsideInterfaceClass@{SearchForInterfaceClassesInsideInterfaceClass}} +\index{SearchForInterfaceClassesInsideInterfaceClass@{SearchForInterfaceClassesInsideInterfaceClass}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{SearchForInterfaceClassesInsideInterfaceClass()}{SearchForInterfaceClassesInsideInterfaceClass()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Search\+For\+Interface\+Classes\+Inside\+Interface\+Class (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{doc, }\item[{string}]{referenced\+Class\+Name, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{Interface\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This class is responsible to search for interface classes ´nested inside Interface classes and recursion of this interface classes. + + +\begin{DoxyParams}{Parameters} +{\em doc} & This is the \char`\"{}\+C\+A\+E\+X\+Document, where the search has to be done \char`\"{}\\ +\hline +{\em referenced\+Class\+Name} & This is \char`\"{}\+String\char`\"{} variable, that stores the name of the \char`\"{}\+Referenced Class Name\char`\"{}\\ +\hline +{\em class\+Type} & This \char`\"{}\+Interface\+Family\+Type\char`\"{}, which is a\char`\"{}\+Ground Class\char`\"{}\\ +\hline +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, where the \char`\"{}referenced Class Name\char`\"{} is presented\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a09a785a7ce03cbcea1e305d2144b2963}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a09a785a7ce03cbcea1e305d2144b2963}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!SearchForInterfaceClassesInsideInterfaceClass@{SearchForInterfaceClassesInsideInterfaceClass}} +\index{SearchForInterfaceClassesInsideInterfaceClass@{SearchForInterfaceClassesInsideInterfaceClass}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{SearchForInterfaceClassesInsideInterfaceClass()}{SearchForInterfaceClassesInsideInterfaceClass()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Search\+For\+Interface\+Classes\+Inside\+Interface\+Class (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{doc, }\item[{string}]{referenced\+Class\+Name, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{Role\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method searches \char`\"{}\+Role Classes\char`\"{} under \char`\"{}\+Referenced Class Name\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em doc} & This is the document, where we are searching for \char`\"{}\+Referenced Class Name\char`\"{} \\ +\hline +{\em referenced\+Class\+Name} & This is the \char`\"{}\+Referenced Class Name\char`\"{} i.\+e. \char`\"{}\+String\char`\"{} used to search for the name of thE \char`\"{}\+Referenced Class Name\char`\"{}\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Role\+Family\+Type\char`\"{} i.\+e. \char`\"{}\+Ground Class\char`\"{}\\ +\hline +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is \char`\"{}\+Role\+Family\+Type\char`\"{}, under which the role clasees are searched.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a74c126142b223c61a0315c31c1f0abe4}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a74c126142b223c61a0315c31c1f0abe4}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!SearchForInterfaceClassesInsideInterfaceClassofExternalIterface@{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface}} +\index{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface@{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface()}{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Search\+For\+Interface\+Classes\+Inside\+Interface\+Classof\+External\+Iterface (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{doc, }\item[{string}]{referenced\+Class\+Name, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{Interface\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method search for \char`\"{}\+Interface Classes\char`\"{} inside \char`\"{}\+Interface Classes\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em doc} & This is \char`\"{}\+C\+A\+E\+X\+Docuemt\char`\"{} in which the search has to be done\+:\\ +\hline +{\em referenced\+Class\+Name} & This is \char`\"{}\+String variable\char`\"{} in which \char`\"{}\+Refrenced Class name\char`\"{} is stored\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, which is a \char`\"{}\+Ground Class\char`\"{}´used to generate key name in dictionary.\\ +\hline +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is \char`\"{}\+Interface Class T\+Y\+P\+E\char`\"{}; where \char`\"{}\+Interfac Classes\char`\"{} inside has to be searched.\\ +\hline +{\em external\+Interface} & This is the \char`\"{}\+External\+Interface\+Type\char`\"{}, for which refernced name attributes has to be stored.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a171c7b416129418d0b3c27514e98410c}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a171c7b416129418d0b3c27514e98410c}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!SearchForInterfaceClassesInsideInterfaceClassofExternalIterface@{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface}} +\index{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface@{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface()}{SearchForInterfaceClassesInsideInterfaceClassofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Search\+For\+Interface\+Classes\+Inside\+Interface\+Classof\+External\+Iterface (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{doc, }\item[{string}]{referenced\+Class\+Name, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{Role\+Family\+Type}]{class\+Type\+Search\+For\+Referenced\+Class\+Name, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is a recursive method, which checks for \char`\"{}\+Refernced Class Name\char`\"{} under role class under role class + + +\begin{DoxyParams}{Parameters} +{\em doc} & This is the document or file, where the search has to be done\\ +\hline +{\em referenced\+Class\+Name} & This is the \char`\"{}\+Referenced Class\+Name\char`\"{}, that we are looking i the document.\\ +\hline +{\em class\+Type} & This is the \char`\"{}\+Ground Class\char`\"{} we stared search at.\\ +\hline +{\em class\+Type\+Search\+For\+Referenced\+Class\+Name} & This is \char`\"{}\+Role\+Famil\+Type\char`\"{} to search, if \char`\"{}\+Role Classes\char`\"{} are present. \\ +\hline +{\em external\+Interface} & \\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a10fd9a1fcbf4033415354765a7b5223e}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a10fd9a1fcbf4033415354765a7b5223e}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!SearchForReferencedClassName@{SearchForReferencedClassName}} +\index{SearchForReferencedClassName@{SearchForReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{SearchForReferencedClassName()}{SearchForReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Search\+For\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{doc, }\item[{string}]{referenced\+Class\+Name, }\item[{Interface\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible to iterate over \char`\"{}\+Interafce Class Libraries \& Interafce Classes in it\char`\"{}, and strore attributes of \char`\"{}\+Referenced Class Name\char`\"{} in the dictionary. + + +\begin{DoxyParams}{Parameters} +{\em doc} & This is the \char`\"{}\+C\+A\+E\+X\+Document, where the search has to be done \char`\"{}\\ +\hline +{\em referenced\+Class\+Name} & This is \char`\"{}\+String\char`\"{} variable, that stores the name of the \char`\"{}\+Referenced Class Name\char`\"{}\\ +\hline +{\em class\+Type} & This \char`\"{}\+Interface\+Family\+Type\char`\"{}, which is a\char`\"{}\+Ground Class\char`\"{}.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a5aa1ede5fe9adae926187baa8a33900e}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a5aa1ede5fe9adae926187baa8a33900e}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!SearchForReferencedClassName@{SearchForReferencedClassName}} +\index{SearchForReferencedClassName@{SearchForReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{SearchForReferencedClassName()}{SearchForReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Search\+For\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{doc, }\item[{string}]{referenced\+Class\+Name, }\item[{Role\+Family\+Type}]{class\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This function is responsible for checking whole document for the \char`\"{}\+Referenced Class Name\char`\"{}\+: Note\+:-\/ This function is a recursion function, which conduct many iterations in the document. + + +\begin{DoxyParams}{Parameters} +{\em doc} & This is the loaded document. This might be loaded by user or can be from the plugin as well.\\ +\hline +{\em referenced\+Class\+Name} & This is the \char`\"{}\+Role Class Name\char`\"{} in the documentm, which the function is checking for \\ +\hline +{\em class\+Type} & This is just the Class Type that we are asking this function to check in the document. i.\+e. (Role\+Family\+Type)\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a5c19581d6a736a2a158b2645ca4630d7}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a5c19581d6a736a2a158b2645ca4630d7}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!SearchForReferencedClassNameofExternalIterface@{SearchForReferencedClassNameofExternalIterface}} +\index{SearchForReferencedClassNameofExternalIterface@{SearchForReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{SearchForReferencedClassNameofExternalIterface()}{SearchForReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Search\+For\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{doc, }\item[{string}]{referenced\+Class\+Name, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +//\+This method search for \char`\"{}\+Referenced Class\char`\"{} of \char`\"{}\+External Interface\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em doc} & This is \char`\"{}\+C\+A\+E\+X\+Docuemt\char`\"{} in which the search has to be done.\\ +\hline +{\em referenced\+Class\+Name} & This is \char`\"{}\+String variable\char`\"{} in which \char`\"{}\+Refrenced Class name\char`\"{} is stored.\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, which is a \char`\"{}\+Ground Class\char`\"{}´used to generate key name in dictionary.\\ +\hline +{\em external\+Interface} & This is the \char`\"{}\+External\+Interface\+Type\char`\"{}, for which refernced name attributes has to be stored.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a7c6096f38f03c5e7e2e3b06a7e139017}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a7c6096f38f03c5e7e2e3b06a7e139017}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!SearchForReferencedClassNameofExternalIterface@{SearchForReferencedClassNameofExternalIterface}} +\index{SearchForReferencedClassNameofExternalIterface@{SearchForReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{SearchForReferencedClassNameofExternalIterface()}{SearchForReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Search\+For\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{C\+A\+E\+X\+Document}]{doc, }\item[{string}]{referenced\+Class\+Name, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible to check for \char`\"{}\+Referenced Class Name\char`\"{} of \char`\"{}\+External Interfaces\char`\"{} under the \char`\"{}\+Role Class\char`\"{} This method is a recursive method, that looks for the \char`\"{}\+Referenced Class Name\char`\"{} of the \char`\"{}\+Extenal Interface\char`\"{} under \char`\"{}\+Role Class\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em doc} & This is the document loaded from the plugin or loaded by user from his local machine.\\ +\hline +{\em referenced\+Class\+Name} & This is the string that we are looking for inside the document.\\ +\hline +{\em class\+Type} & This is the Class Type i.\+e. \char`\"{}\+Role\+Famliy\+Type\char`\"{} i.\+e. under \char`\"{}\+Role Classes\char`\"{} we are looking for.\\ +\hline +{\em external\+Interface} & Don\textquotesingle{}t forget we are looking for thev\char`\"{}\+Extenal\+Interface\char`\"{} \\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ae8c186a47b1131b50fb6555f6ab169d0}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ae8c186a47b1131b50fb6555f6ab169d0}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!StoreEachAttributeValueInListOfReferencedClassName@{StoreEachAttributeValueInListOfReferencedClassName}} +\index{StoreEachAttributeValueInListOfReferencedClassName@{StoreEachAttributeValueInListOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfReferencedClassName()}{StoreEachAttributeValueInListOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{Attribute\+In\+Attribute, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{Attribute\+Type}]{attribute\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method store nested attributes of each attribute of \char`\"{}\+Referenced C\+L\+A\+S\+S name\char`\"{} in the dictionary. + + +\begin{DoxyParams}{Parameters} +{\em list} & This is list of attribute values .\\ +\hline +{\em Attribute\+In\+Attribute} & This is \char`\"{}\+Attribute\+Type \char`\"{}, where the values has to be stored.\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interafce Class\char`\"{}, which is having \char`\"{}\+Referenced Class Name \char`\"{}\\ +\hline +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{}, \\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a56dea9bce7b957ddbb7506f5b84ad236}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a56dea9bce7b957ddbb7506f5b84ad236}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!StoreEachAttributeValueInListOfReferencedClassName@{StoreEachAttributeValueInListOfReferencedClassName}} +\index{StoreEachAttributeValueInListOfReferencedClassName@{StoreEachAttributeValueInListOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfReferencedClassName()}{StoreEachAttributeValueInListOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{Attribute\+In\+Attribute, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{Attribute\+Type}]{attribute\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible to store \char`\"{}\+Nested Attributes\char`\"{} under \char`\"{}\+Attributes\char`\"{} of \char`\"{}\+Referenced Class Name\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em list} & This is the list of attributes which has to be intantiaed as an empty list .\\ +\hline +{\em Attribute\+In\+Attribute} & This is \char`\"{}\+Attribute\+Type\char`\"{}, which represents \char`\"{}nested attributes\char`\"{} of an \char`\"{}attribute\char`\"{}\\ +\hline +{\em class\+Type} & This is the \char`\"{}\+Ground Class\char`\"{}\\ +\hline +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{}, which is the main attribute.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a11a5f85235f45a9dd490ed80f116583c}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a11a5f85235f45a9dd490ed80f116583c}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!StoreEachAttributeValueInListOfReferencedClassName@{StoreEachAttributeValueInListOfReferencedClassName}} +\index{StoreEachAttributeValueInListOfReferencedClassName@{StoreEachAttributeValueInListOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfReferencedClassName()}{StoreEachAttributeValueInListOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{Attribute\+Type}]{attribute\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This the method that stores Attribute values of \char`\"{}\+Referened Class name\char`\"{} of \char`\"{}\+Interface Class\char`\"{} in the dictionary. + + +\begin{DoxyParams}{Parameters} +{\em list} & This is list of attribute values .\\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interafce Class\char`\"{}, which is having \char`\"{}\+Referenced Class Name \char`\"{}\\ +\hline +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{}, where the values has to be stored.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a2c4569929beec8af516a2fe28da3bbdc}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a2c4569929beec8af516a2fe28da3bbdc}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!StoreEachAttributeValueInListOfReferencedClassName@{StoreEachAttributeValueInListOfReferencedClassName}} +\index{StoreEachAttributeValueInListOfReferencedClassName@{StoreEachAttributeValueInListOfReferencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfReferencedClassName()}{StoreEachAttributeValueInListOfReferencedClassName()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Name (\begin{DoxyParamCaption}\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{Attribute\+Type}]{attribute\+Type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This fuunction stores \char`\"{}\+Attributes\char`\"{} of \char`\"{}\+Referenced Class Name\char`\"{} in the dictionary \char`\"{}\+Dictionary\+For\+Role\+Class\+Instance\+Attributes\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em list} & This is the list of attributes, which has to be initiated and stores values\\ +\hline +{\em class\+Type} & This is the \char`\"{}\+Ground Class\char`\"{}\\ +\hline +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{}, Which can give access to every value in the \char`\"{}\+Attribute\char`\"{}\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a0048a13cd6298b8b942e52b04aedc624}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a0048a13cd6298b8b942e52b04aedc624}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface@{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface}} +\index{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface@{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface()}{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{Attribute\+In\+Attribute, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method stores \char`\"{}\+Attributes\char`\"{} of \char`\"{}\+Referenced Class\textquotesingle{}s External Interface\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em list} & This is list of \char`\"{}attribute values\char`\"{}, that a\char`\"{}ttribute values\char`\"{} of \char`\"{}\+External Interfacs\char`\"{} has to be stored in.\\ +\hline +{\em Attribute\+In\+Attribute} & This is \char`\"{}\+Attribute\+Type, for which \char`\"{}Nested Attributes\char`\"{} has to be stored.$<$/param$>$ +$<$param name=\char`\"{}class\+Type\char`\"{}$>$\+This is \char`\"{}Interface\+Family\+Type\char`\"{}, which is \char`\"{}Ground Class\char`\"{} used while naming a key in dictioonary.$<$/param$>$ +$<$param name=\char`\"{}attribute\+Type\char`\"{}$>$\+This \char`\"{}Attribute\+Type\char`\"{} is nested attribute of parent attribute. $<$/param$>$ +$<$param name=\char`\"{}external\+Interface"$>$\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a66963e3c258c2bcc8f51353861a2bae6}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a66963e3c258c2bcc8f51353861a2bae6}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface@{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface}} +\index{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface@{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface()}{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Attribute\+Type}]{Attribute\+In\+Attribute, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method stores the nested attributes in \char`\"{}\+Dictionary\+For\+External\+Interfaces\+Instances\+Attributes\+Of\+Role\+Class\+Lib\char`\"{} + + +\begin{DoxyParams}{Parameters} +{\em list} & This the list of attributes \\ +\hline +{\em Attribute\+In\+Attribute} & This is \char`\"{}\+Attribute\+Type\char`\"{} i.\+e. nested attribute \\ +\hline +{\em class\+Type} & This is the \char`\"{}\+Role\+Family\+Type\char`\"{} used to define the \char`\"{}keyname\char`\"{} of the dictionary \\ +\hline +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{} under which \char`\"{}\+Nested Attributes\char`\"{} are present\\ +\hline +{\em external\+Interface} & This is the \char`\"{}\+External\+Interface\+Type\char`\"{} used to define the \char`\"{}keyname\char`\"{} of the dictionary and also the attribute holder \char`\"{}\+External Interface\char`\"{}\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a8bf5d8868fda86a13eaa8efe5f8c6f7b}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a8bf5d8868fda86a13eaa8efe5f8c6f7b}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface@{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface}} +\index{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface@{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface()}{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Interface\+Family\+Type}]{class\+Type, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method store each \char`\"{}\+Attribute value\char`\"{} into respective dictionary + + +\begin{DoxyParams}{Parameters} +{\em list} & This is the list of attribute values \\ +\hline +{\em class\+Type} & This is \char`\"{}\+Interface\+Family\+Type\char`\"{}, which is \char`\"{}ground class\char`\"{} used while creating \char`\"{}key name\char`\"{} .\\ +\hline +{\em attribute\+Type} & This is \char`\"{}\+Attribute\+Type\char`\"{}, whose values are going to be stored.\\ +\hline +{\em external\+Interface} & This \char`\"{}\+External\+Interface\+Type\char`\"{}, to which these attributes belong to.\\ +\hline +\end{DoxyParams} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a4d5da760852f65985eae02da24f5df06}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a4d5da760852f65985eae02da24f5df06}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface@{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface}} +\index{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface@{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface()}{StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}} +{\footnotesize\ttfamily void Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Store\+Each\+Attribute\+Value\+In\+List\+Of\+Referenced\+Class\+Nameof\+External\+Iterface (\begin{DoxyParamCaption}\item[{List$<$ List$<$ \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} $>$$>$}]{list, }\item[{Role\+Family\+Type}]{class\+Type, }\item[{Attribute\+Type}]{attribute\+Type, }\item[{External\+Interface\+Type}]{external\+Interface }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} + + + +This method is responsible to store each attribute value of \char`\"{}\+Referenced Class Name\char`\"{} of \char`\"{}\+External Interface\char`\"{} of Role Class. + +This method stores each value in attribute into a dictionary (Dictionary\+For\+External\+Interfaces\+Instances\+Attributes\+Of\+Role\+Class\+Lib) + + +\begin{DoxyParams}{Parameters} +{\em list} & This is list of lists that can hold attribute values\\ +\hline +{\em class\+Type} & Role\+Family\+Type is the \char`\"{}ground Class\char`\"{} We are storing this \char`\"{}\+Attributes\char`\"{} for\\ +\hline +{\em attribute\+Type} & This is each attribute\\ +\hline +{\em external\+Interface} & This is \char`\"{}external interface\char`\"{} we are storing \char`\"{}\+Attributes\char`\"{} for\\ +\hline +\end{DoxyParams} + + +\doxysubsection{Property Documentation} +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ae2a9f746ba71aac0e1af3a3e6576b842}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ae2a9f746ba71aac0e1af3a3e6576b842}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!DictioanryOfIDofInterfaceClassLibraryNodes@{DictioanryOfIDofInterfaceClassLibraryNodes}} +\index{DictioanryOfIDofInterfaceClassLibraryNodes@{DictioanryOfIDofInterfaceClassLibraryNodes}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{DictioanryOfIDofInterfaceClassLibraryNodes}{DictioanryOfIDofInterfaceClassLibraryNodes}} +{\footnotesize\ttfamily Dictionary$<$string, string$>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Dictioanry\+Of\+I\+Dof\+Interface\+Class\+Library\+Nodes\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +These are the properties of this class i.\+e. + +dictionaries where all attribute values from A\+ML file are strored and\# further retrived in \char`\"{}\+Device Description Class\char`\"{} to edit values by user.\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ac19b278b2e5411e59f04885d24418de9}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ac19b278b2e5411e59f04885d24418de9}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib@{DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib}} +\index{DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib@{DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib}{DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Dictionary\+For\+External\+Interfaces\+Instance\+Attributesof\+Interface\+Class\+Lib\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a574ca9332b8d007675793598ad421fb8}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a574ca9332b8d007675793598ad421fb8}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib@{DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib}} +\index{DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib@{DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib}{DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Dictionary\+For\+External\+Interfaces\+Instances\+Attributes\+Of\+Role\+Class\+Lib\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a05463d55d6ccbd8379a158a72bb3f595}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a05463d55d6ccbd8379a158a72bb3f595}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!DictionaryForInterfaceClassInstancesAttributes@{DictionaryForInterfaceClassInstancesAttributes}} +\index{DictionaryForInterfaceClassInstancesAttributes@{DictionaryForInterfaceClassInstancesAttributes}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{DictionaryForInterfaceClassInstancesAttributes}{DictionaryForInterfaceClassInstancesAttributes}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Dictionary\+For\+Interface\+Class\+Instances\+Attributes\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_aefaaeac579bf73534e5101b4f4f52dcd}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_aefaaeac579bf73534e5101b4f4f52dcd}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!DictionaryForRoleClassInstanceAttributes@{DictionaryForRoleClassInstanceAttributes}} +\index{DictionaryForRoleClassInstanceAttributes@{DictionaryForRoleClassInstanceAttributes}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{DictionaryForRoleClassInstanceAttributes}{DictionaryForRoleClassInstanceAttributes}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ $>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+Dictionary\+For\+Role\+Class\+Instance\+Attributes\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ad15f0a5bc1513eb4379ff6d5ec7d8c32}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_ad15f0a5bc1513eb4379ff6d5ec7d8c32}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!dictionaryofRoleClassattributes@{dictionaryofRoleClassattributes}} +\index{dictionaryofRoleClassattributes@{dictionaryofRoleClassattributes}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{dictionaryofRoleClassattributes}{dictionaryofRoleClassattributes}} +{\footnotesize\ttfamily Dictionary$<$string, List$<$\mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}}$>$ $>$ Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+dictionaryof\+Role\+Classattributes\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + +\mbox{\Hypertarget{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}\label{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file_a614e280498e0017b87a23031a745b879}} +\index{Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}!referencedClassName@{referencedClassName}} +\index{referencedClassName@{referencedClassName}!Aml.Editor.Plugin.SearchAMLLibraryFile@{Aml.Editor.Plugin.SearchAMLLibraryFile}} +\doxysubsubsection{\texorpdfstring{referencedClassName}{referencedClassName}} +{\footnotesize\ttfamily string Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File.\+referenced\+Class\+Name\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}} + + + +The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_search_a_m_l_library_file_8cs}{Search\+A\+M\+L\+Library\+File.\+cs}}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/doxygen.sty b/SOURCE/Plugin/Code Documentation/latex/doxygen.sty new file mode 100644 index 0000000..78a5254 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/doxygen.sty @@ -0,0 +1,576 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{doxygen} + +% Packages used by this style file +\RequirePackage{alltt} +%%\RequirePackage{array} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package +\RequirePackage{calc} +\RequirePackage{float} +%%\RequirePackage{ifthen} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package +\RequirePackage{verbatim} +\RequirePackage[table]{xcolor} +\RequirePackage{longtable_doxygen} +\RequirePackage{tabu_doxygen} +\RequirePackage{fancyvrb} +\RequirePackage{tabularx} +\RequirePackage{multirow} +\RequirePackage{hanging} +\RequirePackage{ifpdf} +\RequirePackage{adjustbox} +\RequirePackage{amssymb} +\RequirePackage{stackengine} +\RequirePackage[normalem]{ulem} % for strikeout, but don't modify emphasis + +%---------- Internal commands used in this style file ---------------- + +\newcommand{\ensurespace}[1]{% + \begingroup% + \setlength{\dimen@}{#1}% + \vskip\z@\@plus\dimen@% + \penalty -100\vskip\z@\@plus -\dimen@% + \vskip\dimen@% + \penalty 9999% + \vskip -\dimen@% + \vskip\z@skip% hide the previous |\vskip| from |\addvspace| + \endgroup% +} + +\newcommand{\DoxyHorRuler}[1]{% + \setlength{\parskip}{0ex plus 0ex minus 0ex}% + \ifthenelse{#1=0}% + {% + \hrule% + }% + {% + \hrulefilll% + }% +} +\newcommand{\DoxyLabelFont}{} +\newcommand{\entrylabel}[1]{% + {% + \parbox[b]{\labelwidth-4pt}{% + \makebox[0pt][l]{\DoxyLabelFont#1}% + \vspace{1.5\baselineskip}% + }% + }% +} + +\newenvironment{DoxyDesc}[1]{% + \ensurespace{4\baselineskip}% + \begin{list}{}{% + \settowidth{\labelwidth}{20pt}% + %\setlength{\parsep}{0pt}% + \setlength{\itemsep}{0pt}% + \setlength{\leftmargin}{\labelwidth+\labelsep}% + \renewcommand{\makelabel}{\entrylabel}% + }% + \item[#1]% +}{% + \end{list}% +} + +\newsavebox{\xrefbox} +\newlength{\xreflength} +\newcommand{\xreflabel}[1]{% + \sbox{\xrefbox}{#1}% + \setlength{\xreflength}{\wd\xrefbox}% + \ifthenelse{\xreflength>\labelwidth}{% + \begin{minipage}{\textwidth}% + \setlength{\parindent}{0pt}% + \hangindent=15pt\bfseries #1\vspace{1.2\itemsep}% + \end{minipage}% + }{% + \parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}% + }% +} + +%---------- Commands used by doxygen LaTeX output generator ---------- + +% Used by
     ... 
    +\newenvironment{DoxyPre}{% + \small% + \begin{alltt}% +}{% + \end{alltt}% + \normalsize% +} +% Necessary for redefining not defined characters, i.e. "Replacement Character" in tex output. +\newlength{\CodeWidthChar} +\newlength{\CodeHeightChar} +\settowidth{\CodeWidthChar}{?} +\settoheight{\CodeHeightChar}{?} +% Necessary for hanging indent +\newlength{\DoxyCodeWidth} + +\newcommand\DoxyCodeLine[1]{\hangpara{\DoxyCodeWidth}{1}{#1}\par} + +\newcommand\NiceSpace{% + \discretionary{}{\kern\fontdimen2\font}{\kern\fontdimen2\font}% +} + +% Used by @code ... @endcode +\newenvironment{DoxyCode}[1]{% + \par% + \scriptsize% + \normalfont\ttfamily% + \rightskip0pt plus 1fil% + \settowidth{\DoxyCodeWidth}{000000}% + \settowidth{\CodeWidthChar}{?}% + \settoheight{\CodeHeightChar}{?}% + \setlength{\parskip}{0ex plus 0ex minus 0ex}% + \ifthenelse{\equal{#1}{0}} + { + {\lccode`~32 \lowercase{\global\let~}\NiceSpace}\obeyspaces% + } + { + {\lccode`~32 \lowercase{\global\let~}}\obeyspaces% + } + +}{% + \normalfont% + \normalsize% + \settowidth{\CodeWidthChar}{?}% + \settoheight{\CodeHeightChar}{?}% +} + +% Redefining not defined characters, i.e. "Replacement Character" in tex output. +\def\ucr{\adjustbox{width=\CodeWidthChar,height=\CodeHeightChar}{\stackinset{c}{}{c}{-.2pt}{% + \textcolor{white}{\sffamily\bfseries\small ?}}{% + \rotatebox{45}{$\blacksquare$}}}} + +% Used by @example, @include, @includelineno and @dontinclude +\newenvironment{DoxyCodeInclude}[1]{% + \DoxyCode{#1}% +}{% + \endDoxyCode% +} + +% Used by @verbatim ... @endverbatim +\newenvironment{DoxyVerb}{% + \footnotesize% + \verbatim% +}{% + \endverbatim% + \normalsize% +} + +% Used by @verbinclude +\newenvironment{DoxyVerbInclude}{% + \DoxyVerb% +}{% + \endDoxyVerb% +} + +% Used by numbered lists (using '-#' or
      ...
    ) +\newenvironment{DoxyEnumerate}{% + \enumerate% +}{% + \endenumerate% +} + +% Used by bullet lists (using '-', @li, @arg, or
      ...
    ) +\newenvironment{DoxyItemize}{% + \itemize% +}{% + \enditemize% +} + +% Used by description lists (using
    ...
    ) +\newenvironment{DoxyDescription}{% + \description% +}{% + \enddescription% +} + +% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc +% (only if caption is specified) +\newenvironment{DoxyImage}{% + \begin{figure}[H]% + \begin{center}% +}{% + \end{center}% + \end{figure}% +} + +% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc +% (only if no caption is specified) +\newenvironment{DoxyImageNoCaption}{% + \begin{center}% +}{% + \end{center}% +} + +% Used by @image +% (only if inline is specified) +\newenvironment{DoxyInlineImage}{% +}{% +} + +% Used by @attention +\newenvironment{DoxyAttention}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @author and @authors +\newenvironment{DoxyAuthor}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @date +\newenvironment{DoxyDate}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @invariant +\newenvironment{DoxyInvariant}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @note +\newenvironment{DoxyNote}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @post +\newenvironment{DoxyPostcond}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @pre +\newenvironment{DoxyPrecond}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @copyright +\newenvironment{DoxyCopyright}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @remark +\newenvironment{DoxyRemark}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @return and @returns +\newenvironment{DoxyReturn}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @since +\newenvironment{DoxySince}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @see +\newenvironment{DoxySeeAlso}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @version +\newenvironment{DoxyVersion}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @warning +\newenvironment{DoxyWarning}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by @internal +\newenvironment{DoxyInternal}[1]{% + \paragraph*{#1}% +}{% +} + +% Used by @par and @paragraph +\newenvironment{DoxyParagraph}[1]{% + \begin{DoxyDesc}{#1}% +}{% + \end{DoxyDesc}% +} + +% Used by parameter lists +\newenvironment{DoxyParams}[2][]{% + \tabulinesep=1mm% + \par% + \ifthenelse{\equal{#1}{}}% + {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|}}% name + description + {\ifthenelse{\equal{#1}{1}}% + {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + name + desc + {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + type + name + desc + } + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used for fields of simple structs +\newenvironment{DoxyFields}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|X[-1,l]|}% + \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used for fields simple class style enums +\newenvironment{DoxyEnumFields}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used for parameters within a detailed function description +\newenvironment{DoxyParamCaption}{% + \renewcommand{\item}[2][]{\\ \hspace*{2.0cm} ##1 {\em ##2}}% +}{% +} + +% Used by return value lists +\newenvironment{DoxyRetVals}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used by exception lists +\newenvironment{DoxyExceptions}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used by template parameter lists +\newenvironment{DoxyTemplParams}[1]{% + \tabulinesep=1mm% + \par% + \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endfirsthead% + \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]% + \hline% + \endhead% +}{% + \end{longtabu*}% + \vspace{6pt}% +} + +% Used for member lists +\newenvironment{DoxyCompactItemize}{% + \begin{itemize}% + \setlength{\itemsep}{-3pt}% + \setlength{\parsep}{0pt}% + \setlength{\topsep}{0pt}% + \setlength{\partopsep}{0pt}% +}{% + \end{itemize}% +} + +% Used for member descriptions +\newenvironment{DoxyCompactList}{% + \begin{list}{}{% + \setlength{\leftmargin}{0.5cm}% + \setlength{\itemsep}{0pt}% + \setlength{\parsep}{0pt}% + \setlength{\topsep}{0pt}% + \renewcommand{\makelabel}{\hfill}% + }% +}{% + \end{list}% +} + +% Used for reference lists (@bug, @deprecated, @todo, etc.) +\newenvironment{DoxyRefList}{% + \begin{list}{}{% + \setlength{\labelwidth}{10pt}% + \setlength{\leftmargin}{\labelwidth}% + \addtolength{\leftmargin}{\labelsep}% + \renewcommand{\makelabel}{\xreflabel}% + }% +}{% + \end{list}% +} + +% Used by @bug, @deprecated, @todo, etc. +\newenvironment{DoxyRefDesc}[1]{% + \begin{list}{}{% + \renewcommand\makelabel[1]{\textbf{##1}}% + \settowidth\labelwidth{\makelabel{#1}}% + \setlength\leftmargin{\labelwidth+\labelsep}% + }% +}{% + \end{list}% +} + +% Used by parameter lists and simple sections +\newenvironment{Desc} +{\begin{list}{}{% + \settowidth{\labelwidth}{20pt}% + \setlength{\parsep}{0pt}% + \setlength{\itemsep}{0pt}% + \setlength{\leftmargin}{\labelwidth+\labelsep}% + \renewcommand{\makelabel}{\entrylabel}% + } +}{% + \end{list}% +} + +% Used by tables +\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}% +\newenvironment{TabularC}[1]% +{\tabulinesep=1mm +\begin{longtabu*}spread 0pt [c]{*#1{|X[-1]}|}}% +{\end{longtabu*}\par}% + +\newenvironment{TabularNC}[1]% +{\begin{tabu}spread 0pt [l]{*#1{|X[-1]}|}}% +{\end{tabu}\par}% + +% Used for member group headers +\newenvironment{Indent}{% + \begin{list}{}{% + \setlength{\leftmargin}{0.5cm}% + }% + \item[]\ignorespaces% +}{% + \unskip% + \end{list}% +} + +% Used when hyperlinks are turned off +\newcommand{\doxyref}[3]{% + \textbf{#1} (\textnormal{#2}\,\pageref{#3})% +} + +% Used to link to a table when hyperlinks are turned on +\newcommand{\doxytablelink}[2]{% + \ref{#1}% +} + +% Used to link to a table when hyperlinks are turned off +\newcommand{\doxytableref}[3]{% + \ref{#3}% +} + +% Used by @addindex +\newcommand{\lcurly}{\{} +\newcommand{\rcurly}{\}} + +% Colors used for syntax highlighting +\definecolor{comment}{rgb}{0.5,0.0,0.0} +\definecolor{keyword}{rgb}{0.0,0.5,0.0} +\definecolor{keywordtype}{rgb}{0.38,0.25,0.125} +\definecolor{keywordflow}{rgb}{0.88,0.5,0.0} +\definecolor{preprocessor}{rgb}{0.5,0.38,0.125} +\definecolor{stringliteral}{rgb}{0.0,0.125,0.25} +\definecolor{charliteral}{rgb}{0.0,0.5,0.5} +\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0} +\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43} +\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0} +\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0} + +% Color used for table heading +\newcommand{\tableheadbgcolor}{lightgray}% + +% Version of hypertarget with correct landing location +\newcommand{\Hypertarget}[1]{\Hy@raisedlink{\hypertarget{#1}{}}} + +% possibility to have sections etc. be within the margins +% unfortunately had to copy part of book.cls and add \raggedright +\makeatletter +\newcommand\doxysection{\@startsection {section}{1}{\z@}% + {-3.5ex \@plus -1ex \@minus -.2ex}% + {2.3ex \@plus.2ex}% + {\raggedright\normalfont\Large\bfseries}} +\newcommand\doxysubsection{\@startsection{subsection}{2}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedright\normalfont\large\bfseries}} +\newcommand\doxysubsubsection{\@startsection{subsubsection}{3}{\z@}% + {-3.25ex\@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedright\normalfont\normalsize\bfseries}} +\newcommand\doxyparagraph{\@startsection{paragraph}{4}{\z@}% + {3.25ex \@plus1ex \@minus.2ex}% + {-1em}% + {\raggedright\normalfont\normalsize\bfseries}} +\newcommand\doxysubparagraph{\@startsection{subparagraph}{5}{\parindent}% + {3.25ex \@plus1ex \@minus .2ex}% + {-1em}% + {\raggedright\normalfont\normalsize\bfseries}} +\makeatother +% Define caption that is also suitable in a table +\makeatletter +\def\doxyfigcaption{% +\refstepcounter{figure}% +\@dblarg{\@caption{figure}}} +\makeatother diff --git a/SOURCE/Plugin/Code Documentation/latex/files.tex b/SOURCE/Plugin/Code Documentation/latex/files.tex new file mode 100644 index 0000000..0ad4227 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/files.tex @@ -0,0 +1,16 @@ +\doxysection{File List} +Here is a list of all files with brief descriptions\+:\begin{DoxyCompactList} +\item\contentsline{section}{\mbox{\hyperlink{_about_8xaml_8cs}{About.\+xaml.\+cs}} }{\pageref{_about_8xaml_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_animation_class_8cs}{Animation\+Class.\+cs}} }{\pageref{_animation_class_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_automation_m_l_data_tables_8cs}{Automation\+M\+L\+Data\+Tables.\+cs}} }{\pageref{_automation_m_l_data_tables_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_class_of_lists_from_data_grid_views_8cs}{Class\+Of\+Lists\+From\+Data\+Grid\+Views.\+cs}} }{\pageref{_class_of_lists_from_data_grid_views_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_class_of_lists_from_referencefile_8cs}{Class\+Of\+Lists\+From\+Referencefile.\+cs}} }{\pageref{_class_of_lists_from_referencefile_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_device_description_8cs}{Device\+Description.\+cs}} }{\pageref{_device_description_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_device_description_8_designer_8cs}{Device\+Description.\+Designer.\+cs}} }{\pageref{_device_description_8_designer_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_modelling_wizard_8xaml_8cs}{Modelling\+Wizard.\+xaml.\+cs}} }{\pageref{_modelling_wizard_8xaml_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_m_w_controller_8cs}{M\+W\+Controller.\+cs}} }{\pageref{_m_w_controller_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_m_w_data_8cs}{M\+W\+Data.\+cs}} }{\pageref{_m_w_data_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_m_w_device_8cs}{M\+W\+Device.\+cs}} }{\pageref{_m_w_device_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_search_a_m_l_component_file_8cs}{Search\+A\+M\+L\+Component\+File.\+cs}} }{\pageref{_search_a_m_l_component_file_8cs}}{} +\item\contentsline{section}{\mbox{\hyperlink{_search_a_m_l_library_file_8cs}{Search\+A\+M\+L\+Library\+File.\+cs}} }{\pageref{_search_a_m_l_library_file_8cs}}{} +\end{DoxyCompactList} diff --git a/SOURCE/Plugin/Code Documentation/latex/hierarchy.tex b/SOURCE/Plugin/Code Documentation/latex/hierarchy.tex new file mode 100644 index 0000000..f65795f --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/hierarchy.tex @@ -0,0 +1,33 @@ +\doxysection{Class Hierarchy} +This inheritance list is sorted roughly, but not completely, alphabetically\+:\begin{DoxyCompactList} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Animation\+Class}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_animation_class}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Attachables\+Data\+Grid\+View\+Parameters}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Automation\+M\+L\+Data\+Tables}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Data\+Grid\+Views}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Class\+Of\+Lists\+From\+Referencefile}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Data\+Grid\+Parameters}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Electrical\+Interface\+Parameters}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Electrical\+Parameters}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view}}{} +\item I\+A\+M\+L\+Editor\+View\begin{DoxyCompactList} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Modelling\+Wizard}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}}{} +\end{DoxyCompactList} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+M\+W\+Controller}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+M\+W\+Data.\+M\+W\+Object}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+M\+W\+Device}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device}}{} +\end{DoxyCompactList} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Component\+File}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file}}{} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Search\+A\+M\+L\+Library\+File}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file}}{} +\item User\+Control\begin{DoxyCompactList} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Device\+Description}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_device_description}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+M\+W\+Data}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}}{} +\end{DoxyCompactList} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+Modelling\+Wizard}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}}{} +\end{DoxyCompactList} +\item Window\begin{DoxyCompactList} +\item \contentsline{section}{Aml.\+Editor.\+Plugin.\+About}{\pageref{class_aml_1_1_editor_1_1_plugin_1_1_about}}{} +\end{DoxyCompactList} +\end{DoxyCompactList} diff --git a/SOURCE/Plugin/Code Documentation/latex/longtable_doxygen.sty b/SOURCE/Plugin/Code Documentation/latex/longtable_doxygen.sty new file mode 100644 index 0000000..a0eb314 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/longtable_doxygen.sty @@ -0,0 +1,448 @@ +%% +%% This is file `longtable.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% longtable.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% The source is maintained by the LaTeX Project team and bug +%% reports for it can be opened at http://latex-project.org/bugs.html +%% (but please observe conditions on bug reports sent to that address!) +%% +%% Copyright 1993-2016 +%% The LaTeX3 Project and any individual authors listed elsewhere +%% in this file. +%% +%% This file was generated from file(s) of the Standard LaTeX `Tools Bundle'. +%% -------------------------------------------------------------------------- +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This file may only be distributed together with a copy of the LaTeX +%% `Tools Bundle'. You may however distribute the LaTeX `Tools Bundle' +%% without such generated files. +%% +%% The list of all files belonging to the LaTeX `Tools Bundle' is +%% given in the file `manifest.txt'. +%% +%% File: longtable.dtx Copyright (C) 1990-2001 David Carlisle +\NeedsTeXFormat{LaTeX2e}[1995/06/01] +\ProvidesPackage{longtable_doxygen} + [2014/10/28 v4.11 Multi-page Table package (DPC) - frozen version for doxygen] +\def\LT@err{\PackageError{longtable}} +\def\LT@warn{\PackageWarning{longtable}} +\def\LT@final@warn{% + \AtEndDocument{% + \LT@warn{Table \@width s have changed. Rerun LaTeX.\@gobbletwo}}% + \global\let\LT@final@warn\relax} +\DeclareOption{errorshow}{% + \def\LT@warn{\PackageInfo{longtable}}} +\DeclareOption{pausing}{% + \def\LT@warn#1{% + \LT@err{#1}{This is not really an error}}} +\DeclareOption{set}{} +\DeclareOption{final}{} +\ProcessOptions +\newskip\LTleft \LTleft=\fill +\newskip\LTright \LTright=\fill +\newskip\LTpre \LTpre=\bigskipamount +\newskip\LTpost \LTpost=\bigskipamount +\newcount\LTchunksize \LTchunksize=20 +\let\c@LTchunksize\LTchunksize +\newdimen\LTcapwidth \LTcapwidth=4in +\newbox\LT@head +\newbox\LT@firsthead +\newbox\LT@foot +\newbox\LT@lastfoot +\newcount\LT@cols +\newcount\LT@rows +\newcounter{LT@tables} +\newcounter{LT@chunks}[LT@tables] +\ifx\c@table\undefined + \newcounter{table} + \def\fnum@table{\tablename~\thetable} +\fi +\ifx\tablename\undefined + \def\tablename{Table} +\fi +\newtoks\LT@p@ftn +\mathchardef\LT@end@pen=30000 +\def\longtable{% + \par + \ifx\multicols\@undefined + \else + \ifnum\col@number>\@ne + \@twocolumntrue + \fi + \fi + \if@twocolumn + \LT@err{longtable not in 1-column mode}\@ehc + \fi + \begingroup + \@ifnextchar[\LT@array{\LT@array[x]}} +\def\LT@array[#1]#2{% + \refstepcounter{table}\stepcounter{LT@tables}% + \if l#1% + \LTleft\z@ \LTright\fill + \else\if r#1% + \LTleft\fill \LTright\z@ + \else\if c#1% + \LTleft\fill \LTright\fill + \fi\fi\fi + \let\LT@mcol\multicolumn + \let\LT@@tabarray\@tabarray + \let\LT@@hl\hline + \def\@tabarray{% + \let\hline\LT@@hl + \LT@@tabarray}% + \let\\\LT@tabularcr\let\tabularnewline\\% + \def\newpage{\noalign{\break}}% + \def\pagebreak{\noalign{\ifnum`}=0\fi\@testopt{\LT@no@pgbk-}4}% + \def\nopagebreak{\noalign{\ifnum`}=0\fi\@testopt\LT@no@pgbk4}% + \let\hline\LT@hline \let\kill\LT@kill\let\caption\LT@caption + \@tempdima\ht\strutbox + \let\@endpbox\LT@endpbox + \ifx\extrarowheight\@undefined + \let\@acol\@tabacol + \let\@classz\@tabclassz \let\@classiv\@tabclassiv + \def\@startpbox{\vtop\LT@startpbox}% + \let\@@startpbox\@startpbox + \let\@@endpbox\@endpbox + \let\LT@LL@FM@cr\@tabularcr + \else + \advance\@tempdima\extrarowheight + \col@sep\tabcolsep + \let\@startpbox\LT@startpbox\let\LT@LL@FM@cr\@arraycr + \fi + \setbox\@arstrutbox\hbox{\vrule + \@height \arraystretch \@tempdima + \@depth \arraystretch \dp \strutbox + \@width \z@}% + \let\@sharp##\let\protect\relax + \begingroup + \@mkpream{#2}% + \xdef\LT@bchunk{% + \global\advance\c@LT@chunks\@ne + \global\LT@rows\z@\setbox\z@\vbox\bgroup + \LT@setprevdepth + \tabskip\LTleft \noexpand\halign to\hsize\bgroup + \tabskip\z@ \@arstrut \@preamble \tabskip\LTright \cr}% + \endgroup + \expandafter\LT@nofcols\LT@bchunk&\LT@nofcols + \LT@make@row + \m@th\let\par\@empty + \everycr{}\lineskip\z@\baselineskip\z@ + \LT@bchunk} +\def\LT@no@pgbk#1[#2]{\penalty #1\@getpen{#2}\ifnum`{=0\fi}} +\def\LT@start{% + \let\LT@start\endgraf + \endgraf\penalty\z@\vskip\LTpre + \dimen@\pagetotal + \advance\dimen@ \ht\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi + \advance\dimen@ \dp\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi + \advance\dimen@ \ht\LT@foot + \dimen@ii\vfuzz + \vfuzz\maxdimen + \setbox\tw@\copy\z@ + \setbox\tw@\vsplit\tw@ to \ht\@arstrutbox + \setbox\tw@\vbox{\unvbox\tw@}% + \vfuzz\dimen@ii + \advance\dimen@ \ht + \ifdim\ht\@arstrutbox>\ht\tw@\@arstrutbox\else\tw@\fi + \advance\dimen@\dp + \ifdim\dp\@arstrutbox>\dp\tw@\@arstrutbox\else\tw@\fi + \advance\dimen@ -\pagegoal + \ifdim \dimen@>\z@\vfil\break\fi + \global\@colroom\@colht + \ifvoid\LT@foot\else + \advance\vsize-\ht\LT@foot + \global\advance\@colroom-\ht\LT@foot + \dimen@\pagegoal\advance\dimen@-\ht\LT@foot\pagegoal\dimen@ + \maxdepth\z@ + \fi + \ifvoid\LT@firsthead\copy\LT@head\else\box\LT@firsthead\fi\nobreak + \output{\LT@output}} +\def\endlongtable{% + \crcr + \noalign{% + \let\LT@entry\LT@entry@chop + \xdef\LT@save@row{\LT@save@row}}% + \LT@echunk + \LT@start + \unvbox\z@ + \LT@get@widths + \if@filesw + {\let\LT@entry\LT@entry@write\immediate\write\@auxout{% + \gdef\expandafter\noexpand + \csname LT@\romannumeral\c@LT@tables\endcsname + {\LT@save@row}}}% + \fi + \ifx\LT@save@row\LT@@save@row + \else + \LT@warn{Column \@width s have changed\MessageBreak + in table \thetable}% + \LT@final@warn + \fi + \endgraf\penalty -\LT@end@pen + \endgroup + \global\@mparbottom\z@ + \pagegoal\vsize + \endgraf\penalty\z@\addvspace\LTpost + \ifvoid\footins\else\insert\footins{}\fi} +\def\LT@nofcols#1&{% + \futurelet\@let@token\LT@n@fcols} +\def\LT@n@fcols{% + \advance\LT@cols\@ne + \ifx\@let@token\LT@nofcols + \expandafter\@gobble + \else + \expandafter\LT@nofcols + \fi} +\def\LT@tabularcr{% + \relax\iffalse{\fi\ifnum0=`}\fi + \@ifstar + {\def\crcr{\LT@crcr\noalign{\nobreak}}\let\cr\crcr + \LT@t@bularcr}% + {\LT@t@bularcr}} +\let\LT@crcr\crcr +\let\LT@setprevdepth\relax +\def\LT@t@bularcr{% + \global\advance\LT@rows\@ne + \ifnum\LT@rows=\LTchunksize + \gdef\LT@setprevdepth{% + \prevdepth\z@\global + \global\let\LT@setprevdepth\relax}% + \expandafter\LT@xtabularcr + \else + \ifnum0=`{}\fi + \expandafter\LT@LL@FM@cr + \fi} +\def\LT@xtabularcr{% + \@ifnextchar[\LT@argtabularcr\LT@ntabularcr} +\def\LT@ntabularcr{% + \ifnum0=`{}\fi + \LT@echunk + \LT@start + \unvbox\z@ + \LT@get@widths + \LT@bchunk} +\def\LT@argtabularcr[#1]{% + \ifnum0=`{}\fi + \ifdim #1>\z@ + \unskip\@xargarraycr{#1}% + \else + \@yargarraycr{#1}% + \fi + \LT@echunk + \LT@start + \unvbox\z@ + \LT@get@widths + \LT@bchunk} +\def\LT@echunk{% + \crcr\LT@save@row\cr\egroup + \global\setbox\@ne\lastbox + \unskip + \egroup} +\def\LT@entry#1#2{% + \ifhmode\@firstofone{&}\fi\omit + \ifnum#1=\c@LT@chunks + \else + \kern#2\relax + \fi} +\def\LT@entry@chop#1#2{% + \noexpand\LT@entry + {\ifnum#1>\c@LT@chunks + 1}{0pt% + \else + #1}{#2% + \fi}} +\def\LT@entry@write{% + \noexpand\LT@entry^^J% + \@spaces} +\def\LT@kill{% + \LT@echunk + \LT@get@widths + \expandafter\LT@rebox\LT@bchunk} +\def\LT@rebox#1\bgroup{% + #1\bgroup + \unvbox\z@ + \unskip + \setbox\z@\lastbox} +\def\LT@blank@row{% + \xdef\LT@save@row{\expandafter\LT@build@blank + \romannumeral\number\LT@cols 001 }} +\def\LT@build@blank#1{% + \if#1m% + \noexpand\LT@entry{1}{0pt}% + \expandafter\LT@build@blank + \fi} +\def\LT@make@row{% + \global\expandafter\let\expandafter\LT@save@row + \csname LT@\romannumeral\c@LT@tables\endcsname + \ifx\LT@save@row\relax + \LT@blank@row + \else + {\let\LT@entry\or + \if!% + \ifcase\expandafter\expandafter\expandafter\LT@cols + \expandafter\@gobble\LT@save@row + \or + \else + \relax + \fi + !% + \else + \aftergroup\LT@blank@row + \fi}% + \fi} +\let\setlongtables\relax +\def\LT@get@widths{% + \setbox\tw@\hbox{% + \unhbox\@ne + \let\LT@old@row\LT@save@row + \global\let\LT@save@row\@empty + \count@\LT@cols + \loop + \unskip + \setbox\tw@\lastbox + \ifhbox\tw@ + \LT@def@row + \advance\count@\m@ne + \repeat}% + \ifx\LT@@save@row\@undefined + \let\LT@@save@row\LT@save@row + \fi} +\def\LT@def@row{% + \let\LT@entry\or + \edef\@tempa{% + \ifcase\expandafter\count@\LT@old@row + \else + {1}{0pt}% + \fi}% + \let\LT@entry\relax + \xdef\LT@save@row{% + \LT@entry + \expandafter\LT@max@sel\@tempa + \LT@save@row}} +\def\LT@max@sel#1#2{% + {\ifdim#2=\wd\tw@ + #1% + \else + \number\c@LT@chunks + \fi}% + {\the\wd\tw@}} +\def\LT@hline{% + \noalign{\ifnum0=`}\fi + \penalty\@M + \futurelet\@let@token\LT@@hline} +\def\LT@@hline{% + \ifx\@let@token\hline + \global\let\@gtempa\@gobble + \gdef\LT@sep{\penalty-\@medpenalty\vskip\doublerulesep}% + \else + \global\let\@gtempa\@empty + \gdef\LT@sep{\penalty-\@lowpenalty\vskip-\arrayrulewidth}% + \fi + \ifnum0=`{\fi}% + \multispan\LT@cols + \unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr + \noalign{\LT@sep}% + \multispan\LT@cols + \unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr + \noalign{\penalty\@M}% + \@gtempa} +\def\LT@caption{% + \noalign\bgroup + \@ifnextchar[{\egroup\LT@c@ption\@firstofone}\LT@capti@n} +\def\LT@c@ption#1[#2]#3{% + \LT@makecaption#1\fnum@table{#3}% + \def\@tempa{#2}% + \ifx\@tempa\@empty\else + {\let\\\space + \addcontentsline{lot}{table}{\protect\numberline{\thetable}{#2}}}% + \fi} +\def\LT@capti@n{% + \@ifstar + {\egroup\LT@c@ption\@gobble[]}% + {\egroup\@xdblarg{\LT@c@ption\@firstofone}}} +\def\LT@makecaption#1#2#3{% + \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{% + \sbox\@tempboxa{#1{#2: }#3}% + \ifdim\wd\@tempboxa>\hsize + #1{#2: }#3% + \else + \hbox to\hsize{\hfil\box\@tempboxa\hfil}% + \fi + \endgraf\vskip\baselineskip}% + \hss}}} +\def\LT@output{% + \ifnum\outputpenalty <-\@Mi + \ifnum\outputpenalty > -\LT@end@pen + \LT@err{floats and marginpars not allowed in a longtable}\@ehc + \else + \setbox\z@\vbox{\unvbox\@cclv}% + \ifdim \ht\LT@lastfoot>\ht\LT@foot + \dimen@\pagegoal + \advance\dimen@-\ht\LT@lastfoot + \ifdim\dimen@<\ht\z@ + \setbox\@cclv\vbox{\unvbox\z@\copy\LT@foot\vss}% + \@makecol + \@outputpage + \setbox\z@\vbox{\box\LT@head}% + \fi + \fi + \global\@colroom\@colht + \global\vsize\@colht + \vbox + {\unvbox\z@\box\ifvoid\LT@lastfoot\LT@foot\else\LT@lastfoot\fi}% + \fi + \else + \setbox\@cclv\vbox{\unvbox\@cclv\copy\LT@foot\vss}% + \@makecol + \@outputpage + \global\vsize\@colroom + \copy\LT@head\nobreak + \fi} +\def\LT@end@hd@ft#1{% + \LT@echunk + \ifx\LT@start\endgraf + \LT@err + {Longtable head or foot not at start of table}% + {Increase LTchunksize}% + \fi + \setbox#1\box\z@ + \LT@get@widths + \LT@bchunk} +\def\endfirsthead{\LT@end@hd@ft\LT@firsthead} +\def\endhead{\LT@end@hd@ft\LT@head} +\def\endfoot{\LT@end@hd@ft\LT@foot} +\def\endlastfoot{\LT@end@hd@ft\LT@lastfoot} +\def\LT@startpbox#1{% + \bgroup + \let\@footnotetext\LT@p@ftntext + \setlength\hsize{#1}% + \@arrayparboxrestore + \vrule \@height \ht\@arstrutbox \@width \z@} +\def\LT@endpbox{% + \@finalstrut\@arstrutbox + \egroup + \the\LT@p@ftn + \global\LT@p@ftn{}% + \hfil} +\def\LT@p@ftntext#1{% + \edef\@tempa{\the\LT@p@ftn\noexpand\footnotetext[\the\c@footnote]}% + \global\LT@p@ftn\expandafter{\@tempa{#1}}}% + +\@namedef{ver@longtable.sty}{2014/10/28 v4.11 Multi-page Table package (DPC) - frozen version for doxygen} +\endinput +%% +%% End of file `longtable.sty'. diff --git a/SOURCE/Plugin/Code Documentation/latex/make.bat b/SOURCE/Plugin/Code Documentation/latex/make.bat new file mode 100644 index 0000000..55e79ba --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/make.bat @@ -0,0 +1,31 @@ +set Dir_Old=%cd% +cd /D %~dp0 + +del /s /f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf + +set LATEX_CMD=pdflatex +%LATEX_CMD% refman +echo ---- +makeindex refman.idx +echo ---- +%LATEX_CMD% refman + +setlocal enabledelayedexpansion +set count=8 +:repeat +set content=X +for /F "tokens=*" %%T in ( 'findstr /C:"Rerun LaTeX" refman.log' ) do set content="%%~T" +if !content! == X for /F "tokens=*" %%T in ( 'findstr /C:"Rerun to get cross-references right" refman.log' ) do set content="%%~T" +if !content! == X goto :skip +set /a count-=1 +if !count! EQU 0 goto :skip + +echo ---- +%LATEX_CMD% refman +goto :repeat +:skip +endlocal +makeindex refman.idx +%LATEX_CMD% refman +cd /D %Dir_Old% +set Dir_Old= diff --git a/SOURCE/Plugin/Code Documentation/latex/md__r_e_a_d_m_e.tex b/SOURCE/Plugin/Code Documentation/latex/md__r_e_a_d_m_e.tex new file mode 100644 index 0000000..15889e5 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/md__r_e_a_d_m_e.tex @@ -0,0 +1,47 @@ +This is a Plugin for the Automation\+ML Editor. It is able to create new A\+ML Devices and Interfaces and save them as A\+M\+LX Package. It can also import I\+O\+DD and G\+S\+D\+ML Files using Converters + +This project was developed as a student project at the \href{https://dhbw-stuttgart.de}{\texttt{ Cooperative State University (D\+H\+BW)}} in Stuttgart under supervision of \href{http://wwwlehre.dhbw-stuttgart.de/~rentschler/}{\texttt{ Markus Rentschler}} by the following student team in 2018/2019\+: +\begin{DoxyItemize} +\item Burkowitz, Steffen +\item Löffler, Tobias +\item Mayer, Simon +\item Joukhadar, Abdulkarim +\item Wandel, Simon +\end{DoxyItemize} + +This project was further developed as a Mater Thesis work at \mbox{[}Innovative Software Services GmbH Stuttgart\mbox{]} by student from \mbox{[}Otto-\/\+Von-\/\+Guericke University Magdeburg\mbox{]} under supervision of Markus Rentschler. +\begin{DoxyItemize} +\item Raj Kumar Pulaparthi +\end{DoxyItemize}\hypertarget{md__r_e_a_d_m_e_autotoc_md1}{}\doxysection{Missing Labels and Text}\label{md__r_e_a_d_m_e_autotoc_md1} +Due to a bug in the window manager of the A\+M\+L\+Editor if you are using the theme \char`\"{}\+Metro Light\char`\"{} the text and icon will not be visible on startup. To fix this, simply select another theme using \char`\"{}\+View\char`\"{} $>$ \char`\"{}\+Change Theme\char`\"{}. (See also this \href{https://github.com/TINF17C/ModellingWizard/issues/9}{\texttt{ issue}})\hypertarget{md__r_e_a_d_m_e_autotoc_md2}{}\doxysection{A\+M\+L Devices Format}\label{md__r_e_a_d_m_e_autotoc_md2} +The Plugin creates Devices with the following Device\+Identification Internal\+Element\+: +\begin{DoxyCode}{0} +\DoxyCodeLine{<\textcolor{keywordtype}{InternalElement} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"DeviceIdentification"} \textcolor{keyword}{ID}=\textcolor{stringliteral}{"\%DEVICEID\%"}>} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"CommunicationTechnology"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"} />} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"VendorName"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"}>} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"DeviceName"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"}/>} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"DeviceFamiliy"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"}/>} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"ProductName"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"}/>} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"OrderNumber"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"}/>} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"ProductText"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"} />} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"IPProtection"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"} />} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"VendorHompage"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"} />} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"HardwareRelease"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"} />} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"SoftwareRelease"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:string"} />} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"OperatingTemperatureMin"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:double"}/>} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"OperatingTemperatureMax"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:double"}/>} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"VendorId"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:integer"}/>} +\DoxyCodeLine{ <\textcolor{keywordtype}{Attribute} \textcolor{keyword}{Name}=\textcolor{stringliteral}{"DeviceId"} \textcolor{keyword}{AttributeDataType}=\textcolor{stringliteral}{"xs:integer"}/>} +\DoxyCodeLine{} +\end{DoxyCode} + + +If a Device has this Internel\+Element Attributes, our Plugin will be able to display and modifiy the device.\hypertarget{md__r_e_a_d_m_e_autotoc_md3}{}\doxysection{Setup Projekt for development}\label{md__r_e_a_d_m_e_autotoc_md3} + +\begin{DoxyEnumerate} +\item Open the .sln in Visual Studio +\item Make sure that the Nu\+Get Packages are installed (Check using\+: \textquotesingle{}Extras\textquotesingle{} -\/$>$ \textquotesingle{}Nu\+Get-\/\+Packet-\/\+Manager\textquotesingle{} -\/$>$ \textquotesingle{}Nu\+Get-\/\+Packete für diese Projektmappe verwalten\textquotesingle{}) +\item Install the A\+M\+L\+Editor Version 5.\+1.\+3 or newer +\item To test the plugin, copy the build output (Modelling\+Wizard.\+dll) to the Plug\+In folder of the A\+M\+L\+Editor +\end{DoxyEnumerate}\hypertarget{md__r_e_a_d_m_e_autotoc_md4}{}\doxysection{Honorable mention}\label{md__r_e_a_d_m_e_autotoc_md4} +Christian K. und Philipp A. \ No newline at end of file diff --git a/SOURCE/Plugin/Code Documentation/latex/namespace_aml.tex b/SOURCE/Plugin/Code Documentation/latex/namespace_aml.tex new file mode 100644 index 0000000..1c9396e --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/namespace_aml.tex @@ -0,0 +1,7 @@ +\hypertarget{namespace_aml}{}\doxysection{Aml Namespace Reference} +\label{namespace_aml}\index{Aml@{Aml}} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor}{Editor}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/namespace_aml_1_1_editor.tex b/SOURCE/Plugin/Code Documentation/latex/namespace_aml_1_1_editor.tex new file mode 100644 index 0000000..34704a7 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/namespace_aml_1_1_editor.tex @@ -0,0 +1,7 @@ +\hypertarget{namespace_aml_1_1_editor}{}\doxysection{Aml.\+Editor Namespace Reference} +\label{namespace_aml_1_1_editor}\index{Aml.Editor@{Aml.Editor}} +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item +namespace \mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Plugin}} +\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/namespace_aml_1_1_editor_1_1_plugin.tex b/SOURCE/Plugin/Code Documentation/latex/namespace_aml_1_1_editor_1_1_plugin.tex new file mode 100644 index 0000000..4f30eb8 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/namespace_aml_1_1_editor_1_1_plugin.tex @@ -0,0 +1,41 @@ +\hypertarget{namespace_aml_1_1_editor_1_1_plugin}{}\doxysection{Aml.\+Editor.\+Plugin Namespace Reference} +\label{namespace_aml_1_1_editor_1_1_plugin}\index{Aml.Editor.Plugin@{Aml.Editor.Plugin}} +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_about}{About}} +\begin{DoxyCompactList}\small\item\em Interaction logic for About.\+xaml \end{DoxyCompactList}\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_animation_class}{Animation\+Class}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters}{Attachables\+Data\+Grid\+View\+Parameters}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables}{Automation\+M\+L\+Data\+Tables}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views}{Class\+Of\+Lists\+From\+Data\+Grid\+Views}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile}{Class\+Of\+Lists\+From\+Referencefile}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters}{Data\+Grid\+Parameters}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_device_description}{Device\+Description}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters}{Electrical\+Interface\+Parameters}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters}{Electrical\+Parameters}} +\begin{DoxyCompactList}\small\item\em /\+The following classes are parameter holders for Electrical Interfaces \end{DoxyCompactList}\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view}{Electrical\+Parameters\+In\+Electrical\+Data\+Data\+Grid\+View}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Modelling\+Wizard}} +\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard}{Modelling\+Wizard}} is an Plug\+In, which implements the I\+A\+M\+L\+Editor\+View Interface. \end{DoxyCompactList}\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller}{M\+W\+Controller}} +\begin{DoxyCompactList}\small\item\em This class passes the inputs of the G\+U\+Is to \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}{M\+W\+Data}} where needed and it is in controll of what is displayed at the screen \end{DoxyCompactList}\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data}{M\+W\+Data}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device}{M\+W\+Device}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view}{Pin\+Parameters\+In\+Pin\+Info\+Data\+Grid\+View}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file}{Search\+A\+M\+L\+Component\+File}} +\item +class \mbox{\hyperlink{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file}{Search\+A\+M\+L\+Library\+File}} +\begin{DoxyCompactList}\small\item\em This class reads the library file loaded in to the plugin \char`\"{}\+Role Class Library Tree\+View\char`\"{} and \char`\"{}\+Interface Class Library Tree\+View\char`\"{} \end{DoxyCompactList}\end{DoxyCompactItemize} diff --git a/SOURCE/Plugin/Code Documentation/latex/namespaces.tex b/SOURCE/Plugin/Code Documentation/latex/namespaces.tex new file mode 100644 index 0000000..2dbc4d2 --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/namespaces.tex @@ -0,0 +1,6 @@ +\doxysection{Namespace List} +Here is a list of all namespaces with brief descriptions\+:\begin{DoxyCompactList} +\item\contentsline{section}{\mbox{\hyperlink{namespace_aml}{Aml}} }{\pageref{namespace_aml}}{} +\item\contentsline{section}{\mbox{\hyperlink{namespace_aml_1_1_editor}{Aml.\+Editor}} }{\pageref{namespace_aml_1_1_editor}}{} +\item\contentsline{section}{\mbox{\hyperlink{namespace_aml_1_1_editor_1_1_plugin}{Aml.\+Editor.\+Plugin}} }{\pageref{namespace_aml_1_1_editor_1_1_plugin}}{} +\end{DoxyCompactList} diff --git a/SOURCE/Plugin/Code Documentation/latex/refman.tex b/SOURCE/Plugin/Code Documentation/latex/refman.tex new file mode 100644 index 0000000..3dcc57a --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/refman.tex @@ -0,0 +1,235 @@ +\let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}\documentclass[twoside]{book} + +%% moved from doxygen.sty due to workaround for LaTex 2019 version and unmaintained tabu package +\usepackage{ifthen} +\ifx\requestedLaTeXdate\undefined +\usepackage{array} +\else +\usepackage{array}[=2016-10-06] +\fi +%% +% Packages required by doxygen +\usepackage{fixltx2e} +\usepackage{calc} +\usepackage{doxygen} +\usepackage{graphicx} +\usepackage[utf8]{inputenc} +\usepackage{makeidx} +\usepackage{multicol} +\usepackage{multirow} +\PassOptionsToPackage{warn}{textcomp} +\usepackage{textcomp} +\usepackage[nointegrals]{wasysym} +\usepackage[table]{xcolor} +\usepackage{ifpdf,ifxetex} + +% Font selection +\usepackage[T1]{fontenc} +\usepackage[scaled=.90]{helvet} +\usepackage{courier} +\usepackage{amssymb} +\usepackage{sectsty} +\renewcommand{\familydefault}{\sfdefault} +\allsectionsfont{% + \fontseries{bc}\selectfont% + \color{darkgray}% +} +\renewcommand{\DoxyLabelFont}{% + \fontseries{bc}\selectfont% + \color{darkgray}% +} +\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}} + +% Arguments of doxygenemoji: +% 1) '::' form of the emoji, already "LaTeX"-escaped +% 2) file with the name of the emoji without the .png extension +% in case image exist use this otherwise use the '::' form +\newcommand{\doxygenemoji}[2]{% + \IfFileExists{./#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{./#2.png}}}{#1}% +} +% Page & text layout +\usepackage{geometry} +\geometry{% + a4paper,% + top=2.5cm,% + bottom=2.5cm,% + left=2.5cm,% + right=2.5cm% +} +\tolerance=750 +\hfuzz=15pt +\hbadness=750 +\setlength{\emergencystretch}{15pt} +\setlength{\parindent}{0cm} +\newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}} +\newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}} +\doxynormalparskip +\makeatletter +\renewcommand{\paragraph}{% + \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{% + \normalfont\normalsize\bfseries\SS@parafont% + }% +} +\renewcommand{\subparagraph}{% + \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{% + \normalfont\normalsize\bfseries\SS@subparafont% + }% +} +\makeatother + +\makeatletter +\newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@} +\makeatother + +% Headers & footers +\usepackage{fancyhdr} +\pagestyle{fancyplain} +\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}} +\fancyhead[CE]{\fancyplain{}{}} +\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}} +\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}} +\fancyhead[CO]{\fancyplain{}{}} +\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}} +\fancyfoot[LE]{\fancyplain{}{}} +\fancyfoot[CE]{\fancyplain{}{}} +\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }} +\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }} +\fancyfoot[CO]{\fancyplain{}{}} +\fancyfoot[RO]{\fancyplain{}{}} +\renewcommand{\footrulewidth}{0.4pt} +\renewcommand{\chaptermark}[1]{% + \markboth{#1}{}% +} +\renewcommand{\sectionmark}[1]{% + \markright{\thesection\ #1}% +} + +% Indices & bibliography +\usepackage{natbib} +\usepackage[titles]{tocloft} +\setcounter{tocdepth}{3} +\setcounter{secnumdepth}{5} +\makeindex + +\usepackage{newunicodechar} + \newunicodechar{⁻}{${}^{-}$}% Superscript minus + \newunicodechar{²}{${}^{2}$}% Superscript two + \newunicodechar{³}{${}^{3}$}% Superscript three + +% Hyperlinks (required, but should be loaded last) +\ifpdf + \usepackage[pdftex,pagebackref=true]{hyperref} +\else + \ifxetex + \usepackage[pagebackref=true]{hyperref} + \else + \usepackage[ps2pdf,pagebackref=true]{hyperref} + \fi +\fi + +\hypersetup{% + colorlinks=true,% + linkcolor=blue,% + citecolor=blue,% + unicode% +} + +% Custom commands +\newcommand{\clearemptydoublepage}{% + \newpage{\pagestyle{empty}\cleardoublepage}% +} + +\usepackage{caption} +\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top} + +\usepackage{etoc} +\etocsettocstyle{\doxytocparskip}{\doxynormalparskip} +\renewcommand{\numberline}[1]{#1~} +%===== C O N T E N T S ===== + +\begin{document} + +% Titlepage & ToC +\hypersetup{pageanchor=false, + bookmarksnumbered=true, + pdfencoding=unicode + } +\pagenumbering{alph} +\begin{titlepage} +\vspace*{7cm} +\begin{center}% +{\Large Modeling Wizard Plugin for Automation\+ML Editor \\[1ex]\large Version1.\+0.\+0.\+1 }\\ +\vspace*{1cm} +{\large Generated by Doxygen 1.8.17}\\ +\end{center} +\end{titlepage} +\clearemptydoublepage +\pagenumbering{roman} +\tableofcontents +\clearemptydoublepage +\pagenumbering{arabic} +\hypersetup{pageanchor=true} + +%--- Begin generated contents --- +\chapter{Modelling\+Wizard\+Plugin} +\label{md__r_e_a_d_m_e} +\Hypertarget{md__r_e_a_d_m_e} +\input{md__r_e_a_d_m_e} +\chapter{Namespace Index} +\input{namespaces} +\chapter{Hierarchical Index} +\input{hierarchy} +\chapter{Class Index} +\input{annotated} +\chapter{File Index} +\input{files} +\chapter{Namespace Documentation} +\input{namespace_aml} +\input{namespace_aml_1_1_editor} +\input{namespace_aml_1_1_editor_1_1_plugin} +\chapter{Class Documentation} +\input{class_aml_1_1_editor_1_1_plugin_1_1_about} +\input{class_aml_1_1_editor_1_1_plugin_1_1_animation_class} +\input{class_aml_1_1_editor_1_1_plugin_1_1_attachables_data_grid_view_parameters} +\input{class_aml_1_1_editor_1_1_plugin_1_1_automation_m_l_data_tables} +\input{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_data_grid_views} +\input{class_aml_1_1_editor_1_1_plugin_1_1_class_of_lists_from_referencefile} +\input{class_aml_1_1_editor_1_1_plugin_1_1_data_grid_parameters} +\input{class_aml_1_1_editor_1_1_plugin_1_1_device_description} +\input{class_aml_1_1_editor_1_1_plugin_1_1_electrical_interface_parameters} +\input{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters} +\input{class_aml_1_1_editor_1_1_plugin_1_1_electrical_parameters_in_electrical_data_data_grid_view} +\input{class_aml_1_1_editor_1_1_plugin_1_1_modelling_wizard} +\input{class_aml_1_1_editor_1_1_plugin_1_1_m_w_controller} +\input{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data} +\input{class_aml_1_1_editor_1_1_plugin_1_1_m_w_device} +\input{class_aml_1_1_editor_1_1_plugin_1_1_m_w_data_1_1_m_w_object} +\input{class_aml_1_1_editor_1_1_plugin_1_1_pin_parameters_in_pin_info_data_grid_view} +\input{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_component_file} +\input{class_aml_1_1_editor_1_1_plugin_1_1_search_a_m_l_library_file} +\chapter{File Documentation} +\input{_about_8xaml_8cs} +\input{_animation_class_8cs} +\input{_automation_m_l_data_tables_8cs} +\input{_class_of_lists_from_data_grid_views_8cs} +\input{_class_of_lists_from_referencefile_8cs} +\input{_device_description_8cs} +\input{_device_description_8_designer_8cs} +\input{_modelling_wizard_8xaml_8cs} +\input{_m_w_controller_8cs} +\input{_m_w_data_8cs} +\input{_m_w_device_8cs} +\input{_r_e_a_d_m_e_8md} +\input{_search_a_m_l_component_file_8cs} +\input{_search_a_m_l_library_file_8cs} +%--- End generated contents --- + +% Index +\backmatter +\newpage +\phantomsection +\clearemptydoublepage +\addcontentsline{toc}{chapter}{\indexname} +\printindex + +\end{document} diff --git a/SOURCE/Plugin/Code Documentation/latex/tabu_doxygen.sty b/SOURCE/Plugin/Code Documentation/latex/tabu_doxygen.sty new file mode 100644 index 0000000..3f17d1d --- /dev/null +++ b/SOURCE/Plugin/Code Documentation/latex/tabu_doxygen.sty @@ -0,0 +1,2557 @@ +%% +%% This is file `tabu.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% tabu.dtx (with options: `package') +%% +%% This is a generated file. +%% Copyright (FC) 2010-2011 - lppl +%% +%% tabu : 2011/02/26 v2.8 - tabu : Flexible LaTeX tabulars +%% +%% ********************************************************************************************** +%% \begin{tabu} { preamble } => default target: \linewidth or \linegoal +%% \begin{tabu} to { preamble } => target specified +%% \begin{tabu} spread { preamble } => target relative to the ``natural width'' +%% +%% tabu works in text and in math modes. +%% +%% X columns: automatic width adjustment + horizontal and vertical alignment +%% \begin{tabu} { X[4c] X[1c] X[-2ml] } +%% +%% Horizontal lines and / or leaders: +%% \hline\hline => double horizontal line +%% \firsthline\hline => for nested tabulars +%% \lasthline\hline => for nested tabulars +%% \tabucline[line spec]{column-column} => ``funny'' lines (dash/leader) +%% Automatic lines / leaders : +%% \everyrow{\hline\hline} +%% +%% Vertical lines and / or leaders: +%% \begin{tabu} { |[3pt red] X[4c] X[1c] X[-2ml] |[3pt blue] } +%% \begin{tabu} { |[3pt red] X[4c] X[1c] X[-2ml] |[3pt on 2pt off 4pt blue] } +%% +%% Fixed vertical spacing adjustment: +%% \extrarowheight= \extrarowdepth= +%% or: \extrarowsep= => may be prefixed by \global +%% +%% Dynamic vertical spacing adjustment: +%% \abovetabulinesep= \belowtabulinesep= +%% or: \tabulinesep= => may be prefixed by \global +%% +%% delarray.sty shortcuts: in math and text modes +%% \begin{tabu} .... \({ preamble }\) +%% +%% Algorithms reports: +%% \tracingtabu=1 \tracingtabu=2 +%% +%% ********************************************************************************************** +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% +%% This work consists of the main source file tabu.dtx +%% and the derived files +%% tabu.sty, tabu.pdf, tabu.ins +%% +%% tabu : Flexible LaTeX tabulars +%% lppl copyright 2010-2011 by FC +%% + +\NeedsTeXFormat{LaTeX2e}[2005/12/01] +\ProvidesPackage{tabu_doxygen}[2011/02/26 v2.8 - flexible LaTeX tabulars (FC), frozen version for doxygen] +\RequirePackage{array}[2008/09/09] +\RequirePackage{varwidth}[2009/03/30] +\AtEndOfPackage{\tabu@AtEnd \let\tabu@AtEnd \@undefined} +\let\tabu@AtEnd\@empty +\def\TMP@EnsureCode#1={% + \edef\tabu@AtEnd{\tabu@AtEnd + \catcode#1 \the\catcode#1}% + \catcode#1=% +}% \TMP@EnsureCode +\TMP@EnsureCode 33 = 12 % ! +\TMP@EnsureCode 58 = 12 % : (for siunitx) +\TMP@EnsureCode124 = 12 % | +\TMP@EnsureCode 36 = 3 % $ = math shift +\TMP@EnsureCode 38 = 4 % & = tab alignment character +\TMP@EnsureCode 32 = 10 % space +\TMP@EnsureCode 94 = 7 % ^ +\TMP@EnsureCode 95 = 8 % _ +%% Constants -------------------------------------------------------- +\newcount \c@taburow \def\thetaburow {\number\c@taburow} +\newcount \tabu@nbcols +\newcount \tabu@cnt +\newcount \tabu@Xcol +\let\tabu@start \@tempcnta +\let\tabu@stop \@tempcntb +\newcount \tabu@alloc \tabu@alloc=\m@ne +\newcount \tabu@nested +\def\tabu@alloc@{\global\advance\tabu@alloc \@ne \tabu@nested\tabu@alloc} +\newdimen \tabu@target +\newdimen \tabu@spreadtarget +\newdimen \tabu@naturalX +\newdimen \tabucolX +\let\tabu@DELTA \@tempdimc +\let\tabu@thick \@tempdima +\let\tabu@on \@tempdimb +\let\tabu@off \@tempdimc +\newdimen \tabu@Xsum +\newdimen \extrarowdepth +\newdimen \abovetabulinesep +\newdimen \belowtabulinesep +\newdimen \tabustrutrule \tabustrutrule \z@ +\newtoks \tabu@thebody +\newtoks \tabu@footnotes +\newsavebox \tabu@box +\newsavebox \tabu@arstrutbox +\newsavebox \tabu@hleads +\newsavebox \tabu@vleads +\newif \iftabu@colortbl +\newif \iftabu@siunitx +\newif \iftabu@measuring +\newif \iftabu@spread +\newif \iftabu@negcoef +\newif \iftabu@everyrow +\def\tabu@everyrowtrue {\global\let\iftabu@everyrow \iftrue} +\def\tabu@everyrowfalse{\global\let\iftabu@everyrow \iffalse} +\newif \iftabu@long +\newif \iftabuscantokens +\def\tabu@rescan {\tabu@verbatim \scantokens } +%% Utilities (for internal usage) ----------------------------------- +\def\tabu@gobblespace #1 {#1} +\def\tabu@gobbletoken #1#2{#1} +\def\tabu@gobbleX{\futurelet\@let@token \tabu@gobblex} +\def\tabu@gobblex{\if ^^J\noexpand\@let@token \expandafter\@gobble + \else\ifx \@sptoken\@let@token + \expandafter\tabu@gobblespace\expandafter\tabu@gobbleX + \fi\fi +}% \tabu@gobblex +\def\tabu@X{^^J} +{\obeyspaces +\global\let\tabu@spxiii= % saves an active space (for \ifx) +\gdef\tabu@@spxiii{ }} +\def\tabu@ifenvir {% only for \multicolumn + \expandafter\tabu@if@nvir\csname\@currenvir\endcsname +}% \tabu@ifenvir +\def\tabu@if@nvir #1{\csname @\ifx\tabu#1first\else + \ifx\longtabu#1first\else + second\fi\fi oftwo\endcsname +}% \tabu@ifenvir +\def\tabu@modulo #1#2{\numexpr\ifnum\numexpr#1=\z@ 0\else #1-(#1-(#2-1)/2)/(#2)*(#2)\fi} +{\catcode`\&=3 +\gdef\tabu@strtrim #1{% #1 = control sequence to trim + \ifodd 1\ifx #1\@empty \else \ifx #1\space \else 0\fi \fi + \let\tabu@c@l@r \@empty \let#1\@empty + \else \expandafter \tabu@trimspaces #1\@nnil + \fi +}% \tabu@strtrim +\gdef\tabu@trimspaces #1\@nnil{\let\tabu@c@l@r=#2\tabu@firstspace .#1& }% +\gdef\tabu@firstspace #1#2#3 &{\tabu@lastspace #2#3&} +\gdef\tabu@lastspace #1{\def #3{#1}% + \ifx #3\tabu@c@l@r \def\tabu@c@l@r{\protect\color{#1}}\expandafter\remove@to@nnil \fi + \tabu@trimspaces #1\@nnil} +}% \catcode +\def\tabu@sanitizearg #1#2{{% + \csname \ifcsname if@safe@actives\endcsname % + @safe@activestrue\else + relax\fi \endcsname + \edef#2{#1}\tabu@strtrim#2\@onelevel@sanitize#2% + \expandafter}\expandafter\def\expandafter#2\expandafter{#2}% +}% \tabu@sanitizearg +\def\tabu@textbar #1{\begingroup \endlinechar\m@ne \scantokens{\def\:{|}}% + \expandafter\endgroup \expandafter#1\:% !!! semi simple group !!! +}% \tabu@textbar +\def\tabu@everyrow@bgroup{\iftabu@everyrow \begingroup \else \noalign{\ifnum0=`}\fi \fi} +\def\tabu@everyrow@egroup{% + \iftabu@everyrow \expandafter \endgroup \the\toks@ + \else \ifnum0=`{\fi}% + \fi +}% \tabu@everyrow@egroup +\def\tabu@arstrut {\global\setbox\@arstrutbox \hbox{\vrule + height \arraystretch \dimexpr\ht\strutbox+\extrarowheight + depth \arraystretch \dimexpr\dp\strutbox+\extrarowdepth + width \z@}% +}% \tabu@arstrut +\def\tabu@rearstrut {% + \@tempdima \arraystretch\dimexpr\ht\strutbox+\extrarowheight \relax + \@tempdimb \arraystretch\dimexpr\dp\strutbox+\extrarowdepth \relax + \ifodd 1\ifdim \ht\@arstrutbox=\@tempdima + \ifdim \dp\@arstrutbox=\@tempdimb 0 \fi\fi + \tabu@mkarstrut + \fi +}% \tabu@rearstrut +\def\tabu@@DBG #1{\ifdim\tabustrutrule>\z@ \color{#1}\fi} +\def\tabu@DBG@arstrut {\global\setbox\@arstrutbox + \hbox to\z@{\hbox to\z@{\hss + {\tabu@DBG{cyan}\vrule + height \arraystretch \dimexpr\ht\strutbox+\extrarowheight + depth \z@ + width \tabustrutrule}\kern-\tabustrutrule + {\tabu@DBG{pink}\vrule + height \z@ + depth \arraystretch \dimexpr\dp\strutbox+\extrarowdepth + width \tabustrutrule}}}% +}% \tabu@DBG@arstrut +\def\tabu@save@decl{\toks\count@ \expandafter{\the\toks\expandafter\count@ + \@nextchar}}% +\def\tabu@savedecl{\ifcat$\d@llarend\else + \let\save@decl \tabu@save@decl \fi % no inversion of tokens in text mode +}% \tabu@savedecl +\def\tabu@finalstrut #1{\unskip\ifhmode\nobreak\fi\vrule height\z@ depth\z@ width\z@} +\newcommand*\tabuDisableCommands {\g@addto@macro\tabu@trialh@@k } +\let\tabu@trialh@@k \@empty +\def\tabu@nowrite #1#{{\afterassignment}\toks@} +\let\tabu@write\write +\let\tabu@immediate\immediate +\def\tabu@WRITE{\begingroup + \def\immediate\write{\aftergroup\endgroup + \tabu@immediate\tabu@write}% +}% \tabu@WRITE +\expandafter\def\expandafter\tabu@GenericError\expandafter{% + \expandafter\tabu@WRITE\GenericError} +\def\tabu@warn{\tabu@WRITE\PackageWarning{tabu}} +\def\tabu@noxfootnote [#1]{\@gobble} +\def\tabu@nocolor #1#{\@gobble} +\newcommand*\tabu@norowcolor[2][]{} +\def\tabu@maybesiunitx #1{\def\tabu@temp{#1}% + \futurelet\@let@token \tabu@m@ybesiunitx} +\def\tabu@m@ybesiunitx #1{\def\tabu@m@ybesiunitx {% + \ifx #1\@let@token \let\tabu@cellleft \@empty \let\tabu@cellright \@empty \fi + \tabu@temp}% \tabu@m@ybesiunitx +}\expandafter\tabu@m@ybesiunitx \csname siunitx_table_collect_begin:Nn\endcsname +\def\tabu@celllalign@def #1{\def\tabu@celllalign{\tabu@maybesiunitx{#1}}}% +%% Fixed vertical spacing adjustment: \extrarowsep ------------------ +\newcommand*\extrarowsep{\edef\tabu@C@extra{\the\numexpr\tabu@C@extra+1}% + \iftabu@everyrow \aftergroup\tabu@Gextra + \else \aftergroup\tabu@n@Gextra + \fi + \@ifnextchar={\tabu@gobbletoken\tabu@extra} \tabu@extra +}% \extrarowsep +\def\tabu@extra {\@ifnextchar_% + {\tabu@gobbletoken{\tabu@setextra\extrarowheight \extrarowdepth}} + {\ifx ^\@let@token \def\tabu@temp{% + \tabu@gobbletoken{\tabu@setextra\extrarowdepth \extrarowheight}}% + \else \let\tabu@temp \@empty + \afterassignment \tabu@setextrasep \extrarowdepth + \fi \tabu@temp}% +}% \tabu@extra +\def\tabu@setextra #1#2{\def\tabu@temp{\tabu@extr@#1#2}\afterassignment\tabu@temp#2} +\def\tabu@extr@ #1#2{\@ifnextchar^% + {\tabu@gobbletoken{\tabu@setextra\extrarowdepth \extrarowheight}} + {\ifx _\@let@token \def\tabu@temp{% + \tabu@gobbletoken{\tabu@setextra\extrarowheight \extrarowdepth}}% + \else \let\tabu@temp \@empty + \tabu@Gsave \tabu@G@extra \tabu@C@extra \extrarowheight \extrarowdepth + \fi \tabu@temp}% +}% \tabu@extr@ +\def\tabu@setextrasep {\extrarowheight=\extrarowdepth + \tabu@Gsave \tabu@G@extra \tabu@C@extra \extrarowheight \extrarowdepth +}% \tabu@setextrasep +\def\tabu@Gextra{\ifx \tabu@G@extra\@empty \else {\tabu@Rextra}\fi} +\def\tabu@n@Gextra{\ifx \tabu@G@extra\@empty \else \noalign{\tabu@Rextra}\fi} +\def\tabu@Rextra{\tabu@Grestore \tabu@G@extra \tabu@C@extra} +\let\tabu@C@extra \z@ +\let\tabu@G@extra \@empty +%% Dynamic vertical spacing adjustment: \tabulinesep ---------------- +\newcommand*\tabulinesep{\edef\tabu@C@linesep{\the\numexpr\tabu@C@linesep+1}% + \iftabu@everyrow \aftergroup\tabu@Glinesep + \else \aftergroup\tabu@n@Glinesep + \fi + \@ifnextchar={\tabu@gobbletoken\tabu@linesep} \tabu@linesep +}% \tabulinesep +\def\tabu@linesep {\@ifnextchar_% + {\tabu@gobbletoken{\tabu@setsep\abovetabulinesep \belowtabulinesep}} + {\ifx ^\@let@token \def\tabu@temp{% + \tabu@gobbletoken{\tabu@setsep\belowtabulinesep \abovetabulinesep}}% + \else \let\tabu@temp \@empty + \afterassignment \tabu@setlinesep \abovetabulinesep + \fi \tabu@temp}% +}% \tabu@linesep +\def\tabu@setsep #1#2{\def\tabu@temp{\tabu@sets@p#1#2}\afterassignment\tabu@temp#2} +\def\tabu@sets@p #1#2{\@ifnextchar^% + {\tabu@gobbletoken{\tabu@setsep\belowtabulinesep \abovetabulinesep}} + {\ifx _\@let@token \def\tabu@temp{% + \tabu@gobbletoken{\tabu@setsep\abovetabulinesep \belowtabulinesep}}% + \else \let\tabu@temp \@empty + \tabu@Gsave \tabu@G@linesep \tabu@C@linesep \abovetabulinesep \belowtabulinesep + \fi \tabu@temp}% +}% \tabu@sets@p +\def\tabu@setlinesep {\belowtabulinesep=\abovetabulinesep + \tabu@Gsave \tabu@G@linesep \tabu@C@linesep \abovetabulinesep \belowtabulinesep +}% \tabu@setlinesep +\def\tabu@Glinesep{\ifx \tabu@G@linesep\@empty \else {\tabu@Rlinesep}\fi} +\def\tabu@n@Glinesep{\ifx \tabu@G@linesep\@empty \else \noalign{\tabu@Rlinesep}\fi} +\def\tabu@Rlinesep{\tabu@Grestore \tabu@G@linesep \tabu@C@linesep} +\let\tabu@C@linesep \z@ +\let\tabu@G@linesep \@empty +%% \global\extrarowsep and \global\tabulinesep ------------------- +\def\tabu@Gsave #1#2#3#4{\xdef#1{#1% + \toks#2{\toks\the\currentgrouplevel{\global#3\the#3\global#4\the#4}}}% +}% \tabu@Gsave +\def\tabu@Grestore#1#2{% + \toks#2{}#1\toks\currentgrouplevel\expandafter{\expandafter}\the\toks#2\relax + \ifcat$\the\toks\currentgrouplevel$\else + \global\let#1\@empty \global\let#2\z@ + \the\toks\currentgrouplevel + \fi +}% \tabu@Grestore +%% Setting code for every row --------------------------------------- +\newcommand*\everyrow{\tabu@everyrow@bgroup + \tabu@start \z@ \tabu@stop \z@ \tabu@evrstartstop +}% \everyrow +\def\tabu@evrstartstop {\@ifnextchar^% + {\afterassignment \tabu@evrstartstop \tabu@stop=}% + {\ifx ^\@let@token + \afterassignment\tabu@evrstartstop \tabu@start=% + \else \afterassignment\tabu@everyr@w \toks@ + \fi}% +}% \tabu@evrstartstop +\def\tabu@everyr@w {% + \xdef\tabu@everyrow{% + \noexpand\tabu@everyrowfalse + \let\noalign \relax + \noexpand\tabu@rowfontreset + \iftabu@colortbl \noexpand\tabu@rc@ \fi % \taburowcolors + \let\noexpand\tabu@docline \noexpand\tabu@docline@evr + \the\toks@ + \noexpand\tabu@evrh@@k + \noexpand\tabu@rearstrut + \global\advance\c@taburow \@ne}% + \iftabu@everyrow \toks@\expandafter + {\expandafter\def\expandafter\tabu@evr@L\expandafter{\the\toks@}\ignorespaces}% + \else \xdef\tabu@evr@G{\the\toks@}% + \fi + \tabu@everyrow@egroup +}% \tabu@everyr@w +\def\tabu@evr {\def\tabu@evrh@@k} % for internal use only +\tabu@evr{} +%% line style and leaders ------------------------------------------- +\newcommand*\newtabulinestyle [1]{% + {\@for \@tempa :=#1\do{\expandafter\tabu@newlinestyle \@tempa==\@nil}}% +}% \newtabulinestyle +\def\tabu@newlinestyle #1=#2=#3\@nil{\tabu@getline {#2}% + \tabu@sanitizearg {#1}\@tempa + \ifodd 1\ifx \@tempa\@empty \ifdefined\tabu@linestyle@ 0 \fi\fi + \global\expandafter\let + \csname tabu@linestyle@\@tempa \endcsname =\tabu@thestyle \fi +}% \tabu@newlinestyle +\newcommand*\tabulinestyle [1]{\tabu@everyrow@bgroup \tabu@getline{#1}% + \iftabu@everyrow + \toks@\expandafter{\expandafter \def \expandafter + \tabu@ls@L\expandafter{\tabu@thestyle}\ignorespaces}% + \gdef\tabu@ls@{\tabu@ls@L}% + \else + \global\let\tabu@ls@G \tabu@thestyle + \gdef\tabu@ls@{\tabu@ls@G}% + \fi + \tabu@everyrow@egroup +}% \tabulinestyle +\newcommand*\taburulecolor{\tabu@everyrow@bgroup \tabu@textbar \tabu@rulecolor} +\def\tabu@rulecolor #1{\toks@{}% + \def\tabu@temp #1##1#1{\tabu@ruledrsc{##1}}\@ifnextchar #1% + \tabu@temp + \tabu@rulearc +}% \tabu@rulecolor +\def\tabu@ruledrsc #1{\edef\tabu@temp{#1}\tabu@strtrim\tabu@temp + \ifx \tabu@temp\@empty \def\tabu@temp{\tabu@rule@drsc@ {}{}}% + \else \edef\tabu@temp{\noexpand\tabu@rule@drsc@ {}{\tabu@temp}}% + \fi + \tabu@temp +}% \tabu@ruledrsc@ +\def\tabu@ruledrsc@ #1#{\tabu@rule@drsc@ {#1}} +\def\tabu@rule@drsc@ #1#2{% + \iftabu@everyrow + \ifx \\#1#2\\\toks@{\let\CT@drsc@ \relax}% + \else \toks@{\def\CT@drsc@{\color #1{#2}}}% + \fi + \else + \ifx \\#1#2\\\global\let\CT@drsc@ \relax + \else \gdef\CT@drsc@{\color #1{#2}}% + \fi + \fi + \tabu@rulearc +}% \tabu@rule@drsc@ +\def\tabu@rulearc #1#{\tabu@rule@arc@ {#1}} +\def\tabu@rule@arc@ #1#2{% + \iftabu@everyrow + \ifx \\#1#2\\\toks@\expandafter{\the\toks@ \def\CT@arc@{}}% + \else \toks@\expandafter{\the\toks@ \def\CT@arc@{\color #1{#2}}}% + \fi + \toks@\expandafter{\the\toks@ + \let\tabu@arc@L \CT@arc@ + \let\tabu@drsc@L \CT@drsc@ + \ignorespaces}% + \else + \ifx \\#1#2\\\gdef\CT@arc@{}% + \else \gdef\CT@arc@{\color #1{#2}}% + \fi + \global\let\tabu@arc@G \CT@arc@ + \global\let\tabu@drsc@G \CT@drsc@ + \fi + \tabu@everyrow@egroup +}% \tabu@rule@arc@ +\def\taburowcolors {\tabu@everyrow@bgroup \@testopt \tabu@rowcolors 1} +\def\tabu@rowcolors [#1]#2#{\tabu@rowc@lors{#1}{#2}} +\def\tabu@rowc@lors #1#2#3{% + \toks@{}\@defaultunits \count@ =\number0#2\relax \@nnil + \@defaultunits \tabu@start =\number0#1\relax \@nnil + \ifnum \count@<\tw@ \count@=\tw@ \fi + \advance\tabu@start \m@ne + \ifnum \tabu@start<\z@ \tabu@start \z@ \fi + \tabu@rowcolorseries #3\in@..\in@ \@nnil +}% \tabu@rowcolors +\def\tabu@rowcolorseries #1..#2\in@ #3\@nnil {% + \ifx \in@#1\relax + \iftabu@everyrow \toks@{\def\tabu@rc@{}\let\tabu@rc@L \tabu@rc@}% + \else \gdef\tabu@rc@{}\global\let\tabu@rc@G \tabu@rc@ + \fi + \else + \ifx \\#2\\\tabu@rowcolorserieserror \fi + \tabu@sanitizearg{#1}\tabu@temp + \tabu@sanitizearg{#2}\@tempa + \advance\count@ \m@ne + \iftabu@everyrow + \def\tabu@rc@ ##1##2##3##4{\def\tabu@rc@{% + \ifnum ##2=\c@taburow + \definecolorseries{tabu@rcseries@\the\tabu@nested}{rgb}{last}{##3}{##4}\fi + \ifnum \c@taburow<##2 \else + \ifnum \tabu@modulo {\c@taburow-##2}{##1+1}=\z@ + \resetcolorseries[{##1}]{tabu@rcseries@\the\tabu@nested}\fi + \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}% + \rowcolor{tabu@rc@\the\tabu@nested}\fi}% + }\edef\x{\noexpand\tabu@rc@ {\the\count@} + {\the\tabu@start} + {\tabu@temp} + {\@tempa}% + }\x + \toks@\expandafter{\expandafter\def\expandafter\tabu@rc@\expandafter{\tabu@rc@}}% + \toks@\expandafter{\the\toks@ \let\tabu@rc@L \tabu@rc@ \ignorespaces}% + \else % inside \noalign + \definecolorseries{tabu@rcseries@\the\tabu@nested}{rgb}{last}{\tabu@temp}{\@tempa}% + \expandafter\resetcolorseries\expandafter[\the\count@]{tabu@rcseries@\the\tabu@nested}% + \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}% + \let\noalign \relax \rowcolor{tabu@rc@\the\tabu@nested}% + \def\tabu@rc@ ##1##2{\gdef\tabu@rc@{% + \ifnum \tabu@modulo {\c@taburow-##2}{##1+1}=\@ne + \resetcolorseries[{##1}]{tabu@rcseries@\the\tabu@nested}\fi + \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}% + \rowcolor{tabu@rc@\the\tabu@nested}}% + }\edef\x{\noexpand\tabu@rc@{\the\count@}{\the\c@taburow}}\x + \global\let\tabu@rc@G \tabu@rc@ + \fi + \fi + \tabu@everyrow@egroup +}% \tabu@rowcolorseries +\tabuDisableCommands {\let\tabu@rc@ \@empty } +\def\tabu@rowcolorserieserror {\PackageError{tabu} + {Invalid syntax for \string\taburowcolors + \MessageBreak Please look at the documentation!}\@ehd +}% \tabu@rowcolorserieserror +\newcommand*\tabureset {% + \tabulinesep=\z@ \extrarowsep=\z@ \extratabsurround=\z@ + \tabulinestyle{}\everyrow{}\taburulecolor||{}\taburowcolors{}% +}% \tabureset +%% Parsing the line styles ------------------------------------------ +\def\tabu@getline #1{\begingroup + \csname \ifcsname if@safe@actives\endcsname % + @safe@activestrue\else + relax\fi \endcsname + \edef\tabu@temp{#1}\tabu@sanitizearg{#1}\@tempa + \let\tabu@thestyle \relax + \ifcsname tabu@linestyle@\@tempa \endcsname + \edef\tabu@thestyle{\endgroup + \def\tabu@thestyle{\expandafter\noexpand + \csname tabu@linestyle@\@tempa\endcsname}% + }\tabu@thestyle + \else \expandafter\tabu@definestyle \tabu@temp \@nil + \fi +}% \tabu@getline +\def\tabu@definestyle #1#2\@nil {\endlinechar \m@ne \makeatletter + \tabu@thick \maxdimen \tabu@on \maxdimen \tabu@off \maxdimen + \let\tabu@c@lon \@undefined \let\tabu@c@loff \@undefined + \ifodd 1\ifcat .#1\else\ifcat\relax #1\else 0\fi\fi % catcode 12 or non expandable cs + \def\tabu@temp{\tabu@getparam{thick}}% + \else \def\tabu@temp{\tabu@getparam{thick}\maxdimen}% + \fi + {% + \let\tabu@ \relax + \def\:{\obeyspaces \tabu@oXIII \tabu@commaXIII \edef\:}% (space active \: happy ;-)) + \scantokens{\:{\tabu@temp #1#2 \tabu@\tabu@}}% + \expandafter}\expandafter + \def\expandafter\:\expandafter{\:}% line spec rewritten now ;-) + \def\;{\def\:}% + \scantokens\expandafter{\expandafter\;\expandafter{\:}}% space is now inactive (catcode 10) + \let\tabu@ \tabu@getcolor \:% all arguments are ready now ;-) + \ifdefined\tabu@c@lon \else \let\tabu@c@lon\@empty \fi + \ifx \tabu@c@lon\@empty \def\tabu@c@lon{\CT@arc@}\fi + \ifdefined\tabu@c@loff \else \let\tabu@c@loff \@empty \fi + \ifdim \tabu@on=\maxdimen \ifdim \tabu@off<\maxdimen + \tabu@on \tabulineon \fi\fi + \ifdim \tabu@off=\maxdimen \ifdim \tabu@on<\maxdimen + \tabu@off \tabulineoff \fi\fi + \ifodd 1\ifdim \tabu@off=\maxdimen \ifdim \tabu@on=\maxdimen 0 \fi\fi + \in@true % + \else \in@false % + \fi + \ifdim\tabu@thick=\maxdimen \def\tabu@thick{\arrayrulewidth}% + \else \edef\tabu@thick{\the\tabu@thick}% + \fi + \edef \tabu@thestyle ##1##2{\endgroup + \def\tabu@thestyle{% + \ifin@ \noexpand\tabu@leadersstyle {\tabu@thick} + {\the\tabu@on}{##1} + {\the\tabu@off}{##2}% + \else \noexpand\tabu@rulesstyle + {##1\vrule width \tabu@thick}% + {##1\leaders \hrule height \tabu@thick \hfil}% + \fi}% + }\expandafter \expandafter + \expandafter \tabu@thestyle \expandafter + \expandafter \expandafter + {\expandafter\tabu@c@lon\expandafter}\expandafter{\tabu@c@loff}% +}% \tabu@definestyle +{\catcode`\O=\active \lccode`\O=`\o \catcode`\,=\active + \lowercase{\gdef\tabu@oXIII {\catcode`\o=\active \let O=\tabu@oxiii}} + \gdef\tabu@commaXIII {\catcode`\,=\active \let ,=\space} +}% \catcode +\def\tabu@oxiii #1{% + \ifcase \ifx n#1\z@ \else + \ifx f#1\@ne\else + \tw@ \fi\fi + \expandafter\tabu@onxiii + \or \expandafter\tabu@ofxiii + \else o% + \fi#1}% +\def\tabu@onxiii #1#2{% + \ifcase \ifx !#2\tw@ \else + \ifcat.\noexpand#2\z@ \else + \ifx \tabu@spxiii#2\@ne\else + \tw@ \fi\fi\fi + \tabu@getparam{on}#2\expandafter\@gobble + \or \expandafter\tabu@onxiii % (space is active) + \else o\expandafter\@firstofone + \fi{#1#2}}% +\def\tabu@ofxiii #1#2{% + \ifx #2f\expandafter\tabu@offxiii + \else o\expandafter\@firstofone + \fi{#1#2}} +\def\tabu@offxiii #1#2{% + \ifcase \ifx !#2\tw@ \else + \ifcat.\noexpand#2\z@ \else + \ifx\tabu@spxiii#2\@ne \else + \tw@ \fi\fi\fi + \tabu@getparam{off}#2\expandafter\@gobble + \or \expandafter\tabu@offxiii % (space is active) + \else o\expandafter\@firstofone + \fi{#1#2}} +\def\tabu@getparam #1{\tabu@ \csname tabu@#1\endcsname=} +\def\tabu@getcolor #1{% \tabu@ <- \tabu@getcolor after \edef + \ifx \tabu@#1\else % no more spec + \let\tabu@theparam=#1\afterassignment \tabu@getc@l@r #1\fi +}% \tabu@getcolor +\def\tabu@getc@l@r #1\tabu@ {% + \def\tabu@temp{#1}\tabu@strtrim \tabu@temp + \ifx \tabu@temp\@empty + \else%\ifcsname \string\color@\tabu@temp \endcsname % if the color exists + \ifx \tabu@theparam \tabu@off \let\tabu@c@loff \tabu@c@l@r + \else \let\tabu@c@lon \tabu@c@l@r + \fi + %\else \tabu@warncolour{\tabu@temp}% + \fi%\fi + \tabu@ % next spec +}% \tabu@getc@l@r +\def\tabu@warncolour #1{\PackageWarning{tabu} + {Color #1 is not defined. Default color used}% +}% \tabu@warncolour +\def\tabu@leadersstyle #1#2#3#4#5{\def\tabu@leaders{{#1}{#2}{#3}{#4}{#5}}% + \ifx \tabu@leaders\tabu@leaders@G \else + \tabu@LEADERS{#1}{#2}{#3}{#4}{#5}\fi +}% \tabu@leadersstyle +\def\tabu@rulesstyle #1#2{\let\tabu@leaders \@undefined + \gdef\tabu@thevrule{#1}\gdef\tabu@thehrule{#2}% +}% \tabu@rulesstyle +%% The leaders boxes ------------------------------------------------ +\def\tabu@LEADERS #1#2#3#4#5{%% width, dash, dash color, gap, gap color + {\let\color \tabu@color % => during trials -> \color = \tabu@nocolor + {% % but the leaders boxes should have colors ! + \def\@therule{\vrule}\def\@thick{height}\def\@length{width}% + \def\@box{\hbox}\def\@unbox{\unhbox}\def\@elt{\wd}% + \def\@skip{\hskip}\def\@ss{\hss}\def\tabu@leads{\tabu@hleads}% + \tabu@l@@d@rs {#1}{#2}{#3}{#4}{#5}% + \global\let\tabu@thehleaders \tabu@theleaders + }% + {% + \def\@therule{\hrule}\def\@thick{width}\def\@length{height}% + \def\@box{\vbox}\def\@unbox{\unvbox}\def\@elt{\ht}% + \def\@skip{\vskip}\def\@ss{\vss}\def\tabu@leads{\tabu@vleads}% + \tabu@l@@d@rs {#1}{#2}{#3}{#4}{#5}% + \global\let\tabu@thevleaders \tabu@theleaders + }% + \gdef\tabu@leaders@G{{#1}{#2}{#3}{#4}{#5}}% + }% +}% \tabu@LEADERS +\def\tabu@therule #1#2{\@therule \@thick#1\@length\dimexpr#2/2 \@depth\z@} +\def\tabu@l@@d@rs #1#2#3#4#5{%% width, dash, dash color, gap, gap color + \global\setbox \tabu@leads=\@box{% + {#3\tabu@therule{#1}{#2}}% + \ifx\\#5\\\@skip#4\else{#5\tabu@therule{#1}{#4*2}}\fi + {#3\tabu@therule{#1}{#2}}}% + \global\setbox\tabu@leads=\@box to\@elt\tabu@leads{\@ss + {#3\tabu@therule{#1}{#2}}\@unbox\tabu@leads}% + \edef\tabu@theleaders ##1{\def\noexpand\tabu@theleaders {% + {##1\tabu@therule{#1}{#2}}% + \xleaders \copy\tabu@leads \@ss + \tabu@therule{0pt}{-#2}{##1\tabu@therule{#1}{#2}}}% + }\tabu@theleaders{#3}% +}% \tabu@l@@d@rs +%% \tabu \endtabu \tabu* \longtabu \endlongtabu \longtabu* ---------- +\newcommand*\tabu {\tabu@longfalse + \ifmmode \def\tabu@ {\array}\def\endtabu {\endarray}% + \else \def\tabu@ {\tabu@tabular}\def\endtabu {\endtabular}\fi + \expandafter\let\csname tabu*\endcsname \tabu + \expandafter\def\csname endtabu*\endcsname{\endtabu}% + \tabu@spreadfalse \tabu@negcoeffalse \tabu@settarget +}% {tabu} +\let\tabu@tabular \tabular % +\expandafter\def\csname tabu*\endcsname{\tabuscantokenstrue \tabu} +\newcommand*\longtabu {\tabu@longtrue + \ifmmode\PackageError{tabu}{longtabu not allowed in math mode}\fi + \def\tabu@{\longtable}\def\endlongtabu{\endlongtable}% + \LTchunksize=\@M + \expandafter\let\csname tabu*\endcsname \tabu + \expandafter\def\csname endlongtabu*\endcsname{\endlongtabu}% + \let\LT@startpbox \tabu@LT@startpbox % \everypar{ array struts } + \tabu@spreadfalse \tabu@negcoeffalse \tabu@settarget +}% {longtabu} +\expandafter\def\csname longtabu*\endcsname{\tabuscantokenstrue \longtabu} +\def\tabu@nolongtabu{\PackageError{tabu} + {longtabu requires the longtable package}\@ehd} +%% Read the target and then : \tabular or \@array ------------------ +\def\tabu@settarget {\futurelet\@let@token \tabu@sett@rget } +\def\tabu@sett@rget {\tabu@target \z@ + \ifcase \ifx \bgroup\@let@token \z@ \else + \ifx \@sptoken\@let@token \@ne \else + \if t\@let@token \tw@ \else + \if s\@let@token \thr@@\else + \z@\fi\fi\fi\fi + \expandafter\tabu@begin + \or \expandafter\tabu@gobblespace\expandafter\tabu@settarget + \or \expandafter\tabu@to + \or \expandafter\tabu@spread + \fi +}% \tabu@sett@rget +\def\tabu@to to{\def\tabu@halignto{to}\tabu@gettarget} +\def\tabu@spread spread{\tabu@spreadtrue\def\tabu@halignto{spread}\tabu@gettarget} +\def\tabu@gettarget {\afterassignment\tabu@linegoaltarget \tabu@target } +\def\tabu@linegoaltarget {\futurelet\tabu@temp \tabu@linegoalt@rget } +\def\tabu@linegoalt@rget {% + \ifx \tabu@temp\LNGL@setlinegoal + \LNGL@setlinegoal \expandafter \@firstoftwo \fi % @gobbles \LNGL@setlinegoal + \tabu@begin +}% \tabu@linegoalt@rget +\def\tabu@begin #1#{% + \iftabu@measuring \expandafter\tabu@nestedmeasure \fi + \ifdim \tabu@target=\z@ \let\tabu@halignto \@empty + \else \edef\tabu@halignto{\tabu@halignto\the\tabu@target}% + \fi + \@testopt \tabu@tabu@ \tabu@aligndefault #1\@nil +}% \tabu@begin +\long\def\tabu@tabu@ [#1]#2\@nil #3{\tabu@setup + \def\tabu@align {#1}\def\tabu@savedpream{\NC@find #3}% + \tabu@ [\tabu@align ]#2{#3\tabu@rewritefirst }% +}% \tabu@tabu@ +\def\tabu@nestedmeasure {% + \ifodd 1\iftabu@spread \else \ifdim\tabu@target=\z@ \else 0 \fi\fi\relax + \tabu@spreadtrue + \else \begingroup \iffalse{\fi \ifnum0=`}\fi + \toks@{}\def\tabu@stack{b}% + \expandafter\tabu@collectbody\expandafter\tabu@quickrule + \expandafter\endgroup + \fi +}% \tabu@nestedmeasure +\def\tabu@quickrule {\indent\vrule height\z@ depth\z@ width\tabu@target} +%% \tabu@setup \tabu@init \tabu@indent +\def\tabu@setup{\tabu@alloc@ + \ifcase \tabu@nested + \ifmmode \else \iftabu@spread\else \ifdim\tabu@target=\z@ + \let\tabu@afterendpar \par + \fi\fi\fi + \def\tabu@aligndefault{c}\tabu@init \tabu@indent + \else % + \def\tabu@aligndefault{t}\let\tabudefaulttarget \linewidth + \fi + \let\tabu@thetarget \tabudefaulttarget \let\tabu@restored \@undefined + \edef\tabu@NC@list{\the\NC@list}\NC@list{\NC@do \tabu@rewritefirst}% + \everycr{}\let\@startpbox \tabu@startpbox % for nested tabu inside longtabu... + \let\@endpbox \tabu@endpbox % idem " " " " " " + \let\@tabarray \tabu@tabarray % idem " " " " " " + \tabu@setcleanup \tabu@setreset +}% \tabu@setup +\def\tabu@init{\tabu@starttimer \tabu@measuringfalse + \edef\tabu@hfuzz {\the\dimexpr\hfuzz+1sp}\global\tabu@footnotes{}% + \let\firsthline \tabu@firsthline \let\lasthline \tabu@lasthline + \let\firstline \tabu@firstline \let\lastline \tabu@lastline + \let\hline \tabu@hline \let\@xhline \tabu@xhline + \let\color \tabu@color \let\@arstrutbox \tabu@arstrutbox + \iftabu@colortbl\else\let\LT@@hline \tabu@LT@@hline \fi + \tabu@trivlist % + \let\@footnotetext \tabu@footnotetext \let\@xfootnotetext \tabu@xfootnotetext + \let\@xfootnote \tabu@xfootnote \let\centering \tabu@centering + \let\raggedright \tabu@raggedright \let\raggedleft \tabu@raggedleft + \let\tabudecimal \tabu@tabudecimal \let\Centering \tabu@Centering + \let\RaggedRight \tabu@RaggedRight \let\RaggedLeft \tabu@RaggedLeft + \let\justifying \tabu@justifying \let\rowfont \tabu@rowfont + \let\fbox \tabu@fbox \let\color@b@x \tabu@color@b@x + \let\tabu@@everycr \everycr \let\tabu@@everypar \everypar + \let\tabu@prepnext@tokORI \prepnext@tok\let\prepnext@tok \tabu@prepnext@tok + \let\tabu@multicolumnORI\multicolumn \let\multicolumn \tabu@multicolumn + \let\tabu@startpbox \@startpbox % for nested tabu inside longtabu pfff !!! + \let\tabu@endpbox \@endpbox % idem " " " " " " " + \let\tabu@tabarray \@tabarray % idem " " " " " " " + \tabu@adl@fix \let\endarray \tabu@endarray % colortbl & arydshln (delarray) + \iftabu@colortbl\CT@everycr\expandafter{\expandafter\iftabu@everyrow \the\CT@everycr \fi}\fi +}% \tabu@init +\def\tabu@indent{% correction for indentation + \ifdim \parindent>\z@\ifx \linewidth\tabudefaulttarget + \everypar\expandafter{% + \the\everypar\everypar\expandafter{\the\everypar}% + \setbox\z@=\lastbox + \ifdim\wd\z@>\z@ \edef\tabu@thetarget + {\the\dimexpr -\wd\z@+\tabudefaulttarget}\fi + \box\z@}% + \fi\fi +}% \tabu@indent +\def\tabu@setcleanup {% saves last global assignments + \ifodd 1\ifmmode \else \iftabu@long \else 0\fi\fi\relax + \def\tabu@aftergroupcleanup{% + \def\tabu@aftergroupcleanup{\aftergroup\tabu@cleanup}}% + \else + \def\tabu@aftergroupcleanup{% + \aftergroup\aftergroup\aftergroup\tabu@cleanup + \let\tabu@aftergroupcleanup \relax}% + \fi + \let\tabu@arc@Gsave \tabu@arc@G + \let\tabu@arc@G \tabu@arc@L % + \let\tabu@drsc@Gsave \tabu@drsc@G + \let\tabu@drsc@G \tabu@drsc@L % + \let\tabu@ls@Gsave \tabu@ls@G + \let\tabu@ls@G \tabu@ls@L % + \let\tabu@rc@Gsave \tabu@rc@G + \let\tabu@rc@G \tabu@rc@L % + \let\tabu@evr@Gsave \tabu@evr@G + \let\tabu@evr@G \tabu@evr@L % + \let\tabu@celllalign@save \tabu@celllalign + \let\tabu@cellralign@save \tabu@cellralign + \let\tabu@cellleft@save \tabu@cellleft + \let\tabu@cellright@save \tabu@cellright + \let\tabu@@celllalign@save \tabu@@celllalign + \let\tabu@@cellralign@save \tabu@@cellralign + \let\tabu@@cellleft@save \tabu@@cellleft + \let\tabu@@cellright@save \tabu@@cellright + \let\tabu@rowfontreset@save \tabu@rowfontreset + \let\tabu@@rowfontreset@save\tabu@@rowfontreset + \let\tabu@rowfontreset \@empty + \edef\tabu@alloc@save {\the\tabu@alloc}% restore at \tabu@reset + \edef\c@taburow@save {\the\c@taburow}% + \edef\tabu@naturalX@save {\the\tabu@naturalX}% + \let\tabu@naturalXmin@save \tabu@naturalXmin + \let\tabu@naturalXmax@save \tabu@naturalXmax + \let\tabu@mkarstrut@save \tabu@mkarstrut + \edef\tabu@clarstrut{% + \extrarowheight \the\dimexpr \ht\@arstrutbox-\ht\strutbox \relax + \extrarowdepth \the\dimexpr \dp\@arstrutbox-\dp\strutbox \relax + \let\noexpand\@arraystretch \@ne \noexpand\tabu@rearstrut}% +}% \tabu@setcleanup +\def\tabu@cleanup {\begingroup + \globaldefs\@ne \tabu@everyrowtrue + \let\tabu@arc@G \tabu@arc@Gsave + \let\CT@arc@ \tabu@arc@G + \let\tabu@drsc@G \tabu@drsc@Gsave + \let\CT@drsc@ \tabu@drsc@G + \let\tabu@ls@G \tabu@ls@Gsave + \let\tabu@ls@ \tabu@ls@G + \let\tabu@rc@G \tabu@rc@Gsave + \let\tabu@rc@ \tabu@rc@G + \let\CT@do@color \relax + \let\tabu@evr@G \tabu@evr@Gsave + \let\tabu@celllalign \tabu@celllalign@save + \let\tabu@cellralign \tabu@cellralign@save + \let\tabu@cellleft \tabu@cellleft@save + \let\tabu@cellright \tabu@cellright@save + \let\tabu@@celllalign \tabu@@celllalign@save + \let\tabu@@cellralign \tabu@@cellralign@save + \let\tabu@@cellleft \tabu@@cellleft@save + \let\tabu@@cellright \tabu@@cellright@save + \let\tabu@rowfontreset \tabu@rowfontreset@save + \let\tabu@@rowfontreset \tabu@@rowfontreset@save + \tabu@naturalX =\tabu@naturalX@save + \let\tabu@naturalXmax \tabu@naturalXmax@save + \let\tabu@naturalXmin \tabu@naturalXmin@save + \let\tabu@mkarstrut \tabu@mkarstrut@save + \c@taburow =\c@taburow@save + \ifcase \tabu@nested \tabu@alloc \m@ne\fi + \endgroup % + \ifcase \tabu@nested + \the\tabu@footnotes \global\tabu@footnotes{}% + \tabu@afterendpar \tabu@elapsedtime + \fi + \tabu@clarstrut + \everyrow\expandafter {\tabu@evr@G}% +}% \tabu@cleanup +\let\tabu@afterendpar \relax +\def\tabu@setreset {% + \edef\tabu@savedparams {% \relax for \tabu@message@save + \ifmmode \col@sep \the\arraycolsep + \else \col@sep \the\tabcolsep \fi \relax + \arrayrulewidth \the\arrayrulewidth \relax + \doublerulesep \the\doublerulesep \relax + \extratabsurround \the\extratabsurround \relax + \extrarowheight \the\extrarowheight \relax + \extrarowdepth \the\extrarowdepth \relax + \abovetabulinesep \the\abovetabulinesep \relax + \belowtabulinesep \the\belowtabulinesep \relax + \def\noexpand\arraystretch{\arraystretch}% + \ifdefined\minrowclearance \minrowclearance\the\minrowclearance\relax\fi}% + \begingroup + \@temptokena\expandafter{\tabu@savedparams}% => only for \savetabu / \usetabu + \ifx \tabu@arc@L\relax \else \tabu@setsave \tabu@arc@L \fi + \ifx \tabu@drsc@L\relax \else \tabu@setsave \tabu@drsc@L \fi + \tabu@setsave \tabu@ls@L \tabu@setsave \tabu@evr@L + \expandafter \endgroup \expandafter + \def\expandafter\tabu@saved@ \expandafter{\the\@temptokena + \let\tabu@arc@G \tabu@arc@L + \let\tabu@drsc@G \tabu@drsc@L + \let\tabu@ls@G \tabu@ls@L + \let\tabu@rc@G \tabu@rc@L + \let\tabu@evr@G \tabu@evr@L}% + \def\tabu@reset{\tabu@savedparams + \tabu@everyrowtrue \c@taburow \z@ + \let\CT@arc@ \tabu@arc@L + \let\CT@drsc@ \tabu@drsc@L + \let\tabu@ls@ \tabu@ls@L + \let\tabu@rc@ \tabu@rc@L + \global\tabu@alloc \tabu@alloc@save + \everyrow\expandafter{\tabu@evr@L}}% +}% \tabu@reset +\def\tabu@setsave #1{\expandafter\tabu@sets@ve #1\@nil{#1}} +\long\def\tabu@sets@ve #1\@nil #2{\@temptokena\expandafter{\the\@temptokena \def#2{#1}}} +%% The Rewriting Process ------------------------------------------- +\def\tabu@newcolumntype #1{% + \expandafter\tabu@new@columntype + \csname NC@find@\string#1\expandafter\endcsname + \csname NC@rewrite@\string#1\endcsname + {#1}% +}% \tabu@newcolumntype +\def\tabu@new@columntype #1#2#3{% + \def#1##1#3{\NC@{##1}}% + \let#2\relax \newcommand*#2% +}% \tabu@new@columntype +\def\tabu@privatecolumntype #1{% + \expandafter\tabu@private@columntype + \csname NC@find@\string#1\expandafter\endcsname + \csname NC@rewrite@\string#1\expandafter\endcsname + \csname tabu@NC@find@\string#1\expandafter\endcsname + \csname tabu@NC@rewrite@\string#1\endcsname + {#1}% +}% \tabu@privatecolumntype +\def\tabu@private@columntype#1#2#3#4{% + \g@addto@macro\tabu@privatecolumns{\let#1#3\let#2#4}% + \tabu@new@columntype#3#4% +}% \tabu@private@columntype +\let\tabu@privatecolumns \@empty +\newcommand*\tabucolumn [1]{\expandafter \def \expandafter + \tabu@highprioritycolumns\expandafter{\tabu@highprioritycolumns + \NC@do #1}}% +\let\tabu@highprioritycolumns \@empty +%% The | ``column'' : rewriting process -------------------------- +\tabu@privatecolumntype |{\tabu@rewritevline} +\newcommand*\tabu@rewritevline[1][]{\tabu@vlinearg{#1}% + \expandafter \NC@find \tabu@rewritten} +\def\tabu@lines #1{% + \ifx|#1\else \tabu@privatecolumntype #1{\tabu@rewritevline}\fi + \NC@list\expandafter{\the\NC@list \NC@do #1}% +}% \tabu@lines@ +\def\tabu@vlinearg #1{% + \ifx\\#1\\\def\tabu@thestyle {\tabu@ls@}% + \else\tabu@getline {#1}% + \fi + \def\tabu@rewritten ##1{\def\tabu@rewritten{!{##1\tabu@thevline}}% + }\expandafter\tabu@rewritten\expandafter{\tabu@thestyle}% + \expandafter \tabu@keepls \tabu@thestyle \@nil +}% \tabu@vlinearg +\def\tabu@keepls #1\@nil{% + \ifcat $\@cdr #1\@nil $% + \ifx \relax#1\else + \ifx \tabu@ls@#1\else + \let#1\relax + \xdef\tabu@mkpreambuffer{\tabu@mkpreambuffer + \tabu@savels\noexpand#1}\fi\fi\fi +}% \tabu@keepls +\def\tabu@thevline {\begingroup + \ifdefined\tabu@leaders + \setbox\@tempboxa=\vtop to\dimexpr + \ht\@arstrutbox+\dp\@arstrutbox{{\tabu@thevleaders}}% + \ht\@tempboxa=\ht\@arstrutbox \dp\@tempboxa=\dp\@arstrutbox + \box\@tempboxa + \else + \tabu@thevrule + \fi \endgroup +}% \tabu@thevline +\def\tabu@savels #1{% + \expandafter\let\csname\string#1\endcsname #1% + \expandafter\def\expandafter\tabu@reset\expandafter{\tabu@reset + \tabu@resetls#1}}% +\def\tabu@resetls #1{\expandafter\let\expandafter#1\csname\string#1\endcsname}% +%% \multicolumn inside tabu environment ----------------------------- +\tabu@newcolumntype \tabu@rewritemulticolumn{% + \aftergroup \tabu@endrewritemulticolumn % after \@mkpream group + \NC@list{\NC@do *}\tabu@textbar \tabu@lines + \tabu@savedecl + \tabu@privatecolumns + \NC@list\expandafter{\the\expandafter\NC@list \tabu@NC@list}% + \let\tabu@savels \relax + \NC@find +}% \tabu@rewritemulticolumn +\def\tabu@endrewritemulticolumn{\gdef\tabu@mkpreambuffer{}\endgroup} +\def\tabu@multicolumn{\tabu@ifenvir \tabu@multic@lumn \tabu@multicolumnORI} +\long\def\tabu@multic@lumn #1#2#3{\multispan{#1}\begingroup + \tabu@everyrowtrue + \NC@list{\NC@do \tabu@rewritemulticolumn}% + \expandafter\@gobbletwo % gobbles \multispan{#1} + \tabu@multicolumnORI{#1}{\tabu@rewritemulticolumn #2}% + {\iftabuscantokens \tabu@rescan \else \expandafter\@firstofone \fi + {#3}}% +}% \tabu@multic@lumn +%% The X column(s): rewriting process ----------------------------- +\tabu@privatecolumntype X[1][]{\begingroup \tabu@siunitx{\endgroup \tabu@rewriteX {#1}}} +\def\tabu@nosiunitx #1{#1{}{}\expandafter \NC@find \tabu@rewritten } +\def\tabu@siunitx #1{\@ifnextchar \bgroup + {\tabu@rewriteX@Ss{#1}} + {\tabu@nosiunitx{#1}}} +\def\tabu@rewriteX@Ss #1#2{\@temptokena{}% + \@defaultunits \let\tabu@temp =#2\relax\@nnil + \ifodd 1\ifx S\tabu@temp \else \ifx s\tabu@temp \else 0 \fi\fi + \def\NC@find{\def\NC@find >####1####2<####3\relax{#1 {####1}{####3}% + }\expandafter\NC@find \the\@temptokena \relax + }\expandafter\NC@rewrite@S \@gobble #2\relax + \else \tabu@siunitxerror + \fi + \expandafter \NC@find \tabu@rewritten +}% \tabu@rewriteX@Ss +\def\tabu@siunitxerror {\PackageError{tabu}{Not a S nor s column ! + \MessageBreak X column can only embed siunitx S or s columns}\@ehd +}% \tabu@siunitxerror +\def\tabu@rewriteX #1#2#3{\tabu@Xarg {#1}{#2}{#3}% + \iftabu@measuring + \else \tabu@measuringtrue % first X column found in the preamble + \let\@halignto \relax \let\tabu@halignto \relax + \iftabu@spread \tabu@spreadtarget \tabu@target \tabu@target \z@ + \else \tabu@spreadtarget \z@ \fi + \ifdim \tabu@target=\z@ + \setlength\tabu@target \tabu@thetarget + \tabu@message{\tabu@message@defaulttarget}% + \else \tabu@message{\tabu@message@target}\fi + \fi +}% \tabu@rewriteX +\def\tabu@rewriteXrestore #1#2#3{\let\@halignto \relax + \def\tabu@rewritten{l}} +\def\tabu@Xarg #1#2#3{% + \advance\tabu@Xcol \@ne \let\tabu@Xlcr \@empty + \let\tabu@Xdisp \@empty \let\tabu@Xmath \@empty + \ifx\\#1\\% + \def\tabu@rewritten{p}\tabucolX \p@ % + \else + \let\tabu@rewritten \@empty \let\tabu@temp \@empty \tabucolX \z@ + \tabu@Xparse {}#1\relax + \fi + \tabu@Xrewritten{#2}{#3}% +}% \tabu@Xarg +\def\tabu@Xparse #1{\futurelet\@let@token \tabu@Xtest} +\expandafter\def\expandafter\tabu@Xparsespace\space{\tabu@Xparse{}} +\def\tabu@Xtest{% + \ifcase \ifx \relax\@let@token \z@ \else + \if ,\@let@token \m@ne\else + \if p\@let@token 1\else + \if m\@let@token 2\else + \if b\@let@token 3\else + \if l\@let@token 4\else + \if c\@let@token 5\else + \if r\@let@token 6\else + \if j\@let@token 7\else + \if L\@let@token 8\else + \if C\@let@token 9\else + \if R\@let@token 10\else + \if J\@let@token 11\else + \ifx \@sptoken\@let@token 12\else + \if .\@let@token 13\else + \if -\@let@token 13\else + \ifcat $\@let@token 14\else + 15\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\relax + \or \tabu@Xtype {p}% + \or \tabu@Xtype {m}% + \or \tabu@Xtype {b}% + \or \tabu@Xalign \raggedright\relax + \or \tabu@Xalign \centering\relax + \or \tabu@Xalign \raggedleft\relax + \or \tabu@Xalign \tabu@justify\relax + \or \tabu@Xalign \RaggedRight\raggedright + \or \tabu@Xalign \Centering\centering + \or \tabu@Xalign \RaggedLeft\raggedleft + \or \tabu@Xalign \justifying\tabu@justify + \or \expandafter \tabu@Xparsespace + \or \expandafter \tabu@Xcoef + \or \expandafter \tabu@Xm@th + \or \tabu@Xcoef{}% + \else\expandafter \tabu@Xparse + \fi +}% \tabu@Xtest +\def\tabu@Xalign #1#2{% + \ifx \tabu@Xlcr\@empty \else \PackageWarning{tabu} + {Duplicate horizontal alignment specification}\fi + \ifdefined#1\def\tabu@Xlcr{#1}\let#1\relax + \else \def\tabu@Xlcr{#2}\let#2\relax\fi + \expandafter\tabu@Xparse +}% \tabu@Xalign +\def\tabu@Xtype #1{% + \ifx \tabu@rewritten\@empty \else \PackageWarning{tabu} + {Duplicate vertical alignment specification}\fi + \def\tabu@rewritten{#1}\expandafter\tabu@Xparse +}% \tabu@Xtype +\def\tabu@Xcoef#1{\edef\tabu@temp{\tabu@temp#1}% + \afterassignment\tabu@Xc@ef \tabu@cnt\number\if-#10\fi +}% \tabu@Xcoef +\def\tabu@Xc@ef{\advance\tabucolX \tabu@temp\the\tabu@cnt\p@ + \tabu@Xparse{}% +}% \tabu@Xc@ef +\def\tabu@Xm@th #1{\futurelet \@let@token \tabu@Xd@sp} +\def\tabu@Xd@sp{\let\tabu@Xmath=$% + \ifx $\@let@token \def\tabu@Xdisp{\displaystyle}% + \expandafter\tabu@Xparse + \else \expandafter\tabu@Xparse\expandafter{\expandafter}% + \fi +}% \tabu@Xd@sp +\def\tabu@Xrewritten {% + \ifx \tabu@rewritten\@empty \def\tabu@rewritten{p}\fi + \ifdim \tabucolX<\z@ \tabu@negcoeftrue + \else\ifdim \tabucolX=\z@ \tabucolX \p@ + \fi\fi + \edef\tabu@temp{{\the\tabu@Xcol}{\tabu@strippt\tabucolX}}% + \edef\tabu@Xcoefs{\tabu@Xcoefs \tabu@ \tabu@temp}% + \edef\tabu@rewritten ##1##2{\def\noexpand\tabu@rewritten{% + >{\tabu@Xlcr \ifx$\tabu@Xmath$\tabu@Xdisp\fi ##1}% + \tabu@rewritten {\tabu@hsize \tabu@temp}% + <{##2\ifx$\tabu@Xmath$\fi}}% + }\tabu@rewritten +}% \tabu@Xrewritten +\def\tabu@hsize #1#2{% + \ifdim #2\p@<\z@ + \ifdim \tabucolX=\maxdimen \tabu@wd{#1}\else + \ifdim \tabu@wd{#1}<-#2\tabucolX \tabu@wd{#1}\else -#2\tabucolX\fi + \fi + \else #2\tabucolX + \fi +}% \tabu@hsize +%% \usetabu and \preamble: rewriting process --------------------- +\tabu@privatecolumntype \usetabu [1]{% + \ifx\\#1\\\tabu@saveerr{}\else + \@ifundefined{tabu@saved@\string#1} + {\tabu@saveerr{#1}} + {\let\tabu@rewriteX \tabu@rewriteXrestore + \csname tabu@saved@\string#1\expandafter\endcsname\expandafter\@ne}% + \fi +}% \NC@rewrite@\usetabu +\tabu@privatecolumntype \preamble [1]{% + \ifx\\#1\\\tabu@saveerr{}\else + \@ifundefined{tabu@saved@\string#1} + {\tabu@saveerr{#1}} + {\csname tabu@saved@\string#1\expandafter\endcsname\expandafter\z@}% + \fi +}% \NC@rewrite@\preamble +%% Controlling the rewriting process ------------------------------- +\tabu@newcolumntype \tabu@rewritefirst{% + \iftabu@long \aftergroup \tabu@longpream % + \else \aftergroup \tabu@pream + \fi + \let\tabu@ \relax \let\tabu@hsize \relax + \let\tabu@Xcoefs \@empty \let\tabu@savels \relax + \tabu@Xcol \z@ \tabu@cnt \tw@ + \gdef\tabu@mkpreambuffer{\tabu@{}}\tabu@measuringfalse + \global\setbox\@arstrutbox \box\@arstrutbox + \NC@list{\NC@do *}\tabu@textbar \tabu@lines + \NC@list\expandafter{\the\NC@list \NC@do X}% + \iftabu@siunitx % + \NC@list\expandafter{\the\NC@list \NC@do S\NC@do s}\fi + \NC@list\expandafter{\the\expandafter\NC@list \tabu@highprioritycolumns}% + \expandafter\def\expandafter\tabu@NC@list\expandafter{% + \the\expandafter\NC@list \tabu@NC@list}% % * | X S + \NC@list\expandafter{\expandafter \NC@do \expandafter\usetabu + \expandafter \NC@do \expandafter\preamble + \the\NC@list \NC@do \tabu@rewritemiddle + \NC@do \tabu@rewritelast}% + \tabu@savedecl + \tabu@privatecolumns + \edef\tabu@prev{\the\@temptokena}\NC@find \tabu@rewritemiddle +}% NC@rewrite@\tabu@rewritefirst +\tabu@newcolumntype \tabu@rewritemiddle{% + \edef\tabu@temp{\the\@temptokena}\NC@find \tabu@rewritelast +}% \NC@rewrite@\tabu@rewritemiddle +\tabu@newcolumntype \tabu@rewritelast{% + \ifx \tabu@temp\tabu@prev \advance\tabu@cnt \m@ne + \NC@list\expandafter{\tabu@NC@list \NC@do \tabu@rewritemiddle + \NC@do \tabu@rewritelast}% + \else \let\tabu@prev\tabu@temp + \fi + \ifcase \tabu@cnt \expandafter\tabu@endrewrite + \else \expandafter\NC@find \expandafter\tabu@rewritemiddle + \fi +}% \NC@rewrite@\tabu@rewritelast +%% Choosing the strategy -------------------------------------------- +\def\tabu@endrewrite {% + \let\tabu@temp \NC@find + \ifx \@arrayright\relax \let\@arrayright \@empty \fi + \count@=% + \ifx \@finalstrut\tabu@finalstrut \z@ % outer in mode 0 print + \iftabu@measuring + \xdef\tabu@mkpreambuffer{\tabu@mkpreambuffer + \tabu@target \csname tabu@\the\tabu@nested.T\endcsname + \tabucolX \csname tabu@\the\tabu@nested.X\endcsname + \edef\@halignto {\ifx\@arrayright\@empty to\tabu@target\fi}}% + \fi + \else\iftabu@measuring 4 % X columns + \xdef\tabu@mkpreambuffer{\tabu@{\tabu@mkpreambuffer + \tabu@target \the\tabu@target + \tabu@spreadtarget \the\tabu@spreadtarget}% + \def\noexpand\tabu@Xcoefs{\tabu@Xcoefs}% + \edef\tabu@halignto{\ifx \@arrayright\@empty to\tabu@target\fi}}% + \let\tabu@Xcoefs \relax + \else\ifcase\tabu@nested \thr@@ % outer, no X + \global\let\tabu@afterendpar \relax + \else \@ne % inner, no X, outer in mode 1 or 2 + \fi + \ifdefined\tabu@usetabu + \else \ifdim\tabu@target=\z@ + \else \let\tabu@temp \tabu@extracolsep + \fi\fi + \fi + \fi + \xdef\tabu@mkpreambuffer{\count@ \the\count@ \tabu@mkpreambuffer}% + \tabu@temp +}% \tabu@endrewrite +\def\tabu@extracolsep{\@defaultunits \expandafter\let + \expandafter\tabu@temp \expandafter=\the\@temptokena \relax\@nnil + \ifx \tabu@temp\@sptoken + \expandafter\tabu@gobblespace \expandafter\tabu@extracolsep + \else + \edef\tabu@temp{\noexpand\NC@find + \if |\noexpand\tabu@temp @% + \else\if !\noexpand\tabu@temp @% + \else !% + \fi\fi + {\noexpand\extracolsep\noexpand\@flushglue}}% + \fi + \tabu@temp +}% \tabu@extrac@lsep +%% Implementing the strategy ---------------------------------------- +\long\def\tabu@pream #1\@preamble {% + \let\tabu@ \tabu@@ \tabu@mkpreambuffer \tabu@aftergroupcleanup + \NC@list\expandafter {\tabu@NC@list}% in case of nesting... + \ifdefined\tabu@usetabu \tabu@usetabu \tabu@target \z@ \fi + \let\tabu@savedpreamble \@preamble + \global\let\tabu@elapsedtime \relax + \tabu@thebody ={#1\tabu@aftergroupcleanup}% + \tabu@thebody =\expandafter{\the\expandafter\tabu@thebody + \@preamble}% + \edef\tabuthepreamble {\the\tabu@thebody}% ( no @ allowed for \scantokens ) + \tabu@select +}% \tabu@pream +\long\def\tabu@longpream #1\LT@bchunk #2\LT@bchunk{% + \let\tabu@ \tabu@@ \tabu@mkpreambuffer \tabu@aftergroupcleanup + \NC@list\expandafter {\tabu@NC@list}% in case of nesting... + \let\tabu@savedpreamble \@preamble + \global\let\tabu@elapsedtime \relax + \tabu@thebody ={#1\LT@bchunk #2\tabu@aftergroupcleanup \LT@bchunk}% + \edef\tabuthepreamble {\the\tabu@thebody}% ( no @ allowed for \scantokens ) + \tabu@select +}% \tabu@longpream +\def\tabu@select {% + \ifnum\tabu@nested>\z@ \tabuscantokensfalse \fi + \ifnum \count@=\@ne \iftabu@measuring \count@=\tw@ \fi\fi + \ifcase \count@ + \global\let\tabu@elapsedtime \relax + \tabu@seteverycr + \expandafter \tabuthepreamble % vertical adjustment (inherited from outer) + \or % exit in vertical measure + struts per cell because no X and outer in mode 3 + \tabu@evr{\tabu@verticalinit}\tabu@celllalign@def{\tabu@verticalmeasure}% + \def\tabu@cellralign{\tabu@verticalspacing}% + \tabu@seteverycr + \expandafter \tabuthepreamble + \or % exit without measure because no X and outer in mode 4 + \tabu@evr{}\tabu@celllalign@def{}\let\tabu@cellralign \@empty + \tabu@seteverycr + \expandafter \tabuthepreamble + \else % needs trials + \tabu@evr{}\tabu@celllalign@def{}\let\tabu@cellralign \@empty + \tabu@savecounters + \expandafter \tabu@setstrategy + \fi +}% \tabu@select +\def\tabu@@ {\gdef\tabu@mkpreambuffer} +%% Protections to set up before trials ------------------------------ +\def\tabu@setstrategy {\begingroup % + \tabu@trialh@@k \tabu@cnt \z@ % number of trials + \hbadness \@M \let\hbadness \@tempcnta + \hfuzz \maxdimen \let\hfuzz \@tempdima + \let\write \tabu@nowrite\let\GenericError \tabu@GenericError + \let\savetabu \@gobble \let\tabudefaulttarget \linewidth + \let\@footnotetext \@gobble \let\@xfootnote \tabu@xfootnote + \let\color \tabu@nocolor\let\rowcolor \tabu@norowcolor + \let\tabu@aftergroupcleanup \relax % only after the last trial + \tabu@mkpreambuffer + \ifnum \count@>\thr@@ \let\@halignto \@empty \tabucolX@init + \def\tabu@lasttry{\m@ne\p@}\fi + \begingroup \iffalse{\fi \ifnum0=`}\fi + \toks@{}\def\tabu@stack{b}\iftabuscantokens \endlinechar=10 \obeyspaces \fi % + \tabu@collectbody \tabu@strategy % +}% \tabu@setstrategy +\def\tabu@savecounters{% + \def\@elt ##1{\csname c@##1\endcsname\the\csname c@##1\endcsname}% + \edef\tabu@clckpt {\begingroup \globaldefs=\@ne \cl@@ckpt \endgroup}\let\@elt \relax +}% \tabu@savecounters +\def\tabucolX@init {% \tabucolX <= \tabu@target / (sum coefs > 0) + \dimen@ \z@ \tabu@Xsum \z@ \tabucolX \z@ \let\tabu@ \tabu@Xinit \tabu@Xcoefs + \ifdim \dimen@>\z@ + \@tempdima \dimexpr \tabu@target *\p@/\dimen@ + \tabu@hfuzz\relax + \ifdim \tabucolX<\@tempdima \tabucolX \@tempdima \fi + \fi +}% \tabucolX@init +\def\tabu@Xinit #1#2{\tabu@Xcol #1 \advance \tabu@Xsum + \ifdim #2\p@>\z@ #2\p@ \advance\dimen@ #2\p@ + \else -#2\p@ \tabu@negcoeftrue + \@tempdima \dimexpr \tabu@target*\p@/\dimexpr-#2\p@\relax \relax + \ifdim \tabucolX<\@tempdima \tabucolX \@tempdima \fi + \tabu@wddef{#1}{0pt}% + \fi +}% \tabu@Xinit +%% Collecting the environment body ---------------------------------- +\long\def\tabu@collectbody #1#2\end #3{% + \edef\tabu@stack{\tabu@pushbegins #2\begin\end\expandafter\@gobble\tabu@stack}% + \ifx \tabu@stack\@empty + \toks@\expandafter{\expandafter\tabu@thebody\expandafter{\the\toks@ #2}% + \def\tabu@end@envir{\end{#3}}% + \iftabuscantokens + \iftabu@long \def\tabu@endenvir {\end{#3}\tabu@gobbleX}% + \else \def\tabu@endenvir {\let\endarray \@empty + \end{#3}\tabu@gobbleX}% + \fi + \else \def\tabu@endenvir {\end{#3}}\fi}% + \let\tabu@collectbody \tabu@endofcollect + \else\def\tabu@temp{#3}% + \ifx \tabu@temp\@empty \toks@\expandafter{\the\toks@ #2\end }% + \else \ifx\tabu@temp\tabu@@spxiii \toks@\expandafter{\the\toks@ #2\end #3}% + \else \ifx\tabu@temp\tabu@X \toks@\expandafter{\the\toks@ #2\end #3}% + \else \toks@\expandafter{\the\toks@ #2\end{#3}}% + \fi\fi\fi + \fi + \tabu@collectbody{#1}% +}% \tabu@collectbody +\long\def\tabu@pushbegins#1\begin#2{\ifx\end#2\else b\expandafter\tabu@pushbegins\fi}% +\def\tabu@endofcollect #1{\ifnum0=`{}\fi + \expandafter\endgroup \the\toks@ #1% +}% \tabu@endofcollect +%% The trials: switching between strategies ------------------------- +\def\tabu@strategy {\relax % stops \count@ assignment ! + \ifcase\count@ % case 0 = print with vertical adjustment (outer is finished) + \expandafter \tabu@endoftrials + \or % case 1 = exit in vertical measure (outer in mode 3) + \expandafter\xdef\csname tabu@\the\tabu@nested.T\endcsname{\the\tabu@target}% + \expandafter\xdef\csname tabu@\the\tabu@nested.X\endcsname{\the\tabucolX}% + \expandafter \tabu@endoftrials + \or % case 2 = exit with a rule replacing the table (outer in mode 4) + \expandafter \tabu@quickend + \or % case 3 = outer is in mode 3 because of no X + \begingroup + \tabu@evr{\tabu@verticalinit}\tabu@celllalign@def{\tabu@verticalmeasure}% + \def\tabu@cellralign{\tabu@verticalspacing}% + \expandafter \tabu@measuring + \else % case 4 = horizontal measure + \begingroup + \global\let\tabu@elapsedtime \tabu@message@etime + \long\def\multicolumn##1##2##3{\multispan{##1}}% + \let\tabu@startpboxORI \@startpbox + \iftabu@spread + \def\tabu@naturalXmax {\z@}% + \let\tabu@naturalXmin \tabu@naturalXmax + \tabu@evr{\global\tabu@naturalX \z@}% + \let\@startpbox \tabu@startpboxmeasure + \else\iftabu@negcoef + \let\@startpbox \tabu@startpboxmeasure + \else \let\@startpbox \tabu@startpboxquick + \fi\fi + \expandafter \tabu@measuring + \fi +}% \tabu@strategy +\def\tabu@measuring{\expandafter \tabu@trial \expandafter + \count@ \the\count@ \tabu@endtrial +}% \tabu@measuring +\def\tabu@trial{\iftabu@long \tabu@longtrial \else \tabu@shorttrial \fi} +\def\tabu@shorttrial {\setbox\tabu@box \hbox\bgroup \tabu@seteverycr + \ifx \tabu@savecounters\relax \else + \let\tabu@savecounters \relax \tabu@clckpt \fi + $\iftabuscantokens \tabu@rescan \else \expandafter\@secondoftwo \fi + \expandafter{\expandafter \tabuthepreamble + \the\tabu@thebody + \csname tabu@adl@endtrial\endcsname + \endarray}$\egroup % got \tabu@box +}% \tabu@shorttrial +\def\tabu@longtrial {\setbox\tabu@box \hbox\bgroup \tabu@seteverycr + \ifx \tabu@savecounters\relax \else + \let\tabu@savecounters \relax \tabu@clckpt \fi + \iftabuscantokens \tabu@rescan \else \expandafter\@secondoftwo \fi + \expandafter{\expandafter \tabuthepreamble + \the\tabu@thebody + \tabuendlongtrial}\egroup % got \tabu@box +}% \tabu@longtrial +\def\tabuendlongtrial{% no @ allowed for \scantokens + \LT@echunk \global\setbox\@ne \hbox{\unhbox\@ne}\kern\wd\@ne + \LT@get@widths +}% \tabuendlongtrial +\def\tabu@adl@endtrial{% + \crcr \noalign{\global\adl@ncol \tabu@nbcols}}% anything global is crap, junky and fails ! +\def\tabu@seteverycr {\tabu@reset + \everycr \expandafter{\the\everycr \tabu@everycr}% + \let\everycr \tabu@noeverycr % +}% \tabu@seteverycr +\def\tabu@noeverycr{{\aftergroup\tabu@restoreeverycr \afterassignment}\toks@} +\def\tabu@restoreeverycr {\let\everycr \tabu@@everycr} +\def\tabu@everycr {\iftabu@everyrow \noalign{\tabu@everyrow}\fi} +\def\tabu@endoftrials {% + \iftabuscantokens \expandafter\@firstoftwo + \else \expandafter\@secondoftwo + \fi + {\expandafter \tabu@closetrialsgroup \expandafter + \tabu@rescan \expandafter{% + \expandafter\tabuthepreamble + \the\expandafter\tabu@thebody + \iftabu@long \else \endarray \fi}} + {\expandafter\tabu@closetrialsgroup \expandafter + \tabuthepreamble + \the\tabu@thebody}% + \tabu@endenvir % Finish ! +}% \tabu@endoftrials +\def\tabu@closetrialsgroup {% + \toks@\expandafter{\tabu@endenvir}% + \edef\tabu@bufferX{\endgroup + \tabucolX \the\tabucolX + \tabu@target \the\tabu@target + \tabu@cnt \the\tabu@cnt + \def\noexpand\tabu@endenvir{\the\toks@}% + %Quid de \@halignto = \tabu@halignto ?? + }% \tabu@bufferX + \tabu@bufferX + \ifcase\tabu@nested % print out (outer in mode 0) + \global\tabu@cnt \tabu@cnt + \tabu@evr{\tabu@verticaldynamicadjustment}% + \tabu@celllalign@def{\everypar{}}\let\tabu@cellralign \@empty + \let\@finalstrut \tabu@finalstrut + \else % vertical measure of nested tabu + \tabu@evr{\tabu@verticalinit}% + \tabu@celllalign@def{\tabu@verticalmeasure}% + \def\tabu@cellralign{\tabu@verticalspacing}% + \fi + \tabu@clckpt \let\@halignto \tabu@halignto + \let\@halignto \@empty + \tabu@seteverycr + \ifdim \tabustrutrule>\z@ \ifnum\tabu@nested=\z@ + \setbox\@arstrutbox \box\voidb@x % force \@arstrutbox to be rebuilt (visible struts) + \fi\fi +}% \tabu@closetrialsgroup +\def\tabu@quickend {\expandafter \endgroup \expandafter + \tabu@target \the\tabu@target \tabu@quickrule + \let\endarray \relax \tabu@endenvir +}% \tabu@quickend +\def\tabu@endtrial {\relax % stops \count@ assignment ! + \ifcase \count@ \tabu@err % case 0 = impossible here + \or \tabu@err % case 1 = impossible here + \or \tabu@err % case 2 = impossible here + \or % case 3 = outer goes into mode 0 + \def\tabu@bufferX{\endgroup}\count@ \z@ + \else % case 4 = outer goes into mode 3 + \iftabu@spread \tabu@spreadarith % inner into mode 1 (outer in mode 3) + \else \tabu@arith % or 2 (outer in mode 4) + \fi + \count@=% + \ifcase\tabu@nested \thr@@ % outer goes into mode 3 + \else\iftabu@measuring \tw@ % outer is in mode 4 + \else \@ne % outer is in mode 3 + \fi\fi + \edef\tabu@bufferX{\endgroup + \tabucolX \the\tabucolX + \tabu@target \the\tabu@target}% + \fi + \expandafter \tabu@bufferX \expandafter + \count@ \the\count@ \tabu@strategy +}% \tabu@endtrial +\def\tabu@err{\errmessage{(tabu) Internal impossible error! (\count@=\the\count@)}} +%% The algorithms: compute the widths / stop or go on --------------- +\def\tabu@arithnegcoef {% + \@tempdima \z@ \dimen@ \z@ \let\tabu@ \tabu@arith@negcoef \tabu@Xcoefs +}% \tabu@arithnegcoef +\def\tabu@arith@negcoef #1#2{% + \ifdim #2\p@>\z@ \advance\dimen@ #2\p@ % saturated by definition + \advance\@tempdima #2\tabucolX + \else + \ifdim -#2\tabucolX <\tabu@wd{#1}% c_i X < natural width <= \tabu@target-> saturated + \advance\dimen@ -#2\p@ + \advance\@tempdima -#2\tabucolX + \else + \advance\@tempdima \tabu@wd{#1}% natural width <= c_i X => neutralised + \ifdim \tabu@wd{#1}<\tabu@target \else % neutralised + \advance\dimen@ -#2\p@ % saturated (natural width = tabu@target) + \fi + \fi + \fi +}% \tabu@arith@negcoef +\def\tabu@givespace #1#2{% here \tabu@DELTA < \z@ + \ifdim \@tempdima=\z@ + \tabu@wddef{#1}{\the\dimexpr -\tabu@DELTA*\p@/\tabu@Xsum}% + \else + \tabu@wddef{#1}{\the\dimexpr \tabu@hsize{#1}{#2} + *(\p@ -\tabu@DELTA*\p@/\@tempdima)/\p@\relax}% + \fi +}% \tabu@givespace +\def\tabu@arith {\advance\tabu@cnt \@ne + \ifnum \tabu@cnt=\@ne \tabu@message{\tabu@titles}\fi + \tabu@arithnegcoef + \@tempdimb \dimexpr \wd\tabu@box -\@tempdima \relax % + \tabu@DELTA = \dimexpr \wd\tabu@box - \tabu@target \relax + \tabu@message{\tabu@message@arith}% + \ifdim \tabu@DELTA <\tabu@hfuzz + \ifdim \tabu@DELTA<\z@ % wd (tabu)<\tabu@target ? + \let\tabu@ \tabu@givespace \tabu@Xcoefs + \advance\@tempdima \@tempdimb \advance\@tempdima -\tabu@DELTA % for message + \else % already converged: nothing to do but nearly impossible... + \fi + \tabucolX \maxdimen + \tabu@measuringfalse + \else % need for narrower X columns + \tabucolX =\dimexpr (\@tempdima -\tabu@DELTA) *\p@/\tabu@Xsum \relax + \tabu@measuringtrue + \@whilesw \iftabu@measuring\fi {% + \advance\tabu@cnt \@ne + \tabu@arithnegcoef + \tabu@DELTA =\dimexpr \@tempdima+\@tempdimb -\tabu@target \relax % always < 0 here + \tabu@message{\tabu@header + \tabu@msgalign \tabucolX { }{ }{ }{ }{ }\@@ + \tabu@msgalign \@tempdima+\@tempdimb { }{ }{ }{ }{ }\@@ + \tabu@msgalign \tabu@target { }{ }{ }{ }{ }\@@ + \tabu@msgalign@PT \dimen@ { }{}{}{}{}{}{}\@@ + \ifdim -\tabu@DELTA<\tabu@hfuzz \tabu@spaces target ok\else + \tabu@msgalign \dimexpr -\tabu@DELTA *\p@/\dimen@ {}{}{}{}{}\@@ + \fi}% + \ifdim -\tabu@DELTA<\tabu@hfuzz + \advance\@tempdima \@tempdimb % for message + \tabu@measuringfalse + \else + \advance\tabucolX \dimexpr -\tabu@DELTA *\p@/\dimen@ \relax + \fi + }% + \fi + \tabu@message{\tabu@message@reached}% + \edef\tabu@bufferX{\endgroup \tabu@cnt \the\tabu@cnt + \tabucolX \the\tabucolX + \tabu@target \the\tabu@target}% +}% \tabu@arith +\def\tabu@spreadarith {% + \dimen@ \z@ \@tempdima \tabu@naturalXmax \let\tabu@ \tabu@spread@arith \tabu@Xcoefs + \edef\tabu@naturalXmin {\the\dimexpr\tabu@naturalXmin*\dimen@/\p@}% + \@tempdimc =\dimexpr \wd\tabu@box -\tabu@naturalXmax+\tabu@naturalXmin \relax + \iftabu@measuring + \tabu@target =\dimexpr \@tempdimc+\tabu@spreadtarget \relax + \edef\tabu@bufferX{\endgroup \tabucolX \the\tabucolX \tabu@target\the\tabu@target}% + \else + \tabu@message{\tabu@message@spreadarith}% + \ifdim \dimexpr \@tempdimc+\tabu@spreadtarget >\tabu@target + \tabu@message{(tabu) spread + \ifdim \@tempdimc>\tabu@target useless here: default target used% + \else too large: reduced to fit default target\fi.}% + \else + \tabu@target =\dimexpr \@tempdimc+\tabu@spreadtarget \relax + \tabu@message{(tabu) spread: New target set to \the\tabu@target^^J}% + \fi + \begingroup \let\tabu@wddef \@gobbletwo + \@tempdimb \@tempdima + \tabucolX@init + \tabu@arithnegcoef + \wd\tabu@box =\dimexpr \wd\tabu@box +\@tempdima-\@tempdimb \relax + \expandafter\endgroup \expandafter\tabucolX \the\tabucolX + \tabu@arith + \fi +}% \tabu@spreadarith +\def\tabu@spread@arith #1#2{% + \ifdim #2\p@>\z@ \advance\dimen@ #2\p@ + \else \advance\@tempdima \tabu@wd{#1}\relax + \fi +}% \tabu@spread@arith +%% Reporting in the .log file --------------------------------------- +\def\tabu@message@defaulttarget{% + \ifnum\tabu@nested=\z@^^J(tabu) Default target: + \ifx\tabudefaulttarget\linewidth \string\linewidth + \ifdim \tabu@thetarget=\linewidth \else + -\the\dimexpr\linewidth-\tabu@thetarget\fi = + \else\ifx\tabudefaulttarget\linegoal\string\linegoal= + \fi\fi + \else (tabu) Default target (nested): \fi + \the\tabu@target \on@line + \ifnum\tabu@nested=\z@ , page \the\c@page\fi} +\def\tabu@message@target {^^J(tabu) Target specified: + \the\tabu@target \on@line, page \the\c@page} +\def\tabu@message@arith {\tabu@header + \tabu@msgalign \tabucolX { }{ }{ }{ }{ }\@@ + \tabu@msgalign \wd\tabu@box { }{ }{ }{ }{ }\@@ + \tabu@msgalign \tabu@target { }{ }{ }{ }{ }\@@ + \tabu@msgalign@PT \dimen@ { }{}{}{}{}{}{}\@@ + \ifdim \tabu@DELTA<\tabu@hfuzz giving space\else + \tabu@msgalign \dimexpr (\@tempdima-\tabu@DELTA) *\p@/\tabu@Xsum -\tabucolX {}{}{}{}{}\@@ + \fi +}% \tabu@message@arith +\def\tabu@message@spreadarith {\tabu@spreadheader + \tabu@msgalign \tabu@spreadtarget { }{ }{ }{ }{}\@@ + \tabu@msgalign \wd\tabu@box { }{ }{ }{ }{}\@@ + \tabu@msgalign -\tabu@naturalXmax { }{}{}{}{}\@@ + \tabu@msgalign \tabu@naturalXmin { }{ }{ }{ }{}\@@ + \tabu@msgalign \ifdim \dimexpr\@tempdimc>\tabu@target \tabu@target + \else \@tempdimc+\tabu@spreadtarget \fi + {}{}{}{}{}\@@} +\def\tabu@message@negcoef #1#2{ + \tabu@spaces\tabu@spaces\space * #1. X[\rem@pt#2]: + \space width = \tabu@wd {#1} + \expandafter\string\csname tabu@\the\tabu@nested.W\number#1\endcsname + \ifdim -\tabu@pt#2\tabucolX<\tabu@target + < \number-\rem@pt#2 X + = \the\dimexpr -\tabu@pt#2\tabucolX \relax + \else + <= \the\tabu@target\space < \number-\rem@pt#2 X\fi} +\def\tabu@message@reached{\tabu@header + ******* Reached Target: + hfuzz = \tabu@hfuzz\on@line\space *******} +\def\tabu@message@etime{\edef\tabu@stoptime{\the\pdfelapsedtime}% + \tabu@message{(tabu)\tabu@spaces Time elapsed during measure: + \the\numexpr(\tabu@stoptime-\tabu@starttime-32767)/65536\relax sec + \the\numexpr\numexpr(\tabu@stoptime-\tabu@starttime) + -\numexpr(\tabu@stoptime-\tabu@starttime-32767)/65536\relax*65536\relax + *1000/65536\relax ms \tabu@spaces(\the\tabu@cnt\space + cycle\ifnum\tabu@cnt>\@ne s\fi)^^J^^J}} +\def\tabu@message@verticalsp {% + \ifdim \@tempdima>\tabu@ht + \ifdim \@tempdimb>\tabu@dp + \expandafter\expandafter\expandafter\string\tabu@ht = + \tabu@msgalign \@tempdima { }{ }{ }{ }{ }\@@ + \expandafter\expandafter\expandafter\string\tabu@dp = + \tabu@msgalign \@tempdimb { }{ }{ }{ }{ }\@@^^J% + \else + \expandafter\expandafter\expandafter\string\tabu@ht = + \tabu@msgalign \@tempdima { }{ }{ }{ }{ }\@@^^J% + \fi + \else\ifdim \@tempdimb>\tabu@dp + \tabu@spaces\tabu@spaces\tabu@spaces + \expandafter\expandafter\expandafter\string\tabu@dp = + \tabu@msgalign \@tempdimb { }{ }{ }{ }{ }\@@^^J\fi + \fi +}% \tabu@message@verticalsp +\edef\tabu@spaces{\@spaces} +\def\tabu@strippt{\expandafter\tabu@pt\the} +{\@makeother\P \@makeother\T\lowercase{\gdef\tabu@pt #1PT{#1}}} +\def\tabu@msgalign{\expandafter\tabu@msg@align\the\dimexpr} +\def\tabu@msgalign@PT{\expandafter\tabu@msg@align\romannumeral-`\0\tabu@strippt} +\def\do #1{% + \def\tabu@msg@align##1.##2##3##4##5##6##7##8##9\@@{% + \ifnum##1<10 #1 #1\else + \ifnum##1<100 #1 \else + \ifnum##1<\@m #1\fi\fi\fi + ##1.##2##3##4##5##6##7##8#1}% + \def\tabu@header{(tabu) \ifnum\tabu@cnt<10 #1\fi\the\tabu@cnt) }% + \def\tabu@titles{\ifnum \tabu@nested=\z@ + (tabu) Try#1 #1 tabu X #1 #1 #1tabu Width #1 #1 Target + #1 #1 #1 Coefs #1 #1 #1 Update^^J\fi}% + \def\tabu@spreadheader{% + (tabu) Try#1 #1 Spread #1 #1 tabu Width #1 #1 #1 Nat. X #1 #1 #1 #1Nat. Min. + #1 New Target^^J% + (tabu) sprd} + \def\tabu@message@save {\begingroup + \def\x ####1{\tabu@msg@align ####1{ }{ }{ }{ }{}\@@} + \def\z ####1{\expandafter\x\expandafter{\romannumeral-`\0\tabu@strippt + \dimexpr####1\p@{ }{ }}}% + \let\color \relax \def\tabu@rulesstyle ####1####2{\detokenize{####1}}% + \let\CT@arc@ \relax \let\@preamble \@gobble + \let\tabu@savedpream \@firstofone + \let\tabu@savedparams \@firstofone + \def\tabu@target ####1\relax {(tabu) target #1 #1 #1 #1 #1 = \x{####1}^^J}% + \def\tabucolX ####1\relax {(tabu) X columns width#1 = \x{####1}^^J}% + \def\tabu@nbcols ####1\relax {(tabu) Number of columns: \z{####1}^^J}% + \def\tabu@aligndefault ####1{(tabu) Default alignment: #1 #1 ####1^^J}% + \def\col@sep ####1\relax {(tabu) column sep #1 #1 #1 = \x{####1}^^J}% + \def\arrayrulewidth ####1\relax{(tabu) arrayrulewidth #1 = \x{####1}}% + \def\doublerulesep ####1\relax { doublerulesep = \x{####1}^^J}% + \def\extratabsurround####1\relax{(tabu) extratabsurround = \x{####1}^^J}% + \def\extrarowheight ####1\relax{(tabu) extrarowheight #1 = \x{####1}}% + \def\extrarowdepth ####1\relax {extrarowdepth = \x{####1}^^J}% + \def\abovetabulinesep####1\relax{(tabu) abovetabulinesep=\x{####1} }% + \def\belowtabulinesep####1\relax{ belowtabulinesep=\x{####1}^^J}% + \def\arraystretch ####1{(tabu) arraystretch #1 #1 = \z{####1}^^J}% + \def\minrowclearance####1\relax{(tabu) minrowclearance #1 = \x{####1}^^J}% + \def\tabu@arc@L ####1{(tabu) taburulecolor #1 #1 = ####1^^J}% + \def\tabu@drsc@L ####1{(tabu) tabudoublerulecolor= ####1^^J}% + \def\tabu@evr@L ####1{(tabu) everyrow #1 #1 #1 #1 = \detokenize{####1}^^J}% + \def\tabu@ls@L ####1{(tabu) line style = \detokenize{####1}^^J}% + \def\NC@find ####1\@nil{(tabu) tabu preamble#1 #1 = \detokenize{####1}^^J}% + \def\tabu@wddef####1####2{(tabu) Natural width ####1 = \x{####2}^^J}% + \let\edef \@gobbletwo \let\def \@empty \let\let \@gobbletwo + \tabu@message{% + (tabu) \string\savetabu{\tabu@temp}: \on@line^^J% + \tabu@usetabu \@nil^^J}% + \endgroup} +}\do{ } +%% Measuring the natural width (varwidth) - store the results ------- +\def\tabu@startpboxmeasure #1{\bgroup % entering \vtop + \edef\tabu@temp{\expandafter\@secondoftwo \ifx\tabu@hsize #1\else\relax\fi}% + \ifodd 1\ifx \tabu@temp\@empty 0 \else % starts with \tabu@hsize ? + \iftabu@spread \else % if spread -> measure + \ifdim \tabu@temp\p@>\z@ 0 \fi\fi\fi% if coef>0 -> do not measure + \let\@startpbox \tabu@startpboxORI % restore immediately (nesting) + \tabu@measuringtrue % for the quick option... + \tabu@Xcol =\expandafter\@firstoftwo\ifx\tabu@hsize #1\fi + \ifdim \tabu@temp\p@>\z@ \ifdim \tabu@temp\tabucolX<\tabu@target + \tabu@target=\tabu@temp\tabucolX \fi\fi + \setbox\tabu@box \hbox \bgroup + \begin{varwidth}\tabu@target + \let\FV@ListProcessLine \tabu@FV@ListProcessLine % \hbox to natural width... + \narrowragged \arraybackslash \parfillskip \@flushglue + \ifdefined\pdfadjustspacing \pdfadjustspacing\z@ \fi + \bgroup \aftergroup\tabu@endpboxmeasure + \ifdefined \cellspacetoplimit \tabu@cellspacepatch \fi + \else \expandafter\@gobble + \tabu@startpboxquick{#1}% \@gobble \bgroup + \fi +}% \tabu@startpboxmeasure +\def\tabu@cellspacepatch{\def\bcolumn##1\@nil{}\let\ecolumn\@empty + \bgroup\color@begingroup} +\def\tabu@endpboxmeasure {% + \@finalstrut \@arstrutbox + \end{varwidth}\egroup % + \ifdim \tabu@temp\p@ <\z@ % neg coef + \ifdim \tabu@wd\tabu@Xcol <\wd\tabu@box + \tabu@wddef\tabu@Xcol {\the\wd\tabu@box}% + \tabu@debug{\tabu@message@endpboxmeasure}% + \fi + \else % spread coef>0 + \global\advance \tabu@naturalX \wd\tabu@box + \@tempdima =\dimexpr \wd\tabu@box *\p@/\dimexpr \tabu@temp\p@\relax \relax + \ifdim \tabu@naturalXmax <\tabu@naturalX + \xdef\tabu@naturalXmax {\the\tabu@naturalX}\fi + \ifdim \tabu@naturalXmin <\@tempdima + \xdef\tabu@naturalXmin {\the\@tempdima}\fi + \fi + \box\tabu@box \egroup % end of \vtop (measure) restore \tabu@target +}% \tabu@endpboxmeasure +\def\tabu@wddef #1{\expandafter\xdef + \csname tabu@\the\tabu@nested.W\number#1\endcsname} +\def\tabu@wd #1{\csname tabu@\the\tabu@nested.W\number#1\endcsname} +\def\tabu@message@endpboxmeasure{\tabu@spaces\tabu@spaces<-> % <-> save natural wd + \the\tabu@Xcol. X[\tabu@temp]: + target = \the\tabucolX \space + \expandafter\expandafter\expandafter\string\tabu@wd\tabu@Xcol + =\tabu@wd\tabu@Xcol +}% \tabu@message@endpboxmeasure +\def\tabu@startpboxquick {\bgroup + \let\@startpbox \tabu@startpboxORI % restore immediately + \let\tabu \tabu@quick % \begin is expanded before... + \expandafter\@gobble \@startpbox % gobbles \bgroup +}% \tabu@startpboxquick +\def\tabu@quick {\begingroup \iffalse{\fi \ifnum0=`}\fi + \toks@{}\def\tabu@stack{b}\tabu@collectbody \tabu@endquick +}% \tabu@quick +\def\tabu@endquick {% + \ifodd 1\ifx\tabu@end@envir\tabu@endtabu \else + \ifx\tabu@end@envir\tabu@endtabus \else 0\fi\fi\relax + \endgroup + \else \let\endtabu \relax + \tabu@end@envir + \fi +}% \tabu@quick +\def\tabu@endtabu {\end{tabu}} +\def\tabu@endtabus {\end{tabu*}} +%% Measuring the heights and depths - store the results ------------- +\def\tabu@verticalmeasure{\everypar{}% + \ifnum \currentgrouptype>12 % 14=semi-simple, 15=math shift group + \setbox\tabu@box =\hbox\bgroup + \let\tabu@verticalspacing \tabu@verticalsp@lcr + \d@llarbegin % after \hbox ... + \else + \edef\tabu@temp{\ifnum\currentgrouptype=5\vtop + \else\ifnum\currentgrouptype=12\vcenter + \else\vbox\fi\fi}% + \setbox\tabu@box \hbox\bgroup$\tabu@temp \bgroup + \let\tabu@verticalspacing \tabu@verticalsp@pmb + \fi +}% \tabu@verticalmeasure +\def\tabu@verticalsp@lcr{% + \d@llarend \egroup % + \@tempdima \dimexpr \ht\tabu@box+\abovetabulinesep + \@tempdimb \dimexpr \dp\tabu@box+\belowtabulinesep \relax + \ifdim\tabustrutrule>\z@ \tabu@debug{\tabu@message@verticalsp}\fi + \ifdim \tabu@ht<\@tempdima \tabu@htdef{\the\@tempdima}\fi + \ifdim \tabu@dp<\@tempdimb \tabu@dpdef{\the\@tempdimb}\fi + \noindent\vrule height\@tempdima depth\@tempdimb +}% \tabu@verticalsp@lcr +\def\tabu@verticalsp@pmb{% inserts struts as needed + \par \expandafter\egroup + \expandafter$\expandafter + \egroup \expandafter + \@tempdimc \the\prevdepth + \@tempdima \dimexpr \ht\tabu@box+\abovetabulinesep + \@tempdimb \dimexpr \dp\tabu@box+\belowtabulinesep \relax + \ifdim\tabustrutrule>\z@ \tabu@debug{\tabu@message@verticalsp}\fi + \ifdim \tabu@ht<\@tempdima \tabu@htdef{\the\@tempdima}\fi + \ifdim \tabu@dp<\@tempdimb \tabu@dpdef{\the\@tempdimb}\fi + \let\@finalstrut \@gobble + \hrule height\@tempdima depth\@tempdimb width\hsize +%% \box\tabu@box +}% \tabu@verticalsp@pmb + +\def\tabu@verticalinit{% + \ifnum \c@taburow=\z@ \tabu@rearstrut \fi % after \tabu@reset ! + \advance\c@taburow \@ne + \tabu@htdef{\the\ht\@arstrutbox}\tabu@dpdef{\the\dp\@arstrutbox}% + \advance\c@taburow \m@ne +}% \tabu@verticalinit +\def\tabu@htdef {\expandafter\xdef \csname tabu@\the\tabu@nested.H\the\c@taburow\endcsname} +\def\tabu@ht {\csname tabu@\the\tabu@nested.H\the\c@taburow\endcsname} +\def\tabu@dpdef {\expandafter\xdef \csname tabu@\the\tabu@nested.D\the\c@taburow\endcsname} +\def\tabu@dp {\csname tabu@\the\tabu@nested.D\the\c@taburow\endcsname} +\def\tabu@verticaldynamicadjustment {% + \advance\c@taburow \@ne + \extrarowheight \dimexpr\tabu@ht - \ht\strutbox + \extrarowdepth \dimexpr\tabu@dp - \dp\strutbox + \let\arraystretch \@empty + \advance\c@taburow \m@ne +}% \tabu@verticaldynamicadjustment +\def\tabuphantomline{\crcr \noalign{% + {\globaldefs \@ne + \setbox\@arstrutbox \box\voidb@x + \let\tabu@@celllalign \tabu@celllalign + \let\tabu@@cellralign \tabu@cellralign + \let\tabu@@cellleft \tabu@cellleft + \let\tabu@@cellright \tabu@cellright + \let\tabu@@thevline \tabu@thevline + \let\tabu@celllalign \@empty + \let\tabu@cellralign \@empty + \let\tabu@cellright \@empty + \let\tabu@cellleft \@empty + \let\tabu@thevline \relax}% + \edef\tabu@temp{\tabu@multispan \tabu@nbcols{\noindent &}}% + \toks@\expandafter{\tabu@temp \noindent\tabu@everyrowfalse \cr + \noalign{\tabu@rearstrut + {\globaldefs\@ne + \let\tabu@celllalign \tabu@@celllalign + \let\tabu@cellralign \tabu@@cellralign + \let\tabu@cellleft \tabu@@cellleft + \let\tabu@cellright \tabu@@cellright + \let\tabu@thevline \tabu@@thevline}}}% + \expandafter}\the\toks@ +}% \tabuphantomline +%% \firsthline and \lasthline corrections --------------------------- +\def\tabu@firstline {\tabu@hlineAZ \tabu@firsthlinecorrection {}} +\def\tabu@firsthline{\tabu@hlineAZ \tabu@firsthlinecorrection \hline} +\def\tabu@lastline {\tabu@hlineAZ \tabu@lasthlinecorrection {}} +\def\tabu@lasthline {\tabu@hlineAZ \tabu@lasthlinecorrection \hline} +\def\tabu@hline {% replaces \hline if no colortbl (see \AtBeginDocument) + \noalign{\ifnum0=`}\fi + {\CT@arc@\hrule height\arrayrulewidth}% + \futurelet \tabu@temp \tabu@xhline +}% \tabu@hline +\def\tabu@xhline{% + \ifx \tabu@temp \hline + {\ifx \CT@drsc@\relax \vskip + \else\ifx \CT@drsc@\@empty \vskip + \else \CT@drsc@\hrule height + \fi\fi + \doublerulesep}% + \fi + \ifnum0=`{\fi}% +}% \tabu@xhline +\def\tabu@hlineAZ #1#2{\noalign{\ifnum0=`}\fi \dimen@ \z@ \count@ \z@ + \toks@{}\def\tabu@hlinecorrection{#1}\def\tabu@temp{#2}% + \tabu@hlineAZsurround +}% \tabu@hlineAZ +\newcommand*\tabu@hlineAZsurround[1][\extratabsurround]{% + \extratabsurround #1\let\tabucline \tabucline@scan + \let\hline \tabu@hlinescan \let\firsthline \hline + \let\cline \tabu@clinescan \let\lasthline \hline + \expandafter \futurelet \expandafter \tabu@temp + \expandafter \tabu@nexthlineAZ \tabu@temp +}% \tabu@hlineAZsurround +\def\tabu@hlinescan {\tabu@thick \arrayrulewidth \tabu@xhlineAZ \hline} +\def\tabu@clinescan #1{\tabu@thick \arrayrulewidth \tabu@xhlineAZ {\cline{#1}}} +\def\tabucline@scan{\@testopt \tabucline@sc@n {}} +\def\tabucline@sc@n #1[#2]{\tabu@xhlineAZ {\tabucline[{#1}]{#2}}} +\def\tabu@nexthlineAZ{% + \ifx \tabu@temp\hline \else + \ifx \tabu@temp\cline \else + \ifx \tabu@temp\tabucline \else + \tabu@hlinecorrection + \fi\fi\fi +}% \tabu@nexthlineAZ +\def\tabu@xhlineAZ #1{% + \toks@\expandafter{\the\toks@ #1}% + \@tempdimc \tabu@thick % The last line width + \ifcase\count@ \@tempdimb \tabu@thick % The first line width + \else \advance\dimen@ \dimexpr \tabu@thick+\doublerulesep \relax + \fi + \advance\count@ \@ne \futurelet \tabu@temp \tabu@nexthlineAZ +}% \tabu@xhlineAZ +\def\tabu@firsthlinecorrection{% \count@ = number of \hline -1 + \@tempdima \dimexpr \ht\@arstrutbox+\dimen@ + \edef\firsthline{% + \omit \hbox to\z@{\hss{\noexpand\tabu@DBG{yellow}\vrule + height \the\dimexpr\@tempdima+\extratabsurround + depth \dp\@arstrutbox + width \tabustrutrule}\hss}\cr + \noalign{\vskip -\the\dimexpr \@tempdima+\@tempdimb + +\dp\@arstrutbox \relax}% + \the\toks@ + }\ifnum0=`{\fi + \expandafter}\firsthline % we are then ! +}% \tabu@firsthlinecorrection +\def\tabu@lasthlinecorrection{% + \@tempdima \dimexpr \dp\@arstrutbox+\dimen@+\@tempdimb+\@tempdimc + \edef\lasthline{% + \the\toks@ + \noalign{\vskip -\the\dimexpr\dimen@+\@tempdimb+\dp\@arstrutbox}% + \omit \hbox to\z@{\hss{\noexpand\tabu@DBG{yellow}\vrule + depth \the\dimexpr \dp\@arstrutbox+\@tempdimb+\dimen@ + +\extratabsurround-\@tempdimc + height \z@ + width \tabustrutrule}\hss}\cr + }\ifnum0=`{\fi + \expandafter}\lasthline % we are then ! +}% \tabu@lasthlinecorrection +\def\tabu@LT@@hline{% + \ifx\LT@next\hline + \global\let\LT@next \@gobble + \ifx \CT@drsc@\relax + \gdef\CT@LT@sep{% + \noalign{\penalty-\@medpenalty\vskip\doublerulesep}}% + \else + \gdef\CT@LT@sep{% + \multispan\LT@cols{% + \CT@drsc@\leaders\hrule\@height\doublerulesep\hfill}\cr}% + \fi + \else + \global\let\LT@next\empty + \gdef\CT@LT@sep{% + \noalign{\penalty-\@lowpenalty\vskip-\arrayrulewidth}}% + \fi + \ifnum0=`{\fi}% + \multispan\LT@cols + {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr + \CT@LT@sep + \multispan\LT@cols + {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr + \noalign{\penalty\@M}% + \LT@next +}% \tabu@LT@@hline +%% Horizontal lines : \tabucline ------------------------------------ +\let\tabu@start \@tempcnta +\let\tabu@stop \@tempcntb +\newcommand*\tabucline{\noalign{\ifnum0=`}\fi \tabu@cline} +\newcommand*\tabu@cline[2][]{\tabu@startstop{#2}% + \ifnum \tabu@stop<\z@ \toks@{}% + \else \tabu@clinearg{#1}\tabu@thestyle + \edef\tabucline{\toks@{% + \ifnum \tabu@start>\z@ \omit + \tabu@multispan\tabu@start {\span\omit}&\fi + \omit \tabu@multispan\tabu@stop {\span\omit}% + \tabu@thehline\cr + }}\tabucline + \tabu@tracinglines{(tabu:tabucline) Style: #1^^J\the\toks@^^J^^J}% + \fi + \futurelet \tabu@temp \tabu@xcline +}% \tabu@cline +\def\tabu@clinearg #1{% + \ifx\\#1\\\let\tabu@thestyle \tabu@ls@ + \else \@defaultunits \expandafter\let\expandafter\@tempa + \romannumeral-`\0#1\relax \@nnil + \ifx \hbox\@tempa \tabu@clinebox{#1}% + \else\ifx \box\@tempa \tabu@clinebox{#1}% + \else\ifx \vbox\@tempa \tabu@clinebox{#1}% + \else\ifx \vtop\@tempa \tabu@clinebox{#1}% + \else\ifx \copy\@tempa \tabu@clinebox{#1}% + \else\ifx \leaders\@tempa \tabu@clineleads{#1}% + \else\ifx \cleaders\@tempa \tabu@clineleads{#1}% + \else\ifx \xleaders\@tempa \tabu@clineleads{#1}% + \else\tabu@getline {#1}% + \fi\fi\fi\fi\fi\fi\fi\fi + \fi +}% \tabu@clinearg +\def\tabu@clinebox #1{\tabu@clineleads{\xleaders#1\hss}} +\def\tabu@clineleads #1{% + \let\tabu@thestyle \relax \let\tabu@leaders \@undefined + \gdef\tabu@thehrule{#1}} +\def\tabu@thehline{\begingroup + \ifdefined\tabu@leaders + \noexpand\tabu@thehleaders + \else \noexpand\tabu@thehrule + \fi \endgroup +}% \tabu@thehline +\def\tabu@xcline{% + \ifx \tabu@temp\tabucline + \toks@\expandafter{\the\toks@ \noalign + {\ifx\CT@drsc@\relax \vskip + \else \CT@drsc@\hrule height + \fi + \doublerulesep}}% + \fi + \tabu@docline +}% \tabu@xcline +\def\tabu@docline {\ifnum0=`{\fi \expandafter}\the\toks@} +\def\tabu@docline@evr {\xdef\tabu@doclineafter{\the\toks@}% + \ifnum0=`{\fi}\aftergroup\tabu@doclineafter} +\def\tabu@multispan #1#2{% + \ifnum\numexpr#1>\@ne #2\expandafter\tabu@multispan + \else \expandafter\@gobbletwo + \fi {#1-1}{#2}% +}% \tabu@multispan +\def\tabu@startstop #1{\tabu@start@stop #1\relax 1-\tabu@nbcols \@nnil} +\def\tabu@start@stop #1-#2\@nnil{% + \@defaultunits \tabu@start\number 0#1\relax \@nnil + \@defaultunits \tabu@stop \number 0#2\relax \@nnil + \tabu@stop \ifnum \tabu@start>\tabu@nbcols \m@ne + \else\ifnum \tabu@stop=\z@ \tabu@nbcols + \else\ifnum \tabu@stop>\tabu@nbcols \tabu@nbcols + \else \tabu@stop + \fi\fi\fi + \advance\tabu@start \m@ne + \ifnum \tabu@start>\z@ \advance\tabu@stop -\tabu@start \fi +}% \tabu@start@stop +%% Numbers: siunitx S columns (and \tabudecimal) ------------------- +\def\tabu@tabudecimal #1{% + \def\tabu@decimal{#1}\@temptokena{}% + \let\tabu@getdecimal@ \tabu@getdecimal@ignorespaces + \tabu@scandecimal +}% \tabu@tabudecimal +\def\tabu@scandecimal{\futurelet \tabu@temp \tabu@getdecimal@} +\def\tabu@skipdecimal#1{#1\tabu@scandecimal} +\def\tabu@getdecimal@ignorespaces{% + \ifcase 0\ifx\tabu@temp\ignorespaces\else + \ifx\tabu@temp\@sptoken1\else + 2\fi\fi\relax + \let\tabu@getdecimal@ \tabu@getdecimal + \expandafter\tabu@skipdecimal + \or \expandafter\tabu@gobblespace\expandafter\tabu@scandecimal + \else \expandafter\tabu@skipdecimal + \fi +}% \tabu@getdecimal@ignorespaces +\def\tabu@get@decimal#1{\@temptokena\expandafter{\the\@temptokena #1}% + \tabu@scandecimal} +\def\do#1{% + \def\tabu@get@decimalspace#1{% + \@temptokena\expandafter{\the\@temptokena #1}\tabu@scandecimal}% +}\do{ } +\let\tabu@@tabudecimal \tabu@tabudecimal +\def\tabu@getdecimal{% + \ifcase 0\ifx 0\tabu@temp\else + \ifx 1\tabu@temp\else + \ifx 2\tabu@temp\else + \ifx 3\tabu@temp\else + \ifx 4\tabu@temp\else + \ifx 5\tabu@temp\else + \ifx 6\tabu@temp\else + \ifx 7\tabu@temp\else + \ifx 8\tabu@temp\else + \ifx 9\tabu@temp\else + \ifx .\tabu@temp\else + \ifx ,\tabu@temp\else + \ifx -\tabu@temp\else + \ifx +\tabu@temp\else + \ifx e\tabu@temp\else + \ifx E\tabu@temp\else + \ifx\tabu@cellleft\tabu@temp1\else + \ifx\ignorespaces\tabu@temp1\else + \ifx\@sptoken\tabu@temp2\else + 3\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\relax + \expandafter\tabu@get@decimal + \or \expandafter\tabu@skipdecimal + \or \expandafter\tabu@get@decimalspace + \else\expandafter\tabu@printdecimal + \fi +}% \tabu@getdecimal +\def\tabu@printdecimal{% + \edef\tabu@temp{\the\@temptokena}% + \ifx\tabu@temp\@empty\else + \ifx\tabu@temp\space\else + \expandafter\tabu@decimal\expandafter{\the\@temptokena}% + \fi\fi +}% \tabu@printdecimal +%% Verbatim inside X columns ---------------------------------------- +\def\tabu@verbatim{% + \let\verb \tabu@verb + \let\FV@DefineCheckEnd \tabu@FV@DefineCheckEnd +}% \tabu@verbatim +\let\tabu@ltx@verb \verb +\def\tabu@verb{\@ifstar {\tabu@ltx@verb*} \tabu@ltx@verb} +\def\tabu@fancyvrb {% + \def\tabu@FV@DefineCheckEnd ##1{% + \def\tabu@FV@DefineCheckEnd{% + ##1% + \let\FV@CheckEnd \tabu@FV@CheckEnd + \let\FV@@CheckEnd \tabu@FV@@CheckEnd + \let\FV@@@CheckEnd \tabu@FV@@@CheckEnd + \edef\FV@EndScanning{% + \def\noexpand\next{\noexpand\end{\FV@EnvironName}}% + \global\let\noexpand\FV@EnvironName\relax + \noexpand\next}% + \xdef\FV@EnvironName{\detokenize\expandafter{\FV@EnvironName}}}% + }\expandafter\tabu@FV@DefineCheckEnd\expandafter{\FV@DefineCheckEnd} +}% \tabu@fancyvrb +\def\tabu@FV@CheckEnd #1{\expandafter\FV@@CheckEnd \detokenize{#1\end{}}\@nil} +\edef\tabu@FV@@@CheckEnd {\detokenize{\end{}}} +\begingroup +\catcode`\[1 \catcode`\]2 +\@makeother\{ \@makeother\} + \edef\x[\endgroup + \def\noexpand\tabu@FV@@CheckEnd ##1\detokenize[\end{]##2\detokenize[}]##3% + ]\x \@nil{\def\@tempa{#2}\def\@tempb{#3}} +\def\tabu@FV@ListProcessLine #1{% + \hbox {%to \hsize{% + \kern\leftmargin + \hbox {%to \linewidth{% + \FV@LeftListNumber + \FV@LeftListFrame + \FancyVerbFormatLine{#1}\hss +%% DG/SR modification begin - Jan. 28, 1998 (for numbers=right add-on) +%% \FV@RightListFrame}% + \FV@RightListFrame + \FV@RightListNumber}% +%% DG/SR modification end + \hss}} +%% \savetabu -------------------------------------------------------- +\newcommand*\savetabu[1]{\noalign{% + \tabu@sanitizearg{#1}\tabu@temp + \ifx \tabu@temp\@empty \tabu@savewarn{}{The tabu will not be saved}\else + \@ifundefined{tabu@saved@\tabu@temp}{}{\tabu@savewarn{#1}{Overwriting}}% + \ifdefined\tabu@restored \expandafter\let + \csname tabu@saved@\tabu@temp \endcsname \tabu@restored + \else {\tabu@save}% + \fi + \fi}% +}% \savetabu +\def\tabu@save {% + \toks0\expandafter{\tabu@saved@}% + \iftabu@negcoef + \let\tabu@wddef \relax \let\tabu@ \tabu@savewd \edef\tabu@savewd{\tabu@Xcoefs}% + \toks0\expandafter{\the\toks\expandafter0\tabu@savewd}\fi + \toks1\expandafter{\tabu@savedpream}% + \toks2\expandafter{\tabu@savedpreamble}% + \let\@preamble \relax + \let\tabu@savedpream \relax \let\tabu@savedparams \relax + \edef\tabu@preamble{% + \def\noexpand\tabu@aligndefault{\tabu@align}% + \def\tabu@savedparams {\noexpand\the\toks0}% + \def\tabu@savedpream {\noexpand\the\toks1}}% + \edef\tabu@usetabu{% + \def\@preamble {\noexpand\the\toks2}% + \tabu@target \the\tabu@target \relax + \tabucolX \the\tabucolX \relax + \tabu@nbcols \the\tabu@nbcols \relax + \def\noexpand\tabu@aligndefault{\tabu@align}% + \def\tabu@savedparams {\noexpand\the\toks0}% + \def\tabu@savedpream {\noexpand\the\toks1}}% + \let\tabu@aligndefault \relax \let\@sharp \relax + \edef\@tempa{\noexpand\tabu@s@ved + {\tabu@usetabu} + {\tabu@preamble} + {\the\toks1}}\@tempa + \tabu@message@save +}% \tabu@save +\long\def\tabu@s@ved #1#2#3{% + \def\tabu@usetabu{#1}% + \expandafter\gdef\csname tabu@saved@\tabu@temp\endcsname ##1{% + \ifodd ##1% \usetabu + \tabu@measuringfalse \tabu@spreadfalse % Just in case... + \gdef\tabu@usetabu {% + \ifdim \tabu@target>\z@ \tabu@warn@usetabu \fi + \global\let\tabu@usetabu \@undefined + \def\@halignto {to\tabu@target}% + #1% + \ifx \tabu@align\tabu@aligndefault@text + \ifnum \tabu@nested=\z@ + \let\tabu@align \tabu@aligndefault \fi\fi}% + \else % \preamble + \gdef\tabu@preamble {% + \global\let\tabu@preamble \@undefined + #2% + \ifx \tabu@align\tabu@aligndefault@text + \ifnum \tabu@nested=\z@ + \let\tabu@align \tabu@aligndefault \fi\fi}% + \fi + #3}% +}% \tabu@s@ved +\def\tabu@aligndefault@text {\tabu@aligndefault}% +\def\tabu@warn@usetabu {\PackageWarning{tabu} + {Specifying a target with \string\usetabu\space is useless + \MessageBreak The target cannot be changed!}} +\def\tabu@savewd #1#2{\ifdim #2\p@<\z@ \tabu@wddef{#1}{\tabu@wd{#1}}\fi} +\def\tabu@savewarn#1#2{\PackageInfo{tabu} + {User-name `#1' already used for \string\savetabu + \MessageBreak #2}}% +\def\tabu@saveerr#1{\PackageError{tabu} + {User-name `#1' is unknown for \string\usetabu + \MessageBreak I cannot restore an unknown preamble!}\@ehd} +%% \rowfont --------------------------------------------------------- +\newskip \tabu@cellskip +\def\tabu@rowfont{\ifdim \baselineskip=\z@\noalign\fi + {\ifnum0=`}\fi \tabu@row@font} +\newcommand*\tabu@row@font[2][]{% + \ifnum7=\currentgrouptype + \global\let\tabu@@cellleft \tabu@cellleft + \global\let\tabu@@cellright \tabu@cellright + \global\let\tabu@@celllalign \tabu@celllalign + \global\let\tabu@@cellralign \tabu@cellralign + \global\let\tabu@@rowfontreset\tabu@rowfontreset + \fi + \global\let\tabu@rowfontreset \tabu@rowfont@reset + \expandafter\gdef\expandafter\tabu@cellleft\expandafter{\tabu@cellleft #2}% + \ifcsname tabu@cell@#1\endcsname % row alignment + \csname tabu@cell@#1\endcsname \fi + \ifnum0=`{\fi}% end of group / noalign group +}% \rowfont +\def\tabu@ifcolorleavevmode #1{\let\color \tabu@leavevmodecolor #1\let\color\tabu@color}% +\def\tabu@rowfont@reset{% + \global\let\tabu@rowfontreset \tabu@@rowfontreset + \global\let\tabu@cellleft \tabu@@cellleft + \global\let\tabu@cellright \tabu@@cellright + \global\let\tabu@cellfont \@empty + \global\let\tabu@celllalign \tabu@@celllalign + \global\let\tabu@cellralign \tabu@@cellralign +}% \tabu@@rowfontreset +\let\tabu@rowfontreset \@empty % overwritten \AtBeginDocument if colortbl +%% \tabu@prepnext@tok ----------------------------------------------- +\newif \iftabu@cellright +\def\tabu@prepnext@tok{% + \ifnum \count@<\z@ % + \@tempcnta \@M % + \tabu@nbcols\z@ + \let\tabu@fornoopORI \@fornoop + \tabu@cellrightfalse + \else + \ifcase \numexpr \count@-\@tempcnta \relax % (case 0): prev. token is left + \advance \tabu@nbcols \@ne + \iftabu@cellright % before-previous token is right and is finished + \tabu@cellrightfalse % + \tabu@righttok + \fi + \tabu@lefttok + \or % (case 1) previous token is right + \tabu@cellrighttrue \let\@fornoop \tabu@lastnoop + \else % special column: do not change the token + \iftabu@cellright % before-previous token is right + \tabu@cellrightfalse + \tabu@righttok + \fi + \fi % \ifcase + \fi + \tabu@prepnext@tokORI +}% \tabu@prepnext@tok +\long\def\tabu@lastnoop#1\@@#2#3{\tabu@lastn@@p #2\@nextchar \in@\in@@} +\def\tabu@lastn@@p #1\@nextchar #2#3\in@@{% + \ifx \in@#2\else + \let\@fornoop \tabu@fornoopORI + \xdef\tabu@mkpreambuffer{\tabu@nbcols\the\tabu@nbcols \tabu@mkpreambuffer}% + \toks0\expandafter{\expandafter\tabu@everyrowtrue \the\toks0}% + \expandafter\prepnext@tok + \fi +}% \tabu@lastnoop +\def\tabu@righttok{% + \advance \count@ \m@ne + \toks\count@\expandafter {\the\toks\count@ \tabu@cellright \tabu@cellralign}% + \advance \count@ \@ne +}% \tabu@righttok +\def\tabu@lefttok{\toks\count@\expandafter{\expandafter\tabu@celllalign + \the\toks\count@ \tabu@cellleft}% after because of $ +}% \tabu@lefttok +%% Neutralisation of glues ------------------------------------------ +\let\tabu@cellleft \@empty +\let\tabu@cellright \@empty +\tabu@celllalign@def{\tabu@cellleft}% +\let\tabu@cellralign \@empty +\def\tabu@cell@align #1#2#3{% + \let\tabu@maybesiunitx \toks@ \tabu@celllalign + \global \expandafter \tabu@celllalign@def \expandafter {\the\toks@ #1}% + \toks@\expandafter{\tabu@cellralign #2}% + \xdef\tabu@cellralign{\the\toks@}% + \toks@\expandafter{\tabu@cellleft #3}% + \xdef\tabu@cellleft{\the\toks@}% +}% \tabu@cell@align +\def\tabu@cell@l{% force alignment to left + \tabu@cell@align + {\tabu@removehfil \raggedright \tabu@cellleft}% left + {\tabu@flush1\tabu@ignorehfil}% right + \raggedright +}% \tabu@cell@l +\def\tabu@cell@c{% force alignment to center + \tabu@cell@align + {\tabu@removehfil \centering \tabu@flush{.5}\tabu@cellleft} + {\tabu@flush{.5}\tabu@ignorehfil} + \centering +}% \tabu@cell@c +\def\tabu@cell@r{% force alignment to right + \tabu@cell@align + {\tabu@removehfil \raggedleft \tabu@flush1\tabu@cellleft} + \tabu@ignorehfil + \raggedleft +}% \tabu@cell@r +\def\tabu@cell@j{% force justification (for p, m, b columns) + \tabu@cell@align + {\tabu@justify\tabu@cellleft} + {} + \tabu@justify +}% \tabu@cell@j +\def\tabu@justify{% + \leftskip\z@skip \@rightskip\leftskip \rightskip\@rightskip + \parfillskip\@flushglue +}% \tabu@justify +%% ragged2e settings +\def\tabu@cell@L{% force alignment to left (ragged2e) + \tabu@cell@align + {\tabu@removehfil \RaggedRight \tabu@cellleft} + {\tabu@flush 1\tabu@ignorehfil} + \RaggedRight +}% \tabu@cell@L +\def\tabu@cell@C{% force alignment to center (ragged2e) + \tabu@cell@align + {\tabu@removehfil \Centering \tabu@flush{.5}\tabu@cellleft} + {\tabu@flush{.5}\tabu@ignorehfil} + \Centering +}% \tabu@cell@C +\def\tabu@cell@R{% force alignment to right (ragged2e) + \tabu@cell@align + {\tabu@removehfil \RaggedLeft \tabu@flush 1\tabu@cellleft} + \tabu@ignorehfil + \RaggedLeft +}% \tabu@cell@R +\def\tabu@cell@J{% force justification (ragged2e) + \tabu@cell@align + {\justifying \tabu@cellleft} + {} + \justifying +}% \tabu@cell@J +\def\tabu@flush#1{% + \iftabu@colortbl % colortbl uses \hfill rather than \hfil + \hskip \ifnum13<\currentgrouptype \stretch{#1}% + \else \ifdim#1pt<\p@ \tabu@cellskip + \else \stretch{#1} + \fi\fi \relax + \else % array.sty + \ifnum 13<\currentgrouptype + \hfil \hskip1sp \relax \fi + \fi +}% \tabu@flush +\let\tabu@hfil \hfil +\let\tabu@hfill \hfill +\let\tabu@hskip \hskip +\def\tabu@removehfil{% + \iftabu@colortbl + \unkern \tabu@cellskip =\lastskip + \ifnum\gluestretchorder\tabu@cellskip =\tw@ \hskip-\tabu@cellskip + \else \tabu@cellskip \z@skip + \fi + \else + \ifdim\lastskip=1sp\unskip\fi + \ifnum\gluestretchorder\lastskip =\@ne + \hfilneg % \hfilneg for array.sty but not for colortbl... + \fi + \fi +}% \tabu@removehfil +\def\tabu@ignorehfil{\aftergroup \tabu@nohfil} +\def\tabu@nohfil{% \hfil -> do nothing + restore original \hfil + \def\hfil{\let\hfil \tabu@hfil}% local to (alignment template) group +}% \tabu@nohfil +\def\tabu@colortblalignments {% if colortbl + \def\tabu@nohfil{% + \def\hfil {\let\hfil \tabu@hfil}% local to (alignment template) group + \def\hfill {\let\hfill \tabu@hfill}% (colortbl uses \hfill) pfff... + \def\hskip ####1\relax{\let\hskip \tabu@hskip}}% local +}% \tabu@colortblalignments +%% Taking care of footnotes and hyperfootnotes ---------------------- +\long\def\tabu@footnotetext #1{% + \edef\@tempa{\the\tabu@footnotes + \noexpand\footnotetext [\the\csname c@\@mpfn\endcsname]}% + \global\tabu@footnotes\expandafter{\@tempa {#1}}}% +\long\def\tabu@xfootnotetext [#1]#2{% + \global\tabu@footnotes\expandafter{\the\tabu@footnotes + \footnotetext [{#1}]{#2}}} +\let\tabu@xfootnote \@xfootnote +\long\def\tabu@Hy@ftntext{\tabu@Hy@ftntxt {\the \c@footnote }} +\long\def\tabu@Hy@xfootnote [#1]{% + \begingroup + \value\@mpfn #1\relax + \protected@xdef \@thefnmark {\thempfn}% + \endgroup + \@footnotemark \tabu@Hy@ftntxt {#1}% +}% \tabu@Hy@xfootnote +\long\def\tabu@Hy@ftntxt #1#2{% + \edef\@tempa{% + \the\tabu@footnotes + \begingroup + \value\@mpfn #1\relax + \noexpand\protected@xdef\noexpand\@thefnmark {\noexpand\thempfn}% + \expandafter \noexpand \expandafter + \tabu@Hy@footnotetext \expandafter{\Hy@footnote@currentHref}% + }% + \global\tabu@footnotes\expandafter{\@tempa {#2}% + \endgroup}% +}% \tabu@Hy@ftntxt +\long\def\tabu@Hy@footnotetext #1#2{% + \H@@footnotetext{% + \ifHy@nesting + \hyper@@anchor {#1}{#2}% + \else + \Hy@raisedlink{% + \hyper@@anchor {#1}{\relax}% + }% + \def\@currentHref {#1}% + \let\@currentlabelname \@empty + #2% + \fi + }% +}% \tabu@Hy@footnotetext +%% No need for \arraybackslash ! ------------------------------------ +\def\tabu@latextwoe {% +\def\tabu@temp##1##2##3{{\toks@\expandafter{##2##3}\xdef##1{\the\toks@}}} +\tabu@temp \tabu@centering \centering \arraybackslash +\tabu@temp \tabu@raggedleft \raggedleft \arraybackslash +\tabu@temp \tabu@raggedright \raggedright \arraybackslash +}% \tabu@latextwoe +\def\tabu@raggedtwoe {% +\def\tabu@temp ##1##2##3{{\toks@\expandafter{##2##3}\xdef##1{\the\toks@}}} +\tabu@temp \tabu@Centering \Centering \arraybackslash +\tabu@temp \tabu@RaggedLeft \RaggedLeft \arraybackslash +\tabu@temp \tabu@RaggedRight \RaggedRight \arraybackslash +\tabu@temp \tabu@justifying \justifying \arraybackslash +}% \tabu@raggedtwoe +\def\tabu@normalcrbackslash{\let\\\@normalcr} +\def\tabu@trivlist{\expandafter\def\expandafter\@trivlist\expandafter{% + \expandafter\tabu@normalcrbackslash \@trivlist}} +%% Utilities: \fbox \fcolorbox and \tabudecimal ------------------- +\def\tabu@fbox {\leavevmode\afterassignment\tabu@beginfbox \setbox\@tempboxa\hbox} +\def\tabu@beginfbox {\bgroup \kern\fboxsep + \bgroup\aftergroup\tabu@endfbox} +\def\tabu@endfbox {\kern\fboxsep\egroup\egroup + \@frameb@x\relax} +\def\tabu@color@b@x #1#2{\leavevmode \bgroup + \def\tabu@docolor@b@x{#1{#2\color@block{\wd\z@}{\ht\z@}{\dp\z@}\box\z@}}% + \afterassignment\tabu@begincolor@b@x \setbox\z@ \hbox +}% \tabu@color@b@x +\def\tabu@begincolor@b@x {\kern\fboxsep \bgroup + \aftergroup\tabu@endcolor@b@x \set@color} +\def\tabu@endcolor@b@x {\kern\fboxsep \egroup + \dimen@\ht\z@ \advance\dimen@ \fboxsep \ht\z@ \dimen@ + \dimen@\dp\z@ \advance\dimen@ \fboxsep \dp\z@ \dimen@ + \tabu@docolor@b@x \egroup +}% \tabu@endcolor@b@x +%% Corrections (arydshln, delarray, colortbl) ----------------------- +\def\tabu@fix@arrayright {%% \@arrayright is missing from \endarray + \iftabu@colortbl + \ifdefined\adl@array % + \def\tabu@endarray{% + \adl@endarray \egroup \adl@arrayrestore \CT@end \egroup % + \@arrayright % + \gdef\@preamble{}}% + \else % + \def\tabu@endarray{% + \crcr \egroup \egroup % + \@arrayright % + \gdef\@preamble{}\CT@end}% + \fi + \else + \ifdefined\adl@array % + \def\tabu@endarray{% + \adl@endarray \egroup \adl@arrayrestore \egroup % + \@arrayright % + \gdef\@preamble{}}% + \else % + \PackageWarning{tabu} + {\string\@arrayright\space is missing from the + \MessageBreak definition of \string\endarray. + \MessageBreak Compatibility with delarray.sty is broken.}% + \fi\fi +}% \tabu@fix@arrayright +\def\tabu@adl@xarraydashrule #1#2#3{% + \ifnum\@lastchclass=\adl@class@start\else + \ifnum\@lastchclass=\@ne\else + \ifnum\@lastchclass=5 \else % @-arg (class 5) and !-arg (class 1) + \adl@leftrulefalse \fi\fi % must be treated the same + \fi + \ifadl@zwvrule\else \ifadl@inactive\else + \@addtopreamble{\vrule\@width\arrayrulewidth + \@height\z@ \@depth\z@}\fi \fi + \ifadl@leftrule + \@addtopreamble{\adl@vlineL{\CT@arc@}{\adl@dashgapcolor}% + {\number#1}#3}% + \else \@addtopreamble{\adl@vlineR{\CT@arc@}{\adl@dashgapcolor}% + {\number#2}#3} + \fi +}% \tabu@adl@xarraydashrule +\def\tabu@adl@act@endpbox {% + \unskip \ifhmode \nobreak \fi \@finalstrut \@arstrutbox + \egroup \egroup + \adl@colhtdp \box\adl@box \hfil +}% \tabu@adl@act@endpbox +\def\tabu@adl@fix {% + \let\adl@xarraydashrule \tabu@adl@xarraydashrule % arydshln + \let\adl@act@endpbox \tabu@adl@act@endpbox % arydshln + \let\adl@act@@endpbox \tabu@adl@act@endpbox % arydshln + \let\@preamerror \@preamerr % arydshln +}% \tabu@adl@fix +%% Correction for longtable' \@startbox definition ------------------ +%% => \everypar is ``missing'' : TeX should be in vertical mode +\def\tabu@LT@startpbox #1{% + \bgroup + \let\@footnotetext\LT@p@ftntext + \setlength\hsize{#1}% + \@arrayparboxrestore + \everypar{% + \vrule \@height \ht\@arstrutbox \@width \z@ + \everypar{}}% +}% \tabu@LT@startpbox +%% \tracingtabu and the package options ------------------ +\DeclareOption{delarray}{\AtEndOfPackage{\RequirePackage{delarray}}} +\DeclareOption{linegoal}{% + \AtEndOfPackage{% + \RequirePackage{linegoal}[2010/12/07]% + \let\tabudefaulttarget \linegoal% \linegoal is \linewidth if not pdfTeX +}} +\DeclareOption{scantokens}{\tabuscantokenstrue} +\DeclareOption{debugshow}{\AtEndOfPackage{\tracingtabu=\tw@}} +\def\tracingtabu {\begingroup\@ifnextchar=% + {\afterassignment\tabu@tracing\count@} + {\afterassignment\tabu@tracing\count@1\relax}} +\def\tabu@tracing{\expandafter\endgroup + \expandafter\tabu@tr@cing \the\count@ \relax +}% \tabu@tracing +\def\tabu@tr@cing #1\relax {% + \ifnum#1>\thr@@ \let\tabu@tracinglines\message + \else \let\tabu@tracinglines\@gobble + \fi + \ifnum#1>\tw@ \let\tabu@DBG \tabu@@DBG + \def\tabu@mkarstrut {\tabu@DBG@arstrut}% + \tabustrutrule 1.5\p@ + \else \let\tabu@DBG \@gobble + \def\tabu@mkarstrut {\tabu@arstrut}% + \tabustrutrule \z@ + \fi + \ifnum#1>\@ne \let\tabu@debug \message + \else \let\tabu@debug \@gobble + \fi + \ifnum#1>\z@ + \let\tabu@message \message + \let\tabu@tracing@save \tabu@message@save + \let\tabu@starttimer \tabu@pdftimer + \else + \let\tabu@message \@gobble + \let\tabu@tracing@save \@gobble + \let\tabu@starttimer \relax + \fi +}% \tabu@tr@cing +%% Setup \AtBeginDocument +\AtBeginDocument{\tabu@AtBeginDocument} +\def\tabu@AtBeginDocument{\let\tabu@AtBeginDocument \@undefined + \ifdefined\arrayrulecolor \tabu@colortbltrue % + \tabu@colortblalignments % different glues are used + \else \tabu@colortblfalse \fi + \ifdefined\CT@arc@ \else \let\CT@arc@ \relax \fi + \ifdefined\CT@drsc@\else \let\CT@drsc@ \relax \fi + \let\tabu@arc@L \CT@arc@ \let\tabu@drsc@L \CT@drsc@ + \ifodd 1\ifcsname siunitx_table_collect_begin:Nn\endcsname % + \expandafter\ifx + \csname siunitx_table_collect_begin:Nn\endcsname\relax 0\fi\fi\relax + \tabu@siunitxtrue + \else \let\tabu@maybesiunitx \@firstofone % + \let\tabu@siunitx \tabu@nosiunitx + \tabu@siunitxfalse + \fi + \ifdefined\adl@array % + \else \let\tabu@adl@fix \relax + \let\tabu@adl@endtrial \@empty \fi + \ifdefined\longtable % + \else \let\longtabu \tabu@nolongtabu \fi + \ifdefined\cellspacetoplimit \tabu@warn@cellspace\fi + \csname\ifcsname ifHy@hyperfootnotes\endcsname % + ifHy@hyperfootnotes\else iffalse\fi\endcsname + \let\tabu@footnotetext \tabu@Hy@ftntext + \let\tabu@xfootnote \tabu@Hy@xfootnote \fi + \ifdefined\FV@DefineCheckEnd% + \tabu@fancyvrb \fi + \ifdefined\color % + \let\tabu@color \color + \def\tabu@leavevmodecolor ##1{% + \def\tabu@leavevmodecolor {\leavevmode ##1}% + }\expandafter\tabu@leavevmodecolor\expandafter{\color}% + \else + \let\tabu@color \tabu@nocolor + \let\tabu@leavevmodecolor \@firstofone \fi + \tabu@latextwoe + \ifdefined\@raggedtwoe@everyselectfont % + \tabu@raggedtwoe + \else + \let\tabu@cell@L \tabu@cell@l + \let\tabu@cell@R \tabu@cell@r + \let\tabu@cell@C \tabu@cell@c + \let\tabu@cell@J \tabu@cell@j \fi + \expandafter\in@ \expandafter\@arrayright \expandafter{\endarray}% + \ifin@ \let\tabu@endarray \endarray + \else \tabu@fix@arrayright \fi% + \everyrow{}% +}% \tabu@AtBeginDocument +\def\tabu@warn@cellspace{% + \PackageWarning{tabu}{% + Package cellspace has some limitations + \MessageBreak And redefines some macros of array.sty. + \MessageBreak Please use \string\tabulinesep\space to control + \MessageBreak vertical spacing of lines inside tabu environment}% +}% \tabu@warn@cellspace +%% tabu Package initialisation +\tabuscantokensfalse +\let\tabu@arc@G \relax +\let\tabu@drsc@G \relax +\let\tabu@evr@G \@empty +\let\tabu@rc@G \@empty +\def\tabu@ls@G {\tabu@linestyle@}% +\let\tabu@@rowfontreset \@empty % +\let\tabu@@celllalign \@empty +\let\tabu@@cellralign \@empty +\let\tabu@@cellleft \@empty +\let\tabu@@cellright \@empty +\def\tabu@naturalXmin {\z@} +\def\tabu@naturalXmax {\z@} +\let\tabu@rowfontreset \@empty +\def\tabulineon {4pt}\let\tabulineoff \tabulineon +\tabu@everyrowtrue +\ifdefined\pdfelapsedtime % + \def\tabu@pdftimer {\xdef\tabu@starttime{\the\pdfelapsedtime}}% +\else \let\tabu@pdftimer \relax \let\tabu@message@etime \relax +\fi +\tracingtabu=\z@ +\newtabulinestyle {=\maxdimen}% creates the 'factory' settings \tabu@linestyle@ +\tabulinestyle{} +\taburowcolors{} +\let\tabudefaulttarget \linewidth +\ProcessOptions* % \ProcessOptions* is quicker ! +\endinput +%% +%% End of file `tabu.sty'. diff --git a/SOURCE/Plugin/CreateInterface.resx b/SOURCE/Plugin/CreateInterface.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/SOURCE/Plugin/CreateInterface.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/SOURCE/Plugin/DeviceDescription.Designer.cs b/SOURCE/Plugin/DeviceDescription.Designer.cs new file mode 100644 index 0000000..aaf64c6 --- /dev/null +++ b/SOURCE/Plugin/DeviceDescription.Designer.cs @@ -0,0 +1,2799 @@ +/// +/// MOD.001 GUI +/// This Module is responsible for the look of the GUI. Everything related to the frontend of the plugin can be changed here. For Example the size of elements, +/// their color, their types... +/// This can be edited with the WinForm GUI of VisualStudio or in this class. To edit anything of the GUI in this Code double-click line 30 ("Component Designer generated code"). +/// + +namespace Aml.Editor.Plugin +{ + partial class DeviceDescription + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DeviceDescription)); + this.toolStrip1 = new System.Windows.Forms.ToolStrip(); + this.fileButton = new System.Windows.Forms.ToolStripDropDownButton(); + this.newToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.openToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.saveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.saveeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.importToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.importIODDFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.importGSDFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.loadLibraryFile = new System.Windows.Forms.ToolStripMenuItem(); + this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolStripSeparator8 = new System.Windows.Forms.ToolStripSeparator(); + this.helpButton = new System.Windows.Forms.ToolStripDropDownButton(); + this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.manualToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.fileNameLabel = new System.Windows.Forms.ToolStripLabel(); + this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator(); + this.filePathLabel = new System.Windows.Forms.ToolStripLabel(); + this.vendorNameTextBox = new System.Windows.Forms.ToolStripTextBox(); + this.toolStripSeparator6 = new System.Windows.Forms.ToolStripSeparator(); + this.toolStripLabel4 = new System.Windows.Forms.ToolStripLabel(); + this.deviceNameTextBox = new System.Windows.Forms.ToolStripTextBox(); + this.librariesSplitButton = new System.Windows.Forms.ToolStripDropDownButton(); + this.automationComponentLibraryv100ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.automationComponentLibraryv100CAEX3BETAToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.automationComponentLibraryv100FullToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.electricConnectorLibraryv100ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.industrialSensorLibraryv100ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.toolTip1 = new System.Windows.Forms.ToolTip(this.components); + this.Page0_FullWindow = new System.Windows.Forms.Panel(); + this.Page0_FullWindowPanel2 = new System.Windows.Forms.Panel(); + this.Page0_FastFullWindow = new System.Windows.Forms.Panel(); + this.Page0_FastFullWindow2 = new System.Windows.Forms.Panel(); + this.splitContainer1 = new System.Windows.Forms.SplitContainer(); + this.dataTabControl = new System.Windows.Forms.TabControl(); + this.genericData = new System.Windows.Forms.TabPage(); + this.Page1_MainPanel = new System.Windows.Forms.Panel(); + this.Page1_BottomPanel = new System.Windows.Forms.Panel(); + this.tabControl1 = new System.Windows.Forms.TabControl(); + this.tabPage1 = new System.Windows.Forms.TabPage(); + this.genericparametersAttrDataGridView = new System.Windows.Forms.DataGridView(); + this.dataGridViewTextBoxColumn24 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn25 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn26 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn27 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn28 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn29 = new System.Windows.Forms.DataGridViewComboBoxColumn(); + this.tabPage2 = new System.Windows.Forms.TabPage(); + this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); + this.genericDataNameTxtBx = new System.Windows.Forms.TextBox(); + this.genericDataIDTxtBx = new System.Windows.Forms.TextBox(); + this.genericDataAttributePathTxtBx = new System.Windows.Forms.TextBox(); + this.genericDataRefBaseClassPathTxtBx = new System.Windows.Forms.TextBox(); + this.genericDataRefClassNameTxtBx = new System.Windows.Forms.TextBox(); + this.genericDataCopyrightTxtBx = new System.Windows.Forms.TextBox(); + this.TableHeader_lbl_Name = new System.Windows.Forms.Label(); + this.label2 = new System.Windows.Forms.Label(); + this.label3 = new System.Windows.Forms.Label(); + this.label4 = new System.Windows.Forms.Label(); + this.label5 = new System.Windows.Forms.Label(); + this.label6 = new System.Windows.Forms.Label(); + this.label7 = new System.Windows.Forms.Label(); + this.genericDataDescriptionTxtBx = new System.Windows.Forms.TextBox(); + this.toolStrip5 = new System.Windows.Forms.ToolStrip(); + this.genericDataHeaderLabel = new System.Windows.Forms.ToolStripLabel(); + this.Page1_TopPanel = new System.Windows.Forms.Panel(); + this.split_GenericDataGrid = new System.Windows.Forms.SplitContainer(); + this.genericInformationtreeView = new System.Windows.Forms.TreeView(); + this.imageList2 = new System.Windows.Forms.ImageList(this.components); + this.genericInformationDataGridView = new System.Windows.Forms.DataGridView(); + this.dataGridViewTextBoxColumn31 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn32 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.loadfromLibrary = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.loadFromComponentFile = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.dataGridViewCheckBoxColumn2 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.deleteRoleClassesButton = new System.Windows.Forms.ToolStrip(); + this.toolStripLabel20 = new System.Windows.Forms.ToolStripLabel(); + this.deleteRoleClassButton = new System.Windows.Forms.ToolStripButton(); + this.Interface = new System.Windows.Forms.TabPage(); + this.electricalInterfacesPanel = new System.Windows.Forms.Panel(); + this.Page3_BottomPanel = new System.Windows.Forms.Panel(); + this.tabControlElectricalAttributes = new System.Windows.Forms.TabControl(); + this.attributestab = new System.Windows.Forms.TabPage(); + this.elecInterAttDataGridView = new System.Windows.Forms.DataGridView(); + this.dataGridViewTextBoxColumn17 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn18 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn19 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn20 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn21 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn22 = new System.Windows.Forms.DataGridViewComboBoxColumn(); + this.header = new System.Windows.Forms.TabPage(); + this.headerpanelTabelLayoutPanel = new System.Windows.Forms.TableLayoutPanel(); + this.nameTxtBxElecAttri = new System.Windows.Forms.TextBox(); + this.idTxtBxElecAttri = new System.Windows.Forms.TextBox(); + this.attributepathTxtBxElecAttri = new System.Windows.Forms.TextBox(); + this.RefBaseClassPathTxtBxElecAttri = new System.Windows.Forms.TextBox(); + this.RefClassNameTxtBxElecAttri = new System.Windows.Forms.TextBox(); + this.copyrightTxtBxElecAttri = new System.Windows.Forms.TextBox(); + this.label31 = new System.Windows.Forms.Label(); + this.label29 = new System.Windows.Forms.Label(); + this.label27 = new System.Windows.Forms.Label(); + this.label25 = new System.Windows.Forms.Label(); + this.label21 = new System.Windows.Forms.Label(); + this.TableHeader_lbl_Copyright = new System.Windows.Forms.Label(); + this.TableHeader_lbl_Description = new System.Windows.Forms.Label(); + this.descriptionTxtBoxElecAttri = new System.Windows.Forms.TextBox(); + this.toolStrip2 = new System.Windows.Forms.ToolStrip(); + this.electricalInterfacesHeaderlabel = new System.Windows.Forms.ToolStripLabel(); + this.Page3_TopPanel = new System.Windows.Forms.Panel(); + this.treeViewElectricalInterfaces = new System.Windows.Forms.TreeView(); + this.electricalInterfacesCollectionDataGridView = new System.Windows.Forms.DataGridView(); + this.SerialNumber = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.SelectedClassorInterface = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.libraryFile = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.componentFile = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.dataGridViewCheckBoxColumn1 = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.toolStrip24 = new System.Windows.Forms.ToolStrip(); + this.deleterowsInelectricalInterfacesDataGridView = new System.Windows.Forms.ToolStripButton(); + this.toolStripLabel3 = new System.Windows.Forms.ToolStripLabel(); + this.DocsTabPage = new System.Windows.Forms.TabPage(); + this.addPicturesandDocsPanel = new System.Windows.Forms.Panel(); + this.Page2_BottomPanel = new System.Windows.Forms.Panel(); + this.attachablesInfoDataGridView = new System.Windows.Forms.DataGridView(); + this.ElementName = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.FilePath = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.Add = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.toolStrip19 = new System.Windows.Forms.ToolStrip(); + this.toolStripLabel12 = new System.Windows.Forms.ToolStripLabel(); + this.clearSelectedRowBtn = new System.Windows.Forms.ToolStripButton(); + this.Page2_VerstecktesPanel = new System.Windows.Forms.Panel(); + this.toolStrip13 = new System.Windows.Forms.ToolStrip(); + this.AutomationMLRole = new System.Windows.Forms.ToolStripLabel(); + this.toolStripSeparator29 = new System.Windows.Forms.ToolStripSeparator(); + this.addRole = new System.Windows.Forms.ToolStripButton(); + this.automationMLRoleCmbBx = new System.Windows.Forms.ToolStripComboBox(); + this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel(); + this.selectFileBtn = new System.Windows.Forms.Button(); + this.selectURLBtn = new System.Windows.Forms.Button(); + this.selectedFileLocationTxtBx = new System.Windows.Forms.TextBox(); + this.AMLfileLabel = new System.Windows.Forms.Label(); + this.AMLURLLabel = new System.Windows.Forms.Label(); + this.selectedFileURLTextBox = new System.Windows.Forms.TextBox(); + this.treeViewPanel = new System.Windows.Forms.Panel(); + this.splitContainer3 = new System.Windows.Forms.SplitContainer(); + this.Page0_RoleClassPanel = new System.Windows.Forms.Panel(); + this.treeViewRoleClassLib = new System.Windows.Forms.TreeView(); + this.imageList1 = new System.Windows.Forms.ImageList(this.components); + this.toolStrip7 = new System.Windows.Forms.ToolStrip(); + this.toolStripLabel1 = new System.Windows.Forms.ToolStripLabel(); + this.toolStripSeparator41 = new System.Windows.Forms.ToolStripSeparator(); + this.toolStripTextBox1 = new System.Windows.Forms.ToolStripTextBox(); + this.treeViewInterfaceClassLibPanel = new System.Windows.Forms.Panel(); + this.treeViewInterfaceClassLib = new System.Windows.Forms.TreeView(); + this.toolStrip9 = new System.Windows.Forms.ToolStrip(); + this.InterfaceClassLibLabel = new System.Windows.Forms.ToolStripLabel(); + this.toolStripSeparator42 = new System.Windows.Forms.ToolStripSeparator(); + this.toolStripTextBox2 = new System.Windows.Forms.ToolStripTextBox(); + this.imageList3 = new System.Windows.Forms.ImageList(this.components); + this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components); + this.imageListRCL = new System.Windows.Forms.ImageList(this.components); + this.contextMenuStripforInterfaceClassLib = new System.Windows.Forms.ContextMenuStrip(this.components); + this.addToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.asInterfaceToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.identificationDataGridView = new System.Windows.Forms.DataGridView(); + this.Value = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.Attributes = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.ReferenceID = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.toolStrip8 = new System.Windows.Forms.ToolStrip(); + this.commercialDataTabControl = new System.Windows.Forms.TabControl(); + this.tabPage8 = new System.Windows.Forms.TabPage(); + this.dataGridViewManufacturerDetails = new System.Windows.Forms.DataGridView(); + this.dataGridViewTextBoxColumn3 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.tabPage7 = new System.Windows.Forms.TabPage(); + this.dataGridViewProductPriceDetails = new System.Windows.Forms.DataGridView(); + this.dataGridViewTextBoxColumn6 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn5 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.tabPage6 = new System.Windows.Forms.TabPage(); + this.dataGridViewProductOrderDetails = new System.Windows.Forms.DataGridView(); + this.dataGridViewTextBoxColumn9 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn8 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn7 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.tabPage5 = new System.Windows.Forms.TabPage(); + this.dataGridViewProductDetails = new System.Windows.Forms.DataGridView(); + this.dataGridViewTextBoxColumn12 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn11 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn10 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.toolStrip10 = new System.Windows.Forms.ToolStrip(); + this.identificationDataBtn = new System.Windows.Forms.Button(); + this.toolStripButton7 = new System.Windows.Forms.ToolStripButton(); + this.toolStripButton8 = new System.Windows.Forms.ToolStripButton(); + this.toolStripButton9 = new System.Windows.Forms.ToolStripButton(); + this.commercialDataBtn = new System.Windows.Forms.Button(); + this.toolStripButton13 = new System.Windows.Forms.ToolStripButton(); + this.toolStripButton14 = new System.Windows.Forms.ToolStripButton(); + this.toolStripButton15 = new System.Windows.Forms.ToolStripButton(); + this.toolStrip1.SuspendLayout(); + this.Page0_FullWindow.SuspendLayout(); + this.Page0_FullWindowPanel2.SuspendLayout(); + this.Page0_FastFullWindow.SuspendLayout(); + this.Page0_FastFullWindow2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); + this.splitContainer1.Panel1.SuspendLayout(); + this.splitContainer1.Panel2.SuspendLayout(); + this.splitContainer1.SuspendLayout(); + this.dataTabControl.SuspendLayout(); + this.genericData.SuspendLayout(); + this.Page1_MainPanel.SuspendLayout(); + this.Page1_BottomPanel.SuspendLayout(); + this.tabControl1.SuspendLayout(); + this.tabPage1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.genericparametersAttrDataGridView)).BeginInit(); + this.tabPage2.SuspendLayout(); + this.tableLayoutPanel1.SuspendLayout(); + this.toolStrip5.SuspendLayout(); + this.Page1_TopPanel.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.split_GenericDataGrid)).BeginInit(); + this.split_GenericDataGrid.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.genericInformationDataGridView)).BeginInit(); + this.deleteRoleClassesButton.SuspendLayout(); + this.Interface.SuspendLayout(); + this.electricalInterfacesPanel.SuspendLayout(); + this.Page3_BottomPanel.SuspendLayout(); + this.tabControlElectricalAttributes.SuspendLayout(); + this.attributestab.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.elecInterAttDataGridView)).BeginInit(); + this.header.SuspendLayout(); + this.headerpanelTabelLayoutPanel.SuspendLayout(); + this.toolStrip2.SuspendLayout(); + this.Page3_TopPanel.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.electricalInterfacesCollectionDataGridView)).BeginInit(); + this.toolStrip24.SuspendLayout(); + this.DocsTabPage.SuspendLayout(); + this.addPicturesandDocsPanel.SuspendLayout(); + this.Page2_BottomPanel.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.attachablesInfoDataGridView)).BeginInit(); + this.toolStrip19.SuspendLayout(); + this.Page2_VerstecktesPanel.SuspendLayout(); + this.toolStrip13.SuspendLayout(); + this.tableLayoutPanel4.SuspendLayout(); + this.treeViewPanel.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).BeginInit(); + this.splitContainer3.Panel1.SuspendLayout(); + this.splitContainer3.Panel2.SuspendLayout(); + this.splitContainer3.SuspendLayout(); + this.Page0_RoleClassPanel.SuspendLayout(); + this.toolStrip7.SuspendLayout(); + this.treeViewInterfaceClassLibPanel.SuspendLayout(); + this.toolStrip9.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.identificationDataGridView)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridViewManufacturerDetails)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridViewProductPriceDetails)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridViewProductOrderDetails)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridViewProductDetails)).BeginInit(); + this.SuspendLayout(); + // + // toolStrip1 + // + this.toolStrip1.AutoSize = false; + this.toolStrip1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(97)))), ((int)(((byte)(97)))), ((int)(((byte)(97))))); + this.toolStrip1.Font = new System.Drawing.Font("Segoe UI", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.toolStrip1.GripMargin = new System.Windows.Forms.Padding(0); + this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip1.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.fileButton, + this.toolStripSeparator8, + this.helpButton, + this.fileNameLabel, + this.toolStripSeparator3, + this.filePathLabel, + this.vendorNameTextBox, + this.toolStripSeparator6, + this.toolStripLabel4, + this.deviceNameTextBox, + this.librariesSplitButton}); + this.toolStrip1.LayoutStyle = System.Windows.Forms.ToolStripLayoutStyle.HorizontalStackWithOverflow; + this.toolStrip1.Location = new System.Drawing.Point(0, 0); + this.toolStrip1.MinimumSize = new System.Drawing.Size(0, 40); + this.toolStrip1.Name = "toolStrip1"; + this.toolStrip1.Padding = new System.Windows.Forms.Padding(0); + this.toolStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional; + this.toolStrip1.Size = new System.Drawing.Size(1750, 40); + this.toolStrip1.TabIndex = 0; + this.toolStrip1.Text = "toolStrip1"; + this.toolStrip1.ItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.toolStrip1_ItemClicked); + // + // fileButton + // + this.fileButton.AutoSize = false; + this.fileButton.BackColor = System.Drawing.Color.Transparent; + this.fileButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.fileButton.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.newToolStripMenuItem, + this.openToolStripMenuItem, + this.saveToolStripMenuItem, + this.saveeToolStripMenuItem, + this.importToolStripMenuItem, + this.loadLibraryFile, + this.exitToolStripMenuItem}); + this.fileButton.ForeColor = System.Drawing.Color.DarkOrange; + this.fileButton.ImageTransparentColor = System.Drawing.Color.Magenta; + this.fileButton.Name = "fileButton"; + this.fileButton.Size = new System.Drawing.Size(75, 42); + this.fileButton.Text = "File"; + // + // newToolStripMenuItem + // + this.newToolStripMenuItem.Name = "newToolStripMenuItem"; + this.newToolStripMenuItem.Size = new System.Drawing.Size(188, 22); + this.newToolStripMenuItem.Text = "New"; + this.newToolStripMenuItem.Click += new System.EventHandler(this.newToolStripMenuItem_Click); + // + // openToolStripMenuItem + // + this.openToolStripMenuItem.Name = "openToolStripMenuItem"; + this.openToolStripMenuItem.Size = new System.Drawing.Size(188, 22); + this.openToolStripMenuItem.Text = "Open"; + this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click); + // + // saveToolStripMenuItem + // + this.saveToolStripMenuItem.Name = "saveToolStripMenuItem"; + this.saveToolStripMenuItem.Size = new System.Drawing.Size(188, 22); + this.saveToolStripMenuItem.Text = "Save"; + this.saveToolStripMenuItem.Click += new System.EventHandler(this.saveToolStripMenuItem_Click); + // + // saveeToolStripMenuItem + // + this.saveeToolStripMenuItem.Name = "saveeToolStripMenuItem"; + this.saveeToolStripMenuItem.Size = new System.Drawing.Size(188, 22); + this.saveeToolStripMenuItem.Text = "Save and Close File"; + this.saveeToolStripMenuItem.Click += new System.EventHandler(this.saveeToolStripMenuItem_Click); + // + // importToolStripMenuItem + // + this.importToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.importIODDFileToolStripMenuItem, + this.importGSDFileToolStripMenuItem}); + this.importToolStripMenuItem.Name = "importToolStripMenuItem"; + this.importToolStripMenuItem.Size = new System.Drawing.Size(188, 22); + this.importToolStripMenuItem.Text = "Import"; + // + // importIODDFileToolStripMenuItem + // + this.importIODDFileToolStripMenuItem.Name = "importIODDFileToolStripMenuItem"; + this.importIODDFileToolStripMenuItem.Size = new System.Drawing.Size(178, 22); + this.importIODDFileToolStripMenuItem.Text = "Import IODD-File"; + this.importIODDFileToolStripMenuItem.Click += new System.EventHandler(this.importIODDFileToolStripMenuItem_Click); + // + // importGSDFileToolStripMenuItem + // + this.importGSDFileToolStripMenuItem.Name = "importGSDFileToolStripMenuItem"; + this.importGSDFileToolStripMenuItem.Size = new System.Drawing.Size(178, 22); + this.importGSDFileToolStripMenuItem.Text = "Import GSD-File"; + this.importGSDFileToolStripMenuItem.Click += new System.EventHandler(this.importGSDFileToolStripMenuItem_Click); + // + // loadLibraryFile + // + this.loadLibraryFile.Name = "loadLibraryFile"; + this.loadLibraryFile.Size = new System.Drawing.Size(188, 22); + this.loadLibraryFile.Text = "Load Library"; + this.loadLibraryFile.Click += new System.EventHandler(this.loadLibraryFile_Click); + // + // exitToolStripMenuItem + // + this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; + this.exitToolStripMenuItem.Size = new System.Drawing.Size(188, 22); + this.exitToolStripMenuItem.Text = "Exit"; + this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click); + // + // toolStripSeparator8 + // + this.toolStripSeparator8.AutoSize = false; + this.toolStripSeparator8.Name = "toolStripSeparator8"; + this.toolStripSeparator8.Size = new System.Drawing.Size(12, 30); + // + // helpButton + // + this.helpButton.AutoSize = false; + this.helpButton.BackColor = System.Drawing.Color.Transparent; + this.helpButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.helpButton.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.aboutToolStripMenuItem, + this.manualToolStripMenuItem}); + this.helpButton.Font = new System.Drawing.Font("Segoe UI", 9F); + this.helpButton.ForeColor = System.Drawing.Color.DarkOrange; + this.helpButton.ImageTransparentColor = System.Drawing.Color.Magenta; + this.helpButton.Name = "helpButton"; + this.helpButton.Size = new System.Drawing.Size(75, 42); + this.helpButton.Text = "Help"; + // + // aboutToolStripMenuItem + // + this.aboutToolStripMenuItem.BackColor = System.Drawing.SystemColors.Control; + this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem"; + this.aboutToolStripMenuItem.Size = new System.Drawing.Size(114, 22); + this.aboutToolStripMenuItem.Text = "About"; + this.aboutToolStripMenuItem.Click += new System.EventHandler(this.aboutToolStripMenuItem_Click); + // + // manualToolStripMenuItem + // + this.manualToolStripMenuItem.Name = "manualToolStripMenuItem"; + this.manualToolStripMenuItem.Size = new System.Drawing.Size(114, 22); + this.manualToolStripMenuItem.Text = "Manual"; + this.manualToolStripMenuItem.Click += new System.EventHandler(this.manualToolStripMenuItem_Click); + // + // fileNameLabel + // + this.fileNameLabel.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.fileNameLabel.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold); + this.fileNameLabel.ForeColor = System.Drawing.Color.Black; + this.fileNameLabel.Name = "fileNameLabel"; + this.fileNameLabel.Size = new System.Drawing.Size(0, 37); + // + // toolStripSeparator3 + // + this.toolStripSeparator3.AutoSize = false; + this.toolStripSeparator3.Name = "toolStripSeparator3"; + this.toolStripSeparator3.Size = new System.Drawing.Size(12, 30); + // + // filePathLabel + // + this.filePathLabel.ForeColor = System.Drawing.Color.DarkOrange; + this.filePathLabel.Name = "filePathLabel"; + this.filePathLabel.Size = new System.Drawing.Size(89, 37); + this.filePathLabel.Text = "Vendor Name"; + // + // vendorNameTextBox + // + this.vendorNameTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.vendorNameTextBox.Font = new System.Drawing.Font("Segoe UI", 9F); + this.vendorNameTextBox.Name = "vendorNameTextBox"; + this.vendorNameTextBox.Size = new System.Drawing.Size(219, 40); + this.vendorNameTextBox.TextChanged += new System.EventHandler(this.vendorNameTextBox_TextChanged); + // + // toolStripSeparator6 + // + this.toolStripSeparator6.AutoSize = false; + this.toolStripSeparator6.Name = "toolStripSeparator6"; + this.toolStripSeparator6.Size = new System.Drawing.Size(12, 30); + // + // toolStripLabel4 + // + this.toolStripLabel4.ForeColor = System.Drawing.Color.DarkOrange; + this.toolStripLabel4.Name = "toolStripLabel4"; + this.toolStripLabel4.Size = new System.Drawing.Size(85, 37); + this.toolStripLabel4.Text = "Device Name"; + // + // deviceNameTextBox + // + this.deviceNameTextBox.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.deviceNameTextBox.Font = new System.Drawing.Font("Segoe UI", 9F); + this.deviceNameTextBox.Name = "deviceNameTextBox"; + this.deviceNameTextBox.Size = new System.Drawing.Size(219, 40); + this.deviceNameTextBox.TextChanged += new System.EventHandler(this.deviceNameTextBox_TextChanged); + // + // librariesSplitButton + // + this.librariesSplitButton.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.librariesSplitButton.BackColor = System.Drawing.Color.Transparent; + this.librariesSplitButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.librariesSplitButton.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.automationComponentLibraryv100ToolStripMenuItem, + this.automationComponentLibraryv100CAEX3BETAToolStripMenuItem, + this.automationComponentLibraryv100FullToolStripMenuItem, + this.automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem, + this.electricConnectorLibraryv100ToolStripMenuItem, + this.industrialSensorLibraryv100ToolStripMenuItem}); + this.librariesSplitButton.Font = new System.Drawing.Font("Segoe UI", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.librariesSplitButton.ForeColor = System.Drawing.Color.DarkOrange; + this.librariesSplitButton.ImageTransparentColor = System.Drawing.Color.Magenta; + this.librariesSplitButton.Name = "librariesSplitButton"; + this.librariesSplitButton.RightToLeft = System.Windows.Forms.RightToLeft.Yes; + this.librariesSplitButton.Size = new System.Drawing.Size(128, 37); + this.librariesSplitButton.Text = "Standard Libraries"; + this.librariesSplitButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // automationComponentLibraryv100ToolStripMenuItem + // + this.automationComponentLibraryv100ToolStripMenuItem.Name = "automationComponentLibraryv100ToolStripMenuItem"; + this.automationComponentLibraryv100ToolStripMenuItem.Size = new System.Drawing.Size(393, 22); + this.automationComponentLibraryv100ToolStripMenuItem.Text = "AutomationComponentLibrary_v1_0_0"; + this.automationComponentLibraryv100ToolStripMenuItem.Click += new System.EventHandler(this.automationComponentLibraryv100ToolStripMenuItem_Click); + // + // automationComponentLibraryv100CAEX3BETAToolStripMenuItem + // + this.automationComponentLibraryv100CAEX3BETAToolStripMenuItem.Name = "automationComponentLibraryv100CAEX3BETAToolStripMenuItem"; + this.automationComponentLibraryv100CAEX3BETAToolStripMenuItem.Size = new System.Drawing.Size(393, 22); + this.automationComponentLibraryv100CAEX3BETAToolStripMenuItem.Text = "AutomationComponentLibrary_v1_0_0_CAEX3_BETA"; + this.automationComponentLibraryv100CAEX3BETAToolStripMenuItem.Click += new System.EventHandler(this.automationComponentLibraryv100CAEX3BETAToolStripMenuItem_Click); + // + // automationComponentLibraryv100FullToolStripMenuItem + // + this.automationComponentLibraryv100FullToolStripMenuItem.Name = "automationComponentLibraryv100FullToolStripMenuItem"; + this.automationComponentLibraryv100FullToolStripMenuItem.Size = new System.Drawing.Size(393, 22); + this.automationComponentLibraryv100FullToolStripMenuItem.Text = "AutomationComponentLibrary_v1_0_0_Full"; + this.automationComponentLibraryv100FullToolStripMenuItem.Click += new System.EventHandler(this.automationComponentLibraryv100FullToolStripMenuItem_Click); + // + // automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem + // + this.automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem.Name = "automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem"; + this.automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem.Size = new System.Drawing.Size(393, 22); + this.automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem.Text = "AutomationComponentLibrary_v1_0_0_Full_CAEX3_BETA"; + this.automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem.Click += new System.EventHandler(this.automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem_Click); + // + // electricConnectorLibraryv100ToolStripMenuItem + // + this.electricConnectorLibraryv100ToolStripMenuItem.Name = "electricConnectorLibraryv100ToolStripMenuItem"; + this.electricConnectorLibraryv100ToolStripMenuItem.Size = new System.Drawing.Size(393, 22); + this.electricConnectorLibraryv100ToolStripMenuItem.Text = "ElectricConnectorLibrary_v1_0_0"; + this.electricConnectorLibraryv100ToolStripMenuItem.Click += new System.EventHandler(this.electricConnectorLibraryv100ToolStripMenuItem_Click); + // + // industrialSensorLibraryv100ToolStripMenuItem + // + this.industrialSensorLibraryv100ToolStripMenuItem.Name = "industrialSensorLibraryv100ToolStripMenuItem"; + this.industrialSensorLibraryv100ToolStripMenuItem.Size = new System.Drawing.Size(393, 22); + this.industrialSensorLibraryv100ToolStripMenuItem.Text = "IndustrialSensorLibrary_v1_0_0"; + this.industrialSensorLibraryv100ToolStripMenuItem.Click += new System.EventHandler(this.industrialSensorLibraryv100ToolStripMenuItem_Click); + // + // Page0_FullWindow + // + this.Page0_FullWindow.BackColor = System.Drawing.SystemColors.Control; + this.Page0_FullWindow.Controls.Add(this.Page0_FullWindowPanel2); + this.Page0_FullWindow.Dock = System.Windows.Forms.DockStyle.Fill; + this.Page0_FullWindow.Location = new System.Drawing.Point(0, 0); + this.Page0_FullWindow.Margin = new System.Windows.Forms.Padding(0); + this.Page0_FullWindow.Name = "Page0_FullWindow"; + this.Page0_FullWindow.Size = new System.Drawing.Size(1750, 866); + this.Page0_FullWindow.TabIndex = 2; + // + // Page0_FullWindowPanel2 + // + this.Page0_FullWindowPanel2.BackColor = System.Drawing.SystemColors.Control; + this.Page0_FullWindowPanel2.Controls.Add(this.Page0_FastFullWindow); + this.Page0_FullWindowPanel2.Controls.Add(this.toolStrip1); + this.Page0_FullWindowPanel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.Page0_FullWindowPanel2.Location = new System.Drawing.Point(0, 0); + this.Page0_FullWindowPanel2.Margin = new System.Windows.Forms.Padding(0); + this.Page0_FullWindowPanel2.Name = "Page0_FullWindowPanel2"; + this.Page0_FullWindowPanel2.Size = new System.Drawing.Size(1750, 866); + this.Page0_FullWindowPanel2.TabIndex = 1; + // + // Page0_FastFullWindow + // + this.Page0_FastFullWindow.BackColor = System.Drawing.SystemColors.Control; + this.Page0_FastFullWindow.Controls.Add(this.Page0_FastFullWindow2); + this.Page0_FastFullWindow.Dock = System.Windows.Forms.DockStyle.Fill; + this.Page0_FastFullWindow.Location = new System.Drawing.Point(0, 40); + this.Page0_FastFullWindow.Margin = new System.Windows.Forms.Padding(0); + this.Page0_FastFullWindow.Name = "Page0_FastFullWindow"; + this.Page0_FastFullWindow.Size = new System.Drawing.Size(1750, 826); + this.Page0_FastFullWindow.TabIndex = 3; + // + // Page0_FastFullWindow2 + // + this.Page0_FastFullWindow2.Controls.Add(this.splitContainer1); + this.Page0_FastFullWindow2.Dock = System.Windows.Forms.DockStyle.Fill; + this.Page0_FastFullWindow2.Location = new System.Drawing.Point(0, 0); + this.Page0_FastFullWindow2.Margin = new System.Windows.Forms.Padding(0); + this.Page0_FastFullWindow2.Name = "Page0_FastFullWindow2"; + this.Page0_FastFullWindow2.Size = new System.Drawing.Size(1750, 826); + this.Page0_FastFullWindow2.TabIndex = 2; + // + // splitContainer1 + // + this.splitContainer1.BackColor = System.Drawing.Color.WhiteSmoke; + this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer1.Location = new System.Drawing.Point(0, 0); + this.splitContainer1.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.splitContainer1.Name = "splitContainer1"; + // + // splitContainer1.Panel1 + // + this.splitContainer1.Panel1.AutoScroll = true; + this.splitContainer1.Panel1.BackColor = System.Drawing.Color.White; + this.splitContainer1.Panel1.Controls.Add(this.dataTabControl); + // + // splitContainer1.Panel2 + // + this.splitContainer1.Panel2.Controls.Add(this.treeViewPanel); + this.splitContainer1.Size = new System.Drawing.Size(1750, 826); + this.splitContainer1.SplitterDistance = 1333; + this.splitContainer1.SplitterWidth = 3; + this.splitContainer1.TabIndex = 2; + this.splitContainer1.SplitterMoved += new System.Windows.Forms.SplitterEventHandler(this.splitContainer1_SplitterMoved); + // + // dataTabControl + // + this.dataTabControl.Controls.Add(this.genericData); + this.dataTabControl.Controls.Add(this.Interface); + this.dataTabControl.Controls.Add(this.DocsTabPage); + this.dataTabControl.Dock = System.Windows.Forms.DockStyle.Fill; + this.dataTabControl.DrawMode = System.Windows.Forms.TabDrawMode.OwnerDrawFixed; + this.dataTabControl.Font = new System.Drawing.Font("Segoe UI", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.dataTabControl.ItemSize = new System.Drawing.Size(100, 22); + this.dataTabControl.Location = new System.Drawing.Point(0, 0); + this.dataTabControl.Margin = new System.Windows.Forms.Padding(0); + this.dataTabControl.Name = "dataTabControl"; + this.dataTabControl.SelectedIndex = 0; + this.dataTabControl.Size = new System.Drawing.Size(1333, 826); + this.dataTabControl.SizeMode = System.Windows.Forms.TabSizeMode.Fixed; + this.dataTabControl.TabIndex = 0; + this.dataTabControl.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.dataTabControl_DrawItem); + this.dataTabControl.SelectedIndexChanged += new System.EventHandler(this.dataTabControl_SelectedIndexChanged); + this.dataTabControl.Click += new System.EventHandler(this.dataTabControl_Click); + // + // genericData + // + this.genericData.BackColor = System.Drawing.Color.WhiteSmoke; + this.genericData.Controls.Add(this.Page1_MainPanel); + this.genericData.Location = new System.Drawing.Point(4, 26); + this.genericData.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.genericData.Name = "genericData"; + this.genericData.Size = new System.Drawing.Size(1373, 818); + this.genericData.TabIndex = 7; + this.genericData.Text = "Generic Data"; + // + // Page1_MainPanel + // + this.Page1_MainPanel.AutoScroll = true; + this.Page1_MainPanel.BackColor = System.Drawing.Color.WhiteSmoke; + this.Page1_MainPanel.Controls.Add(this.Page1_BottomPanel); + this.Page1_MainPanel.Controls.Add(this.Page1_TopPanel); + this.Page1_MainPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.Page1_MainPanel.Location = new System.Drawing.Point(0, 0); + this.Page1_MainPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.Page1_MainPanel.MinimumSize = new System.Drawing.Size(686, 100); + this.Page1_MainPanel.Name = "Page1_MainPanel"; + this.Page1_MainPanel.Size = new System.Drawing.Size(1373, 818); + this.Page1_MainPanel.TabIndex = 1; + this.Page1_MainPanel.Paint += new System.Windows.Forms.PaintEventHandler(this.panel_FrontPage_Paint); + // + // Page1_BottomPanel + // + this.Page1_BottomPanel.AutoSize = true; + this.Page1_BottomPanel.BackColor = System.Drawing.Color.WhiteSmoke; + this.Page1_BottomPanel.Controls.Add(this.tabControl1); + this.Page1_BottomPanel.Controls.Add(this.toolStrip5); + this.Page1_BottomPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.Page1_BottomPanel.Location = new System.Drawing.Point(0, 454); + this.Page1_BottomPanel.Margin = new System.Windows.Forms.Padding(0); + this.Page1_BottomPanel.MinimumSize = new System.Drawing.Size(0, 400); + this.Page1_BottomPanel.Name = "Page1_BottomPanel"; + this.Page1_BottomPanel.Size = new System.Drawing.Size(1373, 400); + this.Page1_BottomPanel.TabIndex = 10; + // + // tabControl1 + // + this.tabControl1.Controls.Add(this.tabPage1); + this.tabControl1.Controls.Add(this.tabPage2); + this.tabControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.tabControl1.Location = new System.Drawing.Point(0, 25); + this.tabControl1.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.tabControl1.Name = "tabControl1"; + this.tabControl1.SelectedIndex = 0; + this.tabControl1.Size = new System.Drawing.Size(1373, 375); + this.tabControl1.TabIndex = 9; + // + // tabPage1 + // + this.tabPage1.BackColor = System.Drawing.Color.WhiteSmoke; + this.tabPage1.Controls.Add(this.genericparametersAttrDataGridView); + this.tabPage1.Location = new System.Drawing.Point(4, 26); + this.tabPage1.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.tabPage1.Name = "tabPage1"; + this.tabPage1.Padding = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.tabPage1.Size = new System.Drawing.Size(1365, 345); + this.tabPage1.TabIndex = 0; + this.tabPage1.Text = "Attributes"; + // + // genericparametersAttrDataGridView + // + this.genericparametersAttrDataGridView.BackgroundColor = System.Drawing.Color.WhiteSmoke; + this.genericparametersAttrDataGridView.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.genericparametersAttrDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.genericparametersAttrDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.dataGridViewTextBoxColumn24, + this.dataGridViewTextBoxColumn25, + this.dataGridViewTextBoxColumn26, + this.dataGridViewTextBoxColumn27, + this.dataGridViewTextBoxColumn28, + this.dataGridViewTextBoxColumn29}); + this.genericparametersAttrDataGridView.Dock = System.Windows.Forms.DockStyle.Fill; + this.genericparametersAttrDataGridView.Location = new System.Drawing.Point(2, 3); + this.genericparametersAttrDataGridView.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.genericparametersAttrDataGridView.Name = "genericparametersAttrDataGridView"; + this.genericparametersAttrDataGridView.RowHeadersWidth = 50; + this.genericparametersAttrDataGridView.RowTemplate.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.genericparametersAttrDataGridView.Size = new System.Drawing.Size(1361, 339); + this.genericparametersAttrDataGridView.TabIndex = 8; + this.genericparametersAttrDataGridView.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.genericParametersAttrDataGridView_CellClick); + this.genericparametersAttrDataGridView.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.genericParametersAttrDataGridView_CellContentClick); + this.genericparametersAttrDataGridView.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.genericParametersAttrDataGridView_CellEndEdit); + // + // dataGridViewTextBoxColumn24 + // + this.dataGridViewTextBoxColumn24.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn24.HeaderText = "AttributeName"; + this.dataGridViewTextBoxColumn24.MinimumWidth = 50; + this.dataGridViewTextBoxColumn24.Name = "dataGridViewTextBoxColumn24"; + // + // dataGridViewTextBoxColumn25 + // + this.dataGridViewTextBoxColumn25.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn25.HeaderText = "Values"; + this.dataGridViewTextBoxColumn25.MinimumWidth = 50; + this.dataGridViewTextBoxColumn25.Name = "dataGridViewTextBoxColumn25"; + // + // dataGridViewTextBoxColumn26 + // + this.dataGridViewTextBoxColumn26.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn26.HeaderText = "Default"; + this.dataGridViewTextBoxColumn26.MinimumWidth = 6; + this.dataGridViewTextBoxColumn26.Name = "dataGridViewTextBoxColumn26"; + // + // dataGridViewTextBoxColumn27 + // + this.dataGridViewTextBoxColumn27.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn27.HeaderText = "Units"; + this.dataGridViewTextBoxColumn27.MinimumWidth = 6; + this.dataGridViewTextBoxColumn27.Name = "dataGridViewTextBoxColumn27"; + // + // dataGridViewTextBoxColumn28 + // + this.dataGridViewTextBoxColumn28.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn28.HeaderText = "DataType"; + this.dataGridViewTextBoxColumn28.MinimumWidth = 6; + this.dataGridViewTextBoxColumn28.Name = "dataGridViewTextBoxColumn28"; + // + // dataGridViewTextBoxColumn29 + // + this.dataGridViewTextBoxColumn29.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn29.HeaderText = "Semantic"; + this.dataGridViewTextBoxColumn29.MinimumWidth = 6; + this.dataGridViewTextBoxColumn29.Name = "dataGridViewTextBoxColumn29"; + this.dataGridViewTextBoxColumn29.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridViewTextBoxColumn29.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + // + // tabPage2 + // + this.tabPage2.BackColor = System.Drawing.Color.WhiteSmoke; + this.tabPage2.Controls.Add(this.tableLayoutPanel1); + this.tabPage2.Location = new System.Drawing.Point(4, 26); + this.tabPage2.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.tabPage2.Name = "tabPage2"; + this.tabPage2.Padding = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.tabPage2.RightToLeft = System.Windows.Forms.RightToLeft.No; + this.tabPage2.Size = new System.Drawing.Size(1365, 345); + this.tabPage2.TabIndex = 1; + this.tabPage2.Text = "Header"; + // + // tableLayoutPanel1 + // + this.tableLayoutPanel1.AutoSize = true; + this.tableLayoutPanel1.BackColor = System.Drawing.Color.WhiteSmoke; + this.tableLayoutPanel1.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.Single; + this.tableLayoutPanel1.ColumnCount = 2; + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 29.09091F)); + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 70.90909F)); + this.tableLayoutPanel1.Controls.Add(this.genericDataNameTxtBx, 1, 6); + this.tableLayoutPanel1.Controls.Add(this.genericDataIDTxtBx, 1, 5); + this.tableLayoutPanel1.Controls.Add(this.genericDataAttributePathTxtBx, 1, 4); + this.tableLayoutPanel1.Controls.Add(this.genericDataRefBaseClassPathTxtBx, 1, 3); + this.tableLayoutPanel1.Controls.Add(this.genericDataRefClassNameTxtBx, 1, 2); + this.tableLayoutPanel1.Controls.Add(this.genericDataCopyrightTxtBx, 1, 1); + this.tableLayoutPanel1.Controls.Add(this.TableHeader_lbl_Name, 0, 6); + this.tableLayoutPanel1.Controls.Add(this.label2, 0, 5); + this.tableLayoutPanel1.Controls.Add(this.label3, 0, 4); + this.tableLayoutPanel1.Controls.Add(this.label4, 0, 3); + this.tableLayoutPanel1.Controls.Add(this.label5, 0, 2); + this.tableLayoutPanel1.Controls.Add(this.label6, 0, 1); + this.tableLayoutPanel1.Controls.Add(this.label7, 0, 0); + this.tableLayoutPanel1.Controls.Add(this.genericDataDescriptionTxtBx, 1, 0); + this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.tableLayoutPanel1.Location = new System.Drawing.Point(2, 3); + this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.tableLayoutPanel1.MaximumSize = new System.Drawing.Size(0, 300); + this.tableLayoutPanel1.Name = "tableLayoutPanel1"; + this.tableLayoutPanel1.RowCount = 7; + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel1.Size = new System.Drawing.Size(1361, 300); + this.tableLayoutPanel1.TabIndex = 1; + // + // genericDataNameTxtBx + // + this.genericDataNameTxtBx.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.genericDataNameTxtBx.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.genericDataNameTxtBx.Location = new System.Drawing.Point(397, 263); + this.genericDataNameTxtBx.Margin = new System.Windows.Forms.Padding(0); + this.genericDataNameTxtBx.Name = "genericDataNameTxtBx"; + this.genericDataNameTxtBx.Size = new System.Drawing.Size(963, 25); + this.genericDataNameTxtBx.TabIndex = 24; + // + // genericDataIDTxtBx + // + this.genericDataIDTxtBx.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.genericDataIDTxtBx.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.genericDataIDTxtBx.Location = new System.Drawing.Point(397, 219); + this.genericDataIDTxtBx.Margin = new System.Windows.Forms.Padding(0); + this.genericDataIDTxtBx.Name = "genericDataIDTxtBx"; + this.genericDataIDTxtBx.Size = new System.Drawing.Size(963, 25); + this.genericDataIDTxtBx.TabIndex = 23; + // + // genericDataAttributePathTxtBx + // + this.genericDataAttributePathTxtBx.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.genericDataAttributePathTxtBx.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.genericDataAttributePathTxtBx.Location = new System.Drawing.Point(397, 177); + this.genericDataAttributePathTxtBx.Margin = new System.Windows.Forms.Padding(0); + this.genericDataAttributePathTxtBx.Name = "genericDataAttributePathTxtBx"; + this.genericDataAttributePathTxtBx.Size = new System.Drawing.Size(963, 25); + this.genericDataAttributePathTxtBx.TabIndex = 22; + // + // genericDataRefBaseClassPathTxtBx + // + this.genericDataRefBaseClassPathTxtBx.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.genericDataRefBaseClassPathTxtBx.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.genericDataRefBaseClassPathTxtBx.Location = new System.Drawing.Point(397, 135); + this.genericDataRefBaseClassPathTxtBx.Margin = new System.Windows.Forms.Padding(0); + this.genericDataRefBaseClassPathTxtBx.Name = "genericDataRefBaseClassPathTxtBx"; + this.genericDataRefBaseClassPathTxtBx.Size = new System.Drawing.Size(963, 25); + this.genericDataRefBaseClassPathTxtBx.TabIndex = 21; + // + // genericDataRefClassNameTxtBx + // + this.genericDataRefClassNameTxtBx.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.genericDataRefClassNameTxtBx.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.genericDataRefClassNameTxtBx.Location = new System.Drawing.Point(397, 93); + this.genericDataRefClassNameTxtBx.Margin = new System.Windows.Forms.Padding(0); + this.genericDataRefClassNameTxtBx.Name = "genericDataRefClassNameTxtBx"; + this.genericDataRefClassNameTxtBx.Size = new System.Drawing.Size(963, 25); + this.genericDataRefClassNameTxtBx.TabIndex = 20; + // + // genericDataCopyrightTxtBx + // + this.genericDataCopyrightTxtBx.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.genericDataCopyrightTxtBx.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.genericDataCopyrightTxtBx.Location = new System.Drawing.Point(397, 51); + this.genericDataCopyrightTxtBx.Margin = new System.Windows.Forms.Padding(0); + this.genericDataCopyrightTxtBx.Name = "genericDataCopyrightTxtBx"; + this.genericDataCopyrightTxtBx.Size = new System.Drawing.Size(963, 25); + this.genericDataCopyrightTxtBx.TabIndex = 19; + // + // TableHeader_lbl_Name + // + this.TableHeader_lbl_Name.AccessibleName = ""; + this.TableHeader_lbl_Name.AutoSize = true; + this.TableHeader_lbl_Name.Dock = System.Windows.Forms.DockStyle.Fill; + this.TableHeader_lbl_Name.ForeColor = System.Drawing.Color.Black; + this.TableHeader_lbl_Name.Location = new System.Drawing.Point(3, 253); + this.TableHeader_lbl_Name.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.TableHeader_lbl_Name.Name = "TableHeader_lbl_Name"; + this.TableHeader_lbl_Name.Size = new System.Drawing.Size(391, 46); + this.TableHeader_lbl_Name.TabIndex = 12; + this.TableHeader_lbl_Name.Text = "Name"; + this.TableHeader_lbl_Name.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Dock = System.Windows.Forms.DockStyle.Fill; + this.label2.ForeColor = System.Drawing.Color.Black; + this.label2.Location = new System.Drawing.Point(3, 211); + this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(391, 41); + this.label2.TabIndex = 10; + this.label2.Text = "ID"; + this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Dock = System.Windows.Forms.DockStyle.Fill; + this.label3.ForeColor = System.Drawing.Color.Black; + this.label3.Location = new System.Drawing.Point(3, 169); + this.label3.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(391, 41); + this.label3.TabIndex = 8; + this.label3.Text = "Attribute Path"; + this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Dock = System.Windows.Forms.DockStyle.Fill; + this.label4.ForeColor = System.Drawing.Color.Black; + this.label4.Location = new System.Drawing.Point(3, 127); + this.label4.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(391, 41); + this.label4.TabIndex = 6; + this.label4.Text = "Referenced Base Class Path"; + this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label5 + // + this.label5.AutoSize = true; + this.label5.Dock = System.Windows.Forms.DockStyle.Fill; + this.label5.ForeColor = System.Drawing.Color.Black; + this.label5.Location = new System.Drawing.Point(3, 85); + this.label5.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(391, 41); + this.label5.TabIndex = 4; + this.label5.Text = "Referenced Class Name"; + this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label6 + // + this.label6.AutoSize = true; + this.label6.Dock = System.Windows.Forms.DockStyle.Fill; + this.label6.ForeColor = System.Drawing.Color.Black; + this.label6.Location = new System.Drawing.Point(3, 43); + this.label6.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(391, 41); + this.label6.TabIndex = 2; + this.label6.Text = "Copyright"; + this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label7 + // + this.label7.AutoSize = true; + this.label7.Dock = System.Windows.Forms.DockStyle.Fill; + this.label7.ForeColor = System.Drawing.Color.Black; + this.label7.Location = new System.Drawing.Point(3, 1); + this.label7.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(391, 41); + this.label7.TabIndex = 0; + this.label7.Text = "Description"; + this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // genericDataDescriptionTxtBx + // + this.genericDataDescriptionTxtBx.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.genericDataDescriptionTxtBx.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.genericDataDescriptionTxtBx.Location = new System.Drawing.Point(397, 9); + this.genericDataDescriptionTxtBx.Margin = new System.Windows.Forms.Padding(0); + this.genericDataDescriptionTxtBx.Name = "genericDataDescriptionTxtBx"; + this.genericDataDescriptionTxtBx.Size = new System.Drawing.Size(963, 25); + this.genericDataDescriptionTxtBx.TabIndex = 18; + // + // toolStrip5 + // + this.toolStrip5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(158)))), ((int)(((byte)(158)))), ((int)(((byte)(158))))); + this.toolStrip5.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip5.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip5.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.genericDataHeaderLabel}); + this.toolStrip5.Location = new System.Drawing.Point(0, 0); + this.toolStrip5.Name = "toolStrip5"; + this.toolStrip5.RenderMode = System.Windows.Forms.ToolStripRenderMode.System; + this.toolStrip5.Size = new System.Drawing.Size(1373, 25); + this.toolStrip5.TabIndex = 10; + this.toolStrip5.Text = "toolStrip5"; + // + // genericDataHeaderLabel + // + this.genericDataHeaderLabel.BackColor = System.Drawing.Color.Transparent; + this.genericDataHeaderLabel.Name = "genericDataHeaderLabel"; + this.genericDataHeaderLabel.Size = new System.Drawing.Size(0, 22); + // + // Page1_TopPanel + // + this.Page1_TopPanel.AutoScroll = true; + this.Page1_TopPanel.AutoSize = true; + this.Page1_TopPanel.BackColor = System.Drawing.Color.WhiteSmoke; + this.Page1_TopPanel.Controls.Add(this.split_GenericDataGrid); + this.Page1_TopPanel.Controls.Add(this.genericInformationtreeView); + this.Page1_TopPanel.Controls.Add(this.genericInformationDataGridView); + this.Page1_TopPanel.Controls.Add(this.deleteRoleClassesButton); + this.Page1_TopPanel.Dock = System.Windows.Forms.DockStyle.Top; + this.Page1_TopPanel.Location = new System.Drawing.Point(0, 0); + this.Page1_TopPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.Page1_TopPanel.MinimumSize = new System.Drawing.Size(0, 400); + this.Page1_TopPanel.Name = "Page1_TopPanel"; + this.Page1_TopPanel.Size = new System.Drawing.Size(1373, 454); + this.Page1_TopPanel.TabIndex = 1; + this.Page1_TopPanel.Paint += new System.Windows.Forms.PaintEventHandler(this.Page1_TopPanel_Paint); + // + // split_GenericDataGrid + // + this.split_GenericDataGrid.BackColor = System.Drawing.Color.Maroon; + this.split_GenericDataGrid.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D; + this.split_GenericDataGrid.Dock = System.Windows.Forms.DockStyle.Fill; + this.split_GenericDataGrid.Location = new System.Drawing.Point(0, 379); + this.split_GenericDataGrid.Name = "split_GenericDataGrid"; + this.split_GenericDataGrid.Size = new System.Drawing.Size(1373, 0); + this.split_GenericDataGrid.SplitterDistance = 457; + this.split_GenericDataGrid.TabIndex = 2; + // + // genericInformationtreeView + // + this.genericInformationtreeView.BackColor = System.Drawing.Color.WhiteSmoke; + this.genericInformationtreeView.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.genericInformationtreeView.Dock = System.Windows.Forms.DockStyle.Bottom; + this.genericInformationtreeView.ImageIndex = 0; + this.genericInformationtreeView.ImageList = this.imageList2; + this.genericInformationtreeView.Location = new System.Drawing.Point(0, 379); + this.genericInformationtreeView.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.genericInformationtreeView.Name = "genericInformationtreeView"; + this.genericInformationtreeView.SelectedImageIndex = 0; + this.genericInformationtreeView.Size = new System.Drawing.Size(1373, 75); + this.genericInformationtreeView.TabIndex = 0; + this.genericInformationtreeView.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.genericInformationtreeView_AfterSelect); + this.genericInformationtreeView.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.genericInformationtreeView_NodeMouseClick); + // + // imageList2 + // + this.imageList2.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList2.ImageStream"))); + this.imageList2.TransparentColor = System.Drawing.Color.Transparent; + this.imageList2.Images.SetKeyName(0, "ICL.JPG"); + this.imageList2.Images.SetKeyName(1, "IC.JPG"); + this.imageList2.Images.SetKeyName(2, "Interface.JPG"); + // + // genericInformationDataGridView + // + this.genericInformationDataGridView.AllowDrop = true; + this.genericInformationDataGridView.BackgroundColor = System.Drawing.Color.WhiteSmoke; + this.genericInformationDataGridView.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.genericInformationDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.genericInformationDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.dataGridViewTextBoxColumn31, + this.dataGridViewTextBoxColumn32, + this.loadfromLibrary, + this.loadFromComponentFile, + this.dataGridViewCheckBoxColumn2}); + this.genericInformationDataGridView.Dock = System.Windows.Forms.DockStyle.Top; + this.genericInformationDataGridView.GridColor = System.Drawing.SystemColors.Control; + this.genericInformationDataGridView.Location = new System.Drawing.Point(0, 25); + this.genericInformationDataGridView.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.genericInformationDataGridView.Name = "genericInformationDataGridView"; + this.genericInformationDataGridView.ReadOnly = true; + this.genericInformationDataGridView.RowHeadersWidth = 51; + this.genericInformationDataGridView.RowTemplate.Height = 24; + this.genericInformationDataGridView.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; + this.genericInformationDataGridView.Size = new System.Drawing.Size(1373, 354); + this.genericInformationDataGridView.TabIndex = 1; + this.genericInformationDataGridView.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.genericInformationDataGridView_CellClick); + this.genericInformationDataGridView.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.genericInformationDataGridView_CellContentClick); + this.genericInformationDataGridView.MouseUp += new System.Windows.Forms.MouseEventHandler(this.genericInformationDataGridView_MouseUp); + // + // dataGridViewTextBoxColumn31 + // + this.dataGridViewTextBoxColumn31.HeaderText = "Index"; + this.dataGridViewTextBoxColumn31.MinimumWidth = 6; + this.dataGridViewTextBoxColumn31.Name = "dataGridViewTextBoxColumn31"; + this.dataGridViewTextBoxColumn31.ReadOnly = true; + this.dataGridViewTextBoxColumn31.Width = 50; + // + // dataGridViewTextBoxColumn32 + // + this.dataGridViewTextBoxColumn32.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn32.HeaderText = "Role "; + this.dataGridViewTextBoxColumn32.MinimumWidth = 6; + this.dataGridViewTextBoxColumn32.Name = "dataGridViewTextBoxColumn32"; + this.dataGridViewTextBoxColumn32.ReadOnly = true; + // + // loadfromLibrary + // + this.loadfromLibrary.HeaderText = "LoadfromLibrary"; + this.loadfromLibrary.MinimumWidth = 6; + this.loadfromLibrary.Name = "loadfromLibrary"; + this.loadfromLibrary.ReadOnly = true; + this.loadfromLibrary.Visible = false; + this.loadfromLibrary.Width = 125; + // + // loadFromComponentFile + // + this.loadFromComponentFile.HeaderText = "LoadFromComponentFile"; + this.loadFromComponentFile.MinimumWidth = 6; + this.loadFromComponentFile.Name = "loadFromComponentFile"; + this.loadFromComponentFile.ReadOnly = true; + this.loadFromComponentFile.Visible = false; + this.loadFromComponentFile.Width = 125; + // + // dataGridViewCheckBoxColumn2 + // + this.dataGridViewCheckBoxColumn2.HeaderText = "Add to AML-File"; + this.dataGridViewCheckBoxColumn2.MinimumWidth = 6; + this.dataGridViewCheckBoxColumn2.Name = "dataGridViewCheckBoxColumn2"; + this.dataGridViewCheckBoxColumn2.ReadOnly = true; + this.dataGridViewCheckBoxColumn2.Visible = false; + this.dataGridViewCheckBoxColumn2.Width = 125; + // + // deleteRoleClassesButton + // + this.deleteRoleClassesButton.AllowMerge = false; + this.deleteRoleClassesButton.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(160)))), ((int)(((byte)(160)))), ((int)(((byte)(160))))); + this.deleteRoleClassesButton.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.deleteRoleClassesButton.ImageScalingSize = new System.Drawing.Size(20, 20); + this.deleteRoleClassesButton.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripLabel20, + this.deleteRoleClassButton}); + this.deleteRoleClassesButton.Location = new System.Drawing.Point(0, 0); + this.deleteRoleClassesButton.Name = "deleteRoleClassesButton"; + this.deleteRoleClassesButton.RenderMode = System.Windows.Forms.ToolStripRenderMode.System; + this.deleteRoleClassesButton.Size = new System.Drawing.Size(1373, 25); + this.deleteRoleClassesButton.TabIndex = 0; + this.deleteRoleClassesButton.Text = "toolStrip25"; + // + // toolStripLabel20 + // + this.toolStripLabel20.BackColor = System.Drawing.Color.Transparent; + this.toolStripLabel20.ForeColor = System.Drawing.Color.Black; + this.toolStripLabel20.Name = "toolStripLabel20"; + this.toolStripLabel20.Size = new System.Drawing.Size(122, 22); + this.toolStripLabel20.Text = "Generic Information 2"; + // + // deleteRoleClassButton + // + this.deleteRoleClassButton.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.deleteRoleClassButton.BackColor = System.Drawing.Color.WhiteSmoke; + this.deleteRoleClassButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.deleteRoleClassButton.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold); + this.deleteRoleClassButton.ForeColor = System.Drawing.Color.Black; + this.deleteRoleClassButton.Image = ((System.Drawing.Image)(resources.GetObject("deleteRoleClassButton.Image"))); + this.deleteRoleClassButton.ImageTransparentColor = System.Drawing.Color.Magenta; + this.deleteRoleClassButton.Name = "deleteRoleClassButton"; + this.deleteRoleClassButton.Size = new System.Drawing.Size(49, 22); + this.deleteRoleClassButton.Text = "Delete"; + this.deleteRoleClassButton.Click += new System.EventHandler(this.deleteRoleClassButton_Click); + // + // Interface + // + this.Interface.AutoScroll = true; + this.Interface.BackColor = System.Drawing.Color.Transparent; + this.Interface.Controls.Add(this.electricalInterfacesPanel); + this.Interface.Location = new System.Drawing.Point(4, 26); + this.Interface.Margin = new System.Windows.Forms.Padding(0); + this.Interface.Name = "Interface"; + this.Interface.Size = new System.Drawing.Size(1373, 818); + this.Interface.TabIndex = 6; + this.Interface.Text = "Interfaces"; + // + // electricalInterfacesPanel + // + this.electricalInterfacesPanel.AutoScroll = true; + this.electricalInterfacesPanel.BackColor = System.Drawing.Color.White; + this.electricalInterfacesPanel.Controls.Add(this.Page3_BottomPanel); + this.electricalInterfacesPanel.Controls.Add(this.Page3_TopPanel); + this.electricalInterfacesPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.electricalInterfacesPanel.Location = new System.Drawing.Point(0, 0); + this.electricalInterfacesPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.electricalInterfacesPanel.MinimumSize = new System.Drawing.Size(686, 22); + this.electricalInterfacesPanel.Name = "electricalInterfacesPanel"; + this.electricalInterfacesPanel.Size = new System.Drawing.Size(1373, 818); + this.electricalInterfacesPanel.TabIndex = 0; + this.electricalInterfacesPanel.Paint += new System.Windows.Forms.PaintEventHandler(this.electricalInterfacesPanel_Paint); + // + // Page3_BottomPanel + // + this.Page3_BottomPanel.AutoSize = true; + this.Page3_BottomPanel.BackColor = System.Drawing.Color.WhiteSmoke; + this.Page3_BottomPanel.Controls.Add(this.tabControlElectricalAttributes); + this.Page3_BottomPanel.Controls.Add(this.toolStrip2); + this.Page3_BottomPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.Page3_BottomPanel.Location = new System.Drawing.Point(0, 454); + this.Page3_BottomPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.Page3_BottomPanel.MinimumSize = new System.Drawing.Size(0, 400); + this.Page3_BottomPanel.Name = "Page3_BottomPanel"; + this.Page3_BottomPanel.Size = new System.Drawing.Size(1373, 400); + this.Page3_BottomPanel.TabIndex = 10; + // + // tabControlElectricalAttributes + // + this.tabControlElectricalAttributes.Controls.Add(this.attributestab); + this.tabControlElectricalAttributes.Controls.Add(this.header); + this.tabControlElectricalAttributes.Dock = System.Windows.Forms.DockStyle.Fill; + this.tabControlElectricalAttributes.Location = new System.Drawing.Point(0, 25); + this.tabControlElectricalAttributes.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.tabControlElectricalAttributes.Name = "tabControlElectricalAttributes"; + this.tabControlElectricalAttributes.SelectedIndex = 0; + this.tabControlElectricalAttributes.Size = new System.Drawing.Size(1373, 375); + this.tabControlElectricalAttributes.TabIndex = 9; + // + // attributestab + // + this.attributestab.Controls.Add(this.elecInterAttDataGridView); + this.attributestab.Location = new System.Drawing.Point(4, 26); + this.attributestab.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.attributestab.Name = "attributestab"; + this.attributestab.Padding = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.attributestab.Size = new System.Drawing.Size(1365, 345); + this.attributestab.TabIndex = 0; + this.attributestab.Text = "Attributes"; + this.attributestab.UseVisualStyleBackColor = true; + // + // elecInterAttDataGridView + // + this.elecInterAttDataGridView.BackgroundColor = System.Drawing.Color.WhiteSmoke; + this.elecInterAttDataGridView.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.elecInterAttDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.elecInterAttDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.dataGridViewTextBoxColumn17, + this.dataGridViewTextBoxColumn18, + this.dataGridViewTextBoxColumn19, + this.dataGridViewTextBoxColumn20, + this.dataGridViewTextBoxColumn21, + this.dataGridViewTextBoxColumn22}); + this.elecInterAttDataGridView.Dock = System.Windows.Forms.DockStyle.Fill; + this.elecInterAttDataGridView.Location = new System.Drawing.Point(2, 3); + this.elecInterAttDataGridView.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); + this.elecInterAttDataGridView.Name = "elecInterAttDataGridView"; + this.elecInterAttDataGridView.RowHeadersWidth = 51; + this.elecInterAttDataGridView.RowTemplate.Resizable = System.Windows.Forms.DataGridViewTriState.False; + this.elecInterAttDataGridView.Size = new System.Drawing.Size(1361, 339); + this.elecInterAttDataGridView.TabIndex = 8; + this.elecInterAttDataGridView.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.elecInterAttDataGridView_CellClick); + this.elecInterAttDataGridView.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.elecInterAttDataGridView_CellContentClick); + this.elecInterAttDataGridView.CellEndEdit += new System.Windows.Forms.DataGridViewCellEventHandler(this.elecInterAttDataGridView_CellEndEdit); + // + // dataGridViewTextBoxColumn17 + // + this.dataGridViewTextBoxColumn17.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn17.HeaderText = "AttributeName"; + this.dataGridViewTextBoxColumn17.MinimumWidth = 6; + this.dataGridViewTextBoxColumn17.Name = "dataGridViewTextBoxColumn17"; + // + // dataGridViewTextBoxColumn18 + // + this.dataGridViewTextBoxColumn18.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn18.HeaderText = "Values"; + this.dataGridViewTextBoxColumn18.MinimumWidth = 6; + this.dataGridViewTextBoxColumn18.Name = "dataGridViewTextBoxColumn18"; + // + // dataGridViewTextBoxColumn19 + // + this.dataGridViewTextBoxColumn19.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn19.HeaderText = "Default"; + this.dataGridViewTextBoxColumn19.MinimumWidth = 6; + this.dataGridViewTextBoxColumn19.Name = "dataGridViewTextBoxColumn19"; + // + // dataGridViewTextBoxColumn20 + // + this.dataGridViewTextBoxColumn20.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn20.HeaderText = "Units"; + this.dataGridViewTextBoxColumn20.MinimumWidth = 6; + this.dataGridViewTextBoxColumn20.Name = "dataGridViewTextBoxColumn20"; + // + // dataGridViewTextBoxColumn21 + // + this.dataGridViewTextBoxColumn21.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn21.HeaderText = "DataType"; + this.dataGridViewTextBoxColumn21.MinimumWidth = 6; + this.dataGridViewTextBoxColumn21.Name = "dataGridViewTextBoxColumn21"; + // + // dataGridViewTextBoxColumn22 + // + this.dataGridViewTextBoxColumn22.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn22.HeaderText = "Semantic"; + this.dataGridViewTextBoxColumn22.MinimumWidth = 6; + this.dataGridViewTextBoxColumn22.Name = "dataGridViewTextBoxColumn22"; + this.dataGridViewTextBoxColumn22.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridViewTextBoxColumn22.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic; + // + // header + // + this.header.AutoScroll = true; + this.header.BackColor = System.Drawing.Color.WhiteSmoke; + this.header.Controls.Add(this.headerpanelTabelLayoutPanel); + this.header.Location = new System.Drawing.Point(4, 26); + this.header.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.header.Name = "header"; + this.header.Padding = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.header.Size = new System.Drawing.Size(1365, 345); + this.header.TabIndex = 1; + this.header.Text = "Header"; + // + // headerpanelTabelLayoutPanel + // + this.headerpanelTabelLayoutPanel.AutoSize = true; + this.headerpanelTabelLayoutPanel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.headerpanelTabelLayoutPanel.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.Single; + this.headerpanelTabelLayoutPanel.ColumnCount = 2; + this.headerpanelTabelLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 29.02047F)); + this.headerpanelTabelLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 70.97953F)); + this.headerpanelTabelLayoutPanel.Controls.Add(this.nameTxtBxElecAttri, 1, 6); + this.headerpanelTabelLayoutPanel.Controls.Add(this.idTxtBxElecAttri, 1, 5); + this.headerpanelTabelLayoutPanel.Controls.Add(this.attributepathTxtBxElecAttri, 1, 4); + this.headerpanelTabelLayoutPanel.Controls.Add(this.RefBaseClassPathTxtBxElecAttri, 1, 3); + this.headerpanelTabelLayoutPanel.Controls.Add(this.RefClassNameTxtBxElecAttri, 1, 2); + this.headerpanelTabelLayoutPanel.Controls.Add(this.copyrightTxtBxElecAttri, 1, 1); + this.headerpanelTabelLayoutPanel.Controls.Add(this.label31, 0, 6); + this.headerpanelTabelLayoutPanel.Controls.Add(this.label29, 0, 5); + this.headerpanelTabelLayoutPanel.Controls.Add(this.label27, 0, 4); + this.headerpanelTabelLayoutPanel.Controls.Add(this.label25, 0, 3); + this.headerpanelTabelLayoutPanel.Controls.Add(this.label21, 0, 2); + this.headerpanelTabelLayoutPanel.Controls.Add(this.TableHeader_lbl_Copyright, 0, 1); + this.headerpanelTabelLayoutPanel.Controls.Add(this.TableHeader_lbl_Description, 0, 0); + this.headerpanelTabelLayoutPanel.Controls.Add(this.descriptionTxtBoxElecAttri, 1, 0); + this.headerpanelTabelLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.headerpanelTabelLayoutPanel.Location = new System.Drawing.Point(2, 3); + this.headerpanelTabelLayoutPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.headerpanelTabelLayoutPanel.MaximumSize = new System.Drawing.Size(0, 300); + this.headerpanelTabelLayoutPanel.Name = "headerpanelTabelLayoutPanel"; + this.headerpanelTabelLayoutPanel.RowCount = 7; + this.headerpanelTabelLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.headerpanelTabelLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.headerpanelTabelLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.headerpanelTabelLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.headerpanelTabelLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.headerpanelTabelLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.headerpanelTabelLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 14.28571F)); + this.headerpanelTabelLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.headerpanelTabelLayoutPanel.Size = new System.Drawing.Size(1361, 300); + this.headerpanelTabelLayoutPanel.TabIndex = 0; + // + // nameTxtBxElecAttri + // + this.nameTxtBxElecAttri.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.nameTxtBxElecAttri.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.nameTxtBxElecAttri.Location = new System.Drawing.Point(396, 263); + this.nameTxtBxElecAttri.Margin = new System.Windows.Forms.Padding(0); + this.nameTxtBxElecAttri.Name = "nameTxtBxElecAttri"; + this.nameTxtBxElecAttri.Size = new System.Drawing.Size(964, 25); + this.nameTxtBxElecAttri.TabIndex = 24; + // + // idTxtBxElecAttri + // + this.idTxtBxElecAttri.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.idTxtBxElecAttri.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.idTxtBxElecAttri.Location = new System.Drawing.Point(396, 219); + this.idTxtBxElecAttri.Margin = new System.Windows.Forms.Padding(0); + this.idTxtBxElecAttri.Name = "idTxtBxElecAttri"; + this.idTxtBxElecAttri.Size = new System.Drawing.Size(964, 25); + this.idTxtBxElecAttri.TabIndex = 23; + // + // attributepathTxtBxElecAttri + // + this.attributepathTxtBxElecAttri.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.attributepathTxtBxElecAttri.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.attributepathTxtBxElecAttri.Location = new System.Drawing.Point(396, 177); + this.attributepathTxtBxElecAttri.Margin = new System.Windows.Forms.Padding(0); + this.attributepathTxtBxElecAttri.Name = "attributepathTxtBxElecAttri"; + this.attributepathTxtBxElecAttri.Size = new System.Drawing.Size(964, 25); + this.attributepathTxtBxElecAttri.TabIndex = 22; + // + // RefBaseClassPathTxtBxElecAttri + // + this.RefBaseClassPathTxtBxElecAttri.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.RefBaseClassPathTxtBxElecAttri.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.RefBaseClassPathTxtBxElecAttri.Location = new System.Drawing.Point(396, 135); + this.RefBaseClassPathTxtBxElecAttri.Margin = new System.Windows.Forms.Padding(0); + this.RefBaseClassPathTxtBxElecAttri.Name = "RefBaseClassPathTxtBxElecAttri"; + this.RefBaseClassPathTxtBxElecAttri.Size = new System.Drawing.Size(964, 25); + this.RefBaseClassPathTxtBxElecAttri.TabIndex = 21; + // + // RefClassNameTxtBxElecAttri + // + this.RefClassNameTxtBxElecAttri.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.RefClassNameTxtBxElecAttri.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.RefClassNameTxtBxElecAttri.Location = new System.Drawing.Point(396, 93); + this.RefClassNameTxtBxElecAttri.Margin = new System.Windows.Forms.Padding(0); + this.RefClassNameTxtBxElecAttri.Name = "RefClassNameTxtBxElecAttri"; + this.RefClassNameTxtBxElecAttri.Size = new System.Drawing.Size(964, 25); + this.RefClassNameTxtBxElecAttri.TabIndex = 20; + // + // copyrightTxtBxElecAttri + // + this.copyrightTxtBxElecAttri.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.copyrightTxtBxElecAttri.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.copyrightTxtBxElecAttri.Location = new System.Drawing.Point(396, 51); + this.copyrightTxtBxElecAttri.Margin = new System.Windows.Forms.Padding(0); + this.copyrightTxtBxElecAttri.Name = "copyrightTxtBxElecAttri"; + this.copyrightTxtBxElecAttri.Size = new System.Drawing.Size(964, 25); + this.copyrightTxtBxElecAttri.TabIndex = 19; + // + // label31 + // + this.label31.AutoSize = true; + this.label31.Dock = System.Windows.Forms.DockStyle.Fill; + this.label31.ForeColor = System.Drawing.Color.Black; + this.label31.Location = new System.Drawing.Point(3, 253); + this.label31.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label31.Name = "label31"; + this.label31.Size = new System.Drawing.Size(390, 46); + this.label31.TabIndex = 12; + this.label31.Text = "Name"; + this.label31.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label29 + // + this.label29.AutoSize = true; + this.label29.Dock = System.Windows.Forms.DockStyle.Fill; + this.label29.ForeColor = System.Drawing.Color.Black; + this.label29.Location = new System.Drawing.Point(3, 211); + this.label29.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label29.Name = "label29"; + this.label29.Size = new System.Drawing.Size(390, 41); + this.label29.TabIndex = 10; + this.label29.Text = "ID"; + this.label29.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label27 + // + this.label27.AutoSize = true; + this.label27.Dock = System.Windows.Forms.DockStyle.Fill; + this.label27.ForeColor = System.Drawing.Color.Black; + this.label27.Location = new System.Drawing.Point(3, 169); + this.label27.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label27.Name = "label27"; + this.label27.Size = new System.Drawing.Size(390, 41); + this.label27.TabIndex = 8; + this.label27.Text = "Attribute Path"; + this.label27.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label25 + // + this.label25.AutoSize = true; + this.label25.Dock = System.Windows.Forms.DockStyle.Fill; + this.label25.ForeColor = System.Drawing.Color.Black; + this.label25.Location = new System.Drawing.Point(3, 127); + this.label25.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label25.Name = "label25"; + this.label25.Size = new System.Drawing.Size(390, 41); + this.label25.TabIndex = 6; + this.label25.Text = "Referenced Base Class Path"; + this.label25.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label21 + // + this.label21.AutoSize = true; + this.label21.Dock = System.Windows.Forms.DockStyle.Fill; + this.label21.ForeColor = System.Drawing.Color.Black; + this.label21.Location = new System.Drawing.Point(3, 85); + this.label21.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.label21.Name = "label21"; + this.label21.Size = new System.Drawing.Size(390, 41); + this.label21.TabIndex = 4; + this.label21.Text = "Referenced Class Name"; + this.label21.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // TableHeader_lbl_Copyright + // + this.TableHeader_lbl_Copyright.AutoSize = true; + this.TableHeader_lbl_Copyright.Dock = System.Windows.Forms.DockStyle.Fill; + this.TableHeader_lbl_Copyright.ForeColor = System.Drawing.Color.Black; + this.TableHeader_lbl_Copyright.Location = new System.Drawing.Point(3, 43); + this.TableHeader_lbl_Copyright.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.TableHeader_lbl_Copyright.Name = "TableHeader_lbl_Copyright"; + this.TableHeader_lbl_Copyright.Size = new System.Drawing.Size(390, 41); + this.TableHeader_lbl_Copyright.TabIndex = 2; + this.TableHeader_lbl_Copyright.Text = "Copyright"; + this.TableHeader_lbl_Copyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // TableHeader_lbl_Description + // + this.TableHeader_lbl_Description.AutoSize = true; + this.TableHeader_lbl_Description.Dock = System.Windows.Forms.DockStyle.Fill; + this.TableHeader_lbl_Description.ForeColor = System.Drawing.Color.Black; + this.TableHeader_lbl_Description.Location = new System.Drawing.Point(3, 1); + this.TableHeader_lbl_Description.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + this.TableHeader_lbl_Description.Name = "TableHeader_lbl_Description"; + this.TableHeader_lbl_Description.Size = new System.Drawing.Size(390, 41); + this.TableHeader_lbl_Description.TabIndex = 0; + this.TableHeader_lbl_Description.Text = "Description"; + this.TableHeader_lbl_Description.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // descriptionTxtBoxElecAttri + // + this.descriptionTxtBoxElecAttri.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); + this.descriptionTxtBoxElecAttri.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.descriptionTxtBoxElecAttri.Location = new System.Drawing.Point(396, 9); + this.descriptionTxtBoxElecAttri.Margin = new System.Windows.Forms.Padding(0); + this.descriptionTxtBoxElecAttri.Name = "descriptionTxtBoxElecAttri"; + this.descriptionTxtBoxElecAttri.Size = new System.Drawing.Size(964, 25); + this.descriptionTxtBoxElecAttri.TabIndex = 18; + // + // toolStrip2 + // + this.toolStrip2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(158)))), ((int)(((byte)(158)))), ((int)(((byte)(158))))); + this.toolStrip2.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip2.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.electricalInterfacesHeaderlabel}); + this.toolStrip2.Location = new System.Drawing.Point(0, 0); + this.toolStrip2.Name = "toolStrip2"; + this.toolStrip2.RenderMode = System.Windows.Forms.ToolStripRenderMode.System; + this.toolStrip2.Size = new System.Drawing.Size(1373, 25); + this.toolStrip2.TabIndex = 7; + this.toolStrip2.Text = "toolStrip2"; + // + // electricalInterfacesHeaderlabel + // + this.electricalInterfacesHeaderlabel.BackColor = System.Drawing.Color.Transparent; + this.electricalInterfacesHeaderlabel.ForeColor = System.Drawing.Color.Black; + this.electricalInterfacesHeaderlabel.Name = "electricalInterfacesHeaderlabel"; + this.electricalInterfacesHeaderlabel.Size = new System.Drawing.Size(0, 22); + // + // Page3_TopPanel + // + this.Page3_TopPanel.AutoSize = true; + this.Page3_TopPanel.BackColor = System.Drawing.Color.GhostWhite; + this.Page3_TopPanel.Controls.Add(this.treeViewElectricalInterfaces); + this.Page3_TopPanel.Controls.Add(this.electricalInterfacesCollectionDataGridView); + this.Page3_TopPanel.Controls.Add(this.toolStrip24); + this.Page3_TopPanel.Dock = System.Windows.Forms.DockStyle.Top; + this.Page3_TopPanel.Location = new System.Drawing.Point(0, 0); + this.Page3_TopPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.Page3_TopPanel.MinimumSize = new System.Drawing.Size(0, 400); + this.Page3_TopPanel.Name = "Page3_TopPanel"; + this.Page3_TopPanel.Size = new System.Drawing.Size(1373, 454); + this.Page3_TopPanel.TabIndex = 1; + // + // treeViewElectricalInterfaces + // + this.treeViewElectricalInterfaces.BackColor = System.Drawing.Color.WhiteSmoke; + this.treeViewElectricalInterfaces.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.treeViewElectricalInterfaces.Dock = System.Windows.Forms.DockStyle.Bottom; + this.treeViewElectricalInterfaces.ImageIndex = 0; + this.treeViewElectricalInterfaces.ImageList = this.imageList2; + this.treeViewElectricalInterfaces.Location = new System.Drawing.Point(0, 379); + this.treeViewElectricalInterfaces.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.treeViewElectricalInterfaces.Name = "treeViewElectricalInterfaces"; + this.treeViewElectricalInterfaces.SelectedImageIndex = 0; + this.treeViewElectricalInterfaces.Size = new System.Drawing.Size(1373, 75); + this.treeViewElectricalInterfaces.TabIndex = 0; + this.treeViewElectricalInterfaces.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeViewRoleClassLib_AfterSelect); + this.treeViewElectricalInterfaces.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.treeViewElectricalInterfaces_NodeMouseClick); + this.treeViewElectricalInterfaces.MouseClick += new System.Windows.Forms.MouseEventHandler(this.treeViewElectricalInterfaces_MouseClick); + // + // electricalInterfacesCollectionDataGridView + // + this.electricalInterfacesCollectionDataGridView.AllowDrop = true; + this.electricalInterfacesCollectionDataGridView.BackgroundColor = System.Drawing.Color.WhiteSmoke; + this.electricalInterfacesCollectionDataGridView.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.electricalInterfacesCollectionDataGridView.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single; + this.electricalInterfacesCollectionDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.electricalInterfacesCollectionDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.SerialNumber, + this.SelectedClassorInterface, + this.libraryFile, + this.componentFile, + this.dataGridViewCheckBoxColumn1}); + this.electricalInterfacesCollectionDataGridView.Dock = System.Windows.Forms.DockStyle.Top; + this.electricalInterfacesCollectionDataGridView.Location = new System.Drawing.Point(0, 25); + this.electricalInterfacesCollectionDataGridView.Margin = new System.Windows.Forms.Padding(2, 3, 10, 0); + this.electricalInterfacesCollectionDataGridView.Name = "electricalInterfacesCollectionDataGridView"; + this.electricalInterfacesCollectionDataGridView.ReadOnly = true; + this.electricalInterfacesCollectionDataGridView.RowHeadersWidth = 51; + this.electricalInterfacesCollectionDataGridView.RowTemplate.Height = 24; + this.electricalInterfacesCollectionDataGridView.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; + this.electricalInterfacesCollectionDataGridView.Size = new System.Drawing.Size(1373, 354); + this.electricalInterfacesCollectionDataGridView.TabIndex = 1; + this.electricalInterfacesCollectionDataGridView.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.electricalInterfacesCollectionDataGridView_CellClick); + this.electricalInterfacesCollectionDataGridView.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.electricalInterfacesCollectionDataGridView_CellContentClick); + this.electricalInterfacesCollectionDataGridView.MouseUp += new System.Windows.Forms.MouseEventHandler(this.electricalInterfacesCollectionDataGridView_MouseUp); + // + // SerialNumber + // + this.SerialNumber.HeaderText = "Index"; + this.SerialNumber.MinimumWidth = 6; + this.SerialNumber.Name = "SerialNumber"; + this.SerialNumber.ReadOnly = true; + this.SerialNumber.Width = 50; + // + // SelectedClassorInterface + // + this.SelectedClassorInterface.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.SelectedClassorInterface.HeaderText = "Interface "; + this.SelectedClassorInterface.MinimumWidth = 6; + this.SelectedClassorInterface.Name = "SelectedClassorInterface"; + this.SelectedClassorInterface.ReadOnly = true; + // + // libraryFile + // + this.libraryFile.HeaderText = "LibraryFile"; + this.libraryFile.MinimumWidth = 6; + this.libraryFile.Name = "libraryFile"; + this.libraryFile.ReadOnly = true; + this.libraryFile.Visible = false; + this.libraryFile.Width = 125; + // + // componentFile + // + this.componentFile.HeaderText = "ComponentFile"; + this.componentFile.MinimumWidth = 6; + this.componentFile.Name = "componentFile"; + this.componentFile.ReadOnly = true; + this.componentFile.Visible = false; + this.componentFile.Width = 125; + // + // dataGridViewCheckBoxColumn1 + // + this.dataGridViewCheckBoxColumn1.HeaderText = "Add to AML-File"; + this.dataGridViewCheckBoxColumn1.MinimumWidth = 6; + this.dataGridViewCheckBoxColumn1.Name = "dataGridViewCheckBoxColumn1"; + this.dataGridViewCheckBoxColumn1.ReadOnly = true; + this.dataGridViewCheckBoxColumn1.Visible = false; + this.dataGridViewCheckBoxColumn1.Width = 125; + // + // toolStrip24 + // + this.toolStrip24.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(158)))), ((int)(((byte)(158)))), ((int)(((byte)(158))))); + this.toolStrip24.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip24.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip24.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.deleterowsInelectricalInterfacesDataGridView, + this.toolStripLabel3}); + this.toolStrip24.Location = new System.Drawing.Point(0, 0); + this.toolStrip24.Name = "toolStrip24"; + this.toolStrip24.RenderMode = System.Windows.Forms.ToolStripRenderMode.System; + this.toolStrip24.Size = new System.Drawing.Size(1373, 25); + this.toolStrip24.TabIndex = 0; + this.toolStrip24.Text = "toolStrip24"; + // + // deleterowsInelectricalInterfacesDataGridView + // + this.deleterowsInelectricalInterfacesDataGridView.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.deleterowsInelectricalInterfacesDataGridView.BackColor = System.Drawing.Color.WhiteSmoke; + this.deleterowsInelectricalInterfacesDataGridView.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.deleterowsInelectricalInterfacesDataGridView.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold); + this.deleterowsInelectricalInterfacesDataGridView.ForeColor = System.Drawing.Color.Black; + this.deleterowsInelectricalInterfacesDataGridView.Image = ((System.Drawing.Image)(resources.GetObject("deleterowsInelectricalInterfacesDataGridView.Image"))); + this.deleterowsInelectricalInterfacesDataGridView.ImageTransparentColor = System.Drawing.Color.Magenta; + this.deleterowsInelectricalInterfacesDataGridView.Name = "deleterowsInelectricalInterfacesDataGridView"; + this.deleterowsInelectricalInterfacesDataGridView.Size = new System.Drawing.Size(49, 22); + this.deleterowsInelectricalInterfacesDataGridView.Text = "Delete"; + this.deleterowsInelectricalInterfacesDataGridView.Click += new System.EventHandler(this.deleterowsInelectricalInterfacesDataGridView_Click); + // + // toolStripLabel3 + // + this.toolStripLabel3.BackColor = System.Drawing.Color.Transparent; + this.toolStripLabel3.Font = new System.Drawing.Font("Segoe UI", 9F); + this.toolStripLabel3.ForeColor = System.Drawing.Color.Black; + this.toolStripLabel3.Name = "toolStripLabel3"; + this.toolStripLabel3.Size = new System.Drawing.Size(58, 22); + this.toolStripLabel3.Text = "Interfaces"; + // + // DocsTabPage + // + this.DocsTabPage.AllowDrop = true; + this.DocsTabPage.BackColor = System.Drawing.Color.LightGray; + this.DocsTabPage.Controls.Add(this.addPicturesandDocsPanel); + this.DocsTabPage.Font = new System.Drawing.Font("Segoe UI", 10F); + this.DocsTabPage.Location = new System.Drawing.Point(4, 26); + this.DocsTabPage.Margin = new System.Windows.Forms.Padding(0); + this.DocsTabPage.Name = "DocsTabPage"; + this.DocsTabPage.Size = new System.Drawing.Size(1325, 796); + this.DocsTabPage.TabIndex = 4; + this.DocsTabPage.Text = "Attachments"; + // + // addPicturesandDocsPanel + // + this.addPicturesandDocsPanel.BackColor = System.Drawing.Color.Transparent; + this.addPicturesandDocsPanel.Controls.Add(this.Page2_BottomPanel); + this.addPicturesandDocsPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.addPicturesandDocsPanel.Location = new System.Drawing.Point(0, 0); + this.addPicturesandDocsPanel.Margin = new System.Windows.Forms.Padding(0); + this.addPicturesandDocsPanel.MinimumSize = new System.Drawing.Size(691, 22); + this.addPicturesandDocsPanel.Name = "addPicturesandDocsPanel"; + this.addPicturesandDocsPanel.Size = new System.Drawing.Size(1325, 796); + this.addPicturesandDocsPanel.TabIndex = 0; + this.addPicturesandDocsPanel.Paint += new System.Windows.Forms.PaintEventHandler(this.addPicturesAndDocsPanel_Paint); + // + // Page2_BottomPanel + // + this.Page2_BottomPanel.AutoSize = true; + this.Page2_BottomPanel.BackColor = System.Drawing.Color.WhiteSmoke; + this.Page2_BottomPanel.Controls.Add(this.attachablesInfoDataGridView); + this.Page2_BottomPanel.Controls.Add(this.toolStrip19); + this.Page2_BottomPanel.Controls.Add(this.Page2_VerstecktesPanel); + this.Page2_BottomPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.Page2_BottomPanel.Location = new System.Drawing.Point(0, 0); + this.Page2_BottomPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.Page2_BottomPanel.MinimumSize = new System.Drawing.Size(0, 750); + this.Page2_BottomPanel.Name = "Page2_BottomPanel"; + this.Page2_BottomPanel.Size = new System.Drawing.Size(1325, 796); + this.Page2_BottomPanel.TabIndex = 3; + // + // attachablesInfoDataGridView + // + this.attachablesInfoDataGridView.BackgroundColor = System.Drawing.Color.WhiteSmoke; + this.attachablesInfoDataGridView.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.attachablesInfoDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.attachablesInfoDataGridView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { + this.ElementName, + this.FilePath, + this.Add}); + this.attachablesInfoDataGridView.Dock = System.Windows.Forms.DockStyle.Fill; + this.attachablesInfoDataGridView.Location = new System.Drawing.Point(0, 141); + this.attachablesInfoDataGridView.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.attachablesInfoDataGridView.Name = "attachablesInfoDataGridView"; + this.attachablesInfoDataGridView.RowHeadersWidth = 51; + this.attachablesInfoDataGridView.RowTemplate.Height = 24; + this.attachablesInfoDataGridView.Size = new System.Drawing.Size(1325, 655); + this.attachablesInfoDataGridView.TabIndex = 4; + // + // ElementName + // + this.ElementName.HeaderText = "Element Name"; + this.ElementName.MinimumWidth = 6; + this.ElementName.Name = "ElementName"; + this.ElementName.Width = 250; + // + // FilePath + // + this.FilePath.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.FilePath.HeaderText = "File Path"; + this.FilePath.MinimumWidth = 6; + this.FilePath.Name = "FilePath"; + // + // Add + // + this.Add.HeaderText = "Column1"; + this.Add.Name = "Add"; + this.Add.Visible = false; + // + // toolStrip19 + // + this.toolStrip19.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(158)))), ((int)(((byte)(158)))), ((int)(((byte)(158))))); + this.toolStrip19.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip19.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip19.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripLabel12, + this.clearSelectedRowBtn}); + this.toolStrip19.Location = new System.Drawing.Point(0, 116); + this.toolStrip19.Margin = new System.Windows.Forms.Padding(0, 10, 0, 0); + this.toolStrip19.Name = "toolStrip19"; + this.toolStrip19.Padding = new System.Windows.Forms.Padding(0); + this.toolStrip19.RenderMode = System.Windows.Forms.ToolStripRenderMode.System; + this.toolStrip19.Size = new System.Drawing.Size(1325, 25); + this.toolStrip19.TabIndex = 3; + this.toolStrip19.Text = "toolStrip19"; + // + // toolStripLabel12 + // + this.toolStripLabel12.BackColor = System.Drawing.Color.Transparent; + this.toolStripLabel12.ForeColor = System.Drawing.Color.Black; + this.toolStripLabel12.Name = "toolStripLabel12"; + this.toolStripLabel12.Size = new System.Drawing.Size(135, 22); + this.toolStripLabel12.Text = "Attachables Information"; + // + // clearSelectedRowBtn + // + this.clearSelectedRowBtn.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.clearSelectedRowBtn.BackColor = System.Drawing.Color.WhiteSmoke; + this.clearSelectedRowBtn.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.clearSelectedRowBtn.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold); + this.clearSelectedRowBtn.ForeColor = System.Drawing.Color.Black; + this.clearSelectedRowBtn.Image = ((System.Drawing.Image)(resources.GetObject("clearSelectedRowBtn.Image"))); + this.clearSelectedRowBtn.ImageTransparentColor = System.Drawing.Color.Magenta; + this.clearSelectedRowBtn.Name = "clearSelectedRowBtn"; + this.clearSelectedRowBtn.Size = new System.Drawing.Size(49, 22); + this.clearSelectedRowBtn.Text = "Delete"; + this.clearSelectedRowBtn.Click += new System.EventHandler(this.clearSelectedRowBtn_Click); + // + // Page2_VerstecktesPanel + // + this.Page2_VerstecktesPanel.BackColor = System.Drawing.Color.WhiteSmoke; + this.Page2_VerstecktesPanel.Controls.Add(this.toolStrip13); + this.Page2_VerstecktesPanel.Controls.Add(this.tableLayoutPanel4); + this.Page2_VerstecktesPanel.Dock = System.Windows.Forms.DockStyle.Top; + this.Page2_VerstecktesPanel.ForeColor = System.Drawing.SystemColors.ActiveCaptionText; + this.Page2_VerstecktesPanel.Location = new System.Drawing.Point(0, 0); + this.Page2_VerstecktesPanel.Margin = new System.Windows.Forms.Padding(10); + this.Page2_VerstecktesPanel.Name = "Page2_VerstecktesPanel"; + this.Page2_VerstecktesPanel.Size = new System.Drawing.Size(1325, 116); + this.Page2_VerstecktesPanel.TabIndex = 6; + // + // toolStrip13 + // + this.toolStrip13.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(158)))), ((int)(((byte)(158)))), ((int)(((byte)(158))))); + this.toolStrip13.GripMargin = new System.Windows.Forms.Padding(0); + this.toolStrip13.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip13.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip13.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.AutomationMLRole, + this.toolStripSeparator29, + this.addRole, + this.automationMLRoleCmbBx}); + this.toolStrip13.Location = new System.Drawing.Point(0, 0); + this.toolStrip13.Name = "toolStrip13"; + this.toolStrip13.Padding = new System.Windows.Forms.Padding(0); + this.toolStrip13.RenderMode = System.Windows.Forms.ToolStripRenderMode.System; + this.toolStrip13.Size = new System.Drawing.Size(1325, 30); + this.toolStrip13.TabIndex = 1; + this.toolStrip13.Text = "toolStrip13"; + // + // AutomationMLRole + // + this.AutomationMLRole.BackColor = System.Drawing.Color.Transparent; + this.AutomationMLRole.ForeColor = System.Drawing.Color.Black; + this.AutomationMLRole.Name = "AutomationMLRole"; + this.AutomationMLRole.Size = new System.Drawing.Size(114, 27); + this.AutomationMLRole.Text = "AutomationML Role"; + // + // toolStripSeparator29 + // + this.toolStripSeparator29.Name = "toolStripSeparator29"; + this.toolStripSeparator29.Size = new System.Drawing.Size(6, 30); + // + // addRole + // + this.addRole.BackColor = System.Drawing.Color.WhiteSmoke; + this.addRole.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold); + this.addRole.ForeColor = System.Drawing.Color.Black; + this.addRole.Image = ((System.Drawing.Image)(resources.GetObject("addRole.Image"))); + this.addRole.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + this.addRole.ImageTransparentColor = System.Drawing.Color.Magenta; + this.addRole.Margin = new System.Windows.Forms.Padding(3); + this.addRole.Name = "addRole"; + this.addRole.Size = new System.Drawing.Size(53, 24); + this.addRole.Text = "Add"; + this.addRole.TextImageRelation = System.Windows.Forms.TextImageRelation.TextBeforeImage; + this.addRole.Click += new System.EventHandler(this.addRole_Click); + // + // automationMLRoleCmbBx + // + this.automationMLRoleCmbBx.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.automationMLRoleCmbBx.Items.AddRange(new object[] { + "BillofMaterials", + "Certificate", + "ComponentIcon", + "ComponentPicture", + "ManufacturerIcon", + "ShortGuide"}); + this.automationMLRoleCmbBx.Margin = new System.Windows.Forms.Padding(3); + this.automationMLRoleCmbBx.MergeAction = System.Windows.Forms.MergeAction.MatchOnly; + this.automationMLRoleCmbBx.Name = "automationMLRoleCmbBx"; + this.automationMLRoleCmbBx.Size = new System.Drawing.Size(132, 24); + this.automationMLRoleCmbBx.Sorted = true; + this.automationMLRoleCmbBx.SelectedIndexChanged += new System.EventHandler(this.automationMLRoleCmbBx_SelectedIndexChanged); + this.automationMLRoleCmbBx.Click += new System.EventHandler(this.automationMLRoleCmbBx_Click); + // + // tableLayoutPanel4 + // + this.tableLayoutPanel4.BackColor = System.Drawing.Color.WhiteSmoke; + this.tableLayoutPanel4.ColumnCount = 3; + this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); + this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); + this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); + this.tableLayoutPanel4.Controls.Add(this.selectFileBtn, 2, 0); + this.tableLayoutPanel4.Controls.Add(this.selectURLBtn, 2, 1); + this.tableLayoutPanel4.Controls.Add(this.selectedFileLocationTxtBx, 1, 0); + this.tableLayoutPanel4.Controls.Add(this.AMLfileLabel, 0, 0); + this.tableLayoutPanel4.Controls.Add(this.AMLURLLabel, 0, 1); + this.tableLayoutPanel4.Controls.Add(this.selectedFileURLTextBox, 1, 1); + this.tableLayoutPanel4.Dock = System.Windows.Forms.DockStyle.Bottom; + this.tableLayoutPanel4.Location = new System.Drawing.Point(0, 53); + this.tableLayoutPanel4.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.tableLayoutPanel4.Name = "tableLayoutPanel4"; + this.tableLayoutPanel4.RowCount = 2; + this.tableLayoutPanel4.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel4.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel4.Size = new System.Drawing.Size(1325, 63); + this.tableLayoutPanel4.TabIndex = 2; + // + // selectFileBtn + // + this.selectFileBtn.Dock = System.Windows.Forms.DockStyle.Fill; + this.selectFileBtn.ForeColor = System.Drawing.Color.Black; + this.selectFileBtn.Location = new System.Drawing.Point(1160, 3); + this.selectFileBtn.Name = "selectFileBtn"; + this.selectFileBtn.Size = new System.Drawing.Size(162, 25); + this.selectFileBtn.TabIndex = 0; + this.selectFileBtn.Text = "Select File"; + this.selectFileBtn.UseVisualStyleBackColor = true; + this.selectFileBtn.Click += new System.EventHandler(this.selectFileBtn_Click); + // + // selectURLBtn + // + this.selectURLBtn.Dock = System.Windows.Forms.DockStyle.Fill; + this.selectURLBtn.ForeColor = System.Drawing.Color.Black; + this.selectURLBtn.Location = new System.Drawing.Point(1160, 34); + this.selectURLBtn.Name = "selectURLBtn"; + this.selectURLBtn.Size = new System.Drawing.Size(162, 26); + this.selectURLBtn.TabIndex = 1; + this.selectURLBtn.Text = "Add Path"; + this.selectURLBtn.UseVisualStyleBackColor = true; + this.selectURLBtn.Click += new System.EventHandler(this.selectURLBtn_Click); + // + // selectedFileLocationTxtBx + // + this.selectedFileLocationTxtBx.Dock = System.Windows.Forms.DockStyle.Fill; + this.selectedFileLocationTxtBx.Location = new System.Drawing.Point(5, 3); + this.selectedFileLocationTxtBx.Name = "selectedFileLocationTxtBx"; + this.selectedFileLocationTxtBx.ReadOnly = true; + this.selectedFileLocationTxtBx.Size = new System.Drawing.Size(1149, 25); + this.selectedFileLocationTxtBx.TabIndex = 0; + this.selectedFileLocationTxtBx.TextChanged += new System.EventHandler(this.selectedFileLocationTxtBx_TextChanged); + // + // AMLfileLabel + // + this.AMLfileLabel.AutoSize = true; + this.AMLfileLabel.BackColor = System.Drawing.Color.Transparent; + this.AMLfileLabel.Dock = System.Windows.Forms.DockStyle.Fill; + this.AMLfileLabel.Location = new System.Drawing.Point(0, 0); + this.AMLfileLabel.Margin = new System.Windows.Forms.Padding(0, 0, 2, 0); + this.AMLfileLabel.Name = "AMLfileLabel"; + this.AMLfileLabel.Size = new System.Drawing.Size(1, 31); + this.AMLfileLabel.TabIndex = 8; + this.AMLfileLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // AMLURLLabel + // + this.AMLURLLabel.AutoSize = true; + this.AMLURLLabel.Dock = System.Windows.Forms.DockStyle.Fill; + this.AMLURLLabel.Location = new System.Drawing.Point(0, 31); + this.AMLURLLabel.Margin = new System.Windows.Forms.Padding(0, 0, 2, 0); + this.AMLURLLabel.Name = "AMLURLLabel"; + this.AMLURLLabel.Size = new System.Drawing.Size(1, 32); + this.AMLURLLabel.TabIndex = 9; + this.AMLURLLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // selectedFileURLTextBox + // + this.selectedFileURLTextBox.Dock = System.Windows.Forms.DockStyle.Fill; + this.selectedFileURLTextBox.Location = new System.Drawing.Point(5, 34); + this.selectedFileURLTextBox.Name = "selectedFileURLTextBox"; + this.selectedFileURLTextBox.Size = new System.Drawing.Size(1149, 25); + this.selectedFileURLTextBox.TabIndex = 1; + this.selectedFileURLTextBox.TextChanged += new System.EventHandler(this.selectedFileURLTextBox_TextChanged); + // + // treeViewPanel + // + this.treeViewPanel.AutoScroll = true; + this.treeViewPanel.BackColor = System.Drawing.Color.Transparent; + this.treeViewPanel.Controls.Add(this.splitContainer3); + this.treeViewPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.treeViewPanel.Location = new System.Drawing.Point(0, 0); + this.treeViewPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.treeViewPanel.Name = "treeViewPanel"; + this.treeViewPanel.Size = new System.Drawing.Size(414, 826); + this.treeViewPanel.TabIndex = 1; + // + // splitContainer3 + // + this.splitContainer3.Dock = System.Windows.Forms.DockStyle.Fill; + this.splitContainer3.Location = new System.Drawing.Point(0, 0); + this.splitContainer3.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.splitContainer3.Name = "splitContainer3"; + this.splitContainer3.Orientation = System.Windows.Forms.Orientation.Horizontal; + // + // splitContainer3.Panel1 + // + this.splitContainer3.Panel1.Controls.Add(this.Page0_RoleClassPanel); + // + // splitContainer3.Panel2 + // + this.splitContainer3.Panel2.Controls.Add(this.treeViewInterfaceClassLibPanel); + this.splitContainer3.Size = new System.Drawing.Size(414, 826); + this.splitContainer3.SplitterDistance = 468; + this.splitContainer3.TabIndex = 0; + // + // Page0_RoleClassPanel + // + this.Page0_RoleClassPanel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(189)))), ((int)(((byte)(189)))), ((int)(((byte)(189))))); + this.Page0_RoleClassPanel.Controls.Add(this.treeViewRoleClassLib); + this.Page0_RoleClassPanel.Controls.Add(this.toolStrip7); + this.Page0_RoleClassPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.Page0_RoleClassPanel.Location = new System.Drawing.Point(0, 0); + this.Page0_RoleClassPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.Page0_RoleClassPanel.Name = "Page0_RoleClassPanel"; + this.Page0_RoleClassPanel.Size = new System.Drawing.Size(414, 468); + this.Page0_RoleClassPanel.TabIndex = 0; + // + // treeViewRoleClassLib + // + this.treeViewRoleClassLib.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(189)))), ((int)(((byte)(189)))), ((int)(((byte)(189))))); + this.treeViewRoleClassLib.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.treeViewRoleClassLib.Dock = System.Windows.Forms.DockStyle.Fill; + this.treeViewRoleClassLib.ImageKey = "RCL.JPG"; + this.treeViewRoleClassLib.ImageList = this.imageList1; + this.treeViewRoleClassLib.Location = new System.Drawing.Point(0, 25); + this.treeViewRoleClassLib.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.treeViewRoleClassLib.Name = "treeViewRoleClassLib"; + this.treeViewRoleClassLib.SelectedImageKey = "RCL.JPG"; + this.treeViewRoleClassLib.ShowNodeToolTips = true; + this.treeViewRoleClassLib.Size = new System.Drawing.Size(414, 443); + this.treeViewRoleClassLib.TabIndex = 9; + this.treeViewRoleClassLib.ItemDrag += new System.Windows.Forms.ItemDragEventHandler(this.treeViewRoleClassLib_ItemDrag); + this.treeViewRoleClassLib.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeViewRoleClassLib_AfterSelect); + // + // imageList1 + // + this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream"))); + this.imageList1.TransparentColor = System.Drawing.Color.Transparent; + this.imageList1.Images.SetKeyName(0, "RCL.JPG"); + this.imageList1.Images.SetKeyName(1, "RC.JPG"); + this.imageList1.Images.SetKeyName(2, "Interface.JPG"); + // + // toolStrip7 + // + this.toolStrip7.BackColor = System.Drawing.Color.WhiteSmoke; + this.toolStrip7.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip7.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip7.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripLabel1, + this.toolStripSeparator41, + this.toolStripTextBox1}); + this.toolStrip7.Location = new System.Drawing.Point(0, 0); + this.toolStrip7.Name = "toolStrip7"; + this.toolStrip7.Size = new System.Drawing.Size(414, 25); + this.toolStrip7.TabIndex = 8; + this.toolStrip7.Text = "toolStrip7"; + // + // toolStripLabel1 + // + this.toolStripLabel1.ForeColor = System.Drawing.Color.Black; + this.toolStripLabel1.Name = "toolStripLabel1"; + this.toolStripLabel1.Size = new System.Drawing.Size(99, 22); + this.toolStripLabel1.Text = "Role Class Library"; + // + // toolStripSeparator41 + // + this.toolStripSeparator41.Name = "toolStripSeparator41"; + this.toolStripSeparator41.Size = new System.Drawing.Size(6, 25); + // + // toolStripTextBox1 + // + this.toolStripTextBox1.Font = new System.Drawing.Font("Segoe UI", 9F); + this.toolStripTextBox1.Name = "toolStripTextBox1"; + this.toolStripTextBox1.Size = new System.Drawing.Size(88, 25); + // + // treeViewInterfaceClassLibPanel + // + this.treeViewInterfaceClassLibPanel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(189)))), ((int)(((byte)(189)))), ((int)(((byte)(189))))); + this.treeViewInterfaceClassLibPanel.Controls.Add(this.treeViewInterfaceClassLib); + this.treeViewInterfaceClassLibPanel.Controls.Add(this.toolStrip9); + this.treeViewInterfaceClassLibPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.treeViewInterfaceClassLibPanel.Location = new System.Drawing.Point(0, 0); + this.treeViewInterfaceClassLibPanel.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.treeViewInterfaceClassLibPanel.Name = "treeViewInterfaceClassLibPanel"; + this.treeViewInterfaceClassLibPanel.Size = new System.Drawing.Size(414, 354); + this.treeViewInterfaceClassLibPanel.TabIndex = 1; + // + // treeViewInterfaceClassLib + // + this.treeViewInterfaceClassLib.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(189)))), ((int)(((byte)(189)))), ((int)(((byte)(189))))); + this.treeViewInterfaceClassLib.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.treeViewInterfaceClassLib.Dock = System.Windows.Forms.DockStyle.Fill; + this.treeViewInterfaceClassLib.ImageIndex = 0; + this.treeViewInterfaceClassLib.ImageList = this.imageList2; + this.treeViewInterfaceClassLib.Location = new System.Drawing.Point(0, 25); + this.treeViewInterfaceClassLib.Margin = new System.Windows.Forms.Padding(2, 3, 2, 3); + this.treeViewInterfaceClassLib.Name = "treeViewInterfaceClassLib"; + this.treeViewInterfaceClassLib.SelectedImageKey = "ICL.JPG"; + this.treeViewInterfaceClassLib.Size = new System.Drawing.Size(414, 329); + this.treeViewInterfaceClassLib.TabIndex = 10; + this.treeViewInterfaceClassLib.ItemDrag += new System.Windows.Forms.ItemDragEventHandler(this.treeViewInterfaceClassLib_ItemDrag); + this.treeViewInterfaceClassLib.BeforeSelect += new System.Windows.Forms.TreeViewCancelEventHandler(this.treeViewInterfaceClassLib_BeforeSelect); + this.treeViewInterfaceClassLib.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeViewInterfaceClassLib_AfterSelect); + this.treeViewInterfaceClassLib.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.treeViewInterfaceClassLib_NodeMouseClick); + this.treeViewInterfaceClassLib.DragDrop += new System.Windows.Forms.DragEventHandler(this.treeViewInterfaceClassLib_DragDrop); + this.treeViewInterfaceClassLib.DragOver += new System.Windows.Forms.DragEventHandler(this.treeViewInterfaceClassLib_DragOver); + this.treeViewInterfaceClassLib.MouseDown += new System.Windows.Forms.MouseEventHandler(this.treeViewInterfaceClassLib_MouseDown); + // + // toolStrip9 + // + this.toolStrip9.BackColor = System.Drawing.Color.WhiteSmoke; + this.toolStrip9.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.toolStrip9.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip9.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.InterfaceClassLibLabel, + this.toolStripSeparator42, + this.toolStripTextBox2}); + this.toolStrip9.Location = new System.Drawing.Point(0, 0); + this.toolStrip9.Name = "toolStrip9"; + this.toolStrip9.Size = new System.Drawing.Size(414, 25); + this.toolStrip9.TabIndex = 9; + this.toolStrip9.Text = "toolStrip9"; + // + // InterfaceClassLibLabel + // + this.InterfaceClassLibLabel.ForeColor = System.Drawing.Color.Black; + this.InterfaceClassLibLabel.Name = "InterfaceClassLibLabel"; + this.InterfaceClassLibLabel.Size = new System.Drawing.Size(122, 22); + this.InterfaceClassLibLabel.Text = "Interface Class Library"; + // + // toolStripSeparator42 + // + this.toolStripSeparator42.Name = "toolStripSeparator42"; + this.toolStripSeparator42.Size = new System.Drawing.Size(6, 25); + // + // toolStripTextBox2 + // + this.toolStripTextBox2.Font = new System.Drawing.Font("Segoe UI", 9F); + this.toolStripTextBox2.Name = "toolStripTextBox2"; + this.toolStripTextBox2.Size = new System.Drawing.Size(116, 25); + // + // imageList3 + // + this.imageList3.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList3.ImageStream"))); + this.imageList3.TransparentColor = System.Drawing.Color.Transparent; + this.imageList3.Images.SetKeyName(0, "IC.JPG"); + this.imageList3.Images.SetKeyName(1, "Interface.JPG"); + // + // contextMenuStrip1 + // + this.contextMenuStrip1.ImageScalingSize = new System.Drawing.Size(20, 20); + this.contextMenuStrip1.Name = "contextMenuStrip1"; + this.contextMenuStrip1.Size = new System.Drawing.Size(61, 4); + // + // imageListRCL + // + this.imageListRCL.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageListRCL.ImageStream"))); + this.imageListRCL.TransparentColor = System.Drawing.Color.Transparent; + this.imageListRCL.Images.SetKeyName(0, "RCL.JPG"); + // + // contextMenuStripforInterfaceClassLib + // + this.contextMenuStripforInterfaceClassLib.ImageScalingSize = new System.Drawing.Size(20, 20); + this.contextMenuStripforInterfaceClassLib.Name = "contextMenuStripforInterfaceClassLib"; + this.contextMenuStripforInterfaceClassLib.Size = new System.Drawing.Size(61, 4); + // + // addToolStripMenuItem + // + this.addToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.asInterfaceToolStripMenuItem}); + this.addToolStripMenuItem.Name = "addToolStripMenuItem"; + this.addToolStripMenuItem.Size = new System.Drawing.Size(96, 22); + this.addToolStripMenuItem.Text = "Add"; + // + // asInterfaceToolStripMenuItem + // + this.asInterfaceToolStripMenuItem.Name = "asInterfaceToolStripMenuItem"; + this.asInterfaceToolStripMenuItem.Size = new System.Drawing.Size(186, 22); + this.asInterfaceToolStripMenuItem.Text = "As Electrical Interface"; + this.asInterfaceToolStripMenuItem.Click += new System.EventHandler(this.asInterfaceToolStripMenuItem_Click); + // + // identificationDataGridView + // + this.identificationDataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.identificationDataGridView.Dock = System.Windows.Forms.DockStyle.Top; + this.identificationDataGridView.Location = new System.Drawing.Point(0, 23); + this.identificationDataGridView.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.identificationDataGridView.Name = "identificationDataGridView"; + this.identificationDataGridView.RowHeadersWidth = 51; + this.identificationDataGridView.RowTemplate.Height = 24; + this.identificationDataGridView.Size = new System.Drawing.Size(787, 251); + this.identificationDataGridView.TabIndex = 1; + // + // Value + // + this.Value.HeaderText = "Value"; + this.Value.MinimumWidth = 6; + this.Value.Name = "Value"; + this.Value.Width = 175; + // + // Attributes + // + this.Attributes.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.Attributes.HeaderText = "Attributes"; + this.Attributes.MinimumWidth = 6; + this.Attributes.Name = "Attributes"; + // + // ReferenceID + // + this.ReferenceID.HeaderText = "Reference ID"; + this.ReferenceID.MinimumWidth = 6; + this.ReferenceID.Name = "ReferenceID"; + this.ReferenceID.Width = 175; + // + // toolStrip8 + // + this.toolStrip8.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip8.Location = new System.Drawing.Point(0, 274); + this.toolStrip8.Name = "toolStrip8"; + this.toolStrip8.Size = new System.Drawing.Size(787, 27); + this.toolStrip8.TabIndex = 2; + // + // commercialDataTabControl + // + this.commercialDataTabControl.Dock = System.Windows.Forms.DockStyle.Top; + this.commercialDataTabControl.Location = new System.Drawing.Point(0, 23); + this.commercialDataTabControl.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.commercialDataTabControl.Name = "commercialDataTabControl"; + this.commercialDataTabControl.SelectedIndex = 0; + this.commercialDataTabControl.Size = new System.Drawing.Size(787, 256); + this.commercialDataTabControl.TabIndex = 1; + // + // tabPage8 + // + this.tabPage8.BackColor = System.Drawing.Color.WhiteSmoke; + this.tabPage8.Location = new System.Drawing.Point(4, 25); + this.tabPage8.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.tabPage8.Name = "tabPage8"; + this.tabPage8.Size = new System.Drawing.Size(779, 227); + this.tabPage8.TabIndex = 3; + this.tabPage8.Text = "Manufacturer Details"; + // + // dataGridViewManufacturerDetails + // + this.dataGridViewManufacturerDetails.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dataGridViewManufacturerDetails.Dock = System.Windows.Forms.DockStyle.Top; + this.dataGridViewManufacturerDetails.Location = new System.Drawing.Point(0, 0); + this.dataGridViewManufacturerDetails.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.dataGridViewManufacturerDetails.Name = "dataGridViewManufacturerDetails"; + this.dataGridViewManufacturerDetails.RowHeadersWidth = 51; + this.dataGridViewManufacturerDetails.RowTemplate.Height = 24; + this.dataGridViewManufacturerDetails.Size = new System.Drawing.Size(779, 251); + this.dataGridViewManufacturerDetails.TabIndex = 2; + // + // dataGridViewTextBoxColumn3 + // + this.dataGridViewTextBoxColumn3.HeaderText = "Value"; + this.dataGridViewTextBoxColumn3.MinimumWidth = 6; + this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3"; + this.dataGridViewTextBoxColumn3.Width = 175; + // + // dataGridViewTextBoxColumn2 + // + this.dataGridViewTextBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn2.HeaderText = "Attributes"; + this.dataGridViewTextBoxColumn2.MinimumWidth = 6; + this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2"; + // + // dataGridViewTextBoxColumn1 + // + this.dataGridViewTextBoxColumn1.HeaderText = "Reference ID"; + this.dataGridViewTextBoxColumn1.MinimumWidth = 6; + this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1"; + this.dataGridViewTextBoxColumn1.Width = 175; + // + // tabPage7 + // + this.tabPage7.BackColor = System.Drawing.Color.WhiteSmoke; + this.tabPage7.Location = new System.Drawing.Point(4, 25); + this.tabPage7.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.tabPage7.Name = "tabPage7"; + this.tabPage7.Size = new System.Drawing.Size(779, 227); + this.tabPage7.TabIndex = 2; + this.tabPage7.Text = "Product Price Details"; + // + // dataGridViewProductPriceDetails + // + this.dataGridViewProductPriceDetails.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dataGridViewProductPriceDetails.Dock = System.Windows.Forms.DockStyle.Top; + this.dataGridViewProductPriceDetails.Location = new System.Drawing.Point(0, 0); + this.dataGridViewProductPriceDetails.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.dataGridViewProductPriceDetails.Name = "dataGridViewProductPriceDetails"; + this.dataGridViewProductPriceDetails.RowHeadersWidth = 51; + this.dataGridViewProductPriceDetails.RowTemplate.Height = 24; + this.dataGridViewProductPriceDetails.Size = new System.Drawing.Size(779, 251); + this.dataGridViewProductPriceDetails.TabIndex = 2; + // + // dataGridViewTextBoxColumn6 + // + this.dataGridViewTextBoxColumn6.HeaderText = "Value"; + this.dataGridViewTextBoxColumn6.MinimumWidth = 6; + this.dataGridViewTextBoxColumn6.Name = "dataGridViewTextBoxColumn6"; + this.dataGridViewTextBoxColumn6.Width = 175; + // + // dataGridViewTextBoxColumn5 + // + this.dataGridViewTextBoxColumn5.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn5.HeaderText = "Attributes"; + this.dataGridViewTextBoxColumn5.MinimumWidth = 6; + this.dataGridViewTextBoxColumn5.Name = "dataGridViewTextBoxColumn5"; + // + // dataGridViewTextBoxColumn4 + // + this.dataGridViewTextBoxColumn4.HeaderText = "Reference ID"; + this.dataGridViewTextBoxColumn4.MinimumWidth = 6; + this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4"; + this.dataGridViewTextBoxColumn4.Width = 175; + // + // tabPage6 + // + this.tabPage6.BackColor = System.Drawing.Color.WhiteSmoke; + this.tabPage6.Location = new System.Drawing.Point(4, 25); + this.tabPage6.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.tabPage6.Name = "tabPage6"; + this.tabPage6.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.tabPage6.Size = new System.Drawing.Size(779, 227); + this.tabPage6.TabIndex = 1; + this.tabPage6.Text = "Product Order Details"; + // + // dataGridViewProductOrderDetails + // + this.dataGridViewProductOrderDetails.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dataGridViewProductOrderDetails.Dock = System.Windows.Forms.DockStyle.Top; + this.dataGridViewProductOrderDetails.Location = new System.Drawing.Point(3, 2); + this.dataGridViewProductOrderDetails.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.dataGridViewProductOrderDetails.Name = "dataGridViewProductOrderDetails"; + this.dataGridViewProductOrderDetails.RowHeadersWidth = 51; + this.dataGridViewProductOrderDetails.RowTemplate.Height = 24; + this.dataGridViewProductOrderDetails.Size = new System.Drawing.Size(773, 251); + this.dataGridViewProductOrderDetails.TabIndex = 2; + // + // dataGridViewTextBoxColumn9 + // + this.dataGridViewTextBoxColumn9.HeaderText = "Value"; + this.dataGridViewTextBoxColumn9.MinimumWidth = 6; + this.dataGridViewTextBoxColumn9.Name = "dataGridViewTextBoxColumn9"; + this.dataGridViewTextBoxColumn9.Width = 175; + // + // dataGridViewTextBoxColumn8 + // + this.dataGridViewTextBoxColumn8.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn8.HeaderText = "Attributes"; + this.dataGridViewTextBoxColumn8.MinimumWidth = 6; + this.dataGridViewTextBoxColumn8.Name = "dataGridViewTextBoxColumn8"; + // + // dataGridViewTextBoxColumn7 + // + this.dataGridViewTextBoxColumn7.HeaderText = "Reference ID"; + this.dataGridViewTextBoxColumn7.MinimumWidth = 6; + this.dataGridViewTextBoxColumn7.Name = "dataGridViewTextBoxColumn7"; + this.dataGridViewTextBoxColumn7.Width = 175; + // + // tabPage5 + // + this.tabPage5.BackColor = System.Drawing.Color.WhiteSmoke; + this.tabPage5.Location = new System.Drawing.Point(4, 25); + this.tabPage5.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.tabPage5.Name = "tabPage5"; + this.tabPage5.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.tabPage5.Size = new System.Drawing.Size(779, 227); + this.tabPage5.TabIndex = 0; + this.tabPage5.Text = "Product Details"; + // + // dataGridViewProductDetails + // + this.dataGridViewProductDetails.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dataGridViewProductDetails.Dock = System.Windows.Forms.DockStyle.Top; + this.dataGridViewProductDetails.Location = new System.Drawing.Point(3, 2); + this.dataGridViewProductDetails.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.dataGridViewProductDetails.Name = "dataGridViewProductDetails"; + this.dataGridViewProductDetails.RowHeadersWidth = 51; + this.dataGridViewProductDetails.RowTemplate.Height = 24; + this.dataGridViewProductDetails.Size = new System.Drawing.Size(773, 251); + this.dataGridViewProductDetails.TabIndex = 2; + // + // dataGridViewTextBoxColumn12 + // + this.dataGridViewTextBoxColumn12.HeaderText = "Value"; + this.dataGridViewTextBoxColumn12.MinimumWidth = 6; + this.dataGridViewTextBoxColumn12.Name = "dataGridViewTextBoxColumn12"; + this.dataGridViewTextBoxColumn12.Width = 175; + // + // dataGridViewTextBoxColumn11 + // + this.dataGridViewTextBoxColumn11.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; + this.dataGridViewTextBoxColumn11.HeaderText = "Attributes"; + this.dataGridViewTextBoxColumn11.MinimumWidth = 6; + this.dataGridViewTextBoxColumn11.Name = "dataGridViewTextBoxColumn11"; + // + // dataGridViewTextBoxColumn10 + // + this.dataGridViewTextBoxColumn10.HeaderText = "Reference ID"; + this.dataGridViewTextBoxColumn10.MinimumWidth = 6; + this.dataGridViewTextBoxColumn10.Name = "dataGridViewTextBoxColumn10"; + this.dataGridViewTextBoxColumn10.Width = 175; + // + // toolStrip10 + // + this.toolStrip10.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip10.Location = new System.Drawing.Point(0, 279); + this.toolStrip10.Name = "toolStrip10"; + this.toolStrip10.Size = new System.Drawing.Size(787, 27); + this.toolStrip10.TabIndex = 3; + // + // identificationDataBtn + // + this.identificationDataBtn.Dock = System.Windows.Forms.DockStyle.Top; + this.identificationDataBtn.Image = ((System.Drawing.Image)(resources.GetObject("identificationDataBtn.Image"))); + this.identificationDataBtn.ImageAlign = System.Drawing.ContentAlignment.MiddleRight; + this.identificationDataBtn.Location = new System.Drawing.Point(0, 0); + this.identificationDataBtn.Margin = new System.Windows.Forms.Padding(0); + this.identificationDataBtn.Name = "identificationDataBtn"; + this.identificationDataBtn.Size = new System.Drawing.Size(787, 23); + this.identificationDataBtn.TabIndex = 0; + this.identificationDataBtn.Text = "Identification Data"; + this.identificationDataBtn.UseVisualStyleBackColor = true; + this.identificationDataBtn.Click += new System.EventHandler(this.IdentificationDataBtn_Click); + // + // toolStripButton7 + // + this.toolStripButton7.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripButton7.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.toolStripButton7.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton7.Image"))); + this.toolStripButton7.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton7.Name = "toolStripButton7"; + this.toolStripButton7.Size = new System.Drawing.Size(57, 24); + this.toolStripButton7.Text = "Cancel"; + // + // toolStripButton8 + // + this.toolStripButton8.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripButton8.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.toolStripButton8.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton8.Image"))); + this.toolStripButton8.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton8.Name = "toolStripButton8"; + this.toolStripButton8.Size = new System.Drawing.Size(47, 24); + this.toolStripButton8.Text = "Clear"; + // + // toolStripButton9 + // + this.toolStripButton9.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripButton9.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.toolStripButton9.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton9.Image"))); + this.toolStripButton9.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton9.Name = "toolStripButton9"; + this.toolStripButton9.Size = new System.Drawing.Size(44, 24); + this.toolStripButton9.Text = "Save"; + // + // commercialDataBtn + // + this.commercialDataBtn.Dock = System.Windows.Forms.DockStyle.Top; + this.commercialDataBtn.Image = ((System.Drawing.Image)(resources.GetObject("commercialDataBtn.Image"))); + this.commercialDataBtn.ImageAlign = System.Drawing.ContentAlignment.MiddleRight; + this.commercialDataBtn.Location = new System.Drawing.Point(0, 0); + this.commercialDataBtn.Margin = new System.Windows.Forms.Padding(0); + this.commercialDataBtn.Name = "commercialDataBtn"; + this.commercialDataBtn.Size = new System.Drawing.Size(787, 23); + this.commercialDataBtn.TabIndex = 0; + this.commercialDataBtn.Text = "Commercial Data"; + this.commercialDataBtn.UseVisualStyleBackColor = true; + this.commercialDataBtn.Click += new System.EventHandler(this.CommercialDataBtn_Click); + // + // toolStripButton13 + // + this.toolStripButton13.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripButton13.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.toolStripButton13.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton13.Image"))); + this.toolStripButton13.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton13.Name = "toolStripButton13"; + this.toolStripButton13.Size = new System.Drawing.Size(57, 24); + this.toolStripButton13.Text = "Cancel"; + // + // toolStripButton14 + // + this.toolStripButton14.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripButton14.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.toolStripButton14.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton14.Image"))); + this.toolStripButton14.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton14.Name = "toolStripButton14"; + this.toolStripButton14.Size = new System.Drawing.Size(47, 24); + this.toolStripButton14.Text = "Clear"; + // + // toolStripButton15 + // + this.toolStripButton15.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripButton15.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.toolStripButton15.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton15.Image"))); + this.toolStripButton15.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton15.Name = "toolStripButton15"; + this.toolStripButton15.Size = new System.Drawing.Size(44, 24); + this.toolStripButton15.Text = "Save"; + // + // DeviceDescription + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.BackColor = System.Drawing.Color.Transparent; + this.Controls.Add(this.Page0_FullWindow); + this.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.Margin = new System.Windows.Forms.Padding(0); + this.MaximumSize = new System.Drawing.Size(1750, 866); + this.MinimumSize = new System.Drawing.Size(1750, 866); + this.Name = "DeviceDescription"; + this.Size = new System.Drawing.Size(1750, 866); + this.toolStrip1.ResumeLayout(false); + this.toolStrip1.PerformLayout(); + this.Page0_FullWindow.ResumeLayout(false); + this.Page0_FullWindowPanel2.ResumeLayout(false); + this.Page0_FastFullWindow.ResumeLayout(false); + this.Page0_FastFullWindow2.ResumeLayout(false); + this.splitContainer1.Panel1.ResumeLayout(false); + this.splitContainer1.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit(); + this.splitContainer1.ResumeLayout(false); + this.dataTabControl.ResumeLayout(false); + this.genericData.ResumeLayout(false); + this.Page1_MainPanel.ResumeLayout(false); + this.Page1_MainPanel.PerformLayout(); + this.Page1_BottomPanel.ResumeLayout(false); + this.Page1_BottomPanel.PerformLayout(); + this.tabControl1.ResumeLayout(false); + this.tabPage1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.genericparametersAttrDataGridView)).EndInit(); + this.tabPage2.ResumeLayout(false); + this.tabPage2.PerformLayout(); + this.tableLayoutPanel1.ResumeLayout(false); + this.tableLayoutPanel1.PerformLayout(); + this.toolStrip5.ResumeLayout(false); + this.toolStrip5.PerformLayout(); + this.Page1_TopPanel.ResumeLayout(false); + this.Page1_TopPanel.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.split_GenericDataGrid)).EndInit(); + this.split_GenericDataGrid.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.genericInformationDataGridView)).EndInit(); + this.deleteRoleClassesButton.ResumeLayout(false); + this.deleteRoleClassesButton.PerformLayout(); + this.Interface.ResumeLayout(false); + this.electricalInterfacesPanel.ResumeLayout(false); + this.electricalInterfacesPanel.PerformLayout(); + this.Page3_BottomPanel.ResumeLayout(false); + this.Page3_BottomPanel.PerformLayout(); + this.tabControlElectricalAttributes.ResumeLayout(false); + this.attributestab.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.elecInterAttDataGridView)).EndInit(); + this.header.ResumeLayout(false); + this.header.PerformLayout(); + this.headerpanelTabelLayoutPanel.ResumeLayout(false); + this.headerpanelTabelLayoutPanel.PerformLayout(); + this.toolStrip2.ResumeLayout(false); + this.toolStrip2.PerformLayout(); + this.Page3_TopPanel.ResumeLayout(false); + this.Page3_TopPanel.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.electricalInterfacesCollectionDataGridView)).EndInit(); + this.toolStrip24.ResumeLayout(false); + this.toolStrip24.PerformLayout(); + this.DocsTabPage.ResumeLayout(false); + this.addPicturesandDocsPanel.ResumeLayout(false); + this.addPicturesandDocsPanel.PerformLayout(); + this.Page2_BottomPanel.ResumeLayout(false); + this.Page2_BottomPanel.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.attachablesInfoDataGridView)).EndInit(); + this.toolStrip19.ResumeLayout(false); + this.toolStrip19.PerformLayout(); + this.Page2_VerstecktesPanel.ResumeLayout(false); + this.Page2_VerstecktesPanel.PerformLayout(); + this.toolStrip13.ResumeLayout(false); + this.toolStrip13.PerformLayout(); + this.tableLayoutPanel4.ResumeLayout(false); + this.tableLayoutPanel4.PerformLayout(); + this.treeViewPanel.ResumeLayout(false); + this.splitContainer3.Panel1.ResumeLayout(false); + this.splitContainer3.Panel2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit(); + this.splitContainer3.ResumeLayout(false); + this.Page0_RoleClassPanel.ResumeLayout(false); + this.Page0_RoleClassPanel.PerformLayout(); + this.toolStrip7.ResumeLayout(false); + this.toolStrip7.PerformLayout(); + this.treeViewInterfaceClassLibPanel.ResumeLayout(false); + this.treeViewInterfaceClassLibPanel.PerformLayout(); + this.toolStrip9.ResumeLayout(false); + this.toolStrip9.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.identificationDataGridView)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridViewManufacturerDetails)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridViewProductPriceDetails)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridViewProductOrderDetails)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridViewProductDetails)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.ToolStrip toolStrip1; + private System.Windows.Forms.ToolTip toolTip1; + private System.Windows.Forms.Panel Page0_FullWindow; + private System.Windows.Forms.Panel Page0_FullWindowPanel2; + private System.Windows.Forms.Panel Page0_FastFullWindow; + private System.Windows.Forms.TabControl dataTabControl; + private System.Windows.Forms.Panel Page0_FastFullWindow2; + private System.Windows.Forms.SplitContainer splitContainer1; + private System.Windows.Forms.Panel treeViewPanel; + private System.Windows.Forms.TabPage DocsTabPage; + private System.Windows.Forms.Panel addPicturesandDocsPanel; + private System.Windows.Forms.ToolStrip toolStrip13; + private System.Windows.Forms.TableLayoutPanel tableLayoutPanel4; + private System.Windows.Forms.Button selectFileBtn; + private System.Windows.Forms.Button selectURLBtn; + private System.Windows.Forms.ContextMenuStrip contextMenuStrip1; + private System.Windows.Forms.Panel Page2_BottomPanel; + private System.Windows.Forms.ToolStrip toolStrip19; + private System.Windows.Forms.ToolStripLabel toolStripLabel12; + private System.Windows.Forms.Panel Page2_VerstecktesPanel; + private System.Windows.Forms.TextBox selectedFileLocationTxtBx; + private System.Windows.Forms.ToolStripComboBox automationMLRoleCmbBx; + private System.Windows.Forms.ToolStripLabel AutomationMLRole; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator29; + private System.Windows.Forms.ToolStripButton addRole; + private System.Windows.Forms.ToolStripButton clearSelectedRowBtn; + private System.Windows.Forms.Panel Page0_RoleClassPanel; + private System.Windows.Forms.TreeView treeViewRoleClassLib; + private System.Windows.Forms.ToolStrip toolStrip7; + private System.Windows.Forms.ToolStripLabel toolStripLabel1; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator41; + private System.Windows.Forms.ToolStripTextBox toolStripTextBox1; + private System.Windows.Forms.ImageList imageListRCL; + private System.Windows.Forms.ImageList imageList2; + private System.Windows.Forms.ImageList imageList1; + private System.Windows.Forms.ImageList imageList3; + private System.Windows.Forms.ContextMenuStrip contextMenuStripforInterfaceClassLib; + private System.Windows.Forms.ToolStripMenuItem addToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem asInterfaceToolStripMenuItem; + private System.Windows.Forms.ToolStripDropDownButton helpButton; + private System.Windows.Forms.ToolStripMenuItem aboutToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem manualToolStripMenuItem; + private System.Windows.Forms.TabPage Interface; + private System.Windows.Forms.Panel electricalInterfacesPanel; + private System.Windows.Forms.Panel Page3_TopPanel; + private System.Windows.Forms.DataGridView electricalInterfacesCollectionDataGridView; + private System.Windows.Forms.ToolStrip toolStrip24; + private System.Windows.Forms.Panel treeViewInterfaceClassLibPanel; + private System.Windows.Forms.ToolStripButton deleterowsInelectricalInterfacesDataGridView; + private System.Windows.Forms.ToolStripLabel toolStripLabel3; + private System.Windows.Forms.DataGridView elecInterAttDataGridView; + private System.Windows.Forms.DataGridView attachablesInfoDataGridView; + private System.Windows.Forms.Button identificationDataBtn; + private System.Windows.Forms.DataGridView identificationDataGridView; + private System.Windows.Forms.DataGridViewTextBoxColumn Value; + private System.Windows.Forms.DataGridViewTextBoxColumn Attributes; + private System.Windows.Forms.DataGridViewTextBoxColumn ReferenceID; + private System.Windows.Forms.ToolStrip toolStrip8; + private System.Windows.Forms.ToolStripButton toolStripButton7; + private System.Windows.Forms.ToolStripButton toolStripButton8; + private System.Windows.Forms.ToolStripButton toolStripButton9; + private System.Windows.Forms.Button commercialDataBtn; + private System.Windows.Forms.TabControl commercialDataTabControl; + private System.Windows.Forms.TabPage tabPage8; + private System.Windows.Forms.DataGridView dataGridViewManufacturerDetails; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn3; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1; + private System.Windows.Forms.TabPage tabPage7; + private System.Windows.Forms.DataGridView dataGridViewProductPriceDetails; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn6; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn5; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4; + private System.Windows.Forms.TabPage tabPage6; + private System.Windows.Forms.DataGridView dataGridViewProductOrderDetails; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn9; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn8; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn7; + private System.Windows.Forms.TabPage tabPage5; + private System.Windows.Forms.DataGridView dataGridViewProductDetails; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn12; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn11; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn10; + private System.Windows.Forms.ToolStrip toolStrip10; + private System.Windows.Forms.ToolStripButton toolStripButton13; + private System.Windows.Forms.ToolStripButton toolStripButton14; + private System.Windows.Forms.ToolStripButton toolStripButton15; + private System.Windows.Forms.Panel Page3_BottomPanel; + private System.Windows.Forms.ToolStrip toolStrip2; + private System.Windows.Forms.SplitContainer splitContainer3; + private System.Windows.Forms.TabControl tabControlElectricalAttributes; + private System.Windows.Forms.TabPage attributestab; + private System.Windows.Forms.TabPage header; + private System.Windows.Forms.ToolStripLabel electricalInterfacesHeaderlabel; + private System.Windows.Forms.TableLayoutPanel headerpanelTabelLayoutPanel; + private System.Windows.Forms.TextBox nameTxtBxElecAttri; + private System.Windows.Forms.TextBox idTxtBxElecAttri; + private System.Windows.Forms.TextBox attributepathTxtBxElecAttri; + private System.Windows.Forms.TextBox RefBaseClassPathTxtBxElecAttri; + private System.Windows.Forms.TextBox RefClassNameTxtBxElecAttri; + private System.Windows.Forms.TextBox copyrightTxtBxElecAttri; + private System.Windows.Forms.Label label31; + private System.Windows.Forms.Label label29; + private System.Windows.Forms.Label label27; + private System.Windows.Forms.Label label25; + private System.Windows.Forms.Label label21; + private System.Windows.Forms.Label TableHeader_lbl_Copyright; + private System.Windows.Forms.Label TableHeader_lbl_Description; + private System.Windows.Forms.TextBox descriptionTxtBoxElecAttri; + private System.Windows.Forms.ToolStripLabel fileNameLabel; + private System.Windows.Forms.TreeView treeViewElectricalInterfaces; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn17; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn18; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn19; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn20; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn21; + private System.Windows.Forms.DataGridViewComboBoxColumn dataGridViewTextBoxColumn22; + private System.Windows.Forms.TextBox selectedFileURLTextBox; + private System.Windows.Forms.Label AMLfileLabel; + private System.Windows.Forms.Label AMLURLLabel; + private System.Windows.Forms.TabPage genericData; + private System.Windows.Forms.Panel Page1_MainPanel; + private System.Windows.Forms.Panel Page1_BottomPanel; + private System.Windows.Forms.TabControl tabControl1; + private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1; + private System.Windows.Forms.TextBox genericDataNameTxtBx; + private System.Windows.Forms.TextBox genericDataIDTxtBx; + private System.Windows.Forms.TextBox genericDataAttributePathTxtBx; + private System.Windows.Forms.TextBox genericDataRefBaseClassPathTxtBx; + private System.Windows.Forms.TextBox genericDataRefClassNameTxtBx; + private System.Windows.Forms.TextBox genericDataCopyrightTxtBx; + private System.Windows.Forms.Label TableHeader_lbl_Name; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.Label label6; + private System.Windows.Forms.Label label7; + private System.Windows.Forms.TextBox genericDataDescriptionTxtBx; + private System.Windows.Forms.ToolStrip toolStrip5; + private System.Windows.Forms.ToolStripLabel genericDataHeaderLabel; + private System.Windows.Forms.Panel Page1_TopPanel; + private System.Windows.Forms.TreeView genericInformationtreeView; + private System.Windows.Forms.DataGridView genericInformationDataGridView; + private System.Windows.Forms.ToolStrip deleteRoleClassesButton; + private System.Windows.Forms.ToolStripLabel toolStripLabel20; + private System.Windows.Forms.ToolStripButton deleteRoleClassButton; + private System.Windows.Forms.ToolStripDropDownButton fileButton; + private System.Windows.Forms.ToolStripMenuItem newToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem openToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem saveToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem saveeToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem importToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem importIODDFileToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem importGSDFileToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem loadLibraryFile; + private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem; + private System.Windows.Forms.TabPage tabPage2; + private System.Windows.Forms.ToolStripLabel filePathLabel; + private System.Windows.Forms.ToolStripTextBox vendorNameTextBox; + private System.Windows.Forms.ToolStripLabel toolStripLabel4; + private System.Windows.Forms.ToolStripTextBox deviceNameTextBox; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator3; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator8; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator6; + private System.Windows.Forms.TabPage tabPage1; + private System.Windows.Forms.DataGridView genericparametersAttrDataGridView; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn24; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn25; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn26; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn27; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn28; + private System.Windows.Forms.DataGridViewComboBoxColumn dataGridViewTextBoxColumn29; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn31; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn32; + private System.Windows.Forms.DataGridViewCheckBoxColumn loadfromLibrary; + private System.Windows.Forms.DataGridViewCheckBoxColumn loadFromComponentFile; + private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn2; + private System.Windows.Forms.DataGridViewTextBoxColumn SerialNumber; + private System.Windows.Forms.DataGridViewTextBoxColumn SelectedClassorInterface; + private System.Windows.Forms.DataGridViewCheckBoxColumn libraryFile; + private System.Windows.Forms.DataGridViewCheckBoxColumn componentFile; + private System.Windows.Forms.DataGridViewCheckBoxColumn dataGridViewCheckBoxColumn1; + private System.Windows.Forms.DataGridViewTextBoxColumn ElementName; + private System.Windows.Forms.DataGridViewTextBoxColumn FilePath; + private System.Windows.Forms.DataGridViewCheckBoxColumn Add; + private System.Windows.Forms.ToolStripDropDownButton librariesSplitButton; + private System.Windows.Forms.ToolStripMenuItem automationComponentLibraryv100ToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem automationComponentLibraryv100CAEX3BETAToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem automationComponentLibraryv100FullToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem electricConnectorLibraryv100ToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem industrialSensorLibraryv100ToolStripMenuItem; + private System.Windows.Forms.TreeView treeViewInterfaceClassLib; + private System.Windows.Forms.ToolStrip toolStrip9; + private System.Windows.Forms.ToolStripLabel InterfaceClassLibLabel; + private System.Windows.Forms.ToolStripSeparator toolStripSeparator42; + private System.Windows.Forms.ToolStripTextBox toolStripTextBox2; + private System.Windows.Forms.SplitContainer split_GenericDataGrid; + } +} diff --git a/SOURCE/Plugin/DeviceDescription.cs b/SOURCE/Plugin/DeviceDescription.cs new file mode 100644 index 0000000..e5d83a5 --- /dev/null +++ b/SOURCE/Plugin/DeviceDescription.cs @@ -0,0 +1,4684 @@ +using Aml.Engine.AmlObjects; +using Aml.Engine.CAEX; +using System; +using System.Collections.Generic; +using System.Data; +using System.Drawing; +using System.IO; +using System.IO.Packaging; +using System.Linq; +using System.Windows.Forms; +using Aml.Engine.AmlObjects.Extensions; + + +/// +/// MOD.002 Controller +/// This Module is the backend of the GUI. It covers all functions that are not frontend-related and makes sure that all errors occuring are caught by the program. +/// Every time a user makes a mistake, like triggering an error he gets feedback from this module (like an error message). The Controller is also responsible for opening, saving, +/// exporting and importing files +/// + +namespace Aml.Editor.Plugin +{ + public partial class DeviceDescription : UserControl + { + /// + /// These are private fields of this class. + /// + private MWController mWController; + private MWData.MWFileType filetype; + private object _row; + private bool isEditing = false; + private OpenFileDialog openFileDialog = new OpenFileDialog(); + + private List AllInterfaces = new List(); + + + /// + /// These are public fields of this class. + /// + public object row //this is a property decleration + { + get { return this._row; } + private set { this._row = value; } + } + public bool dragging = false; //this is your global boolean + + + /// + /// Instance of Animation Class is created. + /// + AnimationClass AMC = new AnimationClass(); + + /// + /// Instance of SearchforAMLLibraryFile is created. + /// This class search for "Interface Class Libraries" and "Role Class Libraries" in AML file loaded by user into plugin. + /// + SearchAMLLibraryFile searchAMLLibraryFile = new SearchAMLLibraryFile(); + + /// + /// Instance of "SearchAMLComponentFile" is created + /// This class search for "System Unit Class Libraries" in AML Component file loaded by user into plugin. + /// + SearchAMLComponentFile searchAMLComponentFile = new SearchAMLComponentFile(); + + /// + /// Instance of MWDevice Class + /// + MWDevice device = new MWDevice(); + + + public void getAllInterfaces(TreeNodeCollection nodes) + { + foreach (TreeNode node in nodes) + { + AllInterfaces.Add(node.Name); + if (node.Nodes.Count > 0) + { + getAllInterfaces(node.Nodes); + } + } + } + + /// + /// Codepart for all the retarded methodes nobody understands + /// + + /// + /// Constructor with no arguments that intilizes Device Description GUI + /// + public DeviceDescription() + { + InitializeComponent(); + } + + /// + /// This is a constructor of this class with MWControlle rargument. + /// + /// + public DeviceDescription(MWController mWController) + { + // These are the dictionaries created in MWDevice Class to store attributes inside them. + //These dictionaries are initiated as new dictionaries in here. + device.DictionaryForInterfaceClassesInElectricalInterfaces = new Dictionary>>(); + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces = new Dictionary>>(); + + device.DictionaryForRoleClassofComponent = new Dictionary>>(); + device.DictionaryForExternalInterfacesUnderRoleClassofComponent = new Dictionary>>(); + + this.mWController = mWController; + InitializeComponent(); + + // After intialization of this GUI, plugin all this function to load Standard Libraries. + loadStandardLibrary(); + + // This Function look for "AutomationComponent" Role and assign it to "Generic Data Tab" as a compulsary role along with attributes. + checkForAutomtionComponent(); + + foreach (DataGridViewRow row in genericInformationDataGridView.Rows) + { + if (row.Cells[0].Value != null) + { + if (row.Cells[0].Value.ToString() == "1" && row.Cells[1].Value.ToString() == "AutomationComponent{Class: AutomationMLBaseRole}") + { + string SRCSerialNumber = row.Cells[0].Value.ToString(); + string SRC = row.Cells[1].Value.ToString(); + foreach (var pair in searchAMLLibraryFile.DictionaryForRoleClassInstanceAttributes) + { + if (pair.Key.ToString() == SRC) + { + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + SRCSerialNumber + ")" + SRC)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + SRCSerialNumber + ")" + SRC); + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + + TreeNode parentNode = genericInformationtreeView.Nodes.Add("(" + SRCSerialNumber + ")" + SRC, + "(" + SRCSerialNumber + ")" + SRC, 2); + autoloadGenericInformationtreeView(parentNode); + } + catch (Exception) + { + + throw; + } + } + } + } + } + } + } + + /// + /// This function loads "Interface Class Libraries" and"Role Class Libraries" from already defined libaraies in plugin or, + /// libraries from the AML file those user want ot load from local machine. + /// + public void loadStandardLibrary() + { + CAEXDocument doc = null; + + // These library already come along with plugin. This library is loaded into GUI automaticcally by plugin. + doc = CAEXDocument.LoadFromBinary(Properties.Resources.AutomationComponentLibrary_v1_0_0_Full); + + //Following newly initiated dictionaries store "Interface Classes and its attributes" and "Role Classes and its attributes" of loaded file + //in the respective libraries. + //(Note:- This libaray is not used at all) + searchAMLLibraryFile.dictionaryofRoleClassattributes = new Dictionary>(); + + + // These are the main libraraies used. + searchAMLLibraryFile.DictionaryForInterfaceClassInstancesAttributes = new Dictionary>>(); + searchAMLLibraryFile.DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib = new Dictionary>>(); + + searchAMLLibraryFile.DictionaryForRoleClassInstanceAttributes = new Dictionary>>(); + searchAMLLibraryFile.DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib = new Dictionary>>(); + + + //(´Note:- This library is not used ata all.) + searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes = new Dictionary(); + + // These are the tree hierarchies in the GUI, which has to be cleared all during intiation of plugin. + treeViewRoleClassLib.Nodes.Clear(); + treeViewInterfaceClassLib.Nodes.Clear(); + { + try + { + + // This is a string variable that store the name of the "referenced name" of each "Interface Class in ICL of loaded file" + // and/or "Referenced name" of each "Role Class in RCL of loaded file" + string referencedClassName = ""; + + // This foreach loop look into every individual "Role Class libaray" in RCL in the loaded file. + foreach (var classLibType in doc.CAEXFile.RoleClassLib) + { + // This Populate Role Class Tree Node in GUI + TreeNode libNode = treeViewRoleClassLib.Nodes.Add(classLibType.ToString(), classLibType.ToString(), 0); + + // This foreach loop looks inside the individual "Role Class" + foreach (var classType in classLibType.RoleClass) + { + + TreeNode roleNode; + + // This If loop check for the "refernced name" of each role class. + if (classType.ReferencedClassName != "") + { + //Store "referenced name" in the String that declared above "referencedClassName" + referencedClassName = classType.ReferencedClassName; + // Print the role node + roleNode = libNode.Nodes.Add(classType.ToString(), classType.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 1); + + // Search for the "refernced name" (This referenced name will be as an "Role Class" in the RCL)..... + //.....in the whole RCL to find the attribute behind it and also its further "referenced name" + searchAMLLibraryFile.SearchForReferencedClassName(doc, referencedClassName, classType); + //This method is responsible to check attributes of referenced Class + searchAMLLibraryFile.CheckForAttributesOfReferencedClassName(classType); + + } + // If there is no "Referenced Class name" then just print the name in GUI. + else + { + roleNode = libNode.Nodes.Add(classType.ToString(), classType.ToString(), 1); + } + + + // This If loop check for the "ExternalInterface" under each role class. + if (classType.ExternalInterface.Exists) + { + // This foreach loop look for number of "ExternalInterfaces" under "Role Class" + foreach (var externalinterface in classType.ExternalInterface) + { + TreeNode externalinterfacenode; + + // This If loop check for the "refernced name" of each externalinterface. + if (externalinterface.BaseClass != null) + { + referencedClassName = externalinterface.BaseClass.ToString(); + externalinterfacenode = roleNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + + //This method is responsible to check for "Referenced Class Name" of "External Interfaces" under the "Role Class" + searchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(doc, referencedClassName, classType, externalinterface); + + // This Function is responsible to search attributes under the "Referenced Classs Name" i.e. in this part "RoleFamilyType" + searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + + + } + //Else directly print the node. + else + { + externalinterfacenode = roleNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString(), 2); + // searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + } + + //This method is called to print "External Interfaces" in both "Role class Library and Interface Class Library" in the plugin. + searchAMLLibraryFile.PrintExternalInterfaceNodes(doc, externalinterfacenode, externalinterface, classType); + } + } + //This method takes arguments "TreeNode" and "RoleFamilyType" to print tree nodes in "Role Class Library TreeView " in Plugin. + searchAMLLibraryFile.PrintNodesRecursiveInRoleClassLib(doc, roleNode, classType, referencedClassName); + } + } + + foreach (var classLibType in doc.CAEXFile.InterfaceClassLib) + { + // Print a "Interface Class lib" treenode in GUI + TreeNode libNode = treeViewInterfaceClassLib.Nodes.Add(classLibType.ToString(), classLibType.ToString(), 0); + + + // for each "interface classlib" print chlid nodes of "Interface Classes" + foreach (var classType in classLibType.InterfaceClass) + { + + TreeNode interfaceclassNode; + //If "refernced Class Name" is not null + if (classType.ReferencedClassName != "") + { + // Print Child node... + referencedClassName = classType.ReferencedClassName; + interfaceclassNode = libNode.Nodes.Add(classType.ToString(), classType.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 1); + + //This method search for "Referenced Class Name" "Interface Class" + searchAMLLibraryFile.SearchForReferencedClassName(doc, referencedClassName, classType); + // + searchAMLLibraryFile.CheckForAttributesOfReferencedClassName(classType); + + } + else + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString(), classType.ID.ToString()); + interfaceclassNode = libNode.Nodes.Add(classType.ToString(), classType.ToString(), 1); + } + + if (classType.ExternalInterface.Exists) + { + foreach (var externalinterface in classType.ExternalInterface) + { + TreeNode externalinterfacenode; + + if (externalinterface.BaseClass != null) + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString()+ externalinterface.ToString(), externalinterface.ID.ToString()); + + referencedClassName = externalinterface.BaseClass.ToString(); + externalinterfacenode = interfaceclassNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + + searchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(doc, referencedClassName, classType, externalinterface); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + } + else + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString() + externalinterface.ToString(), externalinterface.ID.ToString()); + + externalinterfacenode = interfaceclassNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString(), 2); + } + searchAMLLibraryFile.PrintExternalInterfaceNodes(doc, externalinterfacenode, externalinterface, classType); + } + } + searchAMLLibraryFile.PrintNodesRecursiveInInterfaceClassLib(doc, interfaceclassNode, classType, referencedClassName); + } + } + } + + catch (Exception) + { + MessageBox.Show("Missing names of attributes or same attribute sequence is repeated in the given file", "Missing Names", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); + } + } + } + + + /// + /// From here comes the part that is no longer even commented with tank methods + /// + + private void treeViewInterfaceClassLib_MouseDown(object sender, MouseEventArgs e) + { + + //this.treeViewInterfaceClassLib.MouseDown += new MouseEventHandler(this.tree_MouseDown); + + } + + private void treeViewInterfaceClassLib_DragOver(object sender, DragEventArgs e) + { + // this.treeViewInterfaceClassLib.DragOver += new DragEventHandler(this.tree_DragOver); + + // Retrieve the client coordinates of the mouse position. + Point targetPoint = treeViewInterfaceClassLib.PointToClient(new Point(e.X, e.Y)); + + // Select the node at the mouse position. + treeViewInterfaceClassLib.SelectedNode = treeViewInterfaceClassLib.GetNodeAt(targetPoint); + } + + private void treeViewInterfaceClassLib_DragDrop(object sender, DragEventArgs e) + { + + } + + private void treeViewInterfaceClassLib_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) + { + treeViewInterfaceClassLib.SelectedNode = e.Node; + e.Node.ContextMenuStrip = contextMenuStripforInterfaceClassLib; + } + + private void treeViewInterfaceClassLib_AfterSelect(object sender, TreeViewEventArgs e) + { + try + { + TreeNode targetNode = treeViewInterfaceClassLib.SelectedNode; + + targetNode.SelectedImageIndex = targetNode.ImageIndex; + } + catch (Exception) + { + + } + } + + private void treeViewInterfaceClassLib_ItemDrag(object sender, ItemDragEventArgs e) + { + if (treeViewInterfaceClassLib.SelectedNode == null) + { + dragging = false; + } + else + { + if (treeViewInterfaceClassLib.SelectedNode.ImageIndex == 2) + { + return; + } + else + { + dragging = true; + row = new object(); + + + treeViewInterfaceClassLib.SelectedNode = (TreeNode)e.Item;//dragging doesn't automatically change the selected index + row = treeViewInterfaceClassLib.SelectedNode.Text;//or whatever value you need from the node + } + } + + + + } + + private void treeViewInterfaceClassLib_BeforeSelect(object sender, TreeViewCancelEventArgs e) + { + + } + + + + + + private void treeViewRoleClassLib_ItemDrag(object sender, ItemDragEventArgs e) + { + if (treeViewRoleClassLib.SelectedNode == null) + { + dragging = false; + } + else + { + if (treeViewRoleClassLib.SelectedNode.ImageIndex == 2) + { + return; + } + else + { + dragging = true; + row = new object(); + treeViewRoleClassLib.SelectedNode = (TreeNode)e.Item;//dragging doesn't automatically change the selected index + row = treeViewRoleClassLib.SelectedNode.Text;//or whatever value you need from the node + } + } + } + + private void treeViewRoleClassLib_AfterSelect(object sender, TreeViewEventArgs e) + { + try + { + TreeNode targetNode = treeViewRoleClassLib.SelectedNode; + targetNode.SelectedImageIndex = targetNode.ImageIndex; + } + catch (Exception) + { + return; + } + } + + + + + private void treeViewElectricalInterfaces_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) + { + string searchName = ""; + var AutomationMLDataTables = new AutomationMLDataTables(); + ClearHeaderTabPageValuesofElectricalInterfaces(); + + TreeNode targetNode = treeViewElectricalInterfaces.SelectedNode; + /* targetNode.SelectedImageIndex = targetNode.ImageIndex;*/ + + elecInterAttDataGridView.Rows.Clear(); + + try + { + if (e.Button == MouseButtons.Left) + { + + if (targetNode.Parent != null) + { + + searchName = targetNode.Parent.Text + targetNode.Text; + electricalInterfacesHeaderlabel.Text = searchName; + //nameTxtBxElecAttri.Text = searchName; + foreach (var pair in device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces) + { + if (pair.Key.ToString() == searchName) + { + DataTable AMLDataTable = AutomationMLDataTables.AMLAttributeParameters(); + AutomationMLDataTables.CreateDataTableWithColumns(AMLDataTable, elecInterAttDataGridView, pair); + } + } + foreach (var pair in device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces) + { + if (pair.Key.ToString() == searchName) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + descriptionTxtBoxElecAttri.Text = item.Description; + copyrightTxtBxElecAttri.Text = item.CopyRight; + RefClassNameTxtBxElecAttri.Text = item.ReferencedClassName; + RefBaseClassPathTxtBxElecAttri.Text = item.RefBaseClassPath; + attributepathTxtBxElecAttri.Text = item.AttributePath; + idTxtBxElecAttri.Text = item.ID; + } + } + } + } + } + else + { + searchName = targetNode.Text; + electricalInterfacesHeaderlabel.Text = searchName; + //nameTxtBxElecAttri.Text = searchName; + foreach (var pair in device.DictionaryForInterfaceClassesInElectricalInterfaces) + { + if (pair.Key.ToString() == searchName) + { + DataTable AMLDataTable = AutomationMLDataTables.AMLAttributeParameters(); + AutomationMLDataTables.CreateDataTableWithColumns(AMLDataTable, elecInterAttDataGridView, pair); + } + } + foreach (var pair in device.DictionaryForInterfaceClassesInElectricalInterfaces) + { + if (pair.Key.ToString() == searchName) + { + + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + descriptionTxtBoxElecAttri.Text = item.Description; + copyrightTxtBxElecAttri.Text = item.CopyRight; + RefClassNameTxtBxElecAttri.Text = item.ReferencedClassName; + RefBaseClassPathTxtBxElecAttri.Text = item.RefBaseClassPath; + attributepathTxtBxElecAttri.Text = item.AttributePath; + idTxtBxElecAttri.Text = item.ID; + } + } + } + } + } + } + } + catch (Exception) { } + } + + private void treeViewElectricalInterfaces_MouseClick(object sender, MouseEventArgs e) + { + + } + + + + + private void fileButton_MouseHover(object sender, EventArgs e) + { + fileButton.ShowDropDown(); + } + + private void fileButton_ButtonClick(object sender, EventArgs e) + { + fileButton.ShowDropDown(); + } + + + private void helpButton_ButtonClick(object sender, EventArgs e) + { + helpButton.ShowDropDown(); + } + + private void helpButton_MouseHover(object sender, EventArgs e) + { + helpButton.ShowDropDown(); + } + + + + + private void importIODDFileToolStripMenuItem_Click(object sender, EventArgs e) + { + filetype = MWData.MWFileType.IODD; + openFileDialog.Filter = "IODD Files (*.xml)|*.xml|All Files (*.*)|*.*"; + openFileDialog.ShowDialog(); + } + + private void importGSDFileToolStripMenuItem_Click(object sender, EventArgs e) + { + filetype = MWData.MWFileType.GSD; + openFileDialog.Filter = "GSDML Files (*.xml)|*.xml|All Files (*.*)|*.*"; + openFileDialog.ShowDialog(); + } + + + + + + private void automationComponentLibraryv100ToolStripMenuItem_Click(object sender, EventArgs e) + { + selectLibrary(Properties.Resources.AutomationComponentLibrary_v1_0_0); + } + + private void automationComponentLibraryv100CAEX3BETAToolStripMenuItem_Click(object sender, EventArgs e) + { + selectLibrary(Properties.Resources.AutomationComponentLibrary_v1_0_0_CAEX3_BETA); + } + + private void automationComponentLibraryv100FullToolStripMenuItem_Click(object sender, EventArgs e) + { + selectLibrary(Properties.Resources.AutomationComponentLibrary_v1_0_0_Full); + } + + private void automationComponentLibraryv100FullCAEX3BETAToolStripMenuItem_Click(object sender, EventArgs e) + { + selectLibrary(Properties.Resources.AutomationComponentLibrary_v1_0_0_Full_CAEX3_BETA); + } + + private void electricConnectorLibraryv100ToolStripMenuItem_Click(object sender, EventArgs e) + { + selectLibrary(Properties.Resources.ElectricConnectorLibrary_v1_0_0); + } + + private void industrialSensorLibraryv100ToolStripMenuItem_Click(object sender, EventArgs e) + { + selectLibrary(Properties.Resources.IndustrialSensorLibrary_v1_0_0); + } + + + + + private void electricalInterfacesCollectionDataGridView_CellClick(object sender, DataGridViewCellEventArgs e) + { + try + { + if (!dragging) + { + treeViewElectricalInterfaces.Nodes.Clear(); + + TreeNode parentNode; + TreeNode childNodes; + + var AutomationMLDataTables = new AutomationMLDataTables(); + electricalInterfacesCollectionDataGridView.CurrentRow.Selected = true; + + + if (electricalInterfacesCollectionDataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value != null) + { + string interfaceSerialNumber = electricalInterfacesCollectionDataGridView.Rows[e.RowIndex].Cells[0] + .Value.ToString(); + + if (Convert.ToBoolean(electricalInterfacesCollectionDataGridView.CurrentRow.Cells[3].Value) == true) + { + elecInterAttDataGridView.Rows.Clear(); + string interfaceClass = electricalInterfacesCollectionDataGridView.CurrentRow.Cells[1].Value + .ToString(); + foreach (var pair in searchAMLLibraryFile.DictionaryForInterfaceClassInstancesAttributes) + { + if (pair.Key.ToString() == interfaceClass) + { + try + { + if (device.DictionaryForInterfaceClassesInElectricalInterfaces.ContainsKey( + "(" + interfaceSerialNumber + ")" + interfaceClass)) + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Remove( + "(" + interfaceSerialNumber + ")" + interfaceClass); + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add( + "(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + else + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add( + "(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + } + catch (Exception) + { + return; + } + } + } + + parentNode = treeViewElectricalInterfaces.Nodes.Add( + "(" + interfaceSerialNumber + ")" + interfaceClass, + "(" + interfaceSerialNumber + ")" + interfaceClass, 2); + + foreach (var pair in searchAMLLibraryFile + .DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib) + { + if (pair.Key.Contains(interfaceClass)) + { + try + { + if (device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .ContainsKey("(" + interfaceSerialNumber + ")" + pair.Key.ToString())) + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .Remove("(" + interfaceSerialNumber + ")" + pair.Key.ToString()); + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + else + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + } + catch (Exception) + { + return; + } + + childNodes = parentNode.Nodes.Add(pair.Key.Replace(interfaceClass, "").ToString(), + pair.Key.Replace(interfaceClass, "").ToString(), 2); + } + } + + electricalInterfacesCollectionDataGridView.CurrentRow.Cells[3].Value = true; + } + + if (Convert.ToBoolean(electricalInterfacesCollectionDataGridView.CurrentRow.Cells[4].Value) == true) + { + elecInterAttDataGridView.Rows.Clear(); + string interfaceClass = electricalInterfacesCollectionDataGridView.CurrentRow.Cells[1].Value + .ToString(); + foreach (var pair in searchAMLComponentFile.DictionaryofElectricalConnectorType) + { + if (pair.Key.ToString() == interfaceClass) + { + try + { + if (device.DictionaryForInterfaceClassesInElectricalInterfaces.ContainsKey( + "(" + interfaceSerialNumber + ")" + interfaceClass)) + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Remove( + "(" + interfaceSerialNumber + ")" + interfaceClass); + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add( + "(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + else + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add( + "(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + } + catch (Exception) + { + return; + } + } + } + + parentNode = treeViewElectricalInterfaces.Nodes.Add( + "(" + interfaceSerialNumber + ")" + interfaceClass, + "(" + interfaceSerialNumber + ")" + interfaceClass, 2); + + foreach (var pair in searchAMLComponentFile.DictioanryofElectricalConnectorPinType) + { + if (pair.Key.Contains(interfaceClass)) + { + try + { + if (device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .ContainsKey("(" + interfaceSerialNumber + ")" + pair.Key.ToString())) + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .Remove("(" + interfaceSerialNumber + ")" + pair.Key.ToString()); + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + else + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + } + catch (Exception) + { + return; + } + + childNodes = parentNode.Nodes.Add(pair.Key.Replace(interfaceClass, "").ToString(), + pair.Key.Replace(interfaceClass, "").ToString(), 2); + } + } + // electricalInterfacesCollectionDataGridView.CurrentRow.Cells[4].Value = true; + } + } + } + } + catch (Exception) + { + return; + + } + } + + private void electricalInterfacesCollectionDataGridView_MouseUp(object sender, MouseEventArgs e) + { + if (dragging) + { + try + { + int num = electricalInterfacesCollectionDataGridView.Rows.Add(); + List listofSerialNumbers = new List(); + List listofFinalSerialNumber = new List(); + string number = ""; + int finalNumber = 0; + int ultimatenumber = 0; + if (electricalInterfacesCollectionDataGridView.Rows.Count > 2) + { + foreach (DataGridViewRow row in electricalInterfacesCollectionDataGridView.Rows) + { + if (row.Cells[0].Value == null) + { + number = "0"; + listofSerialNumbers.Add(number); + } + if (row.Cells[0].Value != null) + { + number = row.Cells[0].Value.ToString(); + listofSerialNumbers.Add(number); + } + } + foreach (string str in listofSerialNumbers) + { + finalNumber = Convert.ToInt32(str); + listofFinalSerialNumber.Add(finalNumber); + } + ultimatenumber = listofFinalSerialNumber.Max(); + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value = ++ultimatenumber; + } + else + { + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value = 1; + } + + electricalInterfacesCollectionDataGridView.Rows[num].Cells[1].Value = row; + electricalInterfacesCollectionDataGridView.Rows[num].Cells[3].Value = true; + + electricalInterfacesCollectionDataGridView.Rows[num].Selected = false; + + treeViewElectricalInterfaces.Nodes.Clear(); + + TreeNode parentNode; + TreeNode childNodes; + + var AutomationMLDataTables = new AutomationMLDataTables(); + electricalInterfacesCollectionDataGridView.CurrentRow.Selected = true; + + + if (electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value != null) + { + string interfaceSerialNumber = electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value.ToString(); + + if (Convert.ToBoolean(electricalInterfacesCollectionDataGridView.Rows[num].Cells[3].Value) == true) + { + elecInterAttDataGridView.Rows.Clear(); + string interfaceClass = electricalInterfacesCollectionDataGridView.Rows[num].Cells[1].Value.ToString(); + foreach (var pair in searchAMLLibraryFile.DictionaryForInterfaceClassInstancesAttributes) + { + if (pair.Key.ToString() == interfaceClass) + { + try + { + if (device.DictionaryForInterfaceClassesInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + interfaceClass)) + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + interfaceClass); + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + else + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + } + catch (Exception) + { + + return; + } + + } + + } + + + parentNode = treeViewElectricalInterfaces.Nodes.Add("(" + interfaceSerialNumber + ")" + interfaceClass, + "(" + interfaceSerialNumber + ")" + interfaceClass, 2); + + + foreach (var pair in searchAMLLibraryFile.DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib) + { + if (pair.Key.Contains(interfaceClass)) + { + try + { + if (device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + pair.Key.ToString())) + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + pair.Key.ToString()); + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + else + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + } + catch (Exception) + { + + return; + } + + + childNodes = parentNode.Nodes.Add(pair.Key.Replace(interfaceClass, "").ToString() + , pair.Key.Replace(interfaceClass, "").ToString(), 2); + } + } + + electricalInterfacesCollectionDataGridView.CurrentRow.Cells[3].Value = true; + } + + if (Convert.ToBoolean(electricalInterfacesCollectionDataGridView.Rows[num].Cells[4].Value) == true) + { + elecInterAttDataGridView.Rows.Clear(); + string interfaceClass = electricalInterfacesCollectionDataGridView.Rows[num].Cells[1].Value.ToString(); + foreach (var pair in searchAMLComponentFile.DictionaryofElectricalConnectorType) + { + if (pair.Key.ToString() == interfaceClass) + { + try + { + if (device.DictionaryForInterfaceClassesInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + interfaceClass)) + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + interfaceClass); + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + else + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + } + catch (Exception) + { + + return; + } + } + } + + + parentNode = treeViewElectricalInterfaces.Nodes.Add("(" + interfaceSerialNumber + ")" + interfaceClass, + "(" + interfaceSerialNumber + ")" + interfaceClass, 2); + + + foreach (var pair in searchAMLComponentFile.DictioanryofElectricalConnectorPinType) + { + if (pair.Key.Contains(interfaceClass)) + { + try + { + if (device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + pair.Key.ToString())) + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + pair.Key.ToString()); + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + else + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + } + catch (Exception) + { + + return; + } + childNodes = parentNode.Nodes.Add(pair.Key.Replace(interfaceClass, "").ToString(), pair.Key.Replace(interfaceClass, "").ToString(), 2); + } + } + // electricalInterfacesCollectionDataGridView.CurrentRow.Cells[4].Value = true; + } + } + dragging = false; + //set your cursor back to the deafault + + } + catch (Exception) + { + dragging = false; + return; + } + } + } + + + + + private void electricalInterfacesPanel_Paint(object sender, PaintEventArgs e) + { + + } + + + + + private void genericInformationDataGridView_MouseUp(object sender, MouseEventArgs e) + { + if (dragging) + { + try + { + int num = genericInformationDataGridView.Rows.Add(); + List listofSerialNumbers = new List(); + List listofFinalSerialNumber = new List(); + string number = ""; + int finalNumber = 0; + int ultimatenumber = 0; + if (genericInformationDataGridView.Rows.Count > 2) + { + foreach (DataGridViewRow row in genericInformationDataGridView.Rows) + { + if (row.Cells[0].Value == null) + { + number = "0"; + listofSerialNumbers.Add(number); + } + + if (row.Cells[0].Value != null) + { + number = row.Cells[0].Value.ToString(); + listofSerialNumbers.Add(number); + } + } + + foreach (string str in listofSerialNumbers) + { + finalNumber = Convert.ToInt32(str); + listofFinalSerialNumber.Add(finalNumber); + } + + ultimatenumber = listofFinalSerialNumber.Max(); + genericInformationDataGridView.Rows[num].Cells[0].Value = ++ultimatenumber; + } + else + { + genericInformationDataGridView.Rows[num].Cells[0].Value = 1; + } + + genericInformationDataGridView.Rows[num].Cells[1].Value = row; + genericInformationDataGridView.Rows[num].Cells[3].Value = true; + + + dragging = false; + + //set your cursor back to the deafault + + } + catch (Exception) + { + dragging = false; + return; + } + } + } + + private void genericInformationDataGridView_CellClick(object sender, DataGridViewCellEventArgs e) + { + try + { + genericInformationtreeView.Nodes.Clear(); + + TreeNode parentNode; + TreeNode childNodes; + + var AutomationMLDataTables = new AutomationMLDataTables(); + genericInformationDataGridView.CurrentRow.Selected = true; + + + if (genericInformationDataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value != null) + { + string SRCSerialNumber = genericInformationDataGridView.Rows[e.RowIndex].Cells[0].Value.ToString(); + + if (Convert.ToBoolean(genericInformationDataGridView.CurrentRow.Cells[3].Value) == true) + { + genericparametersAttrDataGridView.Rows.Clear(); + + string SRC = genericInformationDataGridView.CurrentRow.Cells[1].Value.ToString(); + + foreach (var pair in searchAMLLibraryFile.DictionaryForRoleClassInstanceAttributes) + { + if (pair.Key.ToString() == SRC) + { + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + SRCSerialNumber + + ")" + SRC)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + SRCSerialNumber + ")" + + SRC); + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, + pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, + pair.Value); + } + } + catch (Exception) + { + + return; + } + + } + + } + + + parentNode = genericInformationtreeView.Nodes.Add("(" + SRCSerialNumber + ")" + SRC, + "(" + SRCSerialNumber + ")" + SRC, 2); + + + foreach (var pair in searchAMLLibraryFile + .DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib) + { + if (pair.Key.Contains(SRC)) + { + try + { + if (device.DictionaryForExternalInterfacesUnderRoleClassofComponent.ContainsKey( + "(" + SRCSerialNumber + ")" + pair.Key.ToString())) + { + device.DictionaryForExternalInterfacesUnderRoleClassofComponent.Remove( + "(" + SRCSerialNumber + ")" + pair.Key.ToString()); + device.DictionaryForExternalInterfacesUnderRoleClassofComponent.Add( + "(" + SRCSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + else + { + device.DictionaryForExternalInterfacesUnderRoleClassofComponent.Add( + "(" + SRCSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + } + catch (Exception) + { + + return; + } + + + childNodes = parentNode.Nodes.Add(pair.Key.Replace(SRC, "").ToString() + , pair.Key.Replace(SRC, "").ToString(), 2); + } + } + + genericInformationDataGridView.CurrentRow.Cells[3].Value = true; + } + + if (Convert.ToBoolean(genericInformationDataGridView.CurrentRow.Cells[4].Value) == true) + { + genericparametersAttrDataGridView.Rows.Clear(); + string SRC = genericInformationDataGridView.CurrentRow.Cells[1].Value.ToString(); + foreach (var pair in searchAMLComponentFile.DictionaryofRolesforAutomationComponenet) + { + if (pair.Key.ToString() == SRC) + { + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + SRCSerialNumber + + ")" + SRC)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + SRCSerialNumber + ")" + + SRC); + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, + pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, + pair.Value); + } + } + catch (Exception) + { + + return; + } + } + } + + parentNode = genericInformationtreeView.Nodes.Add("(" + SRCSerialNumber + ")" + SRC, "(" + SRCSerialNumber + ")" + SRC, 2); + } + } + + vendorNameTextBox_Leave(new object(), new EventArgs()); + deviceNameTextBox_Leave(new object(), new EventArgs()); + } + catch (Exception) + { + return; + } + } + + private void genericInformationDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + + } + + + private void autoloadGenericInformationtreeView(TreeNode node) + { + string searchName = ""; + var AutomationMLDataTables = new AutomationMLDataTables(); + + TreeNode targetNode = node; + + /* targetNode.SelectedImageIndex = targetNode.ImageIndex;*/ + ClearHeaderTabPageValuesofgenericData(); + genericparametersAttrDataGridView.Rows.Clear(); + + try + { + if (targetNode.Parent != null) + { + searchName = targetNode.Parent.Text + targetNode.Text; + genericDataHeaderLabel.Text = searchName; + foreach (var pair in device.DictionaryForExternalInterfacesUnderRoleClassofComponent) + { + if (pair.Key.ToString() == searchName) + { + DataTable AMLDataTable = AutomationMLDataTables.AMLAttributeParameters(); + AutomationMLDataTables.CreateDataTableWithColumns(AMLDataTable, genericparametersAttrDataGridView, pair); + } + + } + foreach (var pair in device.DictionaryForExternalInterfacesUnderRoleClassofComponent) + { + if (pair.Key.ToString() == searchName) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + genericDataDescriptionTxtBx.Text = item.Description; + genericDataCopyrightTxtBx.Text = item.CopyRight; + genericDataRefClassNameTxtBx.Text = item.ReferencedClassName; + genericDataRefBaseClassPathTxtBx.Text = item.RefBaseClassPath; + genericDataAttributePathTxtBx.Text = item.AttributePath; + genericDataIDTxtBx.Text = item.ID; + } + } + } + } + } + else + { + + searchName = targetNode.Text; + genericDataHeaderLabel.Text = searchName; + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + if (pair.Key.ToString() == searchName) + { + DataTable AMLDataTable = AutomationMLDataTables.AMLAttributeParameters(); + AutomationMLDataTables.CreateDataTableWithColumns(AMLDataTable, genericparametersAttrDataGridView, pair); + + } + + } + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + if (pair.Key.ToString() == searchName) + { + + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + genericDataDescriptionTxtBx.Text = item.Description; + genericDataCopyrightTxtBx.Text = item.CopyRight; + genericDataRefClassNameTxtBx.Text = item.ReferencedClassName; + genericDataRefBaseClassPathTxtBx.Text = item.RefBaseClassPath; + genericDataAttributePathTxtBx.Text = item.AttributePath; + genericDataIDTxtBx.Text = item.ID; + } + } + } + } + } + } + catch (Exception) { } + } + + private void genericInformationtreeView_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) + { + string searchName = ""; + var AutomationMLDataTables = new AutomationMLDataTables(); + + TreeNode targetNode = genericInformationtreeView.SelectedNode; + + /* targetNode.SelectedImageIndex = targetNode.ImageIndex;*/ + ClearHeaderTabPageValuesofgenericData(); + genericparametersAttrDataGridView.Rows.Clear(); + + try + { + if (e.Button == MouseButtons.Left) + { + + if (targetNode.Parent != null) + { + searchName = targetNode.Parent.Text + targetNode.Text; + genericDataHeaderLabel.Text = searchName; + foreach (var pair in device.DictionaryForExternalInterfacesUnderRoleClassofComponent) + { + if (pair.Key.ToString() == searchName) + { + DataTable AMLDataTable = AutomationMLDataTables.AMLAttributeParameters(); + AutomationMLDataTables.CreateDataTableWithColumns(AMLDataTable, genericparametersAttrDataGridView, pair); + } + + } + foreach (var pair in device.DictionaryForExternalInterfacesUnderRoleClassofComponent) + { + if (pair.Key.ToString() == searchName) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + genericDataDescriptionTxtBx.Text = item.Description; + genericDataCopyrightTxtBx.Text = item.CopyRight; + genericDataRefClassNameTxtBx.Text = item.ReferencedClassName; + genericDataRefBaseClassPathTxtBx.Text = item.RefBaseClassPath; + genericDataAttributePathTxtBx.Text = item.AttributePath; + genericDataIDTxtBx.Text = item.ID; + } + } + } + + } + } + else + { + + searchName = targetNode.Text; + genericDataHeaderLabel.Text = searchName; + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + if (pair.Key.ToString() == searchName) + { + DataTable AMLDataTable = AutomationMLDataTables.AMLAttributeParameters(); + AutomationMLDataTables.CreateDataTableWithColumns(AMLDataTable, genericparametersAttrDataGridView, pair); + + } + + } + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + if (pair.Key.ToString() == searchName) + { + + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + genericDataDescriptionTxtBx.Text = item.Description; + genericDataCopyrightTxtBx.Text = item.CopyRight; + genericDataRefClassNameTxtBx.Text = item.ReferencedClassName; + genericDataRefBaseClassPathTxtBx.Text = item.RefBaseClassPath; + genericDataAttributePathTxtBx.Text = item.AttributePath; + genericDataIDTxtBx.Text = item.ID; + } + } + } + } + } + + } + } + catch (Exception) { } + } + + private void genericInformationtreeView_AfterSelect(object sender, TreeViewEventArgs e) + { + try + { + TreeNode targetNode = genericInformationtreeView.SelectedNode; + + targetNode.SelectedImageIndex = targetNode.ImageIndex; + } + catch (Exception) { } + } + + + + + public void ClearHeaderTabPageValuesofElectricalInterfaces() + { + descriptionTxtBoxElecAttri.Text = ""; + copyrightTxtBxElecAttri.Text = ""; + RefClassNameTxtBxElecAttri.Text = ""; + RefBaseClassPathTxtBxElecAttri.Text = ""; + attributepathTxtBxElecAttri.Text = ""; + idTxtBxElecAttri.Text = ""; + nameTxtBxElecAttri.Text = ""; + } + + public void ClearHeaderTabPageValuesofgenericData() + { + genericDataDescriptionTxtBx.Text = ""; + genericDataCopyrightTxtBx.Text = ""; + genericDataRefClassNameTxtBx.Text = ""; + genericDataRefBaseClassPathTxtBx.Text = ""; + genericDataAttributePathTxtBx.Text = ""; + genericDataIDTxtBx.Text = ""; + genericDataNameTxtBx.Text = ""; + } + + + + + private void deleterowsInelectricalInterfacesDataGridView_Click(object sender, EventArgs e) + { + try + { + if (electricalInterfacesCollectionDataGridView.CurrentCell != null) + { + int rowIndex = electricalInterfacesCollectionDataGridView.CurrentCell.RowIndex; + electricalInterfacesCollectionDataGridView.CurrentRow.Selected = true; + string interfaceSerialNumber = electricalInterfacesCollectionDataGridView.Rows[rowIndex].Cells[0].Value.ToString(); + string interfaceClass = electricalInterfacesCollectionDataGridView.Rows[rowIndex].Cells[1].Value.ToString(); + + try + { + if (device.DictionaryForInterfaceClassesInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + interfaceClass)) + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + interfaceClass); + } + } + catch (Exception) + { + throw; + } + + foreach (var pair in searchAMLLibraryFile.DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib) + { + if (pair.Key.Contains(interfaceClass)) + { + try + { + if (device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + pair.Key.ToString())) + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + pair.Key.ToString()); + + } + + } + catch (Exception) + { + throw; + } + } + } + electricalInterfacesCollectionDataGridView.Rows.RemoveAt(rowIndex); + } + } + catch (Exception) { } + } + + private void deleteRoleClassButton_Click(object sender, EventArgs e) + { + + try + { + if (genericInformationDataGridView.CurrentCell != null) + { + int rowIndex = genericInformationDataGridView.CurrentCell.RowIndex; + genericInformationDataGridView.CurrentRow.Selected = true; + string interfaceSerialNumber = genericInformationDataGridView.Rows[rowIndex].Cells[0].Value.ToString(); + string interfaceClass = genericInformationDataGridView.Rows[rowIndex].Cells[1].Value.ToString(); + + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + interfaceSerialNumber + ")" + interfaceClass)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + interfaceSerialNumber + ")" + interfaceClass); + + } + + + } + catch (Exception) + { + + throw; + } + + foreach (var pair in searchAMLLibraryFile.DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib) + { + if (pair.Key.Contains(interfaceClass)) + { + try + { + if (device.DictionaryForExternalInterfacesUnderRoleClassofComponent.ContainsKey("(" + interfaceSerialNumber + ")" + pair.Key.ToString())) + { + device.DictionaryForExternalInterfacesUnderRoleClassofComponent.Remove("(" + interfaceSerialNumber + ")" + pair.Key.ToString()); + + } + + } + catch (Exception) + { + + throw; + } + + } + } + + genericInformationDataGridView.Rows.RemoveAt(rowIndex); + + } + + } + catch (Exception) { } + } + + private void saveToolStripMenuItem_Click(object sender, EventArgs e) + { + if (vendorNameTextBox.Text == "" && deviceNameTextBox.Text == "") + { + MessageBox.Show("Enter Vendor Name and Device Name before saving an Automation Component", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + else if (vendorNameTextBox.Text == "") + { + MessageBox.Show("Error no vendor name set!", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + else if (deviceNameTextBox.Text == "") + { + MessageBox.Show("Error no device name set!", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + var attributeName = item.AttributePath.ToString(); + + if (attributeName.Equals("IdentificationData.Manufacturer") || attributeName.Equals("IdentificationData.DeviceClass") || attributeName.Equals("IdentificationData.Model") || attributeName.Equals("IdentificationData.ProductCode")) + { + if (item.Value == null) + { + MessageBox.Show("Error no " + attributeName.Split('.')[1] + " set!", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + } + else if (attributeName.Equals("IdentificationData.ManufacturerURI")) + { + if (item.Value == null) + { + MessageBox.Show("Error no " + attributeName.Split('.')[1] + " set!", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + else + { + if (!item.Value.StartsWith("https://") && !item.Value.StartsWith("http://") && !item.Value.StartsWith("www.") && !item.Value.StartsWith("WWW.") && !item.Value.StartsWith("/")) + { + MessageBox.Show("Error " + attributeName.Split('.')[1] + " is not valid!", "URI not valid!", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + } + } + } + } + } + + device.vendorName = vendorNameTextBox.Text; + + device.deviceName = deviceNameTextBox.Text; + + + device.dataGridAttachablesParametrsList = new List(); + if (attachablesInfoDataGridView != null) + { + int i = 0; + int j = attachablesInfoDataGridView.Rows.Count - 1; + if (i <= 0) + { + while (i < j) + { + + AttachablesDataGridViewParameters parametersFromAttachablesDataGrid = new AttachablesDataGridViewParameters(); + + try + { + parametersFromAttachablesDataGrid.ElementName = Convert.ToString(attachablesInfoDataGridView.Rows[i].Cells[0].Value); + parametersFromAttachablesDataGrid.FilePath = Convert.ToString(attachablesInfoDataGridView.Rows[i].Cells[1].Value); + parametersFromAttachablesDataGrid.AddToFile = Convert.ToString(attachablesInfoDataGridView.Rows[i].Cells[2].Value); + } + catch (Exception ex) { MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning); } + + device.dataGridAttachablesParametrsList.Add(parametersFromAttachablesDataGrid); + i++; + } + } + } + + try + { + SaveFileDialog saveFileDialog = new SaveFileDialog(); + + // saveFileDialog.Filter = "AML Files( *.amlx )| *.amlx;"; + saveFileDialog.FileName = vendorNameTextBox.Text + "-" + deviceNameTextBox.Text + "-V.1.0-" + DateTime.Now.Date.ToShortDateString(); + + if (saveFileDialog.ShowDialog() == DialogResult.OK) + { + + device.filepath = Path.GetDirectoryName(saveFileDialog.FileName); + device.environment = Path.GetDirectoryName(saveFileDialog.FileName); + //filePathLabel.Text = Path.GetDirectoryName(saveFileDialog.FileName); + device.fileName = saveFileDialog.FileName; + + + fileNameLabel.Text = ""; + // storing user defined values of Attachebles data grid view in to list + + // Pass the device to the controller + string result1 = mWController.CreateDeviceOnClick(device, isEditing); + + //clear(); + + // Display the result + if (result1 != null) + { + // Display Dialog + MessageBox.Show(result1, "Automation Component Saved", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + + } + catch (Exception) + { + return; + } + } + + private void saveeToolStripMenuItem_Click(object sender, EventArgs e) + { + if (vendorNameTextBox.Text == "" && deviceNameTextBox.Text == "") + { + MessageBox.Show("Enter Vendor Name and Device Name before saving an Automation Component", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + else if (vendorNameTextBox.Text == "") + { + MessageBox.Show("Error no vendor name set!", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + else if (deviceNameTextBox.Text == "") + { + MessageBox.Show("Error no device name set!", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + var attributeName = item.AttributePath.ToString(); + + if (attributeName.Equals("IdentificationData.Manufacturer") || attributeName.Equals("IdentificationData.DeviceClass") || attributeName.Equals("IdentificationData.Model") || attributeName.Equals("IdentificationData.ProductCode")) + { + if (item.Value == null) + { + MessageBox.Show("Error no " + attributeName.Split('.')[1] + " set!", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + } + else if (attributeName.Equals("IdentificationData.ManufacturerURI")) + { + if (item.Value == null) + { + MessageBox.Show("Error no " + attributeName.Split('.')[1] + " set!", "Missing Fields", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + else + { + if (!item.Value.StartsWith("https://") && !item.Value.StartsWith("http://") && !item.Value.StartsWith("www.") && !item.Value.StartsWith("WWW.") && !item.Value.StartsWith("/")) + { + MessageBox.Show("Error " + attributeName.Split('.')[1] + " is not valid!", "URI not valid!", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + } + } + } + } + } + + device.vendorName = vendorNameTextBox.Text; + + device.deviceName = deviceNameTextBox.Text; + + + device.dataGridAttachablesParametrsList = new List(); + if (attachablesInfoDataGridView != null) + { + int i = 0; + int j = attachablesInfoDataGridView.Rows.Count - 1; + if (i <= 0) + { + while (i < j) + { + + AttachablesDataGridViewParameters parametersFromAttachablesDataGrid = new AttachablesDataGridViewParameters(); + + try + { + parametersFromAttachablesDataGrid.ElementName = Convert.ToString(attachablesInfoDataGridView.Rows[i].Cells[0].Value); + parametersFromAttachablesDataGrid.FilePath = Convert.ToString(attachablesInfoDataGridView.Rows[i].Cells[1].Value); + parametersFromAttachablesDataGrid.AddToFile = Convert.ToString(attachablesInfoDataGridView.Rows[i].Cells[2].Value); + } + catch (Exception ex) { MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning); } + + device.dataGridAttachablesParametrsList.Add(parametersFromAttachablesDataGrid); + i++; + } + } + } + + try + { + SaveFileDialog saveFileDialog = new SaveFileDialog(); + + // saveFileDialog.Filter = "AML Files( *.amlx )| *.amlx;"; + saveFileDialog.FileName = vendorNameTextBox.Text + "-" + deviceNameTextBox.Text + "-V.1.0-" + DateTime.Now.Date.ToShortDateString(); + + if (saveFileDialog.ShowDialog() == DialogResult.OK) + { + + device.filepath = Path.GetDirectoryName(saveFileDialog.FileName); + device.environment = Path.GetDirectoryName(saveFileDialog.FileName); + //filePathLabel.Text = Path.GetDirectoryName(saveFileDialog.FileName); + device.fileName = saveFileDialog.FileName; + + + fileNameLabel.Text = ""; + // storing user defined values of Attachebles data grid view in to list + + // Pass the device to the controller + string result1 = mWController.CreateDeviceOnClick(device, isEditing); + + + + //clear(); + + // Display the result + if (result1 != null) + { + // Display error Dialog + MessageBox.Show(result1, "Automation Component Saved", MessageBoxButtons.OK, MessageBoxIcon.Information); + newToolStripMenuItem_Click(sender, e); + } + + device.DictionaryForInterfaceClassesInElectricalInterfaces = new Dictionary>>(); + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces = new Dictionary>>(); + + device.DictionaryForRoleClassofComponent = new Dictionary>>(); + device.DictionaryForExternalInterfacesUnderRoleClassofComponent = new Dictionary>>(); + // Assigning values and parameters in "Identification data grid" to properties given in class "DatatableParametersCarrier" in MWDevice + } + } + catch (Exception) + { + return; + } + } + + private void newToolStripMenuItem_Click(object sender, EventArgs e) + { + clear(); + + + loadStandardLibrary(); + checkForAutomtionComponent(); + + foreach (DataGridViewRow row in genericInformationDataGridView.Rows) + { + if (row.Cells[0].Value != null) + { + if (row.Cells[0].Value.ToString() == "1" && row.Cells[1].Value.ToString() == "AutomationComponent{Class: AutomationMLBaseRole}") + { + string SRCSerialNumber = row.Cells[0].Value.ToString(); + string SRC = row.Cells[1].Value.ToString(); + foreach (var pair in searchAMLLibraryFile.DictionaryForRoleClassInstanceAttributes) + { + if (pair.Key.ToString() == SRC) + { + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + SRCSerialNumber + ")" + SRC)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + SRCSerialNumber + ")" + SRC); + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + + TreeNode parentNode = genericInformationtreeView.Nodes.Add("(" + SRCSerialNumber + ")" + SRC, + "(" + SRCSerialNumber + ")" + SRC, 2); + autoloadGenericInformationtreeView(parentNode); + } + catch (Exception) + { + + throw; + } + } + } + } + } + } + } + + private void exitToolStripMenuItem_Click(object sender, EventArgs e) + { + { + Environment.Exit(0); + } + } + + private void aboutToolStripMenuItem_Click(object sender, EventArgs e) + { + About about = new About(); + about.ShowDialog(); + } + + private void manualToolStripMenuItem_Click(object sender, EventArgs e) + { + string search = "https://github.com/DekaAthlos/TINF19C-ModellingWizard/wiki/6.-User-Manual"; + System.Diagnostics.Process.Start(search); + } + + private void openToolStripMenuItem_Click(object sender, EventArgs e) + { + searchAMLComponentFile.DictionaryofElectricalConnectorType = new Dictionary>>(); + searchAMLComponentFile.DictioanryofElectricalConnectorPinType = new Dictionary>>(); + + searchAMLComponentFile.DictionaryofRolesforAutomationComponenet = new Dictionary>>(); + + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces = new Dictionary>>(); + device.DictionaryForExternalInterfacesUnderRoleClassofComponent = new Dictionary>>(); + device.DictionaryForInterfaceClassesInElectricalInterfaces = new Dictionary>>(); + device.DictionaryForRoleClassofComponent = new Dictionary>>(); + device.DictofElectricalInterfaceParameters = new Dictionary>(); + + CAEXDocument document = null; + OpenFileDialog open = new OpenFileDialog(); + open.Filter = "AML Files(*.aml; *.amlx;*.xml;*.AML )|*.aml; *.amlx;*.xml;*.AML;"; + + + if (open.ShowDialog() == DialogResult.OK) + { + if (open.FileName != null) + { + clear(); + device.filepath = Path.GetDirectoryName(open.FileName); + + //open and load interfaces from file + try + { + treeViewRoleClassLib.Nodes.Clear(); + treeViewInterfaceClassLib.Nodes.Clear(); + + string file = open.FileName; + FileInfo fileInfo = new FileInfo(file); + string objectName = fileInfo.Name; + string filetype = null; + if ((filetype = Convert.ToString(Path.GetExtension(open.FileName))) == ".amlx") + { + // Load the amlx container from the given filepath + AutomationMLContainer amlx = new AutomationMLContainer(file); + + // Get the root path -> main .aml file + IEnumerable rootParts = amlx.GetPartsByRelationShipType(AutomationMLContainer.RelationshipType.Root); + + // We expect the aml to only have one root part + if (rootParts.First() != null) + { + + PackagePart part = rootParts.First(); + + // load the aml file as an CAEX document + document = CAEXDocument.LoadFromStream(part.GetStream()); + + // Iterate over all SystemUnitClassLibs and SystemUnitClasses and scan if it matches our format + // since we expect only one device per aml(x) file, return after on is found + } + amlx.Close(); + } + + if ((filetype = Convert.ToString(Path.GetExtension(open.FileName))) == ".aml" || (filetype = Convert.ToString(Path.GetExtension(open.FileName))) == ".xml") + { + document = CAEXDocument.LoadFromFile(file); + } + + string referencedClassName = ""; + + foreach (var classLibType in document.CAEXFile.RoleClassLib) + { + + TreeNode libNode = treeViewRoleClassLib.Nodes.Add(classLibType.ToString(), classLibType.ToString(), 0); + + + foreach (var classType in classLibType.RoleClass) + { + TreeNode roleNode; + + if (classType.ReferencedClassName != "") + { + referencedClassName = classType.ReferencedClassName; + roleNode = libNode.Nodes.Add(classType.ToString(), classType.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 1); + + searchAMLLibraryFile.SearchForReferencedClassName(document, referencedClassName, classType); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassName(classType); + + } + else + { + roleNode = libNode.Nodes.Add(classType.ToString(), classType.ToString(), 1); + } + + + + if (classType.ExternalInterface.Exists) + { + foreach (var externalinterface in classType.ExternalInterface) + { + TreeNode externalinterfacenode; + + if (externalinterface.BaseClass != null) + { + referencedClassName = externalinterface.BaseClass.ToString(); + externalinterfacenode = roleNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + searchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(document, referencedClassName, classType, externalinterface); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + + + } + else + { + externalinterfacenode = roleNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString(), 2); + // searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + } + + + + searchAMLLibraryFile.PrintExternalInterfaceNodes(document, externalinterfacenode, externalinterface, classType); + } + + } + searchAMLLibraryFile.PrintNodesRecursiveInRoleClassLib(document, roleNode, classType, referencedClassName); + } + + } + + foreach (var classLibType in document.CAEXFile.InterfaceClassLib) + { + // searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classLibType.Name.ToString(), classLibType.ID.ToString()); + TreeNode libNode = treeViewInterfaceClassLib.Nodes.Add(classLibType.ToString(), classLibType.ToString(), 0); + + + + foreach (var classType in classLibType.InterfaceClass) + { + TreeNode interfaceclassNode; + if (classType.ReferencedClassName != "") + { + // searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString(), classType.ID.ToString()); + + referencedClassName = classType.ReferencedClassName; + interfaceclassNode = libNode.Nodes.Add(classType.ToString(), classType.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 1); + searchAMLLibraryFile.SearchForReferencedClassName(document, referencedClassName, classType); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassName(classType); + + } + else + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString(), classType.ID.ToString()); + + interfaceclassNode = libNode.Nodes.Add(classType.ToString(), classType.ToString(), 1); + } + + + + if (classType.ExternalInterface.Exists) + { + foreach (var externalinterface in classType.ExternalInterface) + { + TreeNode externalinterfacenode; + + if (externalinterface.BaseClass != null) + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString()+ externalinterface.ToString(), externalinterface.ID.ToString()); + + referencedClassName = externalinterface.BaseClass.ToString(); + externalinterfacenode = interfaceclassNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + + searchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(document, referencedClassName, classType, externalinterface); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + } + else + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString() + externalinterface.ToString(), externalinterface.ID.ToString()); + + externalinterfacenode = interfaceclassNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString(), 2); + } + + + searchAMLLibraryFile.PrintExternalInterfaceNodes(document, externalinterfacenode, externalinterface, classType); + } + } + searchAMLLibraryFile.PrintNodesRecursiveInInterfaceClassLib(document, interfaceclassNode, classType, referencedClassName); + } + + } + + + } + catch (Exception) + { + MessageBox.Show("Missing names of attributes or same attribute sequence is repeated in the given file", "Missing Names", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); + } + + + + //open and load data from file + try + { + string file = open.FileName; + FileInfo fileInfo = new FileInfo(file); + string objectName = fileInfo.Name; + + // DirectoryInfo directory = new DirectoryInfo(Path.GetDirectoryName(file)); + string tempDirectory = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName()); + Directory.CreateDirectory(tempDirectory); + + DirectoryInfo directory = new DirectoryInfo(tempDirectory); + // Load the amlx container from the given filepath + + AutomationMLContainer amlx = new AutomationMLContainer(file); + + amlx.ExtractAllFiles(tempDirectory); + + /*amlx.ExtractAllFiles(Path.GetDirectoryName(file)); + Get the root path -> main .aml file*/ + IEnumerable rootParts = amlx.GetPartsByRelationShipType(AutomationMLContainer.RelationshipType.Root); + + + // We expect the aml to only have one root part + if (rootParts.First() != null) + { + PackagePart part = rootParts.First(); + + // load the aml file as an CAEX document + document = CAEXDocument.LoadFromStream(part.GetStream()); + } + + fileNameLabel.Text = fileInfo.Name; + getAllInterfaces(treeViewInterfaceClassLib.Nodes); + + foreach (var classLibType in document.CAEXFile.SystemUnitClassLib) + { + foreach (var classType in classLibType.SystemUnitClass) + { + if (classType.SupportedRoleClass.Exists) + { + int i = 1; + + //Generic Data + foreach (var SRC in classType.SupportedRoleClass) + { + if (classType.Attribute.Exists) + { + foreach (var attribute in classType.Attribute) + { + searchForComponentNames(attribute); + if (attribute.Name == "Manufacturer") + { + if (attribute.Value != null) + { + vendorNameTextBox.Text = attribute.Value; + } + else + { + vendorNameTextBox.Text = "No Vendor Name Set"; + } + } + + if (attribute.Name == "Model") + { + if (attribute.Value != null) + { + deviceNameTextBox.Text = attribute.Value; + } + else + { + deviceNameTextBox.Text = "No Device Name Set"; + } + } + } + } + + searchAMLComponentFile.CheckForAttributesOfComponent(i, SRC, classType); + + int num = genericInformationDataGridView.Rows.Add(); + List listofSerialNumbers = new List(); + List listofFinalSerialNumber = new List(); + string number = ""; + int finalNumber = 0; + int ultimatenumber = 0; + if (genericInformationDataGridView.Rows.Count > 2) + { + foreach (DataGridViewRow row in genericInformationDataGridView.Rows) + { + if (row.Cells[0].Value == null) + { + number = "0"; + listofSerialNumbers.Add(number); + } + + if (row.Cells[0].Value != null) + { + number = row.Cells[0].Value.ToString(); + listofSerialNumbers.Add(number); + } + } + + foreach (string str in listofSerialNumbers) + { + finalNumber = Convert.ToInt32(str); + listofFinalSerialNumber.Add(finalNumber); + } + + ultimatenumber = listofFinalSerialNumber.Max(); + genericInformationDataGridView.Rows[num].Cells[0].Value = ++ultimatenumber; + } + else + { + genericInformationDataGridView.Rows[num].Cells[0].Value = 1; + } + + genericInformationDataGridView.Rows[num].Cells[1].Value = + "(" + i + ")" + SRC.RoleReference.ToString(); + genericInformationDataGridView.Rows[num].Cells[4].Value = true; + + genericInformationtreeView.Nodes.Clear(); + + TreeNode parentNode; + + var AutomationMLDataTables = new AutomationMLDataTables(); + genericInformationDataGridView.CurrentRow.Selected = true; + + if (genericInformationDataGridView.Rows[num].Cells[0].Value != null) + { + string SRCSerialNumber = genericInformationDataGridView.Rows[num].Cells[0].Value.ToString(); + + if (Convert.ToBoolean(genericInformationDataGridView.Rows[num].Cells[4].Value) == true) + { + genericparametersAttrDataGridView.Rows.Clear(); + string SRCName = genericInformationDataGridView.Rows[num].Cells[1].Value.ToString(); + foreach (var pair in searchAMLComponentFile.DictionaryofRolesforAutomationComponenet) + { + if (pair.Key.ToString() == SRCName) + { + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + SRCSerialNumber + ")" + SRCName)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + SRCSerialNumber + ")" + SRCName); + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRCName, pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRCName, pair.Value); + } + } + catch (Exception) + { + throw; + } + } + } + + parentNode = genericInformationtreeView.Nodes.Add("(" + SRCSerialNumber + ")" + SRCName, "(" + SRCSerialNumber + ")" + SRCName, 2); + + autoloadGenericInformationtreeView(parentNode); + + } + } + + vendorNameTextBox_Leave(new object(), new EventArgs()); + deviceNameTextBox_Leave(new object(), new EventArgs()); + + i++; + } + + //Internal elements --> Interfaces and Attachments + foreach (var internalElements in classType.InternalElement) + { + //Interface Code + if (internalElements.Name == "Interfaces" || internalElements.Name == "ElectricalInterfaces") + { + int counter = 1; + foreach (var subinternalElements in internalElements.InternalElement) + { + foreach (var electricalConnectorType in subinternalElements + .ExternalInterface) + { + + if (electricalConnectorType != null) + { + + searchAMLComponentFile.CheckForAttributesOfExternalIterface(counter, + electricalConnectorType); + + int num = electricalInterfacesCollectionDataGridView.Rows.Add(); + List listofSerialNumbers = new List(); + List listofFinalSerialNumber = new List(); + string number = ""; + int finalNumber = 0; + int ultimatenumber = 0; + if (electricalInterfacesCollectionDataGridView.Rows.Count > 2) + { + foreach (DataGridViewRow row in + electricalInterfacesCollectionDataGridView.Rows) + { + if (row.Cells[0].Value == null) + { + number = "0"; + listofSerialNumbers.Add(number); + } + + if (row.Cells[0].Value != null) + { + number = row.Cells[0].Value.ToString(); + listofSerialNumbers.Add(number); + } + } + + foreach (string str in listofSerialNumbers) + { + finalNumber = Convert.ToInt32(str); + listofFinalSerialNumber.Add(finalNumber); + } + + ultimatenumber = listofFinalSerialNumber.Max(); + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0] + .Value = ++ultimatenumber; + } + else + { + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0] + .Value = 1; + } + + electricalInterfacesCollectionDataGridView.Rows[num].Cells[1] + .Value = "(" + counter + ")" + + electricalConnectorType.Name.ToString() + + "{" + "Class:" + " " + + electricalConnectorType.BaseClass + "}"; + electricalInterfacesCollectionDataGridView.Rows[num].Cells[4] + .Value = true; + + + foreach (var electricalConnectorPins in electricalConnectorType + .ExternalInterface) + { + if (electricalConnectorPins != null) + { + searchAMLComponentFile + .CheckForAttributesOfEclectricalConnectorPins(counter, + electricalConnectorPins, electricalConnectorType); + } + } + + + treeViewElectricalInterfaces.Nodes.Clear(); + + TreeNode parentNode; + TreeNode childNodes; + + + + if (electricalInterfacesCollectionDataGridView.Rows[num].Cells[0] + .Value != null) + { + string interfaceSerialNumber = + electricalInterfacesCollectionDataGridView.Rows[num] + .Cells[0].Value.ToString(); + + + if (Convert.ToBoolean(electricalInterfacesCollectionDataGridView + .Rows[num].Cells[4].Value) == true) + { + elecInterAttDataGridView.Rows.Clear(); + string interfaceClass = + electricalInterfacesCollectionDataGridView.Rows[num] + .Cells[1].Value.ToString(); + foreach (var pair in searchAMLComponentFile + .DictionaryofElectricalConnectorType) + { + if (pair.Key.ToString() == interfaceClass) + { + try + { + if (device + .DictionaryForInterfaceClassesInElectricalInterfaces + .ContainsKey("(" + interfaceSerialNumber + + ")" + interfaceClass)) + { + device + .DictionaryForInterfaceClassesInElectricalInterfaces + .Remove("(" + interfaceSerialNumber + + ")" + interfaceClass); + device + .DictionaryForInterfaceClassesInElectricalInterfaces + .Add( + "(" + interfaceSerialNumber + ")" + + interfaceClass, pair.Value); + } + else + { + device + .DictionaryForInterfaceClassesInElectricalInterfaces + .Add( + "(" + interfaceSerialNumber + ")" + + interfaceClass, pair.Value); + } + } + catch (Exception) + { + throw; + } + } + } + + parentNode = + treeViewElectricalInterfaces.Nodes.Add( + "(" + interfaceSerialNumber + ")" + interfaceClass, + "(" + interfaceSerialNumber + ")" + interfaceClass, + 2); + + foreach (var pair in searchAMLComponentFile + .DictioanryofElectricalConnectorPinType) + { + if (pair.Key.Contains(interfaceClass)) + { + try + { + if (device + .DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .ContainsKey("(" + interfaceSerialNumber + + ")" + pair.Key.ToString())) + { + device + .DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .Remove("(" + interfaceSerialNumber + + ")" + pair.Key.ToString()); + device + .DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .Add( + "(" + interfaceSerialNumber + ")" + + pair.Key.ToString(), pair.Value); + } + else + { + device + .DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces + .Add( + "(" + interfaceSerialNumber + ")" + + pair.Key.ToString(), pair.Value); + } + } + catch (Exception) + { + + throw; + } + + + childNodes = parentNode.Nodes.Add( + pair.Key.Replace(interfaceClass, "").ToString() + , pair.Key.Replace(interfaceClass, "").ToString(), + 2); + } + } + } + } + } + } + + counter++; + } + } + + //Try Attachment, sonst Fehler + else + { + //Attachment Code + if (internalElements.Name != "Interfaces" && internalElements.Name != "ElectricalInterfaces" && internalElements.Name != "DeviceIdentification") + { + int num = attachablesInfoDataGridView.Rows.Add(); + attachablesInfoDataGridView.Rows[num].Cells[0].Value = internalElements.Name; + foreach (var externalInterface in internalElements.ExternalInterface) + { + + foreach (var attribute in externalInterface.Attribute) + { + if (attribute.Value.Contains("https://") || + attribute.Value.Contains("http://") || + attribute.Value.Contains("www") || attribute.Value.Contains("WWW")) + { + attachablesInfoDataGridView.Rows[num].Cells[1].Value = + attribute.Value; + attachablesInfoDataGridView.Rows[num].Cells[2].Value = true; + } + + foreach (FileInfo fileInfo1 in directory.GetFiles()) + { + string name = attribute.Value.ToString(); + if (name.Contains("%20")) + { + name = Uri.UnescapeDataString(name); + } + + if (name.Contains("%28") || name.Contains("%29")) + { + name = Uri.UnescapeDataString(name); + } + + if (name.Contains(fileInfo1.ToString())) + { + attachablesInfoDataGridView.Rows[num].Cells[1].Value = + fileInfo1.FullName; + attachablesInfoDataGridView.Rows[num].Cells[2].Value = true; + } + } + } + } + } + + //Fehlermeldung + else + { + MessageBox.Show("An error occurred while loading internal elements: " + internalElements.Name, "Error loading element", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); + } + } + } + } + else + { + foreach (var classTypeTwo in classType.SystemUnitClass) + { + int i = 1; + + //Generic Data + foreach (var SRC in classTypeTwo.SupportedRoleClass) + { + if (classTypeTwo.Attribute.Exists) + { + foreach (var attribute in classTypeTwo.Attribute) + { + searchForComponentNames(attribute); + if (attribute.Name == "Manufacturer") + { + if (attribute.Value != null) + { + vendorNameTextBox.Text = attribute.Value; + } + else + { + vendorNameTextBox.Text = "No Vendor Name Set"; + } + } + + if (attribute.Name == "Model") + { + if (attribute.Value != null) + { + deviceNameTextBox.Text = attribute.Value; + } + else + { + deviceNameTextBox.Text = "No Device Name Set"; + } + } + } + } + + searchAMLComponentFile.CheckForAttributesOfComponent(i, SRC, classTypeTwo); + + int num = genericInformationDataGridView.Rows.Add(); + List listofSerialNumbers = new List(); + List listofFinalSerialNumber = new List(); + string number = ""; + int finalNumber = 0; + int ultimatenumber = 0; + if (genericInformationDataGridView.Rows.Count > 2) + { + foreach (DataGridViewRow row in genericInformationDataGridView.Rows) + { + if (row.Cells[0].Value == null) + { + number = "0"; + listofSerialNumbers.Add(number); + } + + if (row.Cells[0].Value != null) + { + number = row.Cells[0].Value.ToString(); + listofSerialNumbers.Add(number); + } + } + + foreach (string str in listofSerialNumbers) + { + finalNumber = Convert.ToInt32(str); + listofFinalSerialNumber.Add(finalNumber); + } + + ultimatenumber = listofFinalSerialNumber.Max(); + genericInformationDataGridView.Rows[num].Cells[0].Value = + ++ultimatenumber; + } + else + { + genericInformationDataGridView.Rows[num].Cells[0].Value = 1; + } + + genericInformationDataGridView.Rows[num].Cells[1].Value = + "(" + i + ")" + SRC.RoleReference.ToString(); + genericInformationDataGridView.Rows[num].Cells[4].Value = true; + + genericInformationtreeView.Nodes.Clear(); + + TreeNode parentNode; + + var AutomationMLDataTables = new AutomationMLDataTables(); + genericInformationDataGridView.CurrentRow.Selected = true; + + if (genericInformationDataGridView.Rows[num].Cells[0].Value != null) + { + string SRCSerialNumber = genericInformationDataGridView.Rows[num] + .Cells[0].Value.ToString(); + + if (Convert.ToBoolean(genericInformationDataGridView.Rows[num].Cells[4] + .Value) == true) + { + genericparametersAttrDataGridView.Rows.Clear(); + string SRCName = genericInformationDataGridView.Rows[num].Cells[1] + .Value.ToString(); + foreach (var pair in searchAMLComponentFile + .DictionaryofRolesforAutomationComponenet) + { + if (pair.Key.ToString() == SRCName) + { + try + { + if (device.DictionaryForRoleClassofComponent + .ContainsKey("(" + SRCSerialNumber + ")" + SRCName)) + { + device.DictionaryForRoleClassofComponent.Remove( + "(" + SRCSerialNumber + ")" + SRCName); + device.DictionaryForRoleClassofComponent.Add( + "(" + SRCSerialNumber + ")" + SRCName, + pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add( + "(" + SRCSerialNumber + ")" + SRCName, + pair.Value); + } + } + catch (Exception) + { + throw; + } + } + } + + parentNode = genericInformationtreeView.Nodes.Add( + "(" + SRCSerialNumber + ")" + SRCName, + "(" + SRCSerialNumber + ")" + SRCName, 2); + + autoloadGenericInformationtreeView(parentNode); + + } + } + + vendorNameTextBox_Leave(new object(), new EventArgs()); + deviceNameTextBox_Leave(new object(), new EventArgs()); + + i++; + } + + //Internal elements --> Interfaces and Attachments + foreach (var internalElements in classTypeTwo.InternalElement) + { + if (internalElements.IsDocumentElement()) + { + foreach (var intface in internalElements.ExternalInterface) + { + //Code for Interfaces + if (AllInterfaces.Contains(intface.BaseClass.Name) && intface.BaseClass.Name != "ExternalDataConnector" && intface.BaseClass.Name != "ExternalDataReference") + { + int counter = 1; + + if (intface != null) + { + searchAMLComponentFile.CheckForAttributesOfExternalIterface(counter, intface); + + int num = electricalInterfacesCollectionDataGridView.Rows.Add(); + List listofSerialNumbers = new List(); + List listofFinalSerialNumber = new List(); + string number = ""; + int finalNumber = 0; + int ultimatenumber = 0; + + if (electricalInterfacesCollectionDataGridView.Rows.Count > 2) + { + foreach (DataGridViewRow row in electricalInterfacesCollectionDataGridView.Rows) + { + if (row.Cells[0].Value == null) + { + number = "0"; + listofSerialNumbers.Add(number); + } + + if (row.Cells[0].Value != null) + { + number = row.Cells[0].Value.ToString(); + listofSerialNumbers.Add(number); + } + } + + foreach (string str in listofSerialNumbers) + { + finalNumber = Convert.ToInt32(str); + listofFinalSerialNumber.Add(finalNumber); + } + + ultimatenumber = listofFinalSerialNumber.Max(); + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value = ++ultimatenumber; + } + else + { + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value = 1; + } + + electricalInterfacesCollectionDataGridView.Rows[num].Cells[1].Value = "(" + counter + ")" + intface.Name.ToString() + "{" + "Class:" + " " + intface.BaseClass + "}"; + electricalInterfacesCollectionDataGridView.Rows[num].Cells[4].Value = true; + + foreach (var electricalConnectorPins in intface.ExternalInterface) + { + if (electricalConnectorPins != null) + { + searchAMLComponentFile.CheckForAttributesOfEclectricalConnectorPins(counter, electricalConnectorPins, intface); + } + } + + treeViewElectricalInterfaces.Nodes.Clear(); + + TreeNode parentNode; + TreeNode childNodes; + + + if (electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value != null) + { + string interfaceSerialNumber = electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value.ToString(); + + if (Convert.ToBoolean(electricalInterfacesCollectionDataGridView.Rows[num].Cells[4].Value) == true) + { + elecInterAttDataGridView.Rows.Clear(); + string interfaceClass = electricalInterfacesCollectionDataGridView.Rows[num].Cells[1].Value.ToString(); + + foreach (var pair in searchAMLComponentFile.DictionaryofElectricalConnectorType) + { + if (pair.Key.ToString() == interfaceClass) + { + try + { + if (device.DictionaryForInterfaceClassesInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + interfaceClass)) + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + interfaceClass); + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + else + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + } + catch (Exception) + { + throw; + } + } + } + + parentNode = treeViewElectricalInterfaces.Nodes.Add("(" + interfaceSerialNumber + ")" + interfaceClass, "(" + interfaceSerialNumber + ")" + interfaceClass, 2); + + foreach (var pair in searchAMLComponentFile.DictioanryofElectricalConnectorPinType) + { + if (pair.Key.Contains(interfaceClass)) + { + try + { + if (device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + pair.Key.ToString())) + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + pair.Key.ToString()); + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + else + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + } + catch (Exception) + { + + throw; + } + + + childNodes = parentNode.Nodes.Add(pair.Key.Replace(interfaceClass, "").ToString(), pair.Key.Replace(interfaceClass, "").ToString(), 2); + } + } + } + } + } + counter++; + } + + //Try Attachment, sonst Fehler + else + { + //Code for Attachables + if (internalElements.Name != "Interfaces" && internalElements.Name != "ElectricalInterfaces" && internalElements.Name != "DeviceIdentification") + { + int num = attachablesInfoDataGridView.Rows.Add(); + attachablesInfoDataGridView.Rows[num].Cells[0].Value = + internalElements.Name; + foreach (var externalInterface in internalElements.ExternalInterface) + { + foreach (var attribute in externalInterface.Attribute) + { + if (attribute.Value.Contains("https://") || + attribute.Value.Contains("http://") || + attribute.Value.Contains("www") || + attribute.Value.Contains("WWW")) + { + attachablesInfoDataGridView.Rows[num].Cells[1] + .Value = + attribute.Value; + attachablesInfoDataGridView.Rows[num].Cells[2] + .Value = true; + } + + foreach (FileInfo fileInfo1 in directory.GetFiles()) + { + string name = attribute.Value.ToString(); + if (name.Contains("%20")) + { + //name.Replace("%20", " "); + name = Uri.UnescapeDataString(name); + } + + if (name.Contains("%28") || name.Contains("%29")) + { + name = Uri.UnescapeDataString(name); + } + + if (name.Contains(fileInfo1.ToString())) + { + attachablesInfoDataGridView.Rows[num].Cells[1] + .Value = + fileInfo1.FullName; + attachablesInfoDataGridView.Rows[num].Cells[2] + .Value = true; + } + } + } + } + } + + //Fehlermeldung + else + { + MessageBox.Show("An error occurred while loading internal elements: " + internalElements.Name, "Error loading element", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); + } + } + } + } + else + { + foreach (var internalElementsTwo in internalElements.InternalElement) + { + foreach (var intface in internalElementsTwo.ExternalInterface) + { + //Code for Interfaces + if (AllInterfaces.Contains(intface.BaseClass.Name) && intface.BaseClass.Name != "ExternalDataConnector" && intface.BaseClass.Name != "ExternalDataReference") + { + int counter = 1; + + if (intface != null) + { + searchAMLComponentFile.CheckForAttributesOfExternalIterface(counter, intface); + + int num = electricalInterfacesCollectionDataGridView.Rows.Add(); + List listofSerialNumbers = new List(); + List listofFinalSerialNumber = new List(); + string number = ""; + int finalNumber = 0; + int ultimatenumber = 0; + + if (electricalInterfacesCollectionDataGridView.Rows.Count > 2) + { + foreach (DataGridViewRow row in electricalInterfacesCollectionDataGridView.Rows) + { + if (row.Cells[0].Value == null) + { + number = "0"; + listofSerialNumbers.Add(number); + } + + if (row.Cells[0].Value != null) + { + number = row.Cells[0].Value.ToString(); + listofSerialNumbers.Add(number); + } + } + + foreach (string str in listofSerialNumbers) + { + finalNumber = Convert.ToInt32(str); + listofFinalSerialNumber.Add(finalNumber); + } + + ultimatenumber = listofFinalSerialNumber.Max(); + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value = ++ultimatenumber; + } + else + { + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value = 1; + } + + electricalInterfacesCollectionDataGridView.Rows[num].Cells[1].Value = "(" + counter + ")" + intface.Name.ToString() + "{" + "Class:" + " " + intface.BaseClass + "}"; + electricalInterfacesCollectionDataGridView.Rows[num].Cells[4].Value = true; + + foreach (var electricalConnectorPins in intface.ExternalInterface) + { + if (electricalConnectorPins != null) + { + searchAMLComponentFile.CheckForAttributesOfEclectricalConnectorPins(counter, electricalConnectorPins, intface); + } + } + + treeViewElectricalInterfaces.Nodes.Clear(); + + + TreeNode parentNode; + TreeNode childNodes; + + + if (electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value != null) + { + string interfaceSerialNumber = electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value.ToString(); + + if (Convert.ToBoolean(electricalInterfacesCollectionDataGridView.Rows[num].Cells[4].Value) == true) + { + elecInterAttDataGridView.Rows.Clear(); + string interfaceClass = electricalInterfacesCollectionDataGridView.Rows[num].Cells[1].Value.ToString(); + + foreach (var pair in searchAMLComponentFile.DictionaryofElectricalConnectorType) + { + if (pair.Key.ToString() == interfaceClass) + { + try + { + if (device.DictionaryForInterfaceClassesInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + interfaceClass)) + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + interfaceClass); + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + else + { + device.DictionaryForInterfaceClassesInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + interfaceClass, pair.Value); + } + } + catch (Exception) + { + throw; + } + } + } + + parentNode = treeViewElectricalInterfaces.Nodes.Add("(" + interfaceSerialNumber + ")" + interfaceClass, "(" + interfaceSerialNumber + ")" + interfaceClass, 2); + + foreach (var pair in searchAMLComponentFile.DictioanryofElectricalConnectorPinType) + { + if (pair.Key.Contains(interfaceClass)) + { + try + { + if (device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.ContainsKey("(" + interfaceSerialNumber + ")" + pair.Key.ToString())) + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Remove("(" + interfaceSerialNumber + ")" + pair.Key.ToString()); + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + else + { + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces.Add("(" + interfaceSerialNumber + ")" + pair.Key.ToString(), pair.Value); + } + } + catch (Exception) + { + + throw; + } + + + childNodes = parentNode.Nodes.Add(pair.Key.Replace(interfaceClass, "").ToString(), pair.Key.Replace(interfaceClass, "").ToString(), 2); + } + } + } + } + } + + counter++; + } + + //Try Attachment, sonst Fehler + else + { + //Code for Attachables + if (internalElementsTwo.Name != "Interfaces" && internalElementsTwo.Name != "ElectricalInterfaces" && internalElementsTwo.Name != "DeviceIdentification") + { + int num = attachablesInfoDataGridView.Rows.Add(); + attachablesInfoDataGridView.Rows[num].Cells[0].Value = + internalElementsTwo.Name; + foreach (var externalInterface in internalElementsTwo.ExternalInterface) + { + foreach (var attribute in externalInterface.Attribute) + { + if (attribute.Value.Contains("https://") || + attribute.Value.Contains("http://") || + attribute.Value.Contains("www") || + attribute.Value.Contains("WWW")) + { + attachablesInfoDataGridView.Rows[num].Cells[1] + .Value = + attribute.Value; + attachablesInfoDataGridView.Rows[num].Cells[2] + .Value = true; + } + + foreach (FileInfo fileInfo1 in directory.GetFiles()) + { + string name = attribute.Value.ToString(); + if (name.Contains("%20")) + { + //name.Replace("%20", " "); + name = Uri.UnescapeDataString(name); + } + + if (name.Contains("%28") || name.Contains("%29")) + { + name = Uri.UnescapeDataString(name); + } + + if (name.Contains(fileInfo1.ToString())) + { + attachablesInfoDataGridView.Rows[num].Cells[1] + .Value = + fileInfo1.FullName; + attachablesInfoDataGridView.Rows[num].Cells[2] + .Value = true; + } + } + } + } + } + + //Fehlermeldung + else + { + MessageBox.Show("An error occurred while loading internal elements: " + internalElements.Name, "Error loading element", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); + } + } + } + } + } + } + } + } + } + } + amlx.Close(); + } + catch (Exception ex) + { + open.Dispose(); + newToolStripMenuItem_Click(sender, e); + MessageBox.Show("An error occurred while open file." + "\n" + "The AML file structure is not allowed. Check if there are two different aml files and merge them. Another error could be the structure of your AML file.", "Error opening file", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); + } + } + } + } + + private void loadLibraryFile_Click(object sender, EventArgs e) + { + searchAMLLibraryFile.dictionaryofRoleClassattributes = new Dictionary>(); + + searchAMLLibraryFile.DictionaryForInterfaceClassInstancesAttributes = new Dictionary>>(); + searchAMLLibraryFile.DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib = new Dictionary>>(); + + searchAMLLibraryFile.DictionaryForRoleClassInstanceAttributes = new Dictionary>>(); + searchAMLLibraryFile.DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib = new Dictionary>>(); + + searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes = new Dictionary(); + + CAEXDocument document = null; + OpenFileDialog open = new OpenFileDialog(); + open.Filter = "AML Files(*.aml; *.amlx;*.xml;*.AML )|*.aml; *.amlx;*.xml;*.AML;"; + + if (open.ShowDialog() == DialogResult.OK) + { + try + { + treeViewRoleClassLib.Nodes.Clear(); + treeViewInterfaceClassLib.Nodes.Clear(); + + string file = open.FileName; + FileInfo fileInfo = new FileInfo(file); + string objectName = fileInfo.Name; + string filetype = null; + if ((filetype = Convert.ToString(Path.GetExtension(open.FileName))) == ".amlx") + { + // Load the amlx container from the given filepath + AutomationMLContainer amlx = new AutomationMLContainer(file); + + // Get the root path -> main .aml file + IEnumerable rootParts = amlx.GetPartsByRelationShipType(AutomationMLContainer.RelationshipType.Root); + + // We expect the aml to only have one root part + if (rootParts.First() != null) + { + + PackagePart part = rootParts.First(); + + // load the aml file as an CAEX document + document = CAEXDocument.LoadFromStream(part.GetStream()); + + // Iterate over all SystemUnitClassLibs and SystemUnitClasses and scan if it matches our format + // since we expect only one device per aml(x) file, return after on is found + } + amlx.Close(); + } + + if ((filetype = Convert.ToString(Path.GetExtension(open.FileName))) == ".aml" || (filetype = Convert.ToString(Path.GetExtension(open.FileName))) == ".xml") + { + document = CAEXDocument.LoadFromFile(file); + } + + string referencedClassName = ""; + + foreach (var classLibType in document.CAEXFile.RoleClassLib) + { + + TreeNode libNode = treeViewRoleClassLib.Nodes.Add(classLibType.ToString(), classLibType.ToString(), 0); + + + foreach (var classType in classLibType.RoleClass) + { + TreeNode roleNode; + + if (classType.ReferencedClassName != "") + { + referencedClassName = classType.ReferencedClassName; + roleNode = libNode.Nodes.Add(classType.ToString(), classType.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 1); + + searchAMLLibraryFile.SearchForReferencedClassName(document, referencedClassName, classType); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassName(classType); + + } + else + { + roleNode = libNode.Nodes.Add(classType.ToString(), classType.ToString(), 1); + } + + + + if (classType.ExternalInterface.Exists) + { + foreach (var externalinterface in classType.ExternalInterface) + { + TreeNode externalinterfacenode; + + if (externalinterface.BaseClass != null) + { + referencedClassName = externalinterface.BaseClass.ToString(); + externalinterfacenode = roleNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + searchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(document, referencedClassName, classType, externalinterface); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + + + } + else + { + externalinterfacenode = roleNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString(), 2); + // searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + } + + + + searchAMLLibraryFile.PrintExternalInterfaceNodes(document, externalinterfacenode, externalinterface, classType); + } + + } + searchAMLLibraryFile.PrintNodesRecursiveInRoleClassLib(document, roleNode, classType, referencedClassName); + } + + } + + foreach (var classLibType in document.CAEXFile.InterfaceClassLib) + { + // searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classLibType.Name.ToString(), classLibType.ID.ToString()); + TreeNode libNode = treeViewInterfaceClassLib.Nodes.Add(classLibType.ToString(), classLibType.ToString(), 0); + + + + foreach (var classType in classLibType.InterfaceClass) + { + TreeNode interfaceclassNode; + if (classType.ReferencedClassName != "") + { + // searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString(), classType.ID.ToString()); + + referencedClassName = classType.ReferencedClassName; + interfaceclassNode = libNode.Nodes.Add(classType.ToString(), classType.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 1); + searchAMLLibraryFile.SearchForReferencedClassName(document, referencedClassName, classType); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassName(classType); + + } + else + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString(), classType.ID.ToString()); + + interfaceclassNode = libNode.Nodes.Add(classType.ToString(), classType.ToString(), 1); + } + + + + if (classType.ExternalInterface.Exists) + { + foreach (var externalinterface in classType.ExternalInterface) + { + TreeNode externalinterfacenode; + + if (externalinterface.BaseClass != null) + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString()+ externalinterface.ToString(), externalinterface.ID.ToString()); + + referencedClassName = externalinterface.BaseClass.ToString(); + externalinterfacenode = interfaceclassNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + + searchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(document, referencedClassName, classType, externalinterface); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + } + else + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString() + externalinterface.ToString(), externalinterface.ID.ToString()); + + externalinterfacenode = interfaceclassNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString(), 2); + } + + + searchAMLLibraryFile.PrintExternalInterfaceNodes(document, externalinterfacenode, externalinterface, classType); + } + } + searchAMLLibraryFile.PrintNodesRecursiveInInterfaceClassLib(document, interfaceclassNode, classType, referencedClassName); + } + + } + + + } + catch (Exception) + { + MessageBox.Show("Missing names of attributes or same attribute sequence is repeated in the given file", "Missing Names", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); + } + } + } + + private void asInterfaceToolStripMenuItem_Click(object sender, EventArgs e) + { + + try + { + TreeNode sourceNode = treeViewInterfaceClassLib.SelectedNode; + + int num = electricalInterfacesCollectionDataGridView.Rows.Add(); + List listofSerialNumbers = new List(); + List listofFinalSerialNumber = new List(); + string number = ""; + int finalNumber = 0; + int ultimatenumber = 0; + if (electricalInterfacesCollectionDataGridView.Rows.Count > 2) + { + foreach (DataGridViewRow row in electricalInterfacesCollectionDataGridView.Rows) + { + if (row.Cells[0].Value == null) + { + number = "0"; + listofSerialNumbers.Add(number); + } + if (row.Cells[0].Value != null) + { + number = row.Cells[0].Value.ToString(); + listofSerialNumbers.Add(number); + } + } + foreach (string str in listofSerialNumbers) + { + finalNumber = Convert.ToInt32(str); + listofFinalSerialNumber.Add(finalNumber); + } + ultimatenumber = listofFinalSerialNumber.Max(); + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value = ++ultimatenumber; + } + else + { + electricalInterfacesCollectionDataGridView.Rows[num].Cells[0].Value = 1; + } + + electricalInterfacesCollectionDataGridView.Rows[num].Cells[1].Value = sourceNode.Text; + + + } + catch (Exception) + { + MessageBox.Show("A whole Interface Library cannot be added ", "Select Parent Node to add Inetrface", MessageBoxButtons.OKCancel, MessageBoxIcon.Information); + } + } + + + + + + private void dataTabControl_Click(object sender, EventArgs e) + { + + } + + private void dataTabControl_DrawItem(object sender, DrawItemEventArgs e) + { + try + { + //Size, Name, Style change... + Font Font; + + //For forground color + Brush foreBrush; + + //Aktueller Focus + if (e.Index == this.dataTabControl.SelectedIndex) + { + //This line of code will help you to change the appearance like size,name,style. + Font = e.Font; + + //backBrush = new System.Drawing.SolidBrush(Color.Black); + foreBrush = Brushes.Black; + treeViewInterfaceClassLib.Visible = false; + treeViewRoleClassLib.Visible = false; + if (e.Index == 0) + { + //treeViewInterfaceClassLib.Nodes.Clear(); + treeViewRoleClassLib.Visible = true; + treeViewInterfaceClassLib.Visible = false; + } + else if (e.Index == 1) + { + //treeViewRoleClassLib.Nodes.Clear(); + treeViewInterfaceClassLib.Visible = true; + treeViewRoleClassLib.Visible = false; + } + } + else + { + Font = e.Font; + //backBrush = new SolidBrush(e.BackColor); + foreBrush = new SolidBrush(e.ForeColor); + } + + //To set the alignment of the caption. + string sTabName = this.dataTabControl.TabPages[e.Index].Text; + StringFormat sf = new StringFormat(); + sf.Alignment = StringAlignment.Center; + + //Thsi will help you to fill the interior portion of + //selected tabpage. + /*e.Graphics.FillRectangle(new SolidBrush(Color.LightBlue), e.Bounds);*/ + Rectangle rect = e.Bounds; + rect = new Rectangle(rect.X, rect.Y + 3, rect.Width, rect.Height - 3); + e.Graphics.DrawString(sTabName, Font, foreBrush, rect, sf); + + sf.Dispose(); + } + catch (Exception Ex) + { + MessageBox.Show(Ex.Message.ToString(), "Error Occured", MessageBoxButtons.OK, MessageBoxIcon.Information); + + } + } + + + + + private void automationMLRoleCmbBx_SelectedIndexChanged(object sender, EventArgs e) + { + + if (automationMLRoleCmbBx.Text != null && attachablesInfoDataGridView.Rows.Count > 0) + { + + string searchValue = automationMLRoleCmbBx.Text; + string mid = "_"; + + int result = 1; + string end = Convert.ToString(result); + string final = searchValue + mid + end; + + List listofstrings = new List(); + List listofintegers = new List(); + + int i; + int result3; + string ultrafinal = String.Empty; + attachablesInfoDataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect; + + foreach (DataGridViewRow row in attachablesInfoDataGridView.Rows) + { + try + { + if (row.Cells[0].Value == null) + { + AMLfileLabel.Text = automationMLRoleCmbBx.Text; + AMLURLLabel.Text = automationMLRoleCmbBx.Text; + } + } + catch (Exception) + { + } + + } + + foreach (DataGridViewRow eachrow in attachablesInfoDataGridView.Rows) + { + try + { + if (eachrow.Cells[0].Value.Equals(searchValue)) + { + + foreach (DataGridViewRow eachrow3 in attachablesInfoDataGridView.Rows) + { + try + { + if (eachrow3.Cells[0].Value != null && + eachrow3.Cells[0].Value.ToString().Contains(searchValue)) + { + string eachstringindataGridView = eachrow3.Cells[0].Value.ToString(); + listofstrings.Add(eachstringindataGridView); + } + + } + catch (Exception) + { + throw; + } + } + + foreach (string eachstring in listofstrings) + { + bool success = + int.TryParse( + new string(eachstring.SkipWhile(x => !char.IsDigit(x)) + .TakeWhile(x => char.IsDigit(x)).ToArray()), out i); + if (success == false) + { + i = 0; + } + + listofintegers.Add(i); + } + + result3 = listofintegers.Max(); + + ultrafinal = searchValue + mid + Convert.ToString(++result3); + + AMLfileLabel.Text = ultrafinal; + AMLURLLabel.Text = ultrafinal; + + } + + } + catch (Exception) + { + } + } + } + } + + private void automationMLRoleCmbBx_Click(object sender, EventArgs e) + { + if (automationMLRoleCmbBx.SelectedItem != null) + { + } + } + + + + + + private void addRole_Click(object sender, EventArgs e) + { + + if (automationMLRoleCmbBx.Text != null && attachablesInfoDataGridView.Rows.Count > 0) + { + + string searchValue = automationMLRoleCmbBx.Text; + string mid = "_"; + + int result = 1; + string end = Convert.ToString(result); + string final = searchValue + mid + end; + + List listofstrings = new List(); + List listofintegers = new List(); + + int i; + int result3; + string ultrafinal = String.Empty; + attachablesInfoDataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect; + + foreach (DataGridViewRow row in attachablesInfoDataGridView.Rows) + { + try + { + if (row.Cells[0].Value == null) + { + AMLfileLabel.Text = automationMLRoleCmbBx.Text; + AMLURLLabel.Text = automationMLRoleCmbBx.Text; + } + } + catch (Exception) { } + + } + foreach (DataGridViewRow eachrow in attachablesInfoDataGridView.Rows) + { + try + { + if (eachrow.Cells[0].Value.Equals(searchValue)) + { + + foreach (DataGridViewRow eachrow3 in attachablesInfoDataGridView.Rows) + { + try + { + if (eachrow3.Cells[0].Value != null && eachrow3.Cells[0].Value.ToString().Contains(searchValue)) + { + string eachstringindataGridView = eachrow3.Cells[0].Value.ToString(); + listofstrings.Add(eachstringindataGridView); + } + + } + catch (Exception) + { + throw; + } + } + foreach (string eachstring in listofstrings) + { + bool success = int.TryParse(new string(eachstring.SkipWhile(x => !char.IsDigit(x)).TakeWhile(x => char.IsDigit(x)).ToArray()), out i); + if (success == false) + { + i = 0; + } + listofintegers.Add(i); + } + + result3 = listofintegers.Max(); + + ultrafinal = searchValue + mid + Convert.ToString(++result3); + + AMLfileLabel.Text = ultrafinal; + AMLURLLabel.Text = ultrafinal; + } + } + catch (Exception) { } + } + } + if (automationMLRoleCmbBx.SelectedItem == null || automationMLRoleCmbBx.SelectedItem != null) + { + automationMLRoleCmbBx.DroppedDown = true; + } + } + + private void selectFileBtn_Click(object sender, EventArgs e) + { + if (AMLfileLabel.Text != "") + { + + string filename = AMC.OpenFileDialog(selectedFileLocationTxtBx); + if (selectedFileLocationTxtBx.Text != "") + { + + var index = attachablesInfoDataGridView.Rows.Add(); + attachablesInfoDataGridView.Rows[index].Cells["ElementName"].Value = AMLfileLabel.Text; + attachablesInfoDataGridView.Rows[index].Cells["FilePath"].Value = selectedFileLocationTxtBx.Text; + + selectedFileLocationTxtBx.Text = ""; + AMLfileLabel.Text = ""; + AMLURLLabel.Text = ""; + } + } + + else + { + MessageBox.Show("Select AutomationML Role type from the combo box and Click Add button.", "Caution", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + + private void selectURLBtn_Click(object sender, EventArgs e) + { + if (AMLURLLabel.Text != "") + { + if (selectedFileURLTextBox.Text != "") + { + var index = attachablesInfoDataGridView.Rows.Add(); + attachablesInfoDataGridView.Rows[index].Cells["ElementName"].Value = AMLURLLabel.Text; + attachablesInfoDataGridView.Rows[index].Cells["FilePath"].Value = selectedFileURLTextBox.Text; + + AMLURLLabel.Text = ""; + AMLfileLabel.Text = ""; + selectedFileURLTextBox.Text = ""; + } + } + else + { + MessageBox.Show("Select AutomationML Role type from the combo box and Click Add button.", "Caution", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + + private void selectedFileLocationTxtBx_TextChanged(object sender, EventArgs e) + { + + } + + private void selectedFileURLTextBox_TextChanged(object sender, EventArgs e) + { + + } + + + + + public void clear() + { + vendorNameTextBox.Text = ""; + deviceNameTextBox.Text = ""; + fileNameLabel.Text = ""; + genericDataHeaderLabel.Text = ""; + electricalInterfacesHeaderlabel.Text = ""; + genericInformationDataGridView.Rows.Clear(); + genericInformationtreeView.Nodes.Clear(); + genericparametersAttrDataGridView.Rows.Clear(); + attachablesInfoDataGridView.Rows.Clear(); + electricalInterfacesCollectionDataGridView.Rows.Clear(); + elecInterAttDataGridView.Rows.Clear(); + treeViewElectricalInterfaces.Nodes.Clear(); + ClearHeaderTabPageValuesofgenericData(); + ClearHeaderTabPageValuesofElectricalInterfaces(); + + + device.DictionaryForInterfaceClassesInElectricalInterfaces = new Dictionary>>(); + device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces = new Dictionary>>(); + + + device.DictionaryForRoleClassofComponent = new Dictionary>>(); + device.DictionaryForExternalInterfacesUnderRoleClassofComponent = new Dictionary>>(); + } + + public void selectLibrary(byte[] file) + { + CAEXDocument doc = null; + doc = CAEXDocument.LoadFromBinary(file); + try + { + + string referencedClassName = ""; + foreach (var classLibType in doc.CAEXFile.RoleClassLib) + { + bool decisiontoPrint = true; + foreach (TreeNode node in treeViewRoleClassLib.Nodes) + { + if (node.Name == classLibType.Name.ToString()) + { + decisiontoPrint = false; + break; + } + } + + if (decisiontoPrint == true) + { + TreeNode libNode = treeViewRoleClassLib.Nodes.Add(classLibType.ToString(), classLibType.ToString(), 0); + + + foreach (var classType in classLibType.RoleClass) + { + TreeNode roleNode; + + if (classType.ReferencedClassName != "") + { + referencedClassName = classType.ReferencedClassName; + roleNode = libNode.Nodes.Add(classType.ToString(), classType.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 1); + + searchAMLLibraryFile.SearchForReferencedClassName(doc, referencedClassName, classType); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassName(classType); + } + else + { + roleNode = libNode.Nodes.Add(classType.ToString(), classType.ToString(), 1); + } + + + + if (classType.ExternalInterface.Exists) + { + foreach (var externalinterface in classType.ExternalInterface) + { + TreeNode externalinterfacenode; + + if (externalinterface.BaseClass != null) + { + referencedClassName = externalinterface.BaseClass.ToString(); + externalinterfacenode = roleNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + searchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(doc, referencedClassName, classType, externalinterface); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + } + else + { + externalinterfacenode = roleNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString(), 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + // searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + } + + searchAMLLibraryFile.PrintExternalInterfaceNodes(doc, externalinterfacenode, externalinterface, classType); + } + } + searchAMLLibraryFile.PrintNodesRecursiveInRoleClassLib(doc, roleNode, classType, referencedClassName); + } + } + } + + + foreach (var classLibType in doc.CAEXFile.InterfaceClassLib) + { + bool decisiontoPrint = true; + foreach (TreeNode node in treeViewInterfaceClassLib.Nodes) + { + if (node.Name == classLibType.Name.ToString()) + { + decisiontoPrint = false; + break; + } + } + if (decisiontoPrint == true) + { + // searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classLibType.Name.ToString(), classLibType.ID.ToString()); + TreeNode libNode = treeViewInterfaceClassLib.Nodes.Add(classLibType.ToString(), classLibType.ToString(), 0); + + foreach (var classType in classLibType.InterfaceClass) + { + TreeNode interfaceclassNode; + if (classType.ReferencedClassName != "") + { + // searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString(), classType.ID.ToString()); + referencedClassName = classType.ReferencedClassName; + interfaceclassNode = libNode.Nodes.Add(classType.ToString(), classType.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 1); + searchAMLLibraryFile.SearchForReferencedClassName(doc, referencedClassName, classType); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassName(classType); + } + else + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString(), classType.ID.ToString()); + interfaceclassNode = libNode.Nodes.Add(classType.ToString(), classType.ToString(), 1); + } + + + if (classType.ExternalInterface.Exists) + { + foreach (var externalinterface in classType.ExternalInterface) + { + TreeNode externalinterfacenode; + + if (externalinterface.BaseClass != null) + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString()+ externalinterface.ToString(), externalinterface.ID.ToString()); + + referencedClassName = externalinterface.BaseClass.ToString(); + externalinterfacenode = interfaceclassNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + + searchAMLLibraryFile.SearchForReferencedClassNameofExternalIterface(doc, referencedClassName, classType, externalinterface); + searchAMLLibraryFile.CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalinterface); + } + else + { + //searchAMLLibraryFile.DictioanryOfIDofInterfaceClassLibraryNodes.Add(classType.Name.ToString() + externalinterface.ToString(), externalinterface.ID.ToString()); + externalinterfacenode = interfaceclassNode.Nodes.Add(externalinterface.ToString(), externalinterface.ToString(), 2); + externalinterfacenode.ForeColor = SystemColors.GrayText; + } + + searchAMLLibraryFile.PrintExternalInterfaceNodes(doc, externalinterfacenode, externalinterface, classType); + } + } + searchAMLLibraryFile.PrintNodesRecursiveInInterfaceClassLib(doc, interfaceclassNode, classType, referencedClassName); + } + } + } + } + catch (Exception) + { + MessageBox.Show("Missing names of attributes or Same atrribute sequence is repeated in the given file", "Missing Names", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); + } + } + + public void checkForAutomtionComponent() + { + foreach (TreeNode node in treeViewRoleClassLib.Nodes) + { + if (node.Nodes != null) + { + foreach (TreeNode childNode in node.Nodes) + { + + if(childNode.Name == "AutomationMLBaseRole") + { + autoloadGenericInformationtreeView(childNode); + } + + if (childNode.Name == "AutomationComponent") + { + autoloadGenericInformationtreeView(childNode); + + int num = genericInformationDataGridView.Rows.Add(); + List listofSerialNumbers = new List(); + List listofFinalSerialNumber = new List(); + string number = ""; + int finalNumber = 0; + int ultimatenumber = 0; + if (genericInformationDataGridView.Rows.Count > 2) + { + foreach (DataGridViewRow row in genericInformationDataGridView.Rows) + { + if (row.Cells[0].Value == null) + { + number = "0"; + listofSerialNumbers.Add(number); + } + if (row.Cells[0].Value != null) + { + number = row.Cells[0].Value.ToString(); + listofSerialNumbers.Add(number); + } + } + foreach (string str in listofSerialNumbers) + { + finalNumber = Convert.ToInt32(str); + listofFinalSerialNumber.Add(finalNumber); + } + ultimatenumber = listofFinalSerialNumber.Max(); + genericInformationDataGridView.Rows[num].Cells[0].Value = ++ultimatenumber; + } + else + { + genericInformationDataGridView.Rows[num].Cells[0].Value = 1; + } + + genericInformationDataGridView.Rows[num].Cells[1].Value = childNode.Text.ToString(); + genericInformationDataGridView.Rows[num].Cells[3].Value = true; + } + } + } + } + } + + public void searchForComponentNames(AttributeType classType) + { + if (classType.Attribute.Exists) + { + + foreach (var attribute in classType.Attribute) + { + searchForComponentNames(attribute); + if (attribute.Name == "Manufacturer") + { + if (attribute.Value != null) + { + vendorNameTextBox.Text = attribute.Value; + } + else + { + vendorNameTextBox.Text = "No Vendor Name Set"; + } + } + if (attribute.Name == "Model") + { + if (attribute.Value != null) + { + deviceNameTextBox.Text = attribute.Value; + } + else + { + deviceNameTextBox.Text = "No Device Name Set"; + } + } + } + } + } + + + + + private void elecInterAttDataGridView_CellClick(object sender, DataGridViewCellEventArgs e) + { + + } + + private void elecInterAttDataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e) + { + ClearHeaderTabPageValuesofElectricalInterfaces(); + elecInterAttDataGridView.CurrentRow.Selected = true; + + string attributeName = ""; + string values = ""; + string defaults = ""; + string Units = ""; + string datatype = ""; + + + if (elecInterAttDataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value != null) + { + try + { + if (elecInterAttDataGridView.Rows[e.RowIndex].Cells[0].Value != null) + { + attributeName = elecInterAttDataGridView.Rows[e.RowIndex].Cells[0].Value.ToString(); + } + } + catch (Exception) + { } + + try + { + if (elecInterAttDataGridView.Rows[e.RowIndex].Cells[1].Value != null) + { + values = elecInterAttDataGridView.Rows[e.RowIndex].Cells[1].Value.ToString(); + } + } + catch (Exception) + { } + + try + { + if (elecInterAttDataGridView.Rows[e.RowIndex].Cells[2].Value != null) + { + defaults = elecInterAttDataGridView.Rows[e.RowIndex].Cells[2].Value.ToString(); + } + } + catch (Exception) + { } + + try + { + if (elecInterAttDataGridView.Rows[e.RowIndex].Cells[3].Value != null) + { + Units = elecInterAttDataGridView.Rows[e.RowIndex].Cells[3].Value.ToString(); + } + } + catch (Exception) + { } + try + { + if (elecInterAttDataGridView.Rows[e.RowIndex].Cells[4].Value != null) + { + datatype = elecInterAttDataGridView.Rows[e.RowIndex].Cells[4].Value.ToString(); + } + } + catch (Exception) + { } + + + List lists = new List(); + DataGridViewComboBoxCell dgvcbc = (DataGridViewComboBoxCell)elecInterAttDataGridView.Rows[e.RowIndex].Cells[5]; + + foreach (var refsemantic in dgvcbc.Items) + { + try + { + if (refsemantic != null) + { + lists.Add(refsemantic.ToString()); + } + } + catch (Exception) + { + + throw; + } + + } + + + //if (Convert.ToBoolean(electricalInterfacesCollectionDataGridView.CurrentRow.Cells[3].Value) == false) + { + string interfaceClass = electricalInterfacesHeaderlabel.Text; + foreach (var pair in device.DictionaryForInterfaceClassesInElectricalInterfaces) + { + if (pair.Key.ToString() == interfaceClass) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + if (item.Name.ToString() == attributeName) + { + + + descriptionTxtBoxElecAttri.Text = item.Description; + copyrightTxtBxElecAttri.Text = item.CopyRight; + RefClassNameTxtBxElecAttri.Text = item.ReferencedClassName; + RefBaseClassPathTxtBxElecAttri.Text = item.RefBaseClassPath; + attributepathTxtBxElecAttri.Text = item.AttributePath; + idTxtBxElecAttri.Text = item.ID; + nameTxtBxElecAttri.Text = item.Name; + + foreach (var pair2 in device.DictionaryForInterfaceClassesInElectricalInterfaces) + { + if (pair2.Key.ToString() == interfaceClass) + { + foreach (var valueList2 in pair2.Value) + { + foreach (var item2 in valueList2) + { + if (item2.Name.ToString() == attributeName) + { + item2.RefSemanticList.Remove(); + item2.Name = attributeName; + item2.Value = values; + item2.Default = defaults; + item2.Unit = Units; + + + foreach (var str in lists) + { + var refsems = item2.RefSemanticList.Append(); + refsems.CorrespondingAttributePath = str; + } + + item2.Description = descriptionTxtBoxElecAttri.Text; + item2.CopyRight = copyrightTxtBxElecAttri.Text; + item2.ReferencedClassName = RefClassNameTxtBxElecAttri.Text; + item2.RefBaseClassPath = RefBaseClassPathTxtBxElecAttri.Text; + item2.AttributePath = attributepathTxtBxElecAttri.Text; + item2.ID = idTxtBxElecAttri.Text; + item2.Name = nameTxtBxElecAttri.Text; + } + } + } + } + } + } + } + } + } + } + foreach (var pair in device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces) + { + if (pair.Key.ToString() == interfaceClass) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + if (item.Name.ToString() == attributeName) + { + /* item.Value = values; + item.Default = defaults; + item.Unit = Units; + item.Semantic = semantics;*/ + + + descriptionTxtBoxElecAttri.Text = item.Description; + copyrightTxtBxElecAttri.Text = item.CopyRight; + RefClassNameTxtBxElecAttri.Text = item.ReferencedClassName; + RefBaseClassPathTxtBxElecAttri.Text = item.RefBaseClassPath; + attributepathTxtBxElecAttri.Text = item.AttributePath; + idTxtBxElecAttri.Text = item.ID; + nameTxtBxElecAttri.Text = item.Name; + + foreach (var pair2 in device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces) + { + if (pair2.Key.ToString() == interfaceClass) + { + foreach (var valueList2 in pair2.Value) + { + foreach (var item2 in valueList2) + { + if (item2.Name.ToString() == attributeName) + { + item2.RefSemanticList.Remove(); + item2.Name = attributeName; + item2.Value = values; + item2.Default = defaults; + item2.Unit = Units; + + foreach (var str in lists) + { + var refsems = item2.RefSemanticList.Append(); + refsems.CorrespondingAttributePath = str; + } + item2.Description = descriptionTxtBoxElecAttri.Text; + item2.CopyRight = copyrightTxtBxElecAttri.Text; + item2.ReferencedClassName = RefClassNameTxtBxElecAttri.Text; + item2.RefBaseClassPath = RefBaseClassPathTxtBxElecAttri.Text; + item2.AttributePath = attributepathTxtBxElecAttri.Text; + item2.ID = idTxtBxElecAttri.Text; + item2.Name = nameTxtBxElecAttri.Text; + } + } + } + } + } + } + } + } + } + } + } + } + elecInterAttDataGridView.CurrentRow.Selected = false; + } + + private void elecInterAttDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + + } + + + + + private void vendorNameTextBox_Leave(object sender, EventArgs e) + { + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + if (pair.Key != null && pair.Key.ToString() == "(" + 1 + ")" + "AutomationComponent{Class: AutomationMLBaseRole}") + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + if (item.Name == "Manufacturer") + { + item.Value = vendorNameTextBox.Text; + } + } + } + } + if (pair.Key != null && pair.Key.Contains("(" + 1 + ")")) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + if (item.Name == "Manufacturer") + { + item.Value = vendorNameTextBox.Text; + } + } + } + } + } + } + + private void deviceNameTextBox_Leave(object sender, EventArgs e) + { + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + if (pair.Key != null && pair.Key.ToString() == "(" + 1 + ")" + "AutomationComponent{Class: AutomationMLBaseRole}") + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + if (item.Name == "Model") + { + item.Value = deviceNameTextBox.Text; + } + } + } + } + if (pair.Key != null && pair.Key.Contains("(" + 1 + ")")) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + if (item.Name == "Model") + { + item.Value = deviceNameTextBox.Text; + } + } + } + } + } + } + + + + + private void IdentificationDataBtn_Click(object sender, EventArgs e) + { + + } + + private void CommercialDataBtn_Click(object sender, EventArgs e) + { + + } + + private void clearSelectedRowBtn_Click(object sender, EventArgs e) + { + try + { + if (attachablesInfoDataGridView.CurrentCell != null) + { + int rowIndex = attachablesInfoDataGridView.CurrentCell.RowIndex; + attachablesInfoDataGridView.Rows.RemoveAt(rowIndex); + } + } + catch (Exception) { } + } + + + + + + + private void genericParametersAttrDataGridView_CellClick(object sender, DataGridViewCellEventArgs e) + { + + } + + private void genericParametersAttrDataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e) + { + ClearHeaderTabPageValuesofgenericData(); + genericparametersAttrDataGridView.CurrentRow.Selected = true; + + string attributeName = ""; + string values = ""; + string defaults = ""; + string Units = ""; + string datatype = ""; + + if (genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value != null) + { + try + { + if (genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[0].Value != null) + { + attributeName = genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[0].Value.ToString(); + } + } + catch (Exception) + { } + + try + { + if (genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[1].Value != null) + { + values = genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[1].Value.ToString(); + } + } + catch (Exception) + { } + + try + { + if (genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[2].Value != null) + { + defaults = genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[2].Value.ToString(); + } + } + catch (Exception) + { } + + try + { + if (genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[3].Value != null) + { + Units = genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[3].Value.ToString(); + } + } + catch (Exception) + { } + try + { + if (genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[4].Value != null) + { + datatype = genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[4].Value.ToString(); + } + } + catch (Exception) + { } + + + + + List lists = new List(); + DataGridViewComboBoxCell dgvcbc = (DataGridViewComboBoxCell)genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[5]; + + foreach (var refsemantic in dgvcbc.Items) + { + try + { + if (refsemantic != null) + { + lists.Add(refsemantic.ToString()); + } + } + catch (Exception) + { + + throw; + } + + } + /* string semantics = genericparametersAttrDataGridView.Rows[e.RowIndex].Cells[5].Value.ToString();*/ + + + + //if (Convert.ToBoolean(electricalInterfacesCollectionDataGridView.CurrentRow.Cells[3].Value) == false) + { + + string interfaceClass = genericDataHeaderLabel.Text; + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + if (pair.Key.ToString() == interfaceClass) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + if (item.Name.ToString() == attributeName) + { + genericDataDescriptionTxtBx.Text = item.Description; + genericDataCopyrightTxtBx.Text = item.CopyRight; + genericDataRefClassNameTxtBx.Text = item.ReferencedClassName; + genericDataRefBaseClassPathTxtBx.Text = item.RefBaseClassPath; + genericDataAttributePathTxtBx.Text = item.AttributePath; + genericDataIDTxtBx.Text = item.ID; + genericDataNameTxtBx.Text = item.Name; + + foreach (var pair2 in device.DictionaryForRoleClassofComponent) + { + if (pair2.Key.ToString() == interfaceClass) + { + foreach (var valueList2 in pair2.Value) + { + foreach (var item2 in valueList2) + { + if (item2.Name.ToString() == attributeName) + { + item2.RefSemanticList.Remove(); + item2.Name = attributeName; + item2.Value = values; + item2.Default = defaults; + item2.Unit = Units; + + foreach (var str in lists) + { + var refsems = item2.RefSemanticList.Append(); + refsems.CorrespondingAttributePath = str; + } + + item2.Description = genericDataDescriptionTxtBx.Text; + item2.CopyRight = genericDataCopyrightTxtBx.Text; + item2.ReferencedClassName = genericDataRefClassNameTxtBx.Text; + item2.RefBaseClassPath = genericDataRefBaseClassPathTxtBx.Text; + item2.AttributePath = genericDataAttributePathTxtBx.Text; + item2.ID = genericDataIDTxtBx.Text; + item2.Name = genericDataNameTxtBx.Text; + } + } + } + } + } + } + } + } + } + } + foreach (var pair in device.DictionaryForExternalInterfacesUnderRoleClassofComponent) + { + if (pair.Key.ToString() == interfaceClass) + { + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + if (item.Name.ToString() == attributeName) + { + /* item.Value = values; + item.Default = defaults; + item.Unit = Units; + item.Semantic = semantics;*/ + + genericDataDescriptionTxtBx.Text = item.Description; + genericDataCopyrightTxtBx.Text = item.CopyRight; + genericDataRefClassNameTxtBx.Text = item.ReferencedClassName; + genericDataRefBaseClassPathTxtBx.Text = item.RefBaseClassPath; + genericDataAttributePathTxtBx.Text = item.AttributePath; + genericDataIDTxtBx.Text = item.ID; + genericDataNameTxtBx.Text = item.Name; + + foreach (var pair2 in device.DictionaryForExternalInterfacesUnderRoleClassofComponent) + { + if (pair2.Key.ToString() == interfaceClass) + { + foreach (var valueList2 in pair2.Value) + { + foreach (var item2 in valueList2) + { + if (item2.Name.ToString() == attributeName) + { + item2.RefSemanticList.Remove(); + item2.Name = attributeName; + item2.Value = values; + item2.Default = defaults; + item2.Unit = Units; + + foreach (var str in lists) + { + var refsems = item2.RefSemanticList.Append(); + refsems.CorrespondingAttributePath = str; + } + item2.Description = genericDataDescriptionTxtBx.Text; + item2.CopyRight = genericDataCopyrightTxtBx.Text; + item2.ReferencedClassName = genericDataRefClassNameTxtBx.Text; + item2.RefBaseClassPath = genericDataRefBaseClassPathTxtBx.Text; + item2.AttributePath = genericDataAttributePathTxtBx.Text; + item2.ID = genericDataIDTxtBx.Text; + item2.Name = genericDataNameTxtBx.Text; + } + } + } + } + } + } + } + } + } + } + } + } + genericparametersAttrDataGridView.CurrentRow.Selected = false; + } + + private void genericParametersAttrDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + + } + + + + + private void panel_FrontPage_Paint(object sender, PaintEventArgs e) + { + + } + + private void Page1_TopPanel_Paint(object sender, PaintEventArgs e) + { + + } + + private void addPicturesAndDocsPanel_Paint(object sender, PaintEventArgs e) + { + + } + + + + + private void splitContainer1_SplitterMoved(object sender, SplitterEventArgs e) + { + + } + + + + /// + /// Methodes not even used one time + /// + + private void treeViewElectricalInterfaces_AfterSelect(object sender, TreeViewEventArgs e) + { + try + { + TreeNode targetNode = treeViewElectricalInterfaces.SelectedNode; + + targetNode.SelectedImageIndex = targetNode.ImageIndex; + } + catch (Exception) { } + + } + + private void treeViewElectricalInterfaces_Click(object sender, EventArgs e) + { + try + { + TreeNode targetNode = treeViewRoleClassLib.SelectedNode; + targetNode.SelectedImageIndex = targetNode.ImageIndex; + } + catch (Exception) { } + } + + private void librariesSplitButton_DoubleClick(object sender, EventArgs e) + { + OpenFileDialog op = new OpenFileDialog(); + if (op.ShowDialog() == DialogResult.OK) + { + + } + } + + private void librariesSplitButton_MouseHover(object sender, EventArgs e) + { + librariesSplitButton.ShowDropDown(); + } + + private void librariesSplitButton_ButtonClick(object sender, EventArgs e) + { + librariesSplitButton.ShowDropDown(); + } + + + + + private void treeViewImportedInterfaceHierarchy_MouseClick(object sender, MouseEventArgs e) + { + + } + + private void treeViewImportedInterfaceHierarchy_MouseDown(object sender, MouseEventArgs e) + { + // this.treeViewImportedInterfaceHierarchy.MouseDown += new MouseEventHandler(this.tree_MouseDown); + + } + + private void treeViewImportedInterfaceHierarchy_DragOver(object sender, DragEventArgs e) + { + // this.treeViewImportedInterfaceHierarchy.DragOver += new DragEventHandler(this.tree_DragOver); + } + + private void treeViewImportedInterfaceHierarchy_DragDrop(object sender, DragEventArgs e) + { + //this.treeViewImportedInterfaceHierarchy.DragDrop += new DragEventHandler(this.tree_DragDrop); + } + + + + + private void ClearDeviceDataBtn_Click(object sender, EventArgs e) + { + vendorNameTextBox.Text = ""; + + deviceNameTextBox.Text = ""; + + } + + private void electricalInterfacesCollectionDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + return; + } + + private void dataTabControl_SelectedIndexChanged(object sender, EventArgs e) + { + + } + + private void vendorNameTextBox_TextChanged(object sender, EventArgs e) + { + vendorNameTextBox_Leave(sender, e); + foreach (DataGridViewRow row in genericInformationDataGridView.Rows) + { + if (row.Cells[0].Value != null) + { + if (row.Cells[0].Value.ToString() == "1" && row.Cells[1].Value.ToString() == "AutomationComponent{Class: AutomationMLBaseRole}") + { + string SRCSerialNumber = row.Cells[0].Value.ToString(); + string SRC = row.Cells[1].Value.ToString(); + foreach (var pair in searchAMLLibraryFile.DictionaryForRoleClassInstanceAttributes) + { + if (pair.Key.ToString() == SRC) + { + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + SRCSerialNumber + ")" + SRC)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + SRCSerialNumber + ")" + SRC); + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + + genericInformationtreeView.Nodes.Clear(); + TreeNode parentNode = genericInformationtreeView.Nodes.Add("(" + SRCSerialNumber + ")" + SRC, + "(" + SRCSerialNumber + ")" + SRC, 2); + autoloadGenericInformationtreeView(parentNode); + } + catch (Exception) + { + + throw; + } + } + } + } + else if (row.Cells[0].Value.ToString() == "1" && row.Cells[1].Value.ToString() == "(1)AutomationMLComponentStandardRCL/AutomationComponent") + { + string SRCSerialNumber = row.Cells[0].Value.ToString(); + string SRC = row.Cells[1].Value.ToString(); + foreach (var pair in searchAMLComponentFile.DictionaryofRolesforAutomationComponenet) + { + if (pair.Key.ToString() == SRC) + { + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + SRCSerialNumber + ")" + SRC)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + SRCSerialNumber + ")" + SRC); + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + + genericInformationtreeView.Nodes.Clear(); + TreeNode parentNode = genericInformationtreeView.Nodes.Add("(" + SRCSerialNumber + ")" + SRC, + "(" + SRCSerialNumber + ")" + SRC, 2); + autoloadGenericInformationtreeView(parentNode); + } + catch (Exception) + { + + throw; + } + } + } + } + } + } + } + + private void deviceNameTextBox_TextChanged(object sender, EventArgs e) + { + deviceNameTextBox_Leave(sender, e); + foreach (DataGridViewRow row in genericInformationDataGridView.Rows) + { + if (row.Cells[0].Value != null) + { + if (row.Cells[0].Value.ToString() == "1" && row.Cells[1].Value.ToString() == "AutomationComponent{Class: AutomationMLBaseRole}") + { + string SRCSerialNumber = row.Cells[0].Value.ToString(); + string SRC = row.Cells[1].Value.ToString(); + foreach (var pair in searchAMLLibraryFile.DictionaryForRoleClassInstanceAttributes) + { + if (pair.Key.ToString() == SRC) + { + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + SRCSerialNumber + ")" + SRC)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + SRCSerialNumber + ")" + SRC); + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + + genericInformationtreeView.Nodes.Clear(); + TreeNode parentNode = genericInformationtreeView.Nodes.Add("(" + SRCSerialNumber + ")" + SRC, + "(" + SRCSerialNumber + ")" + SRC, 2); + autoloadGenericInformationtreeView(parentNode); + } + catch (Exception) + { + + throw; + } + } + } + } else if (row.Cells[0].Value.ToString() == "1" && row.Cells[1].Value.ToString() == "(1)AutomationMLComponentStandardRCL/AutomationComponent") + { + string SRCSerialNumber = row.Cells[0].Value.ToString(); + string SRC = row.Cells[1].Value.ToString(); + foreach (var pair in searchAMLComponentFile.DictionaryofRolesforAutomationComponenet) + { + if (pair.Key.ToString() == SRC) + { + try + { + if (device.DictionaryForRoleClassofComponent.ContainsKey("(" + SRCSerialNumber + ")" + SRC)) + { + device.DictionaryForRoleClassofComponent.Remove("(" + SRCSerialNumber + ")" + SRC); + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + else + { + device.DictionaryForRoleClassofComponent.Add("(" + SRCSerialNumber + ")" + SRC, pair.Value); + } + + genericInformationtreeView.Nodes.Clear(); + TreeNode parentNode = genericInformationtreeView.Nodes.Add("(" + SRCSerialNumber + ")" + SRC, + "(" + SRCSerialNumber + ")" + SRC, 2); + autoloadGenericInformationtreeView(parentNode); + } + catch (Exception) + { + + throw; + } + } + } + } + } + } + } + + private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e) + { + + } + } +} \ No newline at end of file diff --git a/SOURCE/Plugin/DeviceDescription.resx b/SOURCE/Plugin/DeviceDescription.resx new file mode 100644 index 0000000..d6171a9 --- /dev/null +++ b/SOURCE/Plugin/DeviceDescription.resx @@ -0,0 +1,770 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 265, 17 + + + 273, 146 + + + 17, 80 + + + 1330, 103 + + + 1066, 103 + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + 278, 103 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAD6 + DAAAAk1TRnQBSQFMAgEBAwEAAcgBAwHIAQMBHAEAARwBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + AwABcAMAARwDAAEBAQABCAUAAUABDBgAAYACAAGAAwACgAEAAYADAAGAAQABgAEAAoACAAPAAQABwAHc + AcABAAHwAcoBpgEAATMFAAEzAQABMwEAATMBAAIzAgADFgEAAxwBAAMiAQADKQEAA1UBAANNAQADQgEA + AzkBAAGAAXwB/wEAAlAB/wEAAZMBAAHWAQAB/wHsAcwBAAHGAdYB7wEAAdYC5wEAAZABqQGtAgAB/wEz + AwABZgMAAZkDAAHMAgABMwMAAjMCAAEzAWYCAAEzAZkCAAEzAcwCAAEzAf8CAAFmAwABZgEzAgACZgIA + AWYBmQIAAWYBzAIAAWYB/wIAAZkDAAGZATMCAAGZAWYCAAKZAgABmQHMAgABmQH/AgABzAMAAcwBMwIA + AcwBZgIAAcwBmQIAAswCAAHMAf8CAAH/AWYCAAH/AZkCAAH/AcwBAAEzAf8CAAH/AQABMwEAATMBAAFm + AQABMwEAAZkBAAEzAQABzAEAATMBAAH/AQAB/wEzAgADMwEAAjMBZgEAAjMBmQEAAjMBzAEAAjMB/wEA + ATMBZgIAATMBZgEzAQABMwJmAQABMwFmAZkBAAEzAWYBzAEAATMBZgH/AQABMwGZAgABMwGZATMBAAEz + AZkBZgEAATMCmQEAATMBmQHMAQABMwGZAf8BAAEzAcwCAAEzAcwBMwEAATMBzAFmAQABMwHMAZkBAAEz + AswBAAEzAcwB/wEAATMB/wEzAQABMwH/AWYBAAEzAf8BmQEAATMB/wHMAQABMwL/AQABZgMAAWYBAAEz + AQABZgEAAWYBAAFmAQABmQEAAWYBAAHMAQABZgEAAf8BAAFmATMCAAFmAjMBAAFmATMBZgEAAWYBMwGZ + AQABZgEzAcwBAAFmATMB/wEAAmYCAAJmATMBAANmAQACZgGZAQACZgHMAQABZgGZAgABZgGZATMBAAFm + AZkBZgEAAWYCmQEAAWYBmQHMAQABZgGZAf8BAAFmAcwCAAFmAcwBMwEAAWYBzAGZAQABZgLMAQABZgHM + Af8BAAFmAf8CAAFmAf8BMwEAAWYB/wGZAQABZgH/AcwBAAHMAQAB/wEAAf8BAAHMAQACmQIAAZkBMwGZ + AQABmQEAAZkBAAGZAQABzAEAAZkDAAGZAjMBAAGZAQABZgEAAZkBMwHMAQABmQEAAf8BAAGZAWYCAAGZ + AWYBMwEAAZkBMwFmAQABmQFmAZkBAAGZAWYBzAEAAZkBMwH/AQACmQEzAQACmQFmAQADmQEAApkBzAEA + ApkB/wEAAZkBzAIAAZkBzAEzAQABZgHMAWYBAAGZAcwBmQEAAZkCzAEAAZkBzAH/AQABmQH/AgABmQH/ + ATMBAAGZAcwBZgEAAZkB/wGZAQABmQH/AcwBAAGZAv8BAAHMAwABmQEAATMBAAHMAQABZgEAAcwBAAGZ + AQABzAEAAcwBAAGZATMCAAHMAjMBAAHMATMBZgEAAcwBMwGZAQABzAEzAcwBAAHMATMB/wEAAcwBZgIA + AcwBZgEzAQABmQJmAQABzAFmAZkBAAHMAWYBzAEAAZkBZgH/AQABzAGZAgABzAGZATMBAAHMAZkBZgEA + AcwCmQEAAcwBmQHMAQABzAGZAf8BAALMAgACzAEzAQACzAFmAQACzAGZAQADzAEAAswB/wEAAcwB/wIA + AcwB/wEzAQABmQH/AWYBAAHMAf8BmQEAAcwB/wHMAQABzAL/AQABzAEAATMBAAH/AQABZgEAAf8BAAGZ + AQABzAEzAgAB/wIzAQAB/wEzAWYBAAH/ATMBmQEAAf8BMwHMAQAB/wEzAf8BAAH/AWYCAAH/AWYBMwEA + AcwCZgEAAf8BZgGZAQAB/wFmAcwBAAHMAWYB/wEAAf8BmQIAAf8BmQEzAQAB/wGZAWYBAAH/ApkBAAH/ + AZkBzAEAAf8BmQH/AQAB/wHMAgAB/wHMATMBAAH/AcwBZgEAAf8BzAGZAQAB/wLMAQAB/wHMAf8BAAL/ + ATMBAAHMAf8BZgEAAv8BmQEAAv8BzAEAAmYB/wEAAWYB/wFmAQABZgL/AQAB/wJmAQAB/wFmAf8BAAL/ + AWYBAAEhAQABpQEAA18BAAN3AQADhgEAA5YBAAPLAQADsgEAA9cBAAPdAQAD4wEAA+oBAAPxAQAD+AEA + AfAB+wH/AQABpAKgAQADgAMAAf8CAAH/AwAC/wEAAf8DAAH/AQAB/wEAAv8CAAP/AQA49Bv/AfQcAA3/ + DfYB/wH2OP8cAAH/AvYK/wT2Bf8D9gL/AfY4/xwAA/YY/wH2OP8cAAP2D/8B9Aj/AfYH/w/0Iv8cAAL2 + BP8Q9Az/AfQB8wLxA/IE8QHyAvEB8gHzIv8cAAH2BP8C9AEZDQkBGQL0BP8B9gX/AfMBvAgHAe8CBwG1 + AQcB8AH0If8cAAX/AfQBGQG7BJEHtAKRAbsBGQH0BP8C9gT/AfMBBwG1CrsCtQG7AfQh/xwAAfYE/wH0 + AQkBtAKLA60BswGtAYsCswGtAosBtAEJAfQE/wL2BP8BGQIJCBkB8QEZAQkBtQG7AfQh/xwAAfYE/wH0 + AQkBswGLAa0DswG6AbQBrQG0AdsBswGtAYsBtAEJAfQE/wL2BP8B8wEJAhkCBwHxAfIB7wGSAfcB8AIZ + AgkB9BX/AfQCGQH0CP8cAAH2BP8B9AHcAbMBiwG0AboBswHbAdwBCQGzAdsB3AHbAbMBrQG0AQkB9Ar/ + AfIBvAEZAfIB7QHsAfABBwFtARMBEgHtAfEBGQG7AQcB9BT/ARkBtQKRAbsB8AHzBf8B9hwABv8BCQGz + AYsBtAG6AbMB3AG0AboBswLbAbMBrAGLAbQBCQH0Cv8B8gEHAvAC6wG8AewBQwESARMBEgHvAfMCBwH0 + Df8B9AHyAfMB9AL/AfQBtQGLA2wBtQHxAfQE/wH2HAAG/wEJAbMBiwG0AboBtAHcAbQBkQGLAboB2wGz + AqwBuQEJAfQK/wHyAbwB8QHwAW0B6wEHAeoBEgHvAfcBbQHvAfMCBwH0Df8B8gHvAQcB8gL0ARkBiwFs + AYsBkQKLAe8B8gT/AfYcAAX/AfQBCQGzAYsBtAG6AbQB3AK0AYsBugHbAbMCrAGtAQkB9Ar/AfIBBwHx + AfABbQHrAe8B6gFtAfEB8AHvAbwB8gIHAfQN/wHxAewBrgEJAhkBtQFsAYsBCQEZAbQBiwG0AfEE/wH2 + HAAF/wH0AQkBswGLAbQBugGzAdwBuwEJAbMC2wGzAqwBswEJAfQK/wHyAQcB8QHwAm0B7wHqAesB8QHz + AvQB8gIHAfQN/wHxAewBbAGuAZECrgFmAbQCGQG7AZABkQHwBP8B9hwABf8B9AEJAbMBiwG0AboBswHb + AuEBswLbAbMCsgGzAQkB9Ar/AfIBBwHxAfACbQH3ARMB6wLzAfIB8wHyAgcB8w3/AfEC7AO7AbQBbAGL + AgkBtAGLAbQB8QT/AfYcAAH2BP8B9AEJAbMBiwKzAa0DswGtArMDrAGzAQkB9Ar/AfIBBwLwAm0BBwJt + AbwB7wHtAQcB8gHvAQcB9A3/AfIB7wEHARkC4gEZAosBtAGRApABuwHzBP8B9hwAAvYD/wH0AQkBtAKL + Aa0CrAKtBawBrQG0AQkB9Ar/AfIBBwLwAW0B6wG8AesBFQHrAm0BBwEZArsB9A3/AfQB8gHzBPQBtAGL + AWYBbAGLAbQBGQH0Bf8cAAL2BP8B8wEJAbsBtQG0AbMBrQGzCLQBvAH0Cv8B8gEHAQkB8AHsAesB8AH3 + ARQBFQEUAewB8AEZArsB9BT/ARkBuwKRAbUBvAH0Bv8cAAL2Bf8B4gMZAdwBtAGzBtwCtAG8C/8B8gEH + AQkBGQH3AZEBGQHwAfcB6wGRAQcCGQG7AQkB9BX/AfQB8gHzAvQH/xwAAvYG/wP0ARkBuwG6AbsBtQO7 + A7UB8QP2CP8B8gEHAQkCGQEJAhkB8AG8AQkB8gIZAQkBvAH0If8cAAL2CP8C9AEZArwBBwK8AwkB8AHz + A/YI/wHyAe8DuwIHAbsEBwEJAbsB9wHvAfMh/xwAAfYG/wP2Av8B9AHzBfQC8wL/AvYD/wH2Bf8B8wEH + AfcDtQG7AbUCuwHvAbUB7wK1AQcB8yH/HAAH/wT2A/8D9gb/AvYD/wH2Bf8B9AHxAbwB8AO8AQkCGQHw + AbwBGQG8AfAB8xf/AvYJ/xwAB/8E9gT/A/YF/wL2Cv8B9ALzBvQC8wP0GP8B9gr/HAAH/wT2Bf8C9gX/ + AfYN/wH0Cf8B9CT/HAAH/wP2B/8C9gT/AfY8/xwAB/8E9gf/AfZB/xwAAUIBTQE+BwABPgMAASgDAAFw + AwABHAMAAQEBAAEBBQABwAEBFgAD//8AwgAL + + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + 17, 80 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + 1066, 103 + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + 1179, 60 + + + True + + + True + + + True + + + True + + + True + + + True + + + 1179, 60 + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + 729, 60 + + + 729, 60 + + + + iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABmSURBVEhL7ZTJCQAgDARToP1XoHV4gAHxoYJx42MHFnxl + wMcI+Z1Ql/raG0asy33tDUOlOhgUw6AYhrlYizQfvt22cGORrLcsnJvY7atPmQ/DoBgGxTDcxGPhlkWy + RgtnViTyCJEC4UCoEdfIj94AAAAASUVORK5CYII= + + + + 1311, 60 + + + 1435, 60 + + + 149, 103 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABC + DQAAAk1TRnQBSQFMAgEBAwEAAcgBAwHIAQMBHAEAARwBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + AwABcAMAARwDAAEBAQABCAUAAUABDBgAAYACAAGAAwACgAEAAYADAAGAAQABgAEAAoACAAPAAQABwAHc + AcABAAHwAcoBpgEAATMFAAEzAQABMwEAATMBAAIzAgADFgEAAxwBAAMiAQADKQEAA1UBAANNAQADQgEA + AzkBAAGAAXwB/wEAAlAB/wEAAZMBAAHWAQAB/wHsAcwBAAHGAdYB7wEAAdYC5wEAAZABqQGtAgAB/wEz + AwABZgMAAZkDAAHMAgABMwMAAjMCAAEzAWYCAAEzAZkCAAEzAcwCAAEzAf8CAAFmAwABZgEzAgACZgIA + AWYBmQIAAWYBzAIAAWYB/wIAAZkDAAGZATMCAAGZAWYCAAKZAgABmQHMAgABmQH/AgABzAMAAcwBMwIA + AcwBZgIAAcwBmQIAAswCAAHMAf8CAAH/AWYCAAH/AZkCAAH/AcwBAAEzAf8CAAH/AQABMwEAATMBAAFm + AQABMwEAAZkBAAEzAQABzAEAATMBAAH/AQAB/wEzAgADMwEAAjMBZgEAAjMBmQEAAjMBzAEAAjMB/wEA + ATMBZgIAATMBZgEzAQABMwJmAQABMwFmAZkBAAEzAWYBzAEAATMBZgH/AQABMwGZAgABMwGZATMBAAEz + AZkBZgEAATMCmQEAATMBmQHMAQABMwGZAf8BAAEzAcwCAAEzAcwBMwEAATMBzAFmAQABMwHMAZkBAAEz + AswBAAEzAcwB/wEAATMB/wEzAQABMwH/AWYBAAEzAf8BmQEAATMB/wHMAQABMwL/AQABZgMAAWYBAAEz + AQABZgEAAWYBAAFmAQABmQEAAWYBAAHMAQABZgEAAf8BAAFmATMCAAFmAjMBAAFmATMBZgEAAWYBMwGZ + AQABZgEzAcwBAAFmATMB/wEAAmYCAAJmATMBAANmAQACZgGZAQACZgHMAQABZgGZAgABZgGZATMBAAFm + AZkBZgEAAWYCmQEAAWYBmQHMAQABZgGZAf8BAAFmAcwCAAFmAcwBMwEAAWYBzAGZAQABZgLMAQABZgHM + Af8BAAFmAf8CAAFmAf8BMwEAAWYB/wGZAQABZgH/AcwBAAHMAQAB/wEAAf8BAAHMAQACmQIAAZkBMwGZ + AQABmQEAAZkBAAGZAQABzAEAAZkDAAGZAjMBAAGZAQABZgEAAZkBMwHMAQABmQEAAf8BAAGZAWYCAAGZ + AWYBMwEAAZkBMwFmAQABmQFmAZkBAAGZAWYBzAEAAZkBMwH/AQACmQEzAQACmQFmAQADmQEAApkBzAEA + ApkB/wEAAZkBzAIAAZkBzAEzAQABZgHMAWYBAAGZAcwBmQEAAZkCzAEAAZkBzAH/AQABmQH/AgABmQH/ + ATMBAAGZAcwBZgEAAZkB/wGZAQABmQH/AcwBAAGZAv8BAAHMAwABmQEAATMBAAHMAQABZgEAAcwBAAGZ + AQABzAEAAcwBAAGZATMCAAHMAjMBAAHMATMBZgEAAcwBMwGZAQABzAEzAcwBAAHMATMB/wEAAcwBZgIA + AcwBZgEzAQABmQJmAQABzAFmAZkBAAHMAWYBzAEAAZkBZgH/AQABzAGZAgABzAGZATMBAAHMAZkBZgEA + AcwCmQEAAcwBmQHMAQABzAGZAf8BAALMAgACzAEzAQACzAFmAQACzAGZAQADzAEAAswB/wEAAcwB/wIA + AcwB/wEzAQABmQH/AWYBAAHMAf8BmQEAAcwB/wHMAQABzAL/AQABzAEAATMBAAH/AQABZgEAAf8BAAGZ + AQABzAEzAgAB/wIzAQAB/wEzAWYBAAH/ATMBmQEAAf8BMwHMAQAB/wEzAf8BAAH/AWYCAAH/AWYBMwEA + AcwCZgEAAf8BZgGZAQAB/wFmAcwBAAHMAWYB/wEAAf8BmQIAAf8BmQEzAQAB/wGZAWYBAAH/ApkBAAH/ + AZkBzAEAAf8BmQH/AQAB/wHMAgAB/wHMATMBAAH/AcwBZgEAAf8BzAGZAQAB/wLMAQAB/wHMAf8BAAL/ + ATMBAAHMAf8BZgEAAv8BmQEAAv8BzAEAAmYB/wEAAWYB/wFmAQABZgL/AQAB/wJmAQAB/wFmAf8BAAL/ + AWYBAAEhAQABpQEAA18BAAN3AQADhgEAA5YBAAPLAQADsgEAA9cBAAPdAQAD4wEAA+oBAAPxAQAD+AEA + AfAB+wH/AQABpAKgAQADgAMAAf8CAAH/AwAC/wEAAf8DAAH/AQAB/wEAAv8CAAP/AQAc9BP2CP8B9Bv/ + AfQcAAT2A/8N9Aj/BPYX/wH2HP8cAAP2A/8B9AnzARkD8yP/AfYc/xwAAf8B9gP/AfQOCQEZAfQF/wH2 + G/8B9hz/HAAE/wH0AfIBuw20AQkB9AX/AfYB/wH2Nv8cAAX/AfEBtAyLAZEBCQH0BP8B9AEaBfYL/wH2 + Cv8B9hz/HAAD/wL2ARkBtAGtCrMBrQG0AbwE/wH2ARsBkwX2Av8B9gb/A/YK/wH2HP8cAAP/AvYBGQG0 + Aa0BtAK6AbQBuwEJAtsBCQHbAbMBtAG8BP8B9gEbAZoB9gH/A/YB9AHyA/EB8gEZAfIC8QPyBPEB8yH/ + HAAD/wL2ARkBtAGtAdsBugG7AbQCCQHcAdsB3AG6ArMBvAX/AfQBGgT/AfQB3QK1AgcCtQG7ArUBuwG1 + Ae8BuwG1Au8B8AH0IP8cAAT/AfYBGQG0Aa0C3AG7AZEBGQGRAbQB2wHcAbMBrAGzAbwF/wL2BP8B9AEJ + AbUBCQIZAt0BGQLdARkBCQHwARkB3QEJAfcBvAH0FP8B9AIZAfQI/xwABf8BGQG0Aa0B3AEZAQkBtAEZ + AosBtAHcAbMBrQG0AbwF/wP2A/8B9AEHAfcC8gHwARkB8gHwAfEC8wHxAbwBCQEZAQkB9wEHAfQT/wEZ + AbUCkQG7AfAB8wX/AfYcAAX/ARkBtAGtAdwCCQG0ARkBkQGzAdsB3AGzAawBtAG8B/8B9gH/AfYC/wEH + AfcB8AH3AewB9wHvAesB7AHwAbwB7AEUAeoBuwEJAbsBvA3/AfQB8gHzAfQC/wH0AbUBiwNsAbUB8QH0 + BP8B9hwABf8BGQG0Aa0C3AEJAbQBGQG0AboC2wGzAawBtAG8B/8C9gL/AfQBvAG1AbsB7AEUAesBEgEQ + AewB8QHtARABEQHsAQkBGQG7AQcN/wHyAe8BBwHyAvQBGQGLAWwBiwGRAosB7wHyBP8B9hwABf8BGQG0 + Aa0D3AG0ARkB3AHiAtsBswGsAbQBvAf/AvYC/wH0AQkBtQG7AewBQwEVAQ8BFAHvAfEB7AEQAZIB8gIZ + AbsBvAH/AfYL/wHxAewBrgEJAhkBtQFsAYsBCQEZAbQBiwG0AfEE/wH2HAAF/wHyAbQBrQG6AdsBugGz + AbQB2wG6AbMB2wGzAawBswEJAfQG/wH2A/8B9AEHAe8BvAHsAQ8CDgFDAe8B8AHsAREB9wHyAfQBGQH3 + AQcN/wHxAewBbAGuAZECrgFmAbQCGQG7AZABkQHwBP8B9hwABf8B8gG0AYsBswG0AbMBrQWzAa0BrAGz + AQkB9AX/AvYD/wH0AQcBuwG8AesBFQJtARAB7AEHAesBEQHsAfEB8wEJAfcBvAL2C/8B8QLsA7sBtAFs + AYsCCQG0AYsBtAHxBP8B9hwABf8B8gG0BYsBrQGLAa0DrAGtAbQBCQH0BP8C9gT/AfQBCQG1AQkBkQEV + AhMBQwH3AfMBkgFDARQB7AG7AQkB9wEHDf8B8gHvAQcBGQLiARkCiwG0AZECkAG7AfME/wH2HAAF/wHz + AgkBuwK6AYsBtAG6A9sCugG0AQkB9AT/AvYD/wL0AQkBuwEJAbUBbQHqAW0B7QHwAfQBvAHsAW0B6wG7 + AQkB9wEHDf8B9AHyAfME9AG0AYsBZgFsAYsBtAEZAfQF/xwABv8B4gMZAbsBkQG0AbsE2wG6AbQBCQH0 + BP8C9gT/AfQCuwEZAfICvAHwAfEB8wH0AfMB8AK8ARkBCQH3AQcU/wEZAbsCkQG1AbwB9Ab/HAAH/wPi + ARkBuwGRBrQBugHwAfYF/wH2BP8B9AG8AfcBCQjwAQkB8AG8AgkBtAEHFf8B9AHyAfMC9Af/HAAJ/wL0 + AfACvAEHAbsBvAEIAgkB8wL2BP8B9gT/AfQB8AHvArsG7wK7A+8CuwHwIf8cAAT/AfYG/wH0A/MBGQPz + AfQD9gr/AfMB8gPxAfAI8QHwAvEB9AH/AfYf/xwACf8B9gH/AfYB/wL2Bf8D9hn/AvQB/wP2Hv8cAAf/ + CPYF/wP2HP8C9hT/AvYJ/xwAB/8D9gL/AfYH/wL2HP8B9AP2E/8B9gr/HAAH/wH2Df8B9hj/AvYC/wH0 + A/Ye/xwAB/8B9g3/AfYE/wL2Ef8D9gL/BPYe/xwAFf8B9gT/AvYF/wP2Cf8D9gL/BPYe/xwAAUIBTQE+ + BwABPgMAASgDAAFwAwABHAMAAQEBAAEBBQABwAEBFgAD//8AwgAL + + + + 1311, 60 + + + 1435, 60 + + + 672, 103 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC4 + CQAAAk1TRnQBSQFMAgEBAgEAAcABAwHAAQMBGQEAARkBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + AwABZAMAARkDAAEBAQABCAUAAcQBCRgAAYACAAGAAwACgAEAAYADAAGAAQABgAEAAoACAAPAAQABwAHc + AcABAAHwAcoBpgEAATMFAAEzAQABMwEAATMBAAIzAgADFgEAAxwBAAMiAQADKQEAA1UBAANNAQADQgEA + AzkBAAGAAXwB/wEAAlAB/wEAAZMBAAHWAQAB/wHsAcwBAAHGAdYB7wEAAdYC5wEAAZABqQGtAgAB/wEz + AwABZgMAAZkDAAHMAgABMwMAAjMCAAEzAWYCAAEzAZkCAAEzAcwCAAEzAf8CAAFmAwABZgEzAgACZgIA + AWYBmQIAAWYBzAIAAWYB/wIAAZkDAAGZATMCAAGZAWYCAAKZAgABmQHMAgABmQH/AgABzAMAAcwBMwIA + AcwBZgIAAcwBmQIAAswCAAHMAf8CAAH/AWYCAAH/AZkCAAH/AcwBAAEzAf8CAAH/AQABMwEAATMBAAFm + AQABMwEAAZkBAAEzAQABzAEAATMBAAH/AQAB/wEzAgADMwEAAjMBZgEAAjMBmQEAAjMBzAEAAjMB/wEA + ATMBZgIAATMBZgEzAQABMwJmAQABMwFmAZkBAAEzAWYBzAEAATMBZgH/AQABMwGZAgABMwGZATMBAAEz + AZkBZgEAATMCmQEAATMBmQHMAQABMwGZAf8BAAEzAcwCAAEzAcwBMwEAATMBzAFmAQABMwHMAZkBAAEz + AswBAAEzAcwB/wEAATMB/wEzAQABMwH/AWYBAAEzAf8BmQEAATMB/wHMAQABMwL/AQABZgMAAWYBAAEz + AQABZgEAAWYBAAFmAQABmQEAAWYBAAHMAQABZgEAAf8BAAFmATMCAAFmAjMBAAFmATMBZgEAAWYBMwGZ + AQABZgEzAcwBAAFmATMB/wEAAmYCAAJmATMBAANmAQACZgGZAQACZgHMAQABZgGZAgABZgGZATMBAAFm + AZkBZgEAAWYCmQEAAWYBmQHMAQABZgGZAf8BAAFmAcwCAAFmAcwBMwEAAWYBzAGZAQABZgLMAQABZgHM + Af8BAAFmAf8CAAFmAf8BMwEAAWYB/wGZAQABZgH/AcwBAAHMAQAB/wEAAf8BAAHMAQACmQIAAZkBMwGZ + AQABmQEAAZkBAAGZAQABzAEAAZkDAAGZAjMBAAGZAQABZgEAAZkBMwHMAQABmQEAAf8BAAGZAWYCAAGZ + AWYBMwEAAZkBMwFmAQABmQFmAZkBAAGZAWYBzAEAAZkBMwH/AQACmQEzAQACmQFmAQADmQEAApkBzAEA + ApkB/wEAAZkBzAIAAZkBzAEzAQABZgHMAWYBAAGZAcwBmQEAAZkCzAEAAZkBzAH/AQABmQH/AgABmQH/ + ATMBAAGZAcwBZgEAAZkB/wGZAQABmQH/AcwBAAGZAv8BAAHMAwABmQEAATMBAAHMAQABZgEAAcwBAAGZ + AQABzAEAAcwBAAGZATMCAAHMAjMBAAHMATMBZgEAAcwBMwGZAQABzAEzAcwBAAHMATMB/wEAAcwBZgIA + AcwBZgEzAQABmQJmAQABzAFmAZkBAAHMAWYBzAEAAZkBZgH/AQABzAGZAgABzAGZATMBAAHMAZkBZgEA + AcwCmQEAAcwBmQHMAQABzAGZAf8BAALMAgACzAEzAQACzAFmAQACzAGZAQADzAEAAswB/wEAAcwB/wIA + AcwB/wEzAQABmQH/AWYBAAHMAf8BmQEAAcwB/wHMAQABzAL/AQABzAEAATMBAAH/AQABZgEAAf8BAAGZ + AQABzAEzAgAB/wIzAQAB/wEzAWYBAAH/ATMBmQEAAf8BMwHMAQAB/wEzAf8BAAH/AWYCAAH/AWYBMwEA + AcwCZgEAAf8BZgGZAQAB/wFmAcwBAAHMAWYB/wEAAf8BmQIAAf8BmQEzAQAB/wGZAWYBAAH/ApkBAAH/ + AZkBzAEAAf8BmQH/AQAB/wHMAgAB/wHMATMBAAH/AcwBZgEAAf8BzAGZAQAB/wLMAQAB/wHMAf8BAAL/ + ATMBAAHMAf8BZgEAAv8BmQEAAv8BzAEAAmYB/wEAAWYB/wFmAQABZgL/AQAB/wJmAQAB/wFmAf8BAAL/ + AWYBAAEhAQABpQEAA18BAAN3AQADhgEAA5YBAAPLAQADsgEAA9cBAAPdAQAD4wEAA+oBAAPxAQAD+AEA + AfAB+wH/AQABpAKgAQADgAMAAf8CAAH/AwAC/wEAAf8DAAH/AQAB/wEAAv8CAAP/AQAB9AH2Av8B9C3/ + MgAy/zIAMv8yADL/MgAG/wH0AvMC9ATzAvQB8wH0H/8yAAX/AfQB8wIHB7sCBwG8ARke/zIAAvYE/wG7 + AZEFtQG7BLUBkQEJHv8yAAL2BP8CuwEJCRkBkQEZHv8yAAL2BP8BuwEJARkCuwEZAbwCkQG8AfQBGQGR + ARkU/wIZAfQH/zIABv8BBwG8ARkC7AHyAewCFAHrAfEBGQGRARkS/wEZAbsBkQGuAZEBvAb/MgAG/wEH + AbwB8wFtAewBvAEQARIB6wEUAe8B9AGRAfEN/wG8AfID/wG7AYsBbAGLAWwBrgHyBf8yAAb/AQcBvAHy + AW0B7AHvAQ4BvAHyAewB7wH0Ae0B8Q3/Au0DGQGRAWwBtAG7AZEBbAG7Bf8yAAb/AgcB8wFtAewB7wEP + AfEE8wHtAfIN/wHrAWYB9wG1AbQCiwEJARkBCQFsAZEF/zIABv8BBwG8AfIBbQHrAe0BDgHxAfQB8wL0 + Ae0B8Qz/AfQB7AFsArUBtAKLAQkBGQG7AWwBtAX/MgAG/wEHAbwB8gFtAesB7wEOAbwB8QHtAbwB9AGR + AfEN/wHtAbUBGQHiARkBtAGLAbQBugGLAWwBCQX/MgAG/wEHAbwB8gFtAewB8AEQAesB7AETAQcBGQGR + ARkN/wHwAfQC/wH0AQkBiwNsAbQBGQX/MgAG/wG7AQkB8gHrAewB8wHqAUMBZgFtAfABGQGRARkS/wH0 + AQkCkQG1ARkG/zIABv8BuwG8ARkBtQH3AhkCkQEJAhkBtAEZFP8B9An/MgAG/wG7AQkEGQH0BBkB4gG0 + ARke/zIABv8BvAGRAZIBkQH3ApEBtQKSAvcBrgG8Hv8yAAH2Bf8B8AHvB7sBBwK7AbUB8x7/MgAB9gX/ + AfQB8wHyAfMB8gLzARkD8wHyARkV/wH2Cf8yAAj/AfQf/wH2Cf8yADL/MgAy/zIAAUIBTQE+BwABPgMA + ASgDAAFkAwABGQMAAQEBAAEBBQABkAEBFgAD//8AkgAL + + + + 861, 60 + + + 149, 54 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAA + CAAAAk1TRnQBSQFMAwEBAAHIAQMByAEDARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA + AUADAAEQAwABAQEAAQgGAAEEGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA + AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA + AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm + AwABmQMAAcwCAAEzAwACMwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZ + AgABZgHMAgABZgH/AgABmQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFm + AgABzAGZAgACzAIAAcwB/wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEz + AQABmQEAATMBAAHMAQABMwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFm + AgABMwFmATMBAAEzAmYBAAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFm + AQABMwKZAQABMwGZAcwBAAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEA + ATMBzAH/AQABMwH/ATMBAAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFm + AQABZgEAAWYBAAGZAQABZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFm + ATMBzAEAAWYBMwH/AQACZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFm + AQABZgKZAQABZgGZAcwBAAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEA + AWYB/wIAAWYB/wEzAQABZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZ + AQABmQEAAZkBAAHMAQABmQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEz + AQABmQEzAWYBAAGZAWYBmQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/ + AQABmQHMAgABmQHMATMBAAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEA + AZkBzAFmAQABmQH/AZkBAAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHM + AQABzAEAAZkBMwIAAcwCMwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFm + ATMBAAGZAmYBAAHMAWYBmQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZ + AQABzAGZAcwBAAHMAZkB/wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/ + ATMBAAGZAf8BZgEAAcwB/wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHM + ATMCAAH/AjMBAAH/ATMBZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJm + AQAB/wFmAZkBAAH/AWYBzAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHM + AQAB/wGZAf8BAAH/AcwCAAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEA + AcwB/wFmAQAC/wGZAQAC/wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEA + ASEBAAGlAQADXwEAA3cBAAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7 + Af8BAAGkAqABAAOAAwAB/wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA/8BAAL2B/8B9Ab/MAAB9gL/ + AfQIGQT/MAAD/wEZB7MBtAP/AfYwAAL/AfYBCQGsAbMBrQGLA60BswP/ARowAAL/AfYBCQGsAbQBugEJ + AtwBtAGzAf8B9gH/ARswAAP/AQkBrAEJAbQB8AG0AdwBrQGzA/8B9jAAA/8BCQGtAdwBugHwAbMB3AGt + AbME/zAAA/8BCQGtAdwBugEZAeIB2wGsAbME/zAAA/8BCQGtAbQEswGsAbME/zAAA/8BGQK0AbMBtAK6 + AbMBtAP/AfYwAAT/AeIBGQG6A7QBugG0A/8B9jAABv8B8gEHAbsDCQH2A/8wAAX/AfYG/wH2A/8wAAT/ + A/YB/wH2A/8B9gP/MAAE/wH2B/8B9gP/MAAP/wH2MAABQgFNAT4HAAE+AwABKAMAAUADAAEQAwABAQEA + AQEFAAGAFwAD/4EACw== + + + + 1066, 80 + + + True + + + True + + + True + + + 17, 146 + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + 141, 146 + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGPC/xhBQAAAL9JREFUSEu1 + 0LEJAkEQheFDsQmtw8AKDDxM7UKEA8FQzO1E69NEfQM7sMq/aPAc+JJ/vL09u+Wu/yuMThidMDphdMLo + hNEJoxNGJ4xBM5Yp7ZJmJDPaJYxBc5aHDI39RC7ylDX9JmAMmm15OLy9RBOHX8vuJvN6X8OYNMdySDiU + Vh9+l+btA8aa5lQOC3vJvyVuvqJnahg/aeovCV9vnjASTb7k58MDxhbNRha0a8HohNEJoxNGJ4xOGJ0w + +vTdCxECMzUpwrU8AAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGPC/xhBQAAAL9JREFUSEu1 + 0LEJAkEQheFDsQmtw8AKDDxM7UKEA8FQzO1E69NEfQM7sMq/aPAc+JJ/vL09u+Wu/yuMThidMDphdMLo + hNEJoxNGJ4xBM5Yp7ZJmJDPaJYxBc5aHDI39RC7ylDX9JmAMmm15OLy9RBOHX8vuJvN6X8OYNMdySDiU + Vh9+l+btA8aa5lQOC3vJvyVuvqJnahg/aeovCV9vnjASTb7k58MDxhbNRha0a8HohNEJoxNGJ4xOGJ0w + +vTdCxECMzUpwrU8AAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + 79 + + \ No newline at end of file diff --git a/SOURCE/Plugin/LICENSE b/SOURCE/Plugin/LICENSE new file mode 100644 index 0000000..8b23445 --- /dev/null +++ b/SOURCE/Plugin/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2019 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/SOURCE/Plugin/MWController.cs b/SOURCE/Plugin/MWController.cs new file mode 100644 index 0000000..6948026 --- /dev/null +++ b/SOURCE/Plugin/MWController.cs @@ -0,0 +1,146 @@ +using System; +using System.Collections.Generic; + +namespace Aml.Editor.Plugin +{ + /// + /// This class passes the inputs of the GUIs to where needed and it is in controll of what is displayed at the screen + /// + public class MWController + { + // the (initialised) GUIs + + + + private DeviceDescription deviceDescriptionForm; + + + // the interface class to the AML Editor + private ModellingWizard modellingWizard; + + // the MWData instance of the the plugin which handles all the AMLX stuff + private MWData mWData; + + // the list of the currently loaded amlx devices / interfaces + // these will be displayed on the start GUI + private List devices = new List(); + + /// + /// Init the controller and reload all amlx devices + /// + /// + public MWController(ModellingWizard modellingWizard) + { + this.modellingWizard = modellingWizard; + mWData = new MWData(this); + + } + + /// + /// Create the new CreateDevice GUI or return the previously created GUI + /// + /// the CreateDevice GUI for this session + + /// + /// create the new DeviceDescription GUI or return the previously created GUI + /// + public DeviceDescription GetDeviceDescriptionForm() + { + if (deviceDescriptionForm == null) + { + deviceDescriptionForm = new DeviceDescription(this); + } + return deviceDescriptionForm; + } + + /// + /// + /// + /// + /// + /// + public String CreateDeviceOnClick(MWDevice newDevice, bool isEdit) + { + string result = ""; + + if (newDevice.deviceName != null && newDevice.vendorName != null) + { + // create the device + result = mWData.CreateDevice(newDevice, isEdit); + } + + // update the device list + if (isEdit) + { + + } + else + { + devices.Add(newDevice); + + } + + + return result; + + } + + /// + /// Show the correct GUI for the selected device + /// + /// The index of the selected item in the dropdown + + /// + /// Reload all .amlx files in ./modellingwizard/ and update the dropdown. + /// + + + /// + /// Switch the displayed + /// + /// the GUI Type to display + public void ChangeGui(MWGUIType targetGUI) + { + switch (targetGUI) + { + + case MWGUIType.DeviceDescription: + modellingWizard.changeGUI(GetDeviceDescriptionForm()); + break; + + } + } + + /// + /// Enum to represent the GUI + /// + public enum MWGUIType { CreateDevice, CreateInterface, Start, DeviceDescription } + + /// + /// Call the Converter with the given file + /// + /// the full path to the file + /// whether the file is an IODD or an GSD file + /// + public string importFile(string filename, MWData.MWFileType filetype) + { + + // call the correct import function for the file type + string result = null; + switch (filetype) + { + case MWData.MWFileType.IODD: + result = mWData.ImportIODD2AML(filename); + break; + case MWData.MWFileType.GSD: + result = mWData.ImportGSD2AML(filename); + break; + default: + result = "Invalid Filetype"; + break; + } + + return result; + } + } +} diff --git a/SOURCE/Plugin/MWData.cs b/SOURCE/Plugin/MWData.cs new file mode 100644 index 0000000..c6c8e86 --- /dev/null +++ b/SOURCE/Plugin/MWData.cs @@ -0,0 +1,1055 @@ +using Aml.Engine.AmlObjects; +using Aml.Engine.CAEX; +using System; +using System.Collections.Generic; +using System.IO; +using System.IO.Packaging; +using System.Linq; +using System.Reflection; +using System.Text.RegularExpressions; +using System.Windows.Forms; + +namespace Aml.Editor.Plugin +{ + public class MWData : DeviceDescription + { + // holds the controller to report created devices to + private readonly MWController mWController; + + + /// + /// Create the MWData Object + /// + /// the MWController to report to + public MWData(MWController mWController) + { + this.mWController = mWController; + } + + /// + /// Read the all attributes in and write the values into + /// + /// the object to write the data into + /// the list of attributes + + /// + /// Read the all attributes in and write the values into + /// + /// the object to write the data into + /// the list of attributes + private void fillDeviceWithData(MWDevice device, AttributeSequence attributes) + { + // iterate over all atttributes + /*foreach (AttributeType attribute in attributes) + { + // apply the value of the attribute to the correct interface parameter + switch (attribute.Name) + { + + } + }*/ + } + + /// + /// Create the AMLX File with the correct AML File and optional pictures + /// + /// The device which will be created + /// true if an amlx file get update, false if a new file will be created + /// + public string CreateDevice(MWDevice device, bool isEdit) + { + + CAEXDocument document = null; + AutomationMLContainer amlx = null; + + // Init final .amlx Filepath + //first of all create a folder on "Vendor Name" + string vendorCompanyName = device.vendorName; + + string amlFilePath; + + string fileName = device.fileName; + + if (fileName.Contains(".amlx")) + { + amlFilePath = System.IO.Path.Combine(device.filepath, fileName); + } + else + { + amlFilePath = System.IO.Path.Combine(device.filepath, fileName + ".amlx"); + } + + + + FileInfo file = new FileInfo(amlFilePath); + + + + // Create directory if it's not existing + file.Directory.Create(); + + + // Init CAEX Document + if (isEdit) + { + // Load the amlx file + amlx = new AutomationMLContainer(amlFilePath, FileMode.Open); + + IEnumerable rootParts = amlx.GetPartsByRelationShipType(AutomationMLContainer.RelationshipType.Root); + + // We expect the aml to only have one root part + if (rootParts.First() != null) + { + PackagePart part = rootParts.First(); + + // load the aml file as an CAEX document + document = CAEXDocument.LoadFromStream(part.GetStream()); + } + else + { + // the amlx contains no aml file + document = CAEXDocument.New_CAEXDocument(); + } + } + else + { + // create a new CAEX document + document = CAEXDocument.New_CAEXDocument(); + try + { + amlx = new AutomationMLContainer(amlFilePath, FileMode.Create); + } + catch (Exception) + { + + } + + + } + + + + // Init the default Libs + AutomationMLBaseRoleClassLibType.RoleClassLib(document) ; + AutomationMLInterfaceClassLibType.InterfaceClassLib(document) ; + + var structureRoleFamilyType = AutomationMLBaseRoleClassLibType.RoleClassLib(document).Structure; + + + SystemUnitFamilyType systemUnitClass = null; + // Create the SystemUnitClass for our device + if (!isEdit) + { + systemUnitClass = document.CAEXFile.SystemUnitClassLib.Append("ComponentSystemUnitClassLib").SystemUnitClass.Append(device.deviceName); + + + device.listWithURIConvertedToString = new List(); + foreach (AttachablesDataGridViewParameters eachparameter in device.dataGridAttachablesParametrsList) + { + + if (eachparameter.FilePath.Contains("https://") || eachparameter.FilePath.Contains("http://") || eachparameter.FilePath.Contains("www") || eachparameter.FilePath.Contains("WWW")) + { + interneturl(eachparameter.FilePath, eachparameter.ElementName.ToString(), "ExternalDataConnector", systemUnitClass); + } + else + { + + Boolean myBool; + Boolean.TryParse(eachparameter.AddToFile, out myBool); + + if (myBool == true) + { + + } + + Uri eachUri = null; + AttachablesDataGridViewParameters par = new AttachablesDataGridViewParameters(); + eachUri = createPictureRef(eachparameter.FilePath, eachparameter.ElementName.ToString(), "ExternalDataConnector", systemUnitClass); + par.ElementName = eachUri.ToString(); + par.FilePath = eachparameter.FilePath; + + device.listWithURIConvertedToString.Add(par); + + } + + } + + foreach (var pair in device.DictionaryForRoleClassofComponent) + { + + Match numberfromElectricalConnectorType = Regex.Match(pair.Key.ToString(), @"\((\d+)\)"); + string initialnumberbetweenparanthesisofElectricalConnectorType = + numberfromElectricalConnectorType.Groups[1].Value; + // string stringinparanthesis = Regex.Match(pair.Key.ToString(), @"\{(\d+)\}").Groups[1].Value; + + string supportedRoleClassFromDictionary = Regex.Replace(pair.Key.ToString(), @"\(.+?\)", ""); + supportedRoleClassFromDictionary = Regex.Replace(supportedRoleClassFromDictionary, @"\{.+?\}", ""); + + + + var SRC = systemUnitClass.SupportedRoleClass.Append(); + + + + var attributesOfSystemUnitClass = systemUnitClass.Attribute; + + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + + if (item.AttributePath.Contains("/") || item.AttributePath.Contains(".")) + { + int count = 2; + int counter = 0; + Stack stack = new Stack(); + string searchAttributeName = + item.AttributePath.Substring(0, item.AttributePath.Length - item.Name.Length); + + foreach (var character in searchAttributeName.Reverse()) + { + + if (!char.IsLetterOrDigit(character)) + { + counter++; + if (counter == count) + { + break; + } + + } + + if (char.IsLetterOrDigit(character)) + { + stack.Push(character); + } + + } + + string finalAttributeName = new string(stack.ToArray()); + + foreach (var attribute in systemUnitClass.Attribute) + { + if (attribute.Name == finalAttributeName) + { + var eachattribute = attribute.Attribute.Append(item.Name.ToString()); + eachattribute.Value = item.Value; + eachattribute.DefaultValue = item.Default; + eachattribute.Unit = item.Unit; + eachattribute.AttributeDataType = item.DataType; + eachattribute.Description = item.Description; + eachattribute.Copyright = item.CopyRight; + + eachattribute.ID = item.ID; + + foreach (var val in item.RefSemanticList.Elements) + { + var refsem = eachattribute.RefSemantic.Append(); + refsem.CorrespondingAttributePath = val.FirstAttribute.Value; + + } + + + + SRC.RefRoleClassPath = item.SupportesRoleClassType; + + } + + if (attribute.Attribute.Exists) + { + + SearchForAttributesInsideAttributesofAutomationComponent(finalAttributeName, + attribute, item, SRC); + } + } + + } + else + { + var eachattribute = attributesOfSystemUnitClass.Append(item.Name.ToString()); + eachattribute.Value = item.Value; + eachattribute.DefaultValue = item.Default; + eachattribute.Unit = item.Unit; + eachattribute.AttributeDataType = item.DataType; + eachattribute.Description = item.Description; + eachattribute.Copyright = item.CopyRight; + + eachattribute.ID = item.ID; + + + foreach (var val in item.RefSemanticList.Elements) + { + var refsem = eachattribute.RefSemantic.Append(); + refsem.CorrespondingAttributePath = val.FirstAttribute.Value; + } + + + SRC.RefRoleClassPath = item.SupportesRoleClassType; + } + + + } + } + + + foreach (var pairofList in device.DictionaryForExternalInterfacesUnderRoleClassofComponent) + { + Match numberfromElectricalConnectorPins = Regex.Match(pairofList.Key.ToString(), @"\((\d+)\)"); + string initialnumberbetweenparanthesisElectricalConnectorPins = + numberfromElectricalConnectorPins.Groups[1].Value; + + string electricalConnectorPinName = Regex.Replace(pairofList.Key.ToString(), @"\(.*?\)", ""); + electricalConnectorPinName = Regex.Replace(electricalConnectorPinName, @"\{.*?\}", ""); + electricalConnectorPinName = + electricalConnectorPinName.Replace(supportedRoleClassFromDictionary, ""); + } + } + } + else + { + // check if our format is given in the amlx file if not: create it + bool foundSysClassLib = false; + foreach (var sysclasslib in document.CAEXFile.SystemUnitClassLib) + { + if (sysclasslib.Name.Equals("ComponentSystemUnitClassLib")) + { + bool foundSysClass = false; + foreach (var sysclass in sysclasslib.SystemUnitClass) + { + if (sysclass.Name.Equals(device.deviceName)) + { + foundSysClass = true; + systemUnitClass = sysclass; + break; + } + } + if (!foundSysClass) + systemUnitClass = sysclasslib.SystemUnitClass.Append(device.deviceName); + foundSysClassLib = true; + } + } + if (!foundSysClassLib) + systemUnitClass = document.CAEXFile.SystemUnitClassLib.Append("ComponentSystemUnitClassLib").SystemUnitClass.Append(device.deviceName); + } + + // Create the internalElement Interfaces + if (device.vendorName != null) + { + InternalElementType electricalInterface = null; + RoleRequirementsType roleRequirements = null ; + foreach (var internalElement in systemUnitClass.InternalElement) + { + if (internalElement.Name.Equals("Interfaces")) + { + electricalInterface = internalElement; + roleRequirements = electricalInterface.RoleRequirements.Append(); + roleRequirements.RefBaseRoleClassPath = structureRoleFamilyType.CAEXPath(); + break; + } + } + if (electricalInterface == null) + electricalInterface = systemUnitClass.InternalElement.Append("Interfaces"); + roleRequirements = electricalInterface.RoleRequirements.Append(); + + roleRequirements.RefBaseRoleClassPath = structureRoleFamilyType.CAEXPath(); + + foreach (var pair in device.DictionaryForInterfaceClassesInElectricalInterfaces) + { + + InternalElementType internalElementofElectricalConnectorType = null; + ExternalInterfaceType electricalConnectorType = null; + + ExternalInterfaceType electricalConnectorPins = null; + + Match numberfromElectricalConnectorType = Regex.Match(pair.Key.ToString(), @"\((\d+)\)"); + string initialnumberbetweenparanthesisofElectricalConnectorType = numberfromElectricalConnectorType.Groups[1].Value; + + + string electricalConnectorTypeName = Regex.Replace(pair.Key.ToString(), @"\(.+?\)", ""); + electricalConnectorTypeName = Regex.Replace(electricalConnectorTypeName, @"\{.+?\}", ""); + + internalElementofElectricalConnectorType = electricalInterface.InternalElement.Append(electricalConnectorTypeName); + + electricalConnectorType = internalElementofElectricalConnectorType.ExternalInterface.Append(electricalConnectorTypeName); + + var attributesOfConnectorType = electricalConnectorType.Attribute; + + foreach (var valueList in pair.Value) + { + foreach (var item in valueList) + { + if (item.AttributePath.Contains("/") || item.AttributePath.Contains(".")) + { + int count = 2; + int counter = 0; + Stack stack = new Stack(); + string searchAttributeName = item.AttributePath.Substring(0, item.AttributePath.Length - item.Name.Length); + + foreach (var character in searchAttributeName.Reverse()) + { + + if (!char.IsLetterOrDigit(character)) + { + counter++; + if (counter == count) + { + break; + } + + } + if (char.IsLetterOrDigit(character)) + { + stack.Push(character); + } + + } + + string finalAttributeName = new string(stack.ToArray()); + + foreach (var attribute in electricalConnectorType.Attribute) + { + if (attribute.Name == finalAttributeName) + { + var eachattribute = attribute.Attribute.Append(item.Name.ToString()); + eachattribute.Value = item.Value; + eachattribute.DefaultValue = item.Default; + eachattribute.Unit = item.Unit; + eachattribute.AttributeDataType = item.DataType; + eachattribute.Description = item.Description; + eachattribute.Copyright = item.CopyRight; + + eachattribute.ID = item.ID; + + foreach (var val in item.RefSemanticList.Elements) + { + var refsem = eachattribute.RefSemantic.Append(); + refsem.CorrespondingAttributePath = val.FirstAttribute.Value; + + } + + electricalConnectorType.RefBaseClassPath = item.RefBaseClassPath; + + } + if (attribute.Attribute.Exists) + { + + SearchAttributesInsideAttributesOFElectricConnectorType(finalAttributeName, attribute, item, electricalConnectorType); + } + } + + } + else + { + var eachattribute = attributesOfConnectorType.Append(item.Name.ToString()); + eachattribute.Value = item.Value; + eachattribute.DefaultValue = item.Default; + eachattribute.Unit = item.Unit; + eachattribute.AttributeDataType = item.DataType; + eachattribute.Description = item.Description; + eachattribute.Copyright = item.CopyRight; + + eachattribute.ID = item.ID; + + foreach (var val in item.RefSemanticList.Elements) + { + var refsem = eachattribute.RefSemantic.Append(); + refsem.CorrespondingAttributePath = val.FirstAttribute.Value; + + } + + electricalConnectorType.RefBaseClassPath = item.RefBaseClassPath; + } + + + + } + } + + + foreach (var pairofList in device.DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces) + { + Match numberfromElectricalConnectorPins = Regex.Match(pairofList.Key.ToString(), @"\((\d+)\)"); + string initialnumberbetweenparanthesisElectricalConnectorPins = numberfromElectricalConnectorPins.Groups[1].Value; + + string electricalConnectorPinName = Regex.Replace(pairofList.Key.ToString(), @"\(.*?\)", ""); + electricalConnectorPinName = Regex.Replace(electricalConnectorPinName, @"\{.*?\}", ""); + electricalConnectorPinName = electricalConnectorPinName.Replace(electricalConnectorTypeName,""); + + + + + if (initialnumberbetweenparanthesisofElectricalConnectorType == initialnumberbetweenparanthesisElectricalConnectorPins) + { + electricalConnectorPins = electricalConnectorType.ExternalInterface.Append(electricalConnectorPinName); + + var attributesOfConnectorPins = electricalConnectorPins.Attribute; + + foreach (var valueList in pairofList.Value) + { + foreach (var item in valueList) + { + if (item.AttributePath.Contains("/") || item.AttributePath.Contains(".")) + { + int count = 2; + int counter = 0; + Stack stack = new Stack(); + string searchAttributeName = item.AttributePath.Substring(0, item.AttributePath.Length - item.Name.Length); + + foreach (var character in searchAttributeName.Reverse()) + { + + if (!char.IsLetterOrDigit(character)) + { + counter++; + if (counter == count) + { + break; + } + + } + if (char.IsLetterOrDigit(character)) + { + stack.Push(character); + } + + } + + string finalAttributeName = new string(stack.ToArray()); + + foreach (var attribute in electricalConnectorPins.Attribute) + { + if (attribute.Name == finalAttributeName) + { + var eachattribute = attribute.Attribute.Append(item.Name.ToString()); + eachattribute.Value = item.Value; + eachattribute.DefaultValue = item.Default; + eachattribute.Unit = item.Unit; + eachattribute.AttributeDataType = item.DataType; + eachattribute.Description = item.Description; + eachattribute.Copyright = item.CopyRight; + + eachattribute.ID = item.ID; + + foreach (var val in item.RefSemanticList.Elements) + { + var refsem = eachattribute.RefSemantic.Append(); + refsem.CorrespondingAttributePath = val.FirstAttribute.Value; + + } + + electricalConnectorPins.RefBaseClassPath = item.RefBaseClassPath; + + } + if (attribute.Attribute.Exists) + { + + SearchAttributesInsideAttributesOFElectricConnectorType(finalAttributeName, attribute, item, electricalConnectorPins); + } + } + + } + else + { + var eachattribute = attributesOfConnectorPins.Append(item.Name.ToString()); + eachattribute.Value = item.Value; + eachattribute.DefaultValue = item.Default; + eachattribute.Unit = item.Unit; + eachattribute.AttributeDataType = item.DataType; + eachattribute.Description = item.Description; + eachattribute.Copyright = item.CopyRight; + + eachattribute.ID = item.ID; + + foreach (var val in item.RefSemanticList.Elements) + { + var refsem = eachattribute.RefSemantic.Append(); + refsem.CorrespondingAttributePath = val.FirstAttribute.Value; + + } + + electricalConnectorPins.RefBaseClassPath = item.RefBaseClassPath; + } + } + } + } + } + } + } + + string[] splitName = fileName.Split('\\'); + string newFileName = splitName[splitName.Length - 1]; + + // create the PackageUri for the root aml file + Uri partUri = PackUriHelper.CreatePartUri(new Uri("/" + newFileName + "-root.aml", UriKind.Relative)); + + // create the aml file as a temporary file + string path = Path.GetTempFileName(); + document.SaveToFile(path, true); + + if (isEdit) + { + // delete the old aml file + amlx.Package.DeletePart(partUri); + + // delete all files in the amlx package. + // Directory.Delete(Path.GetFullPath(amlx.ContainerFilename), true); + + } + + // write the new aml file into the package + PackagePart root = amlx.AddRoot(path, partUri); + + + if (!isEdit) + { + foreach (AttachablesDataGridViewParameters listWithUri in device.listWithURIConvertedToString) + { + if (listWithUri.ElementName != null) + { + Uri newuri = null; + newuri = new Uri(listWithUri.ElementName, UriKind.Relative); + amlx.AddAnyContent(root, listWithUri.FilePath.ToString(), newuri); + } + } + } + DirectoryInfo directory = new DirectoryInfo(Path.GetDirectoryName(amlFilePath)); + + foreach (FileInfo fileInfos in directory.GetFiles()) + { + if (fileInfos.Extension != ".amlx") + { + fileInfos.Delete(); + } + } + + + amlx.Save(); + amlx.Close(); + + if (isEdit) + { + return "Sucessfully updated device!\nFilepath " + amlFilePath; + } + else + { + return "Device description file created!\nFilepath " + amlFilePath; + } + + } + + public void SearchForAttributesInsideAttributesofAutomationComponent(string searchName, AttributeType attribute, ClassOfListsFromReferencefile item, SupportedRoleClassType SRC) + { + foreach (var nestedAttribute in attribute.Attribute) + { + if (nestedAttribute.Name == searchName) + { + var eachattribute = nestedAttribute.Attribute.Append(item.Name.ToString()); + eachattribute.Value = item.Value; + eachattribute.DefaultValue = item.Default; + eachattribute.Unit = item.Unit; + eachattribute.AttributeDataType = item.DataType; + eachattribute.Description = item.Description; + eachattribute.Copyright = item.CopyRight; + + eachattribute.ID = item.ID; + + foreach (var val in item.RefSemanticList.Elements) + { + var refsem = eachattribute.RefSemantic.Append(); + refsem.CorrespondingAttributePath = val.FirstAttribute.Value; + } + + + SRC.RefRoleClassPath = item.SupportesRoleClassType; + } + if (nestedAttribute.Attribute.Exists) + { + SearchForAttributesInsideAttributesofAutomationComponent(searchName, nestedAttribute, item, SRC); + } + } + + } + + public void SearchAttributesInsideAttributesOFElectricConnectorType(string searchName, AttributeType attribute, ClassOfListsFromReferencefile item, ExternalInterfaceType electricConnectorType) + { + foreach (var nestedAttribute in attribute.Attribute) + { + + if (nestedAttribute.Name == searchName) + { + var eachattribute = nestedAttribute.Attribute.Append(item.Name.ToString()); + eachattribute.Value = item.Value; + eachattribute.DefaultValue = item.Default; + eachattribute.Unit = item.Unit; + eachattribute.AttributeDataType = item.DataType; + eachattribute.Description = item.Description; + eachattribute.Copyright = item.CopyRight; + + eachattribute.ID = item.ID; + foreach (var val in item.RefSemanticList.Elements) + { + var refsem = eachattribute.RefSemantic.Append(); + refsem.CorrespondingAttributePath = val.FirstAttribute.Value; + + } + + + electricConnectorType.RefBaseClassPath = item.RefBaseClassPath; + + } + + if (nestedAttribute.Attribute.Exists) + { + SearchAttributesInsideAttributesOFElectricConnectorType(searchName, nestedAttribute, item, electricConnectorType); + } + } + } + + /// + /// Takes the url of the picture and setup in the value attribute of the corresponding internal element . + /// + /// the absolut path to the picture or document in the internet + /// Picturetyp like 'DevicePicture' or 'DeviceIcon' and document type like "Short guide" or "Bill of materials" etc + /// The name of the externalElement + /// the systemUnitClass to insert the structure into + /// + public void interneturl(string url, string urltype, string externalname, SystemUnitClassType systemUnitClass) + { + + // Create the InternalElement which refers to the picture + InternalElementType urlIE = null; + foreach (var internalElement in systemUnitClass.InternalElement) + { + if (internalElement.Name.Equals(urltype)) + { + urlIE = internalElement; + break; + } + } + if (urlIE == null) + urlIE = systemUnitClass.InternalElement.Append(urltype); + + // create the externalelement + ExternalInterfaceType urlEI = null; + foreach (var externalinterface in urlIE.ExternalInterface) + { + if (externalinterface.Name.Equals(externalname)) + { + urlEI = externalinterface; + break; + } + } + if (urlEI == null) + urlEI = urlIE.ExternalInterface.Append(externalname); + + urlEI.RefBaseClassPath = AutomationMLInterfaceClassLib.ExternalDataConnector; + + // create the refURI Attribute with the value of the path + + AttributeType urlAtt = null; + if (urlEI.Attribute.GetCAEXAttribute("refURI") == null) + { + urlAtt = urlEI.Attribute.Append("refURI"); + } + urlAtt.AttributeDataType = "xs:anyURI"; + urlAtt.Value = url.ToString(); + + } + + /// + /// Creates the Structur to reference a picture and set the correct value . + /// If the structur is already there, it will only update the value. + /// + /// the absolut path to the picture + /// Picturetyp like 'DevicePicture' or 'DeviceIcon' + /// The name of the externalElement + /// the systemUnitClass to insert the structure into + /// + public Uri createPictureRef(string pic, string pictype, string externalname, SystemUnitClassType systemUnitClass) + { + // create the package paths + FileInfo pictureInfo = new FileInfo(pic); + Uri picturePath = new Uri(pictureInfo.Name, UriKind.Relative); + Uri picturePart = PackUriHelper.CreatePartUri(picturePath); + + // Create the InternalElement which refers to the picture + InternalElementType pictureIE = null; + foreach (var internalElement in systemUnitClass.InternalElement) + { + if (internalElement.Name.Equals(pictype)) + { + pictureIE = internalElement; + break; + } + } + if (pictureIE == null) + pictureIE = systemUnitClass.InternalElement.Append(pictype); + + // create the externalelement + ExternalInterfaceType pictureEI = null; + foreach (var externalinterface in pictureIE.ExternalInterface) + { + if (externalinterface.Name.Equals(externalname)) + { + pictureEI = externalinterface; + break; + } + } + if (pictureEI == null) + pictureEI = pictureIE.ExternalInterface.Append(externalname); + + pictureEI.RefBaseClassPath = AutomationMLInterfaceClassLib.ExternalDataConnector; + + // create the refURI Attribute with the value of the path + + AttributeType pictureAtt = null; + if (pictureEI.Attribute.GetCAEXAttribute("refURI") == null) + { + pictureAtt = pictureEI.Attribute.Append("refURI"); + } + pictureAtt.AttributeDataType = "xs:anyURI"; + pictureAtt.Value = picturePart.ToString(); + + + return picturePart; + } + + /// + /// Creates the Structur to reference a document and set the correct value . + /// If the structur is already there, it will only update the value. + /// + /// the absolut path to the document + /// Documenttype like 'Short Guide' or 'Bill of Materials' + /// The name of the externalElement + /// the systemUnitClass to insert the structure into + /// + public Uri createDocumentRef(string doc, string doctype, string externalname, SystemUnitClassType systemUnitClass) + { + // create the package paths + FileInfo documentInfo = new FileInfo(doc); + Uri documentPath = new Uri(documentInfo.Name, UriKind.Relative); + Uri documentPart = PackUriHelper.CreatePartUri(documentPath); + + // Create the InternalElement which refers to the document + InternalElementType documentIE = null; + foreach (var internalElement in systemUnitClass.InternalElement) + { + if (internalElement.Name.Equals(doctype)) + { + documentIE = internalElement; + break; + } + } + if (documentIE == null) + documentIE = systemUnitClass.InternalElement.Append(doctype); + + // create the externalelement + ExternalInterfaceType documentEI = null; + foreach (var externalinterface in documentIE.ExternalInterface) + { + if (externalinterface.Name.Equals(externalname)) + { + documentEI = externalinterface; + break; + } + } + if (documentEI == null) + documentEI = documentIE.ExternalInterface.Append(externalname); + + documentEI.RefBaseClassPath = AutomationMLInterfaceClassLib.ExternalDataConnector; + + // create the refURI Attribute with the value of the path + + AttributeType pictureAtt = null; + if (documentEI.Attribute.GetCAEXAttribute("refURI") == null) + { + pictureAtt = documentEI.Attribute.Append("refURI"); + } + pictureAtt.AttributeDataType = "xs:anyURI"; + pictureAtt.Value = documentPart.ToString(); + + return documentPart; + } + + /// + /// Calls the iodd2aml Converter using + /// the converted iodd will be saved in an amlx + /// + /// the path to the iodd file + /// the result message as a string + public string ImportIODD2AML(string filename) + { + + // This methode using Reflection to check if the libary is available at runtime + // If it is, then it's calling the Convert Function + // Iodd2AmlConverter.Libary.ConversionHandler.Convert(String ioddFileData, string amlFileName); + + // Read file and create one string with the content + FileInfo fileInfo = new FileInfo(filename); + + FileStream fs = new FileStream(filename, FileMode.Open); + StreamReader fileReader = new StreamReader(fs); + String fileinput = fileReader.ReadToEnd(); + fileReader.Close(); + fs.Close(); + + + // Load Libary .dll + Assembly assembly = Assembly.Load("Iodd2AmlConverter.Library"); + Type conversionHandler = null; + // Iterate over all Types in the Libary and get the ConversionHandler Type + foreach (Type type in assembly.ExportedTypes) + { + if (type.Name.Equals("ConversionHandler")) + { + conversionHandler = type; + break; + } + } + + // Check if Class is available + if (conversionHandler == null) + { + return "Couldn't find the IODD2AML parser libary (AMLRider)"; + } + + // Check if Methode is available + MethodInfo convertMethode = conversionHandler.GetMethod("Convert"); + if (convertMethode == null) + { + return "Couldn't find the correct parse method. Try downgrading your Version of AMLRider"; + } + + // Call the static Methode + object result = convertMethode.Invoke(null, new object[] { fileinput, Path.GetFileNameWithoutExtension(filename) + ".aml" }); + + string converted = (string)result; + + if (converted == null) + { + System.Windows.Forms.MessageBox.Show("Maybe the file is invalid", "Error while converting the file!", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); + return "The device was not imported because an error occured during convertion!"; + } + + return createAMLXFromString(converted, filename); + } + + /// + /// Calls the gsd2aml Converter using + /// the converted gsdml will be saved in an amlx + /// + /// the path to the gsdml file + /// the result message as a string + public string ImportGSD2AML(string filename) + { + // This methode using Reflection to check if the libary is available at runtime + // If it is, then it's calling the Convert Function + // Gsd2Aml.Lib.Converter.Convert(string inputFilepath, bool strictValidation) + + Assembly assembly = Assembly.Load("Gsd2Aml.Lib"); + Type conversionHandler = null; + // Iterate over all Types in the Libary and get the ConversionHandler Type + foreach (Type type in assembly.ExportedTypes) + { + if (type.Name.Equals("Converter")) + { + conversionHandler = type; + break; + } + } + + // Check if the Method is available + MethodInfo convertMethod = conversionHandler.GetMethod("Convert", new[] { typeof(string), typeof(bool) }); + if (convertMethod == null) + { + return "Couldn't find the correct parse method. Try downgrading your Version of Gsd2Aml"; + } + + object result = null; + try + { + // Call the static method + result = convertMethod.Invoke(null, new object[] { filename, false }); + } + catch (Exception ex) + { + return "There was an error converting the file!\n" + ex.Message; + } + + string converted = (string)result; + + if (converted == null) + { + System.Windows.Forms.MessageBox.Show("Maybe the file is invalid", "Error while converting the file!", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); + return "The device was not imported because an error occured during convertion!"; + } + + // Convert string to stream for the CAEXDocument + return createAMLXFromString(converted, filename); + } + + /// + /// Create an AMLX file with the aml file as string input + /// + /// the complete aml file as a string + /// the path to the original gsdml/iodd file + /// the result message as a string + private string createAMLXFromString(string caex, string filename) + { + // create the CAEXDocument from byte string + byte[] bytearray = System.Text.Encoding.Unicode.GetBytes(caex); + CAEXDocument document = CAEXDocument.LoadFromBinary(bytearray); + + // create the amlx file + string name = Path.GetFileNameWithoutExtension(filename); + + AutomationMLContainer amlx; + + if (name.Contains(".amlx")) + { + amlx = new AutomationMLContainer(".\\modellingwizard\\" + name, FileMode.Create); + } + else + { + amlx = new AutomationMLContainer(".\\modellingwizard\\" + name + ".amlx", FileMode.Create); + } + + // create the aml package path + Uri partUri = PackUriHelper.CreatePartUri(new Uri("/" + name + "-root.aml", UriKind.Relative)); + + // create a temp aml file + string path = Path.GetTempFileName(); + document.SaveToFile(path, true); + + // copy the new aml into the package + PackagePart root = amlx.AddRoot(path, partUri); + + // copy the original file into the package + Uri gsdURI = new Uri(new FileInfo(filename).Name, UriKind.Relative); + Uri gsdPartURI = PackUriHelper.CreatePartUri(gsdURI); + amlx.AddAnyContent(root, filename, gsdPartURI); + + amlx.Save(); + amlx.Close(); + + return "Sucessfully imported device!\nCreated File " + Path.GetFullPath(".\\modellingwizard\\" + name + ".amlx"); + } + + public enum MWFileType + { + IODD, GSD + } + + public class MWObject + { + // Just as an interface + } + + public void copyFiles(string sourceFilePath, string destinationFilePath ) + { + string sourFile = Path.GetFileName(sourceFilePath); + string destFile = Path.Combine(destinationFilePath, sourFile); + File.Copy(sourceFilePath, destFile, true); + } + } +} diff --git a/SOURCE/Plugin/MWDevice.cs b/SOURCE/Plugin/MWDevice.cs new file mode 100644 index 0000000..81fb325 --- /dev/null +++ b/SOURCE/Plugin/MWDevice.cs @@ -0,0 +1,251 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Aml.Editor.Plugin +{ + // this class initialize the parameters exclusively for the "Device Identofication", "DataGridViews in "Generic Data Tab" AND "Field Attachables Tab"" + public class MWDevice: MWData.MWObject + { + public string environment { get; set; } + public string fileName { get; set; } + public string filepath { get; set; } + + + public string vendorName { get; set; } + + public string deviceName { get; set; } + + // Can contain letters: + public List dataGridParametersLists { get; set; } + + + //Properties for Electrical Interface + public List ElectricalInterfaces { get; set; } + public List> ElectricalInterfaceInstances { get; set; } + + //List of property for parameters in Attachables Data Grid View + public List dataGridAttachablesParametrsList { get; set; } + public List listWithURIConvertedToString { get; set; } + + //List of parameters from Electrical Interface Datagrid View in "Inter" tab + public List listofElectricalInterfaceParameters { get; set; } + + // In this Dictionary Every list generated from the Electrical Interface is Added and can be retrived by the key KEY = "InterfaceClass+Externalinterface" strings + public Dictionary> DictofElectricalInterfaceParameters { get; set; } + + + // These are the Dictionary properties that store Electrical Interfaces Instances + // This Dictionary Property Stores the "Parent Interface Class Attributes" as Values and "Interface Number + InterfaceName" as Key + public Dictionary>> DictionaryForInterfaceClassesInElectricalInterfaces { get; set; } + // This Dictioanry Property Stores "Child ExternalInterfaces attributes under ParentClass" as Values + // and "InterfaceNumbwer + ParentClassName + ExternalInterface Name" as Key + public Dictionary>> DictionaryForExternalInterfacesUnderInterfaceClassInElectricalInterfaces { get; set; } + + + // These are the Dictionary properties that store Electrical Interfaces Instances + // This Dictionary Property Stores the "Parent Interface Class Attributes" as Values and "Interface Number + InterfaceName" as Key + public Dictionary>> DictionaryForRoleClassofComponent { get; set; } + // This Dictioanry Property Stores "Child ExternalInterfaces attributes under ParentClass" as Values + // and "InterfaceNumbwer + ParentClassName + ExternalInterface Name" as Key + public Dictionary>> DictionaryForExternalInterfacesUnderRoleClassofComponent { get; set; } + + } + // This class helps to carry parameters in "identification data table to AutomationML" + + + public class DataGridParameters + { + public string RefSemantics { get; set; } + public string Attributes { get; set; } + public string Values { get; set; } + + + public DataGridParameters() { } + + public DataGridParameters(string refSemantic, string attributes, string value) + { + this.RefSemantics = refSemantic; + this.Attributes = attributes; + this.Values = value; + } + public override string ToString() + { + return "DataGridParameters(" + RefSemantics + "=" + Attributes + "=" + Values + ")"; + } + } + + + + + /// + /// /The following classes are parameter holders for Electrical Interfaces + /// + public class ElectricalParameters + { + public string Connector { get; set; } + public string ConnectorCode { get; set; } + public string ConnectorType { get; set; } + public string Pins { get; set; } + + public List listofElectricalDataDataGridViewParameters { get; set; } + public List listOfPinInfoDataGridViewParameters { get; set; } + //public string ReferenceID { get; set; } + //public string Attributes { get; set; } + //public string Values { get; set; } + //public string Units { get; set; } + + + public ElectricalParameters() + { + + } + + public ElectricalParameters(string connector, string connectorCode, string connectorType,string pins,string lis) + + { + this.Connector = connector; + this.ConnectorCode = connectorCode; + this.ConnectorType = connectorType; + this.Pins = pins; + + } + //public ElectricalParameters(string referenceID, string attribute, string values, string units, string pins) + //{ + // this.ReferenceID = referenceID; + // this.Attributes = attribute; + // this.Values = values; + // this.Units = units; + // this.Pins = pins; + //} + + public override string ToString() + { + + return "ElectricalParameters(" + Connector + "=" + ConnectorCode + "=" + ConnectorType + "="+Pins+")"; + } + + } + //This Class is responsible to hold the parameters in "ElectricalDataDataGrid View" + + public class ElectricalParametersInElectricalDataDataGridView + { + + public string ReferenceID { get; set; } + public string Attributes { get; set; } + public string Values { get; set; } + public string Units { get; set; } + + public ElectricalParametersInElectricalDataDataGridView() + { + + } + public ElectricalParametersInElectricalDataDataGridView(string referenceID, string attribute, string values, string units) + { + this.ReferenceID = referenceID; + this.Attributes = attribute; + this.Values = values; + this.Units = units; + + } + public override string ToString() + { + return "ElectricalParametersInElectricalDataDataGridView("+ ReferenceID + "=" + Attributes + "=" + Values + "=" + Units + ")"; + } + } + + public class PinParametersInPinInfoDataGridView + { + public string PinNumber { get; set; } + public string ReferenceID { get; set; } + public string Attributes { get; set; } + public string Values { get; set; } + public string Units { get; set; } + + public PinParametersInPinInfoDataGridView() + { + + } + public PinParametersInPinInfoDataGridView(string pinNumber,string referenceID, string attribute, string values, string units) + { + this.PinNumber = pinNumber; + this.ReferenceID = referenceID; + this.Attributes = attribute; + this.Values = values; + this.Units = units; + + } + public override string ToString() + { + return "PinParametersInPinInfoDataGridView(" +PinNumber+"="+ ReferenceID + "=" + Attributes + "=" + Values + "=" + Units + ")"; + } + } + + // this class is responsible to load every parameter in "attachablesInfoDataGridView" into a list. + public class AttachablesDataGridViewParameters + { + public string ElementName { get; set; } + public string FilePath { get; set; } + public string AddToFile { get; set; } + + public AttachablesDataGridViewParameters() + { + + } + public AttachablesDataGridViewParameters(string elementName, string filePath, bool addToFile) + { + this.ElementName = elementName; + this.FilePath = filePath; + this.AddToFile = Convert.ToString(addToFile); + } + public override string ToString() + { + return "AttachablesDataGridViewParameters(" + ElementName + "=" + FilePath +"="+ AddToFile + ")"; + } + } + + + public class ElectricalInterfaceParameters + { + public string AttributeName { get; set; } + public string Values { get; set; } + public string Default { get; set; } + public string Units { get; set; } + public string DataType { get; set; } + public string Semantic { get; set; } + public string Reference { get; set; } + public string Description { get; set; } + public string CopyRight { get; set; } + public string AttributePath { get; set; } + //public List listofparameters { get; set; } + + public ElectricalInterfaceParameters() + { + //listofparameters = new List(); + } + + public ElectricalInterfaceParameters(string name, string value, + string _default, string unit, + string reference, string description, string copyRight, string semantic, string attributePath) + : this() + { + this.AttributeName = name; + this.Values = value; + this.Default = _default; + this.Units = unit; + this.Reference = reference; + this.Description = description; + this.CopyRight = copyRight; + this.Semantic = semantic; + this.AttributePath = attributePath; + } + + public override string ToString() + { + return "ClassOfListsFromReferencefile(" + AttributeName + "=" + Values + "=" + Default + "=" + Units + "=" + Reference + "=" + + Description + "=" + CopyRight + "=" + Semantic + "=" + AttributePath + ")"; + } + } +} \ No newline at end of file diff --git a/SOURCE/Plugin/ModellingWizard.csproj b/SOURCE/Plugin/ModellingWizard.csproj new file mode 100644 index 0000000..b7f649d --- /dev/null +++ b/SOURCE/Plugin/ModellingWizard.csproj @@ -0,0 +1,253 @@ + + + + + Debug + AnyCPU + {10E1A26F-1F33-478A-84A3-BF59710893C0} + Library + Properties + Aml.Editor.Plugin + ModellingWizard + v4.7.2 + 512 + + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + true + full + false + ..\..\TINF20C_ModellingWizard_Devices\SOURCE\bin\Release\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + $(SolutionDir)\Plugins\ModellingWizard\ + TRACE + prompt + 4 + + + Always + + + false + + + + + + + + packages\Aml.Editor.Plugin.Contract.2.4.0\lib\net47\AML.Editor.PluginContracts.dll + + + packages\Aml.Engine.1.5.8\lib\net4.7\AML.Engine.dll + + + packages\Aml.Engine.1.5.8\lib\net4.7\AML.Engine.Services.dll + + + packages\Gsd2Aml.Lib.1.0.0\lib\net47\Gsd2Aml.Lib.dll + + + True + + + True + + + True + + + True + + + True + + + True + + + packages\System.IO.FileSystem.AccessControl.5.0.0\lib\net461\System.IO.FileSystem.AccessControl.dll + + + packages\System.IO.FileSystem.Primitives.4.3.0\lib\net46\System.IO.FileSystem.Primitives.dll + True + True + + + packages\System.IO.Packaging.5.0.0\lib\net46\System.IO.Packaging.dll + + + + packages\System.Security.AccessControl.5.0.0\lib\net461\System.Security.AccessControl.dll + + + packages\System.Security.Principal.Windows.5.0.0\lib\net461\System.Security.Principal.Windows.dll + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + + + About.xaml + + + + + + + UserControl + + + DeviceDescription.cs + + + True + True + Resources.resx + + + + ModellingWizard.xaml + + + + UserControl + + + + + + + + MSBuild:Compile + Designer + + + MSBuild:Compile + Designer + + + + + DeviceDescription.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + False + Microsoft .NET Framework 4.7.2 %28x86 and x64%29 + true + + + False + .NET Framework 3.5 SP1 + false + + + + + {0D452EE1-E08F-101A-852E-02608C4D0BB4} + 2 + 0 + 0 + primary + False + True + + + {00020430-0000-0000-C000-000000000046} + 2 + 0 + 0 + primary + False + True + + + + \ No newline at end of file diff --git a/SOURCE/Application.sln b/SOURCE/Plugin/ModellingWizard.sln similarity index 54% rename from SOURCE/Application.sln rename to SOURCE/Plugin/ModellingWizard.sln index 95132a0..2b0fead 100644 --- a/SOURCE/Application.sln +++ b/SOURCE/Plugin/ModellingWizard.sln @@ -1,9 +1,9 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.32228.343 +# Visual Studio 15 +VisualStudioVersion = 15.0.28010.2050 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Application", "Application.csproj", "{E2DEECD6-0102-4CAB-A3D9-C76314D81D99}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ModellingWizard", "ModellingWizard.csproj", "{10E1A26F-1F33-478A-84A3-BF59710893C0}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -11,15 +11,15 @@ Global Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {E2DEECD6-0102-4CAB-A3D9-C76314D81D99}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E2DEECD6-0102-4CAB-A3D9-C76314D81D99}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E2DEECD6-0102-4CAB-A3D9-C76314D81D99}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E2DEECD6-0102-4CAB-A3D9-C76314D81D99}.Release|Any CPU.Build.0 = Release|Any CPU + {10E1A26F-1F33-478A-84A3-BF59710893C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {10E1A26F-1F33-478A-84A3-BF59710893C0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {10E1A26F-1F33-478A-84A3-BF59710893C0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {10E1A26F-1F33-478A-84A3-BF59710893C0}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {EE059F42-1F4E-4C2D-B097-FF9FD7206058} + SolutionGuid = {8D7F0C84-CD9B-406E-BB70-F7AA04ED7DA1} EndGlobalSection EndGlobal diff --git a/SOURCE/Plugin/ModellingWizard.xaml b/SOURCE/Plugin/ModellingWizard.xaml new file mode 100644 index 0000000..f248be4 --- /dev/null +++ b/SOURCE/Plugin/ModellingWizard.xaml @@ -0,0 +1,12 @@ + + + \ No newline at end of file diff --git a/SOURCE/Plugin/ModellingWizard.xaml.cs b/SOURCE/Plugin/ModellingWizard.xaml.cs new file mode 100644 index 0000000..c521c28 --- /dev/null +++ b/SOURCE/Plugin/ModellingWizard.xaml.cs @@ -0,0 +1,377 @@ +using Aml.Editor.Plugin.Contracts; +using Aml.Engine.CAEX; +using System; +using System.Collections.Generic; +using System.ComponentModel.Composition; +using System.Windows.Controls; +using System.Windows.Media.Imaging; + + +namespace Aml.Editor.Plugin +{ + /// + /// ModellingWizard is an PlugIn, which implements the AMLEditorView Interface. The PlugIn is + /// a UserControl, which is managed by the AutomationML Editors Window- and Docking - Manager. + /// The Export Attribute enables the AutomationML Editor to load the PlugIn with the Microsoft Managed + /// Extensibility Framework. + /// + [Export(typeof(IAMLEditorView))] + public partial class ModellingWizard : UserControl, IAMLEditorView + { + /// + /// + /// + private RelayCommand aboutCommand; + + MWController mWController; + + public ModellingWizard() + { + mWController = new MWController(this); + + // Defines the Command list, which will contain user commands, which a user can select + // via the PlugIn Menu. + Commands = new List(); + + + // Every PlugIn needs at least an Activation command, which will be called by a user to activate the PlugIn. + ActivatePlugin = new PluginCommand() + { + Command = new RelayCommand(this.StartCommandExecute, + this.StartCommandCanExecute), + CommandName = "Start", + CommandToolTip = "Start the PlugIn" + }; + + // Every PlugIn should provide a Termination command, which will be called when the PlugIn window is closed by the user. This can only + // occur, if the PlugIn view is embedded in a docking window by the Editor. + TerminatePlugin = new PluginCommand() + { + Command = new RelayCommand(this.StopCommandExecute, this.StopCommandCanExecute), + CommandName = "Stop", + CommandToolTip = "Stop the PlugIn" + }; + + ReloadObjects = new PluginCommand() + { + Command = new RelayCommand(this.ReloadObjectsExecute, this.StopCommandCanExecute), + CommandName = "Reload Objects", + CommandToolTip = "Reload all .amlx in the plugin folder" + }; + + InitializeComponent(); + + + // Add the StartCommand (should exist in any PlugIn) + Commands.Add(ActivatePlugin); + + // Add the Stop Command (should exist in any PlugIn) + Commands.Add(TerminatePlugin); + + Commands.Add(ReloadObjects); + + //// Add the change spelling command (an additional command, only for this special PlugIn) + //Commands.Add(new PluginCommand() + //{ + // CommandName = "Load File", + // Command = InvertCase, + // CommandToolTip = "Load a new test file" + //}); + + // Add the About Command (recommended to exist in any PlugIn) + Commands.Add(new PluginCommand() + { + CommandName = "About", + Command = AboutCommand, + CommandToolTip = "Information about this PlugIn" + }); + + this.IsActive = false; + } + + private void ReloadObjectsExecute(object obj) + { + + } + + /// + /// Occurs when the PlugIn is activated (for example via the ). + /// + public event EventHandler PluginActivated; + + /// + /// Occurs when the PlugIn is deactivated (some UserInteraction inside the PlugIn or via the + /// ). + /// + public event EventHandler PluginTerminated; + + /// + /// The AboutCommand - Command + /// + /// The about command. + public System.Windows.Input.ICommand AboutCommand + { + get + { + return this.aboutCommand + ?? + (this.aboutCommand = new RelayCommand(this.AboutCommandExecute, this.AboutCommandCanExecute)); + } + } + + /// + /// Gets the Command to activate the PlugIn. + /// + public PluginCommand ActivatePlugin + { + get; + private set; + } + + /// + /// Gets the Command to reload the AMLX Files in ./modellingwizard/ + /// + public PluginCommand ReloadObjects + { + get; + private set; + } + + /// + /// Gets a value indicating whether this UserControl could be closed from the Editor's + /// WindowManager. When a close occurs from the WindowManager, the StopCommand will be + /// executed via the Method. + /// + /// true if this instance can close; otherwise, false. + public bool CanClose + { + get { return true; } + } + + /// + /// Gets the List of commands, which are viewed in the PlugIn Menu in the Host Application + /// + /// The command List. + public List Commands + { + get; + private set; + } + + /// + /// Gets the display name which is shown in the PlugIn Menu in the Host Application + /// + /// The display name. + public string DisplayName + { + get { return "Modelling wizard for devices [Version 02.00.00.00 (18.04.2021)]"; } + } + + /// + /// Gets a value indicating whether this instance is active. The Property should be set to + /// true in the and set to false in the + /// + /// true if this instance is active; otherwise, false. + public bool IsActive + { + get; + private set; + } + + /// + /// Gets a value indicating whether this instance is reactive. Reactive PlugIn will be + /// notified, when the actual CAEX-Object changes (Selection of the Tree view Item) and . + /// + /// true if this instance is reactive; otherwise, false. + public bool IsReactive + { + get { return false; } + } + + /// + /// Gets a value indicating whether this instance is read only. A Read only PlugIn should not + /// change any CAEX Objects. + /// + /// + /// true if this instance is read only; otherwise, false. + /// + public bool IsReadonly + { + get { return false; } + } + + /// + /// Gets the terminate PlugIn command. + /// + public PluginCommand TerminatePlugin + { + get; + private set; + } + + /// + /// Gets the initial dock position for the PlugIn window. + /// + public DockPositionEnum InitialDockPosition => DockPositionEnum.Floating; + + /// + /// Gets or sets a value indicating whether this instance is automatic active when loaded. + /// This value can be initially set and will be defined by the user. + /// + public bool IsAutoActive { get; set; } + + /// + /// Gets the package name which is used to download the PlugIn package from a NuGet feed. If a Package name + /// is defined, the AMLEditor can update PlugIn packages independently from its own update cycle. + /// + /// + /// The package name. + /// + public string PackageName => ""; + + /// + /// Gets the image which should be used in the Header of the PlugIn window. + /// If no image is defined the editor uses a default image. + /// + public BitmapImage PaneImage => null; + + /// + /// Changes the current amlFilePath. The Host Application will call this method when the + /// PlugIns Property is set to true and the Currently opened + /// AutomationML File changes in the AMLEditor Host Application. + /// + /// The Path to the current AML File in the AML Editor. + public void ChangeAMLFilePath(string amlFilePath) + { + //mWController.ChangeAMLFilePath(amlFilePath); + } + + /// + /// Changes the selected object. The Host Application will call this method when the PlugIns + /// Property is set to true and the Current Selection changes in + /// the AMLEditor Host Application. + /// + /// The selected CAEX - object. + public void ChangeSelectedObject(CAEXBasicObject selectedObject) + { + /*if (selectedObject is InternalElementType ie) + { + if (ie.SystemUnitClass != null) + { + PlugInUI.ShowClass(ie.SystemUnitClass); + } + + }*/ + } + + /// + /// This Method is called from the AutomationML Editor to execute a specific command. The + /// Editor can only execute those commands, which are identified by the Enumeration. The Editor may execute the termination command + /// of the PlugIn, so here some preparations for a clean termination should be performed. + /// + /// The command. + /// The amlFilePath. + public void ExecuteCommand(PluginCommandsEnum command, string amlFilePath) + { + switch (command) + { + case PluginCommandsEnum.Terminate: + StopCommandExecute(null); + break; + } + } + + /// + /// This Method is called on activation of a PlugIn. The AutomationML Editor 'publishes' its + /// current state to the PlugIn, that is the Path of the loaded AutomationML Document and + /// the currently selected AutomationML Object'. Please note, that the objects may be empty + /// or null. + /// + /// The AML file path, may be empty. + /// The selected object, may be null. + public void PublishAutomationMLFileAndObject(string amlFilePath, CAEXBasicObject selectedObject) + { + + } + + /// + /// Test, if the can execute. + /// + /// unused. + /// true, if command can execute + private bool AboutCommandCanExecute(object parameter) + { + // Execution is always possible, also for inactive PlugIns + return true; + } + + /// + /// The Execution Action. + /// + /// unused. + private void AboutCommandExecute(object parameter) + { + var dialog = new About(); + dialog.ShowDialog(); + } + + /// + /// Test, if the can execute. The Property + /// should be false prior to Activation. + /// + /// unused + /// true, if command can execute + private bool StartCommandCanExecute(object parameter) + { + return !this.IsActive; + } + + /// + /// The s execution Action. The + /// event is raised and the Property is set to true. + /// + /// unused + private void StartCommandExecute(object parameter) + { + this.IsActive = true; + + // create the new PlugInUI and add it to the forms host + mWController.ChangeGui(MWController.MWGUIType.DeviceDescription); + + PluginActivated?.Invoke(this, EventArgs.Empty); + } + + /// + /// Test, if the can execute. + /// + /// unused + /// true, if command can execute + private bool StopCommandCanExecute(object parameter) + { + return this.IsActive; + } + + /// + /// The Execution Action sets the Property + /// to false. The event will be raised. + /// + /// unused + private void StopCommandExecute(object parameter) + { + this.IsActive = false; + PluginTerminated?.Invoke(this, EventArgs.Empty); + } + + /// + /// Replace the Content in the Plugin window with the Windows Forms GUI + /// + /// The Form to be displayed in the plugin window + public void changeGUI(System.Windows.Forms.Control content) + { + FormsHost.Child = content; + } + } +} \ No newline at end of file diff --git a/SOURCE/Plugin/Properties/AssemblyInfo.cs b/SOURCE/Plugin/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..177057f --- /dev/null +++ b/SOURCE/Plugin/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Allgemeine Informationen über eine Assembly werden über die folgenden +// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +// die einer Assembly zugeordnet sind. +[assembly: AssemblyTitle("ModellingWizard")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("DHBW-Stuttgart")] +[assembly: AssemblyProduct("ModellingWizard")] +[assembly: AssemblyCopyright("Copyright © DHBW-Stuttgart TINF19C")] +[assembly: AssemblyTrademark("ModellingWizard")] +[assembly: AssemblyCulture("")] + +// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly +// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von +// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen. +[assembly: ComVisible(false)] + +// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird +[assembly: Guid("d617ec39-894b-4685-92c9-315cd69ca4b1")] + +// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +// +// Hauptversion +// Nebenversion +// Buildnummer +// Revision +// +// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, +// indem Sie "*" wie unten gezeigt eingeben: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("2.0.0.0")] +[assembly: AssemblyFileVersion("2.0.0.0")] diff --git a/SOURCE/Plugin/Properties/Resources.Designer.cs b/SOURCE/Plugin/Properties/Resources.Designer.cs new file mode 100644 index 0000000..e1a7548 --- /dev/null +++ b/SOURCE/Plugin/Properties/Resources.Designer.cs @@ -0,0 +1,163 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Aml.Editor.Plugin.Properties { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Aml.Editor.Plugin.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized resource of type System.Byte[]. + /// + internal static byte[] AutomationComponentLibrary_v1_0_0 { + get { + object obj = ResourceManager.GetObject("AutomationComponentLibrary_v1_0_0", resourceCulture); + return ((byte[])(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Byte[]. + /// + internal static byte[] AutomationComponentLibrary_v1_0_0_CAEX3_BETA { + get { + object obj = ResourceManager.GetObject("AutomationComponentLibrary_v1_0_0_CAEX3_BETA", resourceCulture); + return ((byte[])(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Byte[]. + /// + internal static byte[] AutomationComponentLibrary_v1_0_0_Full { + get { + object obj = ResourceManager.GetObject("AutomationComponentLibrary_v1_0_0_Full", resourceCulture); + return ((byte[])(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Byte[]. + /// + internal static byte[] AutomationComponentLibrary_v1_0_0_Full_CAEX3_BETA { + get { + object obj = ResourceManager.GetObject("AutomationComponentLibrary_v1_0_0_Full_CAEX3_BETA", resourceCulture); + return ((byte[])(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Byte[]. + /// + internal static byte[] ElectricConnectorLibrary_v1_0_0 { + get { + object obj = ResourceManager.GetObject("ElectricConnectorLibrary_v1_0_0", resourceCulture); + return ((byte[])(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_collapse_arrow_24 { + get { + object obj = ResourceManager.GetObject("icons8-collapse-arrow-24", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_dienstleistungen_26__1_ { + get { + object obj = ResourceManager.GetObject("icons8-dienstleistungen-26 (1)", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_expand_arrow_24 { + get { + object obj = ResourceManager.GetObject("icons8-expand-arrow-24", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_plus_mathe_30 { + get { + object obj = ResourceManager.GetObject("icons8-plus-mathe-30", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Byte[]. + /// + internal static byte[] IndustrialSensorLibrary_v1_0_0 { + get { + object obj = ResourceManager.GetObject("IndustrialSensorLibrary_v1_0_0", resourceCulture); + return ((byte[])(obj)); + } + } + } +} diff --git a/SOURCE/Plugin/Properties/Resources.resx b/SOURCE/Plugin/Properties/Resources.resx new file mode 100644 index 0000000..2636bec --- /dev/null +++ b/SOURCE/Plugin/Properties/Resources.resx @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + ..\Resources\icons8-collapse-arrow-24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-plus-mathe-30.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-dienstleistungen-26 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-expand-arrow-24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\ElectricConnectorLibrary_v1_0_0.aml;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ..\Resources\AutomationComponentLibrary_v1_0_0.aml;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ..\Resources\AutomationComponentLibrary_v1_0_0_CAEX3_BETA.aml;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ..\Resources\AutomationComponentLibrary_v1_0_0_Full.aml;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ..\Resources\AutomationComponentLibrary_v1_0_0_Full_CAEX3_BETA.aml;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ..\Resources\IndustrialSensorLibrary_v1_0_0.aml;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0.aml b/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0.aml new file mode 100644 index 0000000..09dc60d --- /dev/null +++ b/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0.aml @@ -0,0 +1,465 @@ + + + + + + + + + + + + + + + + + + AutomationML Editor + 916578CA-FE0D-474E-A4FC-9E1719892369 + AutomationML e.V. + www.AutomationML.org + 5.3.0.0 + 5.3.0.0 + 2019-11-21T15:52:45.1337374 + unspecified + unspecified + + + + The InterfaceClassLib AutomationMLComponentBaseICL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + A 2DReference shall be used to reference a 2D representation of the AutomationML Component. + + + + + + + + + + + + + + + The MaintenanceDescriptionLink shall be used to interlink MaintenanceDescriptionGroup and MaintenanceDescriptionItem + + + A MechanicInterface represents a hardware provision to mechanically fasten or join two or more objects together. + + + An ElectricInterface describes an electro-mechanical provision used to join electrical terminations and to create electrical circuits. + + + + ??? + + + + + + + + + + + The InterfaceClassLib AutomationMLFMIInterfaceClassLib is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + + + + + + + The RoleClassLib AutomationMLComponentBaseRCL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + This is the base class for standard or user defined role classes referencing technology based device descriptions. + + + + + + + + + + ??? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The RoleClassLib AutomationMLComponentStandardRCL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + This role class defines a set of attributes to identify, classify and describe an automation component as an industrial product which serves specific functions, i.e. for industrial process or factory automation. + + Identification data of the automation component type or instance model. + + + + Name of the Manufacturer (person, company or organisation) + + + + + Address of the product manufacturer on the world wide web (URL) + + + Product family name of the manufacturer, characterization may be based on its usage, operation principle, and its fabricated form + + + + + Product name or model code of the manufacturer + + + + + Unique product identifier given by the manufacturer + + + + + Unique combination of numbers and letters used to order the device + + + + + Version of the hardware supplied with the component + + + + Version of the firmware supplied with the component + + + + Unique combination of numbers and letters to identify a manufactured component sample + + + + + Alphanumeric character sequence to trace the date, time and circumstances of fabrication + + + + Unique global identification of the product type or sample (assetID) using an universal resource identifier, such as an online URL to the product data. + + + + + Classification data of the component. + + Operating temperature limits of the air surrounding the complete component. + + + Lowest ambient temperature for which the component operates within its specified limits. + + + + + Highest ambient temperature for which the component operates within its specified limits. + + + + + + + Degree of protection (IP code) of the component provided by enclosure, numerical classification in accordance with IEC 60529 preceded by the symbol IP. + + + + + + Basic material of the housing of the component. + + + + + + Net weight: Value of the mass of the component with all fixed parts without packaging and accessories. + + + + + + Height of the body, vertical distance between the top and bottom of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + Width or breadth of the body, horizontal distance between the left-hand and right-hand extremes of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + Length of the body, horizontal distance between the front and back of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + + Commercial data related to the component. + + Properties characterizing the packing and transportation (shipping) of a product. + + Global Trade Item Number (GTIN). International unique and universal item number for products and services used by trade and industry (formerly EAN) + + + + + Classification of a product according to trade regulations. Number assigned to each type of product sold internationally. + + + + + Alphabetic 2-character code for the identification of the country in which the good has been produced or manufactured according to criteria laid down for the application of custom tariff or quantitative restrictions, or any measure related to trade. The provided value list for the alphabetic 2-character code is based on ISO 3166-1, which is updated under https://www.iso.org/iso-3166-country-codes.html + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Parameter data (configurable and read-only) of the component. + + + + + + + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///62683# + + + https://cdd.iec.ch/cdd/iec61987/iec61987.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///61360_4# + + + https://cdd.iec.ch/cdd/iec61360/iec61360.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///62683# + + + https://cdd.iec.ch/cdd/iec62683/iec62683.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + Version 11.0 + + + IRDI:0173 + + + https://www.eclasscontent.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ??? + + + + ??? + + + + + + + + + + + + + + The RoleClassLib AutomationMLFMILogicRoleClassLib is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + + \ No newline at end of file diff --git a/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_CAEX3_BETA.aml b/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_CAEX3_BETA.aml new file mode 100644 index 0000000..eaa21d4 --- /dev/null +++ b/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_CAEX3_BETA.aml @@ -0,0 +1,454 @@ + + + + + + + + + + + + + + + + AutomationML 2.10 + + + The InterfaceClassLib AutomationMLComponentBaseICL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + A 2DReference shall be used to reference a 2D representation of the AutomationML Component. + + + + + + + + + + + + + + + The MaintenanceDescriptionLink shall be used to interlink MaintenanceDescriptionGroup and MaintenanceDescriptionItem + + + A MechanicInterface represents a hardware provision to mechanically fasten or join two or more objects together. + + + An ElectricInterface describes an electro-mechanical provision used to join electrical terminations and to create electrical circuits. + + + + ??? + + + + + + + + + + + The InterfaceClassLib AutomationMLFMIInterfaceClassLib is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + + + + + + + The RoleClassLib AutomationMLComponentBaseRCL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + This is the base class for standard or user defined role classes referencing technology based device descriptions. + + + + + + + + + + ??? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The RoleClassLib AutomationMLComponentStandardRCL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + This role class defines a set of attributes to identify, classify and describe an automation component as an industrial product which serves specific functions, i.e. for industrial process or factory automation. + + Identification data of the automation component type or instance model. + + + + Name of the Manufacturer (person, company or organisation) + + + + + Address of the product manufacturer on the world wide web (URL) + + + Product family name of the manufacturer, characterization may be based on its usage, operation principle, and its fabricated form + + + + + Product name or model code of the manufacturer + + + + + Unique product identifier given by the manufacturer + + + + + Unique combination of numbers and letters used to order the device + + + + + Version of the hardware supplied with the component + + + + Version of the firmware supplied with the component + + + + Unique combination of numbers and letters to identify a manufactured component sample + + + + + Alphanumeric character sequence to trace the date, time and circumstances of fabrication + + + + Unique global identification of the product type or sample (assetID) using an universal resource identifier, such as an online URL to the product data. + + + + + Classification data of the component. + + Operating temperature limits of the air surrounding the complete component. + + + Lowest ambient temperature for which the component operates within its specified limits. + + + + + Highest ambient temperature for which the component operates within its specified limits. + + + + + + + Degree of protection (IP code) of the component provided by enclosure, numerical classification in accordance with IEC 60529 preceded by the symbol IP. + + + + + + Basic material of the housing of the component. + + + + + + Net weight: Value of the mass of the component with all fixed parts without packaging and accessories. + + + + + + Height of the body, vertical distance between the top and bottom of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + Width or breadth of the body, horizontal distance between the left-hand and right-hand extremes of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + Length of the body, horizontal distance between the front and back of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + + Commercial data related to the component. + + Properties characterizing the packing and transportation (shipping) of a product. + + Global Trade Item Number (GTIN). International unique and universal item number for products and services used by trade and industry (formerly EAN) + + + + + Classification of a product according to trade regulations. Number assigned to each type of product sold internationally. + + + + + Alphabetic 2-character code for the identification of the country in which the good has been produced or manufactured according to criteria laid down for the application of custom tariff or quantitative restrictions, or any measure related to trade. The provided value list for the alphabetic 2-character code is based on ISO 3166-1, which is updated under https://www.iso.org/iso-3166-country-codes.html + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Parameter data (configurable and read-only) of the component. + + + + + + + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///62683# + + + https://cdd.iec.ch/cdd/iec61987/iec61987.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///61360_4# + + + https://cdd.iec.ch/cdd/iec61360/iec61360.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///62683# + + + https://cdd.iec.ch/cdd/iec62683/iec62683.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + Version 11.0 + + + IRDI:0173 + + + https://www.eclasscontent.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ??? + + + + ??? + + + + + + + + + + + + + + The RoleClassLib AutomationMLFMILogicRoleClassLib is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + + diff --git a/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_Full.aml b/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_Full.aml new file mode 100644 index 0000000..b8e8c7a --- /dev/null +++ b/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_Full.aml @@ -0,0 +1,614 @@ + + + + + + + + + + + + + + + + + + AutomationML Editor + 916578CA-FE0D-474E-A4FC-9E1719892369 + AutomationML e.V. + www.AutomationML.org + 5.3.0.0 + 5.3.0.0 + 2019-11-21T15:52:20.1817272 + unspecified + unspecified + + + + The InterfaceClassLib AutomationMLComponentBaseICL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + A 2DReference shall be used to reference a 2D representation of the AutomationML Component. + + + + + + + + + + + + + + + The MaintenanceDescriptionLink shall be used to interlink MaintenanceDescriptionGroup and MaintenanceDescriptionItem + + + A MechanicInterface represents a hardware provision to mechanically fasten or join two or more objects together. + + + An ElectricInterface describes an electro-mechanical provision used to join electrical terminations and to create electrical circuits. + + + + ??? + + + + + + + + + + + The InterfaceClassLib AutomationMLFMIInterfaceClassLib is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + + + + + + + + 1.0.0 + + + + + + Standard Automation Markup Language Interface Class Library - Part 1 Content extended with Part 3 and Part 4 Content + 2.2.2 + + + + + + + + + + + + + + true + + + + + + + + + + + + ??? + + + + ??? + + + ??? + + + ??? + + + ??? + + + + ??? + + + + + AutomationMLLogicInterfaceClassLib specifies all logic related interface classes for +referencing AML logic XML documents. + 1.0.0 + + + + + + + + + + + + + + AutomationMLPLCopenXMLInterfaceClassLib specifies the logic related interface class for +referencing IEC 61131-10 documents + 1.0.0 + + + + The RoleClassLib AutomationMLComponentBaseRCL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + This is the base class for standard or user defined role classes referencing technology based device descriptions. + + + + + + + + + + ??? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The RoleClassLib AutomationMLComponentStandardRCL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + This role class defines a set of attributes to identify, classify and describe an automation component as an industrial product which serves specific functions, i.e. for industrial process or factory automation. + + Identification data of the automation component type or instance model. + + + + Name of the Manufacturer (person, company or organisation) + + + + + Address of the product manufacturer on the world wide web (URL) + + + Product family name of the manufacturer, characterization may be based on its usage, operation principle, and its fabricated form + + + + + Product name or model code of the manufacturer + + + + + Unique product identifier given by the manufacturer + + + + + Unique combination of numbers and letters used to order the device + + + + + Version of the hardware supplied with the component + + + + Version of the firmware supplied with the component + + + + Unique combination of numbers and letters to identify a manufactured component sample + + + + + Alphanumeric character sequence to trace the date, time and circumstances of fabrication + + + + Unique global identification of the product type or sample (assetID) using an universal resource identifier, such as an online URL to the product data. + + + + + Classification data of the component. + + Operating temperature limits of the air surrounding the complete component. + + + Lowest ambient temperature for which the component operates within its specified limits. + + + + + Highest ambient temperature for which the component operates within its specified limits. + + + + + + + Degree of protection (IP code) of the component provided by enclosure, numerical classification in accordance with IEC 60529 preceded by the symbol IP. + + + + + + Basic material of the housing of the component. + + + + + + Net weight: Value of the mass of the component with all fixed parts without packaging and accessories. + + + + + + Height of the body, vertical distance between the top and bottom of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + Width or breadth of the body, horizontal distance between the left-hand and right-hand extremes of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + Length of the body, horizontal distance between the front and back of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + + Commercial data related to the component. + + Properties characterizing the packing and transportation (shipping) of a product. + + Global Trade Item Number (GTIN). International unique and universal item number for products and services used by trade and industry (formerly EAN) + + + + + Classification of a product according to trade regulations. Number assigned to each type of product sold internationally. + + + + + Alphabetic 2-character code for the identification of the country in which the good has been produced or manufactured according to criteria laid down for the application of custom tariff or quantitative restrictions, or any measure related to trade. The provided value list for the alphabetic 2-character code is based on ISO 3166-1, which is updated under https://www.iso.org/iso-3166-country-codes.html + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Parameter data (configurable and read-only) of the component. + + + + + + + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///62683# + + + https://cdd.iec.ch/cdd/iec61987/iec61987.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///61360_4# + + + https://cdd.iec.ch/cdd/iec61360/iec61360.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///62683# + + + https://cdd.iec.ch/cdd/iec62683/iec62683.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + Version 11.0 + + + IRDI:0173 + + + https://www.eclasscontent.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ??? + + + + ??? + + + + + + + + + + + + + + The RoleClassLib AutomationMLFMILogicRoleClassLib is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + + + Automation Markup Language Base Role Class Library - Part 1 Content extended with Part 3 and Part 4 Content + 2.2.2 + + + ??? + + + + + + ??? + + + ??? + + + + + + + + + + + + + + + + + + ??? + + + ??? + + + ??? + + + + + 1.0.0 + + + + + + + + + AutomationMLLogicRoleClassLib specifies all logic related role classes. + 1.0.0 + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_Full_CAEX3_BETA.aml b/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_Full_CAEX3_BETA.aml new file mode 100644 index 0000000..cdd3bfb --- /dev/null +++ b/SOURCE/Plugin/Resources/AutomationComponentLibrary_v1_0_0_Full_CAEX3_BETA.aml @@ -0,0 +1,603 @@ + + + + + + + + + + + + + + + + AutomationML 2.10 + + + The InterfaceClassLib AutomationMLComponentBaseICL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + A 2DReference shall be used to reference a 2D representation of the AutomationML Component. + + + + + + + + + + + + + + + The MaintenanceDescriptionLink shall be used to interlink MaintenanceDescriptionGroup and MaintenanceDescriptionItem + + + A MechanicInterface represents a hardware provision to mechanically fasten or join two or more objects together. + + + An ElectricInterface describes an electro-mechanical provision used to join electrical terminations and to create electrical circuits. + + + + ??? + + + + + + + + + + + The InterfaceClassLib AutomationMLFMIInterfaceClassLib is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + + + + + + + + 1.0.0 + + + + + + Standard Automation Markup Language Interface Class Library - Part 1 Content extended with Part 3 and Part 4 Content + 2.2.2 + + + + + + + + + + + + + + true + + + + + + + + + + + + ??? + + + + ??? + + + ??? + + + ??? + + + ??? + + + + ??? + + + + + AutomationMLLogicInterfaceClassLib specifies all logic related interface classes for +referencing AML logic XML documents. + 1.0.0 + + + + + + + + + + + + + + AutomationMLPLCopenXMLInterfaceClassLib specifies the logic related interface class for +referencing IEC 61131-10 documents + 1.0.0 + + + + The RoleClassLib AutomationMLComponentBaseRCL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + This is the base class for standard or user defined role classes referencing technology based device descriptions. + + + + + + + + + + ??? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The RoleClassLib AutomationMLComponentStandardRCL is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + This role class defines a set of attributes to identify, classify and describe an automation component as an industrial product which serves specific functions, i.e. for industrial process or factory automation. + + Identification data of the automation component type or instance model. + + + + Name of the Manufacturer (person, company or organisation) + + + + + Address of the product manufacturer on the world wide web (URL) + + + Product family name of the manufacturer, characterization may be based on its usage, operation principle, and its fabricated form + + + + + Product name or model code of the manufacturer + + + + + Unique product identifier given by the manufacturer + + + + + Unique combination of numbers and letters used to order the device + + + + + Version of the hardware supplied with the component + + + + Version of the firmware supplied with the component + + + + Unique combination of numbers and letters to identify a manufactured component sample + + + + + Alphanumeric character sequence to trace the date, time and circumstances of fabrication + + + + Unique global identification of the product type or sample (assetID) using an universal resource identifier, such as an online URL to the product data. + + + + + Classification data of the component. + + Operating temperature limits of the air surrounding the complete component. + + + Lowest ambient temperature for which the component operates within its specified limits. + + + + + Highest ambient temperature for which the component operates within its specified limits. + + + + + + + Degree of protection (IP code) of the component provided by enclosure, numerical classification in accordance with IEC 60529 preceded by the symbol IP. + + + + + + Basic material of the housing of the component. + + + + + + Net weight: Value of the mass of the component with all fixed parts without packaging and accessories. + + + + + + Height of the body, vertical distance between the top and bottom of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + Width or breadth of the body, horizontal distance between the left-hand and right-hand extremes of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + Length of the body, horizontal distance between the front and back of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + + + Commercial data related to the component. + + Properties characterizing the packing and transportation (shipping) of a product. + + Global Trade Item Number (GTIN). International unique and universal item number for products and services used by trade and industry (formerly EAN) + + + + + Classification of a product according to trade regulations. Number assigned to each type of product sold internationally. + + + + + Alphabetic 2-character code for the identification of the country in which the good has been produced or manufactured according to criteria laid down for the application of custom tariff or quantitative restrictions, or any measure related to trade. The provided value list for the alphabetic 2-character code is based on ISO 3166-1, which is updated under https://www.iso.org/iso-3166-country-codes.html + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Parameter data (configurable and read-only) of the component. + + + + + + + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///62683# + + + https://cdd.iec.ch/cdd/iec61987/iec61987.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///61360_4# + + + https://cdd.iec.ch/cdd/iec61360/iec61360.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + CDD - V2.0014.0016 + + + IRDI:0112/2///62683# + + + https://cdd.iec.ch/cdd/iec62683/iec62683.nsf/TreeFrameset?OpenFrameSet&ongletactif=1 + + + + + Version 11.0 + + + IRDI:0173 + + + https://www.eclasscontent.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ??? + + + + ??? + + + + + + + + + + + + + + The RoleClassLib AutomationMLFMILogicRoleClassLib is defined in the Whitepaper "Description of AutomationML Components". The document can be downloaded at https://www.automationml.org/o.red.c/publications.html . The Version of the related WP is 1.0 State November 2019 and has the Document Identifier WP Compo. + 1.0.0 + + + + Automation Markup Language Base Role Class Library - Part 1 Content extended with Part 3 and Part 4 Content + 2.2.2 + + + ??? + + + + + + ??? + + + ??? + + + + + + + + + + + + + + + + + + ??? + + + ??? + + + ??? + + + + + 1.0.0 + + + + + + + + + AutomationMLLogicRoleClassLib specifies all logic related role classes. + 1.0.0 + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SOURCE/Plugin/Resources/ElectricConnectorLibrary_v1_0_0.aml b/SOURCE/Plugin/Resources/ElectricConnectorLibrary_v1_0_0.aml new file mode 100644 index 0000000..a8616a6 --- /dev/null +++ b/SOURCE/Plugin/Resources/ElectricConnectorLibrary_v1_0_0.aml @@ -0,0 +1,4123 @@ + + AutomationML 2.10 + + + + + Interface Class Library for for mini 7/8 inch electrical connectors based on ANSI B93.55M (NFPA T3.5.29M) plus reaffirmation notice 1988. + 0.0.0 + + 7/8inch 3 pin type + + Nominal value of the rated voltage an electromechanical component is designed for + 250 + + + + Pin 1 + + Function description of the pin or contact. + GND + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + Pin 2 + + Function description of the pin or contact. + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + Pin 3 + + Function description of the pin or contact. + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + + + + 7/8inch 4 pin type + + Nominal value of the rated voltage an electromechanical component is designed for + 250 + + + + Pin 1 + + Function description of the pin or contact. + US + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + Pin 2 + + Function description of the pin or contact. + US + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + Pin 3 + + Function description of the pin or contact. + GND + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + Pin 4 + + Function description of the pin or contact. + GND + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + + + + 7/8inch 5 pin type + + Nominal value of the rated voltage an electromechanical component is designed for + 250 + + + + Pin 1 + + Function description of the pin or contact. + GND + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + Pin 2 + + Function description of the pin or contact. + GND + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + Pin 3 + + Function description of the pin or contact. + Functional_GND + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + Pin 4 + + Function description of the pin or contact. + US + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + Pin 5 + + Function description of the pin or contact. + US + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 8 + + + + + + + + + Interface Class Library for electrical connectors defined in IEC 60603. + 0.0.0 + + Interface Class for connectors for electronic equipment, 8-way, unshielded, free and fixed connectors according to IEC 60603-7. + + RJ45 connectors for electronic equipment, 8-pin, unshielded. + + Support of category according to ISO/IEC 11801; DIN EN 50173-1 and ANSI/TIA-568-C.2 + + + + Nominal value of the rated voltage an electromechanical component is designed for + + + + Maximum operational frequency according to IEC6063-7-xxx. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + + + + + ToDo: Interface Class Lib for the D-subminiature (D-sub), a common type of electrical connector according to IEC 60807-3 / DIN 41652. Rectangular connectors for frequencies below 3 MHz. + 0 + + IEC 60807-2:1992 - Detail specification for a range of connectors, with assessed quality, with trapezoidal shaped metal shells and round contacts - Fixed solder contact types. Covers a range of rectangular connectors with round contacts. The contacts have solder terminations. Connector polarization is achieved by the trapezoidal configuration of the shell. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + + + + + + + Interface Class Library for electrical connectors defined in IEC 61076 + 0.0.1 + + Interface Class for electrical connectors based on IEC 61076-2 + + + lower category (ambient) temperature of a component + -25 + + + + + upper category (ambient) temperature of a component + 85 + + + + + Minimum value of impulse voltage with specified pulse shape, applied between specified conductive parts of a relay, which does not cause breakdown + + + + + Nominal value of the rated voltage an electromechanical component is designed for + + + + + Code identifying the standardized pollution degree an electromechanical component can perform according to IEC 60664-1:2007 + + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + + + Maximum resistance of a mated set of contacts of a connector, relay or switch + + + + + minimum resistance between one terminal or several terminals connected together and the case or enclosure of a component at specified voltage + + + + + number of mechanical transactions of an item ranging from one defined status in a different one, induced by an external control information. + + + + + + maximum force required to engage a connector with its mating part, excluding the effect of a coupling, locking or similar device + + + + + minimum force required to separate a connector from its mating part, excluding the effect of a coupling, locking or similar device + + + + + Degree of protection (IP code) of an electromechanical component provided by enclosure according to IEC 60529. + IP65 + + + + + + + + lower category (ambient) temperature of a component + -25 + + + + + upper category (ambient) temperature of a component + 85 + + + + + Minimum value of impulse voltage with specified pulse shape, applied between specified conductive parts of a relay, which does not cause breakdown + + + + + Nominal value of the rated voltage an electromechanical component is designed for + + + + + Code identifying the standardized pollution degree an electromechanical component can perform according to IEC 60664-1:2007 + + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + + + Maximum resistance of a mated set of contacts of a connector, relay or switch + + + + + minimum resistance between one terminal or several terminals connected together and the case or enclosure of a component at specified voltage + + + + + number of mechanical transactions of an item ranging from one defined status in a different one, induced by an external control information. + + + + + + maximum force required to engage a connector with its mating part, excluding the effect of a coupling, locking or similar device + + + + + minimum force required to separate a connector from its mating part, excluding the effect of a coupling, locking or similar device + + + + + Degree of protection (IP code) of an electromechanical component provided by enclosure according to IEC 60529. + IP65 + + + + + + + + lower category (ambient) temperature of a component + -25 + + + + + upper category (ambient) temperature of a component + 85 + + + + + Minimum value of impulse voltage with specified pulse shape, applied between specified conductive parts of a relay, which does not cause breakdown + + + + + Nominal value of the rated voltage an electromechanical component is designed for + 125 + + + + + Code identifying the standardized pollution degree an electromechanical component can perform according to IEC 60664-1:2007 + 3 + + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + 1 + + + + + + Maximum resistance of a mated set of contacts of a connector, relay or switch + + + + + minimum resistance between one terminal or several terminals connected together and the case or enclosure of a component at specified voltage + + + + + number of mechanical transactions of an item ranging from one defined status in a different one, induced by an external control information. + + + + + + maximum force required to engage a connector with its mating part, excluding the effect of a coupling, locking or similar device + + + + + minimum force required to separate a connector from its mating part, excluding the effect of a coupling, locking or similar device + + + + + Degree of protection (IP code) of an electromechanical component provided by enclosure according to IEC 60529. + IP67 + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + Interface Class Library for the M12 series (coding A, B, C, D, P) electrical connectors based on IEC 61076-2-101 + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 4 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 4 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 4 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 4 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 4 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 4 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 5 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 5 pins according to IEC 61076, ch... + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 4 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 4 pins according to IEC 61076, ch... + + + + + + 2019-07-06T12:13:50.2424256+02:00 + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 4 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 4 pins according to IEC 61076, ch... + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 4 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 4 pins according to IEC 61076, ch... + + + + + + Interface Class Library for the M12 series (X, H) electrical connectors based on IEC 61076-2-109 + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 8 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 8 pins according to IEC 61076, ch... + + + + + + Interface Class Library for the M12 series (coding S, T, L, K, E, F, M) electrical connectors based on IEC 61076-2-111 + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 4 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 4 pins according to IEC 61076, ch... + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + This ElectricInterface reflects an M12 female connector with 4 pins according to IEC 61076, ch... + + + This ElectricInterface reflects an M12 male connector with 4 pins according to IEC 61076, ch... + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Interface Class Library for the M8 series (coding A, B, K) electrical connectors based on IEC 61076-2-104 + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + TODO: Interface Class Library for the M5 series (A) electrical connectors based on IEC 61076-2-105 + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 1 + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + 1 + + + + Function description of the pin or contact. + + + + + + + + + Interface Class Library for electrical connectors such as terminal blocks or clamping strips. + 0.0.0 + + Terminal (clamp or pin) + + + Nominal value of the rated voltage an electromechanical component is designed for + + + + connector for a single wire + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description of the pin or contact. + + + + + + Interface Class Lib for connectors for the Universal Serial Bus (USB), an industry standard that establishes specifications for cables and connectors and protocols for connection, communication and power supply between computers, peripheral devices and other computers.as maintained by the USB Implementers Forum (https://www.usb.org). + 1.0.0 + + Attribute collection for pins of USB connectors. + + Function description of the pin or contact. + + + GND + D- + D+ + VBUS + ID + SSTx- + SSTx+ + SSRx- + SSRx+ + DPWR+ + DPWR- + GND_DRAIN + Shield + not connected + other + n/a + + + + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + + Interface Class Library for the Type A connectors of USB 2 and 3. + + Type A Socket for USB 2 with 4 pins. + + + Function description of the pin or contact. + VBUS + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + + + D- + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + + + Function description of the pin or contact. + D+ + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + + + Function description of the pin or contact. + GND + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + + + Type A Plug for USB 2 with 4 pins. + + + Function description of the pin or contact. + VBUS + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + + + Function description of the pin or contact. + D- + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + + + Function description of the pin or contact. + D+ + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + + + Function description of the pin or contact. + GND + + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + + + + + Role Class Library for connectors. + 0 + + + + + + + + + + + DC interface for proximity sensors and switching amplifiers (NAMUR) according to IEC 60947-5-6 + + + + Role Class Library for cables. + 0 + + + + + + This AttributeTypeLib collects relevant attribute definitions for electromechanical components. + 1.0 + + Maximum operational frequency. + + + Available colour description schemes. + + + + + + + + Code according to IEC 60757 to describe the colour (BK, BN, BU, GD, GN, GNYE, GY, OG, PK, RD, SR, TQ, VT, WH, YE). + + + + Code according to UL to describe the colour (BK, BN, BU, GD, GN, GNYE, GY, OG, PK, RD, SR, TQ, VT, WH, YE). + + + + + Nominal value of the rated voltage an electromechanical component is designed for + + + + Temperature characteristics of the component + + Lower category (ambient) temperature of the component according to IEC 60068-1 + + + + Upper category (ambient) temperature of the component according to IEC 60068-1, IEC 512 + + + + + Mechanical endurance, minimum number of engagements and separations that the connector can withstand without electrical load. After test the connector shall fulfil requirements stated in IEC 60169-1(17) (1987). + + + + Degree of protection (IP code) of an electromechanical component provided by enclosure according to IEC 60529, ISO 20653 or NEMA 250. + IP65 + + + + Code of the material of the housing or shell of a connector or switch. + + + + + This AttributeTypeLib collects relevant attribute defintions of electrical contacts for electromechanical connectors. + 0.1 + + Code of the material of the body of the contacts of a connector, relay or switch. + + + + Code of the finish or surface material of the contacts of a connector, relay or switch. + + + + Maximum continuous rms current per contact of a connector, at specified ambient temperature + + + + Function description code for the pin or contact (e.g. In, Out, IOL, GND, US, Tx+, Tx-, Rx+, Rx-, RTS, CAN_H, CAN_L, Shield, Diag,...). + + + + + This AttributeLib collects relevant attribute defintions for connectors according to IEC61076-2. + 0.1 + + lower category (ambient) temperature of a component + -25 + + + + + upper category (ambient) temperature of a component + 85 + + + + + Minimum value of impulse voltage with specified pulse shape, applied between specified conductive parts of a relay, which does not cause breakdown + + + + + Nominal value of the rated voltage an electromechanical component is designed for + + + + + Code identifying the standardized pollution degree an electromechanical component can perform according to IEC 60664-1:2007 + + + + + maximum continuous rms current per contact of a connector, all contacts loaded, at specified ambient temperature + + + + + Maximum resistance of a mated set of contacts of a connector, relay or switch + + + + + minimum resistance between one terminal or several terminals connected together and the case or enclosure of a component at specified voltage + + + + + number of mechanical transactions of an item ranging from one defined status in a different one, induced by an external control information. + + + + + maximum force required to engage a connector with its mating part, excluding the effect of a coupling, locking or similar device + + + + + minimum force required to separate a connector from its mating part, excluding the effect of a coupling, locking or similar device + + + + + Degree of protection (IP code) of an electromechanical component provided by enclosure according to IEC 60529. + + + + + + This AttributeTypeLib collects relevant attribute defintions for cables. A cable is an assembly of one or more conductors and/or optical fibres, with a protective covering and possibly filling, insulating and protective material. + 0 + + Number of insulated conductors or wires in a cable. + + + + + Code of the material of a conductive part of a conductor + + + + Code of the material of the insulating layer of an insulated conductor according to DIN EN ISO 1043 + + + + Code of the sheat material of the cable. + + + + Value of the outside diameter of the cable. + + + + Maximum length of the cable, including the lacquered part of the leads + + + + Code to describe the colour of the sheath or jacket + + + Nominal dc resistance per unit length of a conductive part of a conductor + + + + Nominal capacitance per unit length between a pair of conductors of a cable + + + + Code of the shielding material + + + + Coverage of the shield in percent. + + + Minimum value of impulse voltage with specified pulse shape, applied between specified conductive parts of a relay, which does not cause breakdown + + + + \ No newline at end of file diff --git a/SOURCE/Plugin/Resources/IndustrialSensorLibrary_v1_0_0.aml b/SOURCE/Plugin/Resources/IndustrialSensorLibrary_v1_0_0.aml new file mode 100644 index 0000000..ed49f15 --- /dev/null +++ b/SOURCE/Plugin/Resources/IndustrialSensorLibrary_v1_0_0.aml @@ -0,0 +1,350 @@ + + + + + AutomationML Editor + 916578CA-FE0D-474E-A4FC-9E1719892369 + AutomationML e.V. + www.AutomationML.org + 5.3.0.0 + 5.3.0.0 + 2019-11-22T12:29:29.6333413 + unspecified + unspecified + + + + The IndustrialSensorTypeRCL collects role class type descriptions of standard industrial sensors, aligned to the standards where they were originally defined. The mapping of the attributes towards the semantic systems IEC-CDD and eCl@ss was defined by the ZVEI working group "Industrie 4.0 in der Sensorik" in 2019. Please check legal restrictions that may exist for your organisation regarding the use of the eCl@ss-IRDIs. For questions regarding this AutomationML-Library please contact Markus.Rentschler@balluff.de. + 1.0.0 + + This role class provides standard classification attributes for proximity switches according to IEC 60947-5-2, which applies to inductive and capacitive proximity switches that sense the presence of metallic and/or non-metallic objects, ultrasonic proximity switches that sense the presence of sound reflecting objects, photoelectric proximity switches that sense the presence of objects and non-mechanical magnetic proximity switches that sense the presence of objects with a magnetic field. + + Defines the semantic systems in use. + + + + IEC 62683 - SC 3D / SC 17B - Common Data Dictionary + + + 2.0014.0016 + + + IRDI:0112/2///62683# + + + https://cdd.iec.ch/cdd/iec62683/iec62683.nsf + + + + + eCl@ss + + + 10.1 + + + IRDI:0173 + + + https://www.eclasscontent.com + + + + + Information necessary for unambiguous identification of the device + + + Global Trade Item Number (GTIN). International unique and universal item number for products and services used by trade and industry (formerly EAN) + + + + + Name of the Manufacturer (person, company or organisation) + + + + + Product family name of the manufacturer, characterization may be based on its usage, operation principle, and its fabricated form + + + + + Product name or model code of the manufacturer + + + + + Unique product identifier given by the manufacturer + + + + + Online information URL to the product data. + + + + + Classification of a product according to trade regulations. Number assigned to each type of product sold internationally. + + + + + + Physical information of the proximity switch + + + Height of the body, vertical distance between the top and bottom of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + Width or breadth of the body, horizontal distance between the left-hand and right-hand extremes of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + Length of the body, horizontal distance between the front and back of the component when standing in its normal position of use, including connectors and terminals, without accessory and cable. + + + + + Diameter of circular cross section of the device. + + + + + Condition of mounting position of the sensor related to its sensing side (i.e. FLUSH, NOTFLUSH) + + + + + Basic exterior form of the device (i.e. RECT, CYLPL, CYL, OTHOUS). + + + + + + General technical aspects of the proximity switch. + + + The switch distance without considering manufacturing tolerances or variations due to external conditions such as voltage and temperature. + + + + + The switch distance measured at stated temperature, voltage and mounting conditions. + + + + Output function of a device realised with a switching semiconductor element or a contact element (i.e. NO, NC, CHOVER, PROG, OTHFUNC). + + + + Number of switch activations for a sensor within a determined time period. + + + + Kind of electric current supply (i.e. AC, DC, ACDC). + + + + Type of technology of the output interface of the sensor (i.e. NPN, PNP, NPNORPNP, PNP/PNP, NPN/NPN, PNP/NPN, OTHTEC, NAMUR, ASI, IOLINK, RELAY, REED, OPTO, TWOWIRE). + + + + + Number of conductive parts provided for electrical connection to external circuits (i.e. TWOWR, THREEWR, FOURWR, OTHWR). + + + + Degree of protection (IP code) of the component provided by enclosure, numerical classification in accordance with IEC 60529 preceded by the symbol IP (i.e. IP20, IP67). + + + + + Operating temperature limits of the air surrounding the complete component. + + + + + + The prescribed protection class in accordance with EN 60730-1 (i.e. CLASS_I, CLASS_II, CLASS_III) + + + + + Basic material of the housing of the component. + + + + + Basic material of the sensing face of the component. + + + + + Additional functionality of the device + + + + + + General technical aspects of the proximity switch. + + + Range of voltage combined with a rated operational current intended to be switched by the device under specified conditions. + + + + Range of supply voltage of the device from the lower limit to the upper limit, including supply tolerances. + + + + + + Frequency of the supply assigned to a device by the manufacturer for a specified operating condition (i.e. 50HZ, 60HZ, 50/60HZ, NOFREQ). + + + + Range of current combined with an a.c. rated operational voltage intended to be switched by the device under specified conditions. + + + + Range of current combined with an d.c. rated operational voltage intended to be switched by the device under specified conditions. + + + + Current which flows through the load circuit of the proximity switch in the OFF-state. + + + + Minimum current necessary to maintain the ON-state conduction of the switching element. + + + + Voltage measured across the switching element when carrying the operational current flow under specified conditions. + + + + Device output protected against overload and short-circuits of the connected load. + + + + + General technical aspects of the proximity switch. + + + Physical design of the electrical connection from the body of the sensor to the conductor suitable for the intended use (i.e. SPGCON, CABLE, CABLECON, SCREWCON, CON1/2, CON3/4, CON7/8, CONM5, CONM8, CONM12, OTHCON). + + + + + Length of the electrical connecting cable. + + + + + Value of the maximum cross-section of all connectable types of conductors. + + + + Material of the sheath or jacket (tubular covering) of the cable (i.e. PVC, SILICONE, PUR_VULC, POLYUR, OTHMAT). + + + + + + Conformity of a device with specified requirements and compliance with recognised product standards. + + + Certificate for which it is confirmed that the product corresponds to the significant technical specifications and is subjected to a factory-internal production control + + + + Reference to one or more standards to which the product complies + + + + + Availability of data providing quantified environmental data using predetermined parameters and, where relevant, additional environmental information + + + + + Proximity switch producing an electromagnetic field within a sensing zone for detecting objects and having a semiconductor switching element + + + Proximity switch producing an electric field within a sensing zone for detecting objects and having a semiconductor switching element + + Whether the active surface is pressure resistant + + + + + Proximity switch producing an electromagnetic field within a sensing zone for detecting objects and having a semiconductor switching element + + Constructive arrangement of the element which dampens or determines position + + + + Distance from the active surface, within which correct recording of the absence of an established object is achieved under all established environmental conditions and manufacturers' tolerances + + + + Distance from the active surface, within which correct recording of the presence of an established object is achieved under all established environmental conditions and manufacturers' tolerances + + + + + proximity switch which detects objects that either reflect or interrupt visible or invisible light and having a semiconductor switching element + + Zone before a sensor in which an object or reflector is not recognized, measured from active surface + + + + + Properties of light (radiation, defined for a certain range of wavelengths) and source of light + + + + + Assignment of laser facilities to classes, defining limiting values for accessible radiation regarding photochemical endangerment + + + + + Diffuse reflective photoelectric proximity switch which is directly operated through lateral or axial approach to its reference axis by a defined object + + + Photoelectric proximity switch which is directly operated through lateral or axial approach to its reference axis by a defined object and specifically optimized for more predictable detection at the desired distance of objects with different reflectivity and capable of non-detection of objects in a precisely defined region called the background zone. + + + Retroreflective photoelectric proximity switch which is indirectly operated through lateral approach to its reference axis between emitter-receiver and reflector by a defined object + + + Through beam photoelectric proximity switch which is indirectly operated through lateral approach to its reference axis between emitter and receiver by a defined object + + + + Proximity switch which detects objects that either reflect or interrupt ultrasound energy and having a semiconductor switching element + + Zone before a sensor in which an object or reflector is not recognized, measured from active surface + + + + + Whether the sensor is equipped with a synchronization function (avoidance of mutual influencing of neighboring sensors via a special synchronization input through which a measurement cycle is launched) + + + + Minimum value for the stipulated spatial extension for use as work space + + + + Maximum value for the stipulated spatial extension for use as work space + + + + + + \ No newline at end of file diff --git a/SOURCE/Plugin/Resources/icons8-collapse-arrow-24.png b/SOURCE/Plugin/Resources/icons8-collapse-arrow-24.png new file mode 100644 index 0000000000000000000000000000000000000000..9906ea80d73274bd0d9dbd31707913badaa7ed89 GIT binary patch literal 226 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM3?#3wJbMaASqAuoxVjhk0GVWf(*>X9f!c&h zg8YIRk literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Resources/icons8-datei-hinzufügen-16.png b/SOURCE/Plugin/Resources/icons8-datei-hinzufügen-16.png new file mode 100644 index 0000000000000000000000000000000000000000..eb654f5f250154717b821e09d30d461fd8369814 GIT binary patch literal 351 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}QGic~t9yYDkV#Llg>_de&_30Y zAirP+Hiz=toA3T)`Bk-rQ@27#dy`f>Z!5pkE1Ra5`+poc_-)1EJM6AerfonC<(@8% zArhB+`%m&UDDb#Ay1wfAy-)l9|86H49l(N>`CLfwxXAZoip!>m6fx= pPBo_*1INi3Ouq$|sDF=9FkcqN{;|$}!7)%6dAj_de&_30Y zAirP+Hiz=toA3T)`Bk-rQ@27#dy`f>Z!5pkE1Ra5`+poc_-)1EJM6AerfonC<(@8% zArhB+`%m&UDDb#Ay1wfAy-)l9|86H49l(N>`CLfwxXAZoip!>m6fx= pPBo_*1INi3Ouq$|sDF=9FkcqN{;|$}!7)%6dAj$EDD z+Z$59o@>3jCV5%A-}WgXZ;v;8dd0&ARLoKm6 zxOh6pVbd)EjHfun3mKUdn0cHgNb2bYEAnh#Bi13c-9*7dvG*YpYe6^z!}?c>7auYH RvI3gG;OXk;vd$@?2>==3H@W}- literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Resources/icons8-dateiuntermodul-16.png b/SOURCE/Plugin/Resources/icons8-dateiuntermodul-16.png new file mode 100644 index 0000000000000000000000000000000000000000..323c5adb882ddc7da6a8e5f664caa266d8408005 GIT binary patch literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFv4DbnYbuaK)(BwI@#$`sW>$EDD z+Z$59o@>3jCV5%A-}WgXZ;v;8dd0&ARLoKm6 zxOh6pVbd)EjHfun3mKUdn0cHgNb2bYEAnh#Bi13c-9*7dvG*YpYe6^z!}?c>7auYH RvI3gG;OXk;vd$@?2>==3H@W}- literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Resources/icons8-datenbank-hinzufügen-30.png b/SOURCE/Plugin/Resources/icons8-datenbank-hinzufügen-30.png new file mode 100644 index 0000000000000000000000000000000000000000..2a4059cfbd80f40725a889eb4570b58ca7fdf87a GIT binary patch literal 440 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX3?zBp#Z3TGEdf3uuI>dsK<2=LcX#EOfG*H3 z3GxeO_$YerpV-k)k3$Y8t9b@}IQv<|*1D1$ev3-sr#@D zBT(B8PZ!4!jq^t*UFT~y;Bh_ccVkN6sdsWe|NqyXAeQlHUx>%oX5p7duJ4=3_)q3H z^W>%qVKtu4yhA*_Q#bTpJngm5*XPc^!lKWG`FZP_AAb&g^EdETL*Uii)uL>VelKy# z{J7fHPd?|B(guhogf5Jd{hz}XL-LJD#7te8Tp4G=YZK=(ly~|Hu zK6|}>a&O4HD_i#;`5rDg|JxmjhqBCT^B=tOw~A{zdWy~S^Ixe(!-G9{Z<(x!d275R zr`07%H}hrtgq3f8rMErz_UY(~x1FNeKToOR&hb~ksJ8HQaSYKopF4@Q_>hA@D?f+f zlA{ZET)DgV%H6wnWAFW+pV#-Y#e1{y&h4M~t#Ogq?6Oj0^Pc5LavpKtw`Uc36Cm5O z$)x6`}22}3#y(h-EVXJ&JtI_r@;qAUur*?s4IKE(d4A?hfKvy>?bDJG05-g z$jdkut5%zIX41bi$JXg4AAWs8_x=Z?iJ`o=J*SJ$o~m=|V&u{UJGp=>RV?K<>we5w zI>FXQ>G;VgdxK;7ciH&9TvncYvN~&NmQY&Dk*$ABpO|{yEqNCqm)5q2BiT#(rJJcl z)EZW)9-mCML$zPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0su)wK~z{r?Uy%B z1ThqbN2CUkS`ZznBpm>800dlxbO1t$NF@laK|BVbg&GP(s0jb(-6svB^^9j`(So$U z^hvh&`Pt+2-bPLRH;sxlaUpKROBKrJVpWWYx@%foiLXGI;Djixc5xs+1&*J@p_mh_ zMrReu^WsQggDrjbMVlz3K4D+|DmFy7$Wo8M_Fd5Tvf7qQ9fFQHxEDp1b5cAAn?$P! z)}Ejv4*F>*r~zS<*rg#v960vxO{9H!ix{gEQ#B>z}eu~aX4p1mNWb1^t#?%_EiwBkpuk zWd=u!g1%?2=Fy$NDEXY09US44{34 zRwD!+o4TasNs&zOSh1}3$Aq{2S}-WFJ~iQJ>W?Xkz5%Cw%8BD8ia-DW002ovPDHLk FV1m_I42b{$ literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Resources/icons8-expand-arrow-24.png b/SOURCE/Plugin/Resources/icons8-expand-arrow-24.png new file mode 100644 index 0000000000000000000000000000000000000000..e5204e241051fc78795e5125bb129cfc2d07a884 GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM3?#3wJbMaAc?9@`xVjhk0GX5n&o;HoKvTp^ zg8YIReyn3=Ene%___HtXpHy?Wv?Y^inRlga>H>A35Um3k_DF;PbJJ`Tz0L+;pe*L2c~>F z$YgLfMVW2s(S?sVc|5ohE*Y>EWOgvMn7A-bGVyQ}oMduA)o`J^?1Z~7s?=DHp4Hhc dE5WA9z##oZ=-)g(p+z9KdAjPZ!4!jq_6{T^DLH5OEQow7|t-$*t<^zyI%7*S&IP#qSA{MKgA%Pilxi zXTo7@$uN0~q4ALu#}yPe=BPHQ9epQmqRtqhJk^ssaO;XK6BbA&TuHh0e$#QSZ~0PT z_x@~en`j;`)qnjn@11cs<=d#Wzp$P!icZ`+* literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Resources/icons8-löschen-26.png b/SOURCE/Plugin/Resources/icons8-löschen-26.png new file mode 100644 index 0000000000000000000000000000000000000000..fcee16825e00178c40d137869ca4419ad53cd653 GIT binary patch literal 330 zcmeAS@N?(olHy`uVBq!ia0vp^QXtI13?%1G+4BcT`33ldxVjhk0GZSRcP4o00nL&u z3GxeOxUY0v?w+Fj!@G<(P6*u;zIE!nz#Z9Rf(p#Zclm&dCV9FzhG?AMJL$GivjUF` zXUGDkxLaAX|Np<3<=k`VhWqC&#_hZ*%|YSUt@--4N+$_@k`dgiR=Zo-?ia6Q%&MP1 zV>V|UUh;N=q~M#VwCu@C_oOa-YQ+9TnZM?n|C!_3=OFMg{vd$@?2>|rGG~NIJ literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Resources/icons8-plus-mathe-30.png b/SOURCE/Plugin/Resources/icons8-plus-mathe-30.png new file mode 100644 index 0000000000000000000000000000000000000000..0d8a60df429b90040844b36f2a6a618e99d9e42d GIT binary patch literal 152 zcmeAS@N?(olHy`uVBq!ia0vp^av;pY3?xs=ZJr3E_yc@GT-^(NfJ`{JyoTdHki$|E zdt?@S?-^A0!F+}2Wa)JW4ffnb24>MzV0)FV|@i8Aw4=HS9RA=09S>ONz mw|wkhhu!ko6^q)$ literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Resources/icons8-stornieren-16.png b/SOURCE/Plugin/Resources/icons8-stornieren-16.png new file mode 100644 index 0000000000000000000000000000000000000000..f76c33cbd41cf40eb5d80467f6c96661dc1e0e0f GIT binary patch literal 423 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMf%mAMdSN8&+lWuOuU0fdL7GuU~(zS@Uz{%1`a>KbJ56xq9{U($a5zeV^Le zo|Tk5D=q!CcklPUzW@LJ{W@^q_x}CA4<7v5+k5wwr5DhV3MD~)!3>Ij{(Mk+&-D4v z`|CF&4@CXFbtC+9#5;vU2jB18yKm3$bCaHX0M*X*ba4!kxE$)w&e!a~WBmBRjnvZq zEw*Lf|I1&u*64`pQi}F_#Lys{>vNZfS(-WGjCNpm*YBJMw^?}$Vtju-p6IPQF<4Mt z%j@K+CXLgLrLHBm@xK=3vCn9l@+oLe3+s!mv-a8ETUF~f`SDF_sh1qjt#2s{oLP6L zQmgpKxhaP~gj7B2>)IIe_2yQU?Ag0s?pXeJ-{#NFOQV06{P`vyzs5~u?~AKaYk&@A N@O1TaS?83{1OOJL&$9pk literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Resources/icons8-winkel-links-30.png b/SOURCE/Plugin/Resources/icons8-winkel-links-30.png new file mode 100644 index 0000000000000000000000000000000000000000..7a35cb70c39275d087694d1858b1fcff7727220e GIT binary patch literal 271 zcmV+q0r38bP)V(kplX#YM2< z83Y92Y*>18G^92(||RCAe`)YuJl3MN{18(LQZU@9iG~E zVxU93i@WxnSt%Tqt_kcotAfk1Q#*zp zZ+)<_hbR88f^tc2H0`+3dP0M<@|9=w@+1=vA7~hS=zDnTkD-bI2q6aqVdKF+T3-Qp VYcS_ez-a&g002ovPDHLkV1kF#Y#{&u literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/Resources/icons8-winkel-rechts-30.png b/SOURCE/Plugin/Resources/icons8-winkel-rechts-30.png new file mode 100644 index 0000000000000000000000000000000000000000..f910ad2ba63cc2e10b5f62b4f40a1af8dc02aec9 GIT binary patch literal 261 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX0wgC|rfC8xrX+877l!}s{b%+AdHXzF978;g zCnrdlCCDGHSFkyGz`O66al+aEl4eE*6W2vHJ~R!f=C&-mZS;pF``>W^&%SRlEAHNx z@Hu(WPI%Q{&1R98vmzz=9Jb1*CaA~m<~VG-;v4G|i@OaExkIY;EN?Y8DDqwU(|&NW z%v;@n-S>@FOjtLQbH=5A&cZsirrRgIf0K~W@HeeM&3;vp$5pL!A2?Q(+Qm***GaZv z+121Of&Kg>wIx}lY;Af=3_29{OJpr8X51mZ<||93>w5tPhI1X+dYiUA_zLt1gQu&X J%Q~loCIEHEXR!bP literal 0 HcmV?d00001 diff --git a/SOURCE/Plugin/SearchAMLComponentFile.cs b/SOURCE/Plugin/SearchAMLComponentFile.cs new file mode 100644 index 0000000..70c5a0b --- /dev/null +++ b/SOURCE/Plugin/SearchAMLComponentFile.cs @@ -0,0 +1,519 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Aml.Engine.CAEX; + +namespace Aml.Editor.Plugin +{ + class SearchAMLComponentFile + { + public Dictionary>> DictionaryofElectricalConnectorType { get; set; } + public Dictionary>> DictioanryofElectricalConnectorPinType { get; set; } + + + public Dictionary>> DictionaryofRolesforAutomationComponenet { get; set; } + public Dictionary>> DictionaryofRoles { get; set; } + + + public SearchAMLComponentFile() + { + + } + + public void CheckForAttributesOfExternalIterface(int i, ExternalInterfaceType externalInterface) + { + List> attributelist = new List>(); + if (externalInterface.Attribute.Exists) + { + foreach (var attribute in externalInterface.Attribute) + { + StoreEachAttributeValueInListOfExternalIterface(i, attributelist, attribute, externalInterface); + CkeckForNestedAttributesOfExternalIterface(i,attribute, externalInterface); + + } + + } + if (!externalInterface.Attribute.Exists) + { + List> list = new List>(); + List sublist = new List(); + + list.Add(sublist); + try + { + if (DictionaryofElectricalConnectorType.ContainsKey( "("+i+")"+ externalInterface.Name.ToString()+ "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryofElectricalConnectorType["(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + { + DictionaryofElectricalConnectorType.Add("(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + } + + + } + + public void CkeckForNestedAttributesOfExternalIterface(int i, AttributeType attributeType, ExternalInterfaceType externalInterface) + { + List> attributelist = new List>(); + if (attributeType.Attribute.Exists) + { + + foreach (var attributeinattribute in attributeType.Attribute) + { + StoreEachAttributeValueInListOfExternalIterface(i, attributelist, attributeinattribute, attributeType, externalInterface); + CkeckForNestedAttributesOfExternalIterface(i,attributeinattribute, externalInterface); + + } + + } + if (!attributeType.Attribute.Exists) + { + List> list = new List>(); + List sublist = new List(); + + + list.Add(sublist); + if (DictionaryofElectricalConnectorType.ContainsKey("(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryofElectricalConnectorType["(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + { + DictionaryofElectricalConnectorType.Add("(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + + } + + } + + public void StoreEachAttributeValueInListOfExternalIterface(int i, List> list, AttributeType attributeType, ExternalInterfaceType externalInterface) + { + list = new List>(); + List sublist = new List(); + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + attributeparameters.Name = attributeType.Name; + attributeparameters.Value = attributeType.Value; + attributeparameters.Default = attributeType.DefaultValue; + attributeparameters.Unit = attributeType.Unit; + attributeparameters.DataType = attributeType.AttributeDataType; + attributeparameters.Description = attributeType.Description; + attributeparameters.CopyRight = attributeType.Copyright; + attributeparameters.AttributePath = attributeType.AttributePath; + attributeparameters.RefSemanticList = attributeType.RefSemantic; + // attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.RefBaseClassPath = externalInterface.RefBaseClassPath; + attributeparameters.ID = externalInterface.ID; + + sublist.Add(attributeparameters); + list.Add(sublist); + try + { + if (DictionaryofElectricalConnectorType.ContainsKey("(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryofElectricalConnectorType["(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + { + DictionaryofElectricalConnectorType.Add("(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + + + } + + public void StoreEachAttributeValueInListOfExternalIterface(int i, List> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface) + { + list = new List>(); + List sublist = new List(); + + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + // In the following parameters on right hand side "attributeType" has been changed to "AttributeInAttribute" this has been repeated to all + // methods of name "StoreEachAttributeValuesInList" with four parameters. + attributeparameters.Name = AttributeInAttribute.Name; + attributeparameters.Value = AttributeInAttribute.Value; + attributeparameters.Default = AttributeInAttribute.DefaultValue; + attributeparameters.Unit = AttributeInAttribute.Unit; + attributeparameters.DataType = AttributeInAttribute.AttributeDataType; + attributeparameters.Description = AttributeInAttribute.Description; + attributeparameters.CopyRight = AttributeInAttribute.Copyright; + attributeparameters.AttributePath = AttributeInAttribute.AttributePath; + attributeparameters.RefSemanticList = AttributeInAttribute.RefSemantic; + // attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.RefBaseClassPath = externalInterface.RefBaseClassPath; + attributeparameters.ID = externalInterface.ID; + + + sublist.Add(attributeparameters); + list.Add(sublist); + if (DictionaryofElectricalConnectorType.ContainsKey("(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryofElectricalConnectorType["(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + { + DictionaryofElectricalConnectorType.Add("(" + i + ")" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + + } + + public void CheckForAttributesOfEclectricalConnectorPins(int i, ExternalInterfaceType externalInterface, ExternalInterfaceType classType) + { + List> attributelist = new List>(); + if (externalInterface.Attribute.Exists) + { + foreach (var attribute in externalInterface.Attribute) + { + StoreEachAttributeValueInListOfElectricalConnectorPins(i, attributelist, attribute, externalInterface, classType); + CkeckForNestedAttributesOfElectricalConnectorPins(i, attribute, externalInterface, classType); + + } + + } + if (!externalInterface.Attribute.Exists) + { + List> list = new List>(); + List sublist = new List(); + + list.Add(sublist); + try + { + if (DictioanryofElectricalConnectorPinType.ContainsKey("(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + + externalInterface.Name.ToString() + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictioanryofElectricalConnectorPinType["(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + { + DictioanryofElectricalConnectorPinType.Add("(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + } + + + } + + public void CkeckForNestedAttributesOfElectricalConnectorPins(int i, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType) + { + List> attributelist = new List>(); + if (attributeType.Attribute.Exists) + { + + foreach (var attributeinattribute in attributeType.Attribute) + { + StoreEachAttributeValueInListOfElectricalConnectorPins(i, attributelist, attributeinattribute, attributeType, externalInterface, classType); + CkeckForNestedAttributesOfElectricalConnectorPins(i, attributeinattribute, externalInterface, classType); + + } + + } + if (!attributeType.Attribute.Exists) + { + List> list = new List>(); + List sublist = new List(); + + + list.Add(sublist); + if (DictioanryofElectricalConnectorPinType.ContainsKey("(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictioanryofElectricalConnectorPinType["(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + { + DictioanryofElectricalConnectorPinType.Add("(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + + } + + } + + public void StoreEachAttributeValueInListOfElectricalConnectorPins(int i, List> list, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType) + { + list = new List>(); + List sublist = new List(); + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + attributeparameters.Name = attributeType.Name; + attributeparameters.Value = attributeType.Value; + attributeparameters.Default = attributeType.DefaultValue; + attributeparameters.Unit = attributeType.Unit; + attributeparameters.DataType = attributeType.AttributeDataType; + attributeparameters.Description = attributeType.Description; + attributeparameters.CopyRight = attributeType.Copyright; + attributeparameters.AttributePath = attributeType.AttributePath; + attributeparameters.RefSemanticList = attributeType.RefSemantic; + // attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.RefBaseClassPath = externalInterface.RefBaseClassPath; + attributeparameters.ID = externalInterface.ID; + + sublist.Add(attributeparameters); + list.Add(sublist); + try + { + if (DictioanryofElectricalConnectorPinType.ContainsKey("(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictioanryofElectricalConnectorPinType["(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + { + DictioanryofElectricalConnectorPinType.Add("(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + + + } + + public void StoreEachAttributeValueInListOfElectricalConnectorPins(int i, List> list, AttributeType AttributeInAttribute, AttributeType attributeType, ExternalInterfaceType externalInterface, ExternalInterfaceType classType) + { + list = new List>(); + List sublist = new List(); + + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + // In the following parameters on right hand side "attributeType" has been changed to "AttributeInAttribute" this has been repeated to all + // methods of name "StoreEachAttributeValuesInList" with four parameters. + attributeparameters.Name = AttributeInAttribute.Name; + attributeparameters.Value = AttributeInAttribute.Value; + attributeparameters.Default = AttributeInAttribute.DefaultValue; + attributeparameters.Unit = AttributeInAttribute.Unit; + attributeparameters.DataType = AttributeInAttribute.AttributeDataType; + attributeparameters.Description = AttributeInAttribute.Description; + attributeparameters.CopyRight = AttributeInAttribute.Copyright; + attributeparameters.AttributePath = AttributeInAttribute.AttributePath; + attributeparameters.RefSemanticList = AttributeInAttribute.RefSemantic; + //attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.RefBaseClassPath = externalInterface.RefBaseClassPath; + attributeparameters.ID = externalInterface.ID; + + + sublist.Add(attributeparameters); + list.Add(sublist); + if (DictioanryofElectricalConnectorPinType.ContainsKey("(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictioanryofElectricalConnectorPinType["(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + { + DictioanryofElectricalConnectorPinType.Add("(" + i + ")" + classType.Name.ToString() + "{" + "Class:" + " " + classType.BaseClass + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + + } + + // read supported role class attributes of System Unit Class i.e. "Component Attributes " + public void CheckForAttributesOfComponent(int i, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType) + { + List> attributelist = new List>(); + if (classType.Attribute.Exists) + { + foreach (var attribute in classType.Attribute) + { + StoreEachAttributeValueInListOfComponent(i, attributelist, attribute, supportedRoleClass, classType); + CkeckForNestedAttributesOfComponent(i, attribute, supportedRoleClass, classType); + + } + + } + if (!classType.Attribute.Exists) + { + List> list = new List>(); + List sublist = new List(); + + list.Add(sublist); + try + { + if (DictionaryofRolesforAutomationComponenet.ContainsKey("(" + i + ")" + supportedRoleClass.RoleReference.ToString() )) + { + DictionaryofRolesforAutomationComponenet["(" + i + ")" + supportedRoleClass.RoleReference.ToString()].AddRange(list); + } + else + { + DictionaryofRolesforAutomationComponenet.Add("(" + i + ")" + supportedRoleClass.RoleReference.ToString(), list); + } + } + catch (Exception) + { + + throw; + } + } + + + } + + public void CkeckForNestedAttributesOfComponent(int i, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType) + { + List> attributelist = new List>(); + if (attributeType.Attribute.Exists) + { + + foreach (var attributeinattribute in attributeType.Attribute) + { + StoreEachAttributeValueInListOfComponent(i, attributelist, attributeinattribute, attributeType, supportedRoleClass, classType); + CkeckForNestedAttributesOfComponent(i, attributeinattribute, supportedRoleClass, classType); + + } + + } + if (!attributeType.Attribute.Exists) + { + List> list = new List>(); + List sublist = new List(); + + + list.Add(sublist); + try + { + if (DictionaryofRolesforAutomationComponenet.ContainsKey("(" + i + ")" + supportedRoleClass.RoleReference.ToString())) + { + DictionaryofRolesforAutomationComponenet["(" + i + ")" + supportedRoleClass.RoleReference.ToString()].AddRange(list); + } + else + { + DictionaryofRolesforAutomationComponenet.Add("(" + i + ")" + supportedRoleClass.RoleReference.ToString(), list); + } + } + catch (Exception) + { + + throw; + } + + } + + } + + public void StoreEachAttributeValueInListOfComponent(int i, List> list, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType) + { + list = new List>(); + List sublist = new List(); + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + attributeparameters.Name = attributeType.Name; + attributeparameters.Value = attributeType.Value; + attributeparameters.Default = attributeType.DefaultValue; + attributeparameters.Unit = attributeType.Unit; + attributeparameters.DataType = attributeType.AttributeDataType; + attributeparameters.Description = attributeType.Description; + attributeparameters.CopyRight = attributeType.Copyright; + attributeparameters.AttributePath = attributeType.AttributePath; + attributeparameters.RefSemanticList = attributeType.RefSemantic; + // attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.SupportesRoleClassType = supportedRoleClass.RefRoleClassPath.ToString(); + //attributeparameters.ID = supportedRoleClass.ID; + + sublist.Add(attributeparameters); + list.Add(sublist); + try + { + if (DictionaryofRolesforAutomationComponenet.ContainsKey("(" + i + ")" + supportedRoleClass.RoleReference.ToString())) + { + DictionaryofRolesforAutomationComponenet["(" + i + ")" + supportedRoleClass.RoleReference.ToString()].AddRange(list); + } + else + { + DictionaryofRolesforAutomationComponenet.Add("(" + i + ")" + supportedRoleClass.RoleReference.ToString(), list); + } + } + catch (Exception) + { + + throw; + } + + + } + + public void StoreEachAttributeValueInListOfComponent(int i, List> list, AttributeType AttributeInAttribute, AttributeType attributeType, SupportedRoleClassType supportedRoleClass, SystemUnitFamilyType classType) + { + list = new List>(); + List sublist = new List(); + + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + // In the following parameters on right hand side "attributeType" has been changed to "AttributeInAttribute" this has been repeated to all + // methods of name "StoreEachAttributeValuesInList" with four parameters. + attributeparameters.Name = AttributeInAttribute.Name; + attributeparameters.Value = AttributeInAttribute.Value; + attributeparameters.Default = AttributeInAttribute.DefaultValue; + attributeparameters.Unit = AttributeInAttribute.Unit; + attributeparameters.DataType = AttributeInAttribute.AttributeDataType; + attributeparameters.Description = AttributeInAttribute.Description; + attributeparameters.CopyRight = AttributeInAttribute.Copyright; + attributeparameters.AttributePath = AttributeInAttribute.AttributePath; + attributeparameters.RefSemanticList = AttributeInAttribute.RefSemantic; + // attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.SupportesRoleClassType = supportedRoleClass.RefRoleClassPath.ToString(); + /*attributeparameters.RefBaseClassPath = externalInterface.RefBaseClassPath; + attributeparameters.ID = externalInterface.ID;*/ + + + sublist.Add(attributeparameters); + list.Add(sublist); + try + { + if (DictionaryofRolesforAutomationComponenet.ContainsKey("(" + i + ")" + supportedRoleClass.RoleReference.ToString())) + { + DictionaryofRolesforAutomationComponenet["(" + i + ")" + supportedRoleClass.RoleReference.ToString()].AddRange(list); + } + else + { + DictionaryofRolesforAutomationComponenet.Add("(" + i + ")" + supportedRoleClass.RoleReference.ToString(), list); + } + } + catch (Exception) + { + + throw; + } + + } + } +} diff --git a/SOURCE/Plugin/SearchAMLLibraryFile.cs b/SOURCE/Plugin/SearchAMLLibraryFile.cs new file mode 100644 index 0000000..072299c --- /dev/null +++ b/SOURCE/Plugin/SearchAMLLibraryFile.cs @@ -0,0 +1,1939 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Drawing; +using System.Windows.Forms; +using Aml.Engine.AmlObjects; +using Aml.Engine.CAEX; +using System.IO; +using System.IO.Packaging; +using System.Xml; +using System.Collections; +using System.IO.Compression; +using Aml.Editor.Plugin.Contracts; + +namespace Aml.Editor.Plugin +{ + /// + /// This class reads the library file loaded in to the plugin "Role Class Library TreeView" and "Interface Class Library TreeView" + /// + class SearchAMLLibraryFile + { + /// + /// These are the properties of this class i.e. dictionaries where all attribute values from AML file are strored and# + /// further retrived in "Device Description Class" to edit values by user. + /// + /// + public Dictionary DictioanryOfIDofInterfaceClassLibraryNodes { get; set; } + + public Dictionary> dictionaryofRoleClassattributes { get; set; } + + public Dictionary>> DictionaryForInterfaceClassInstancesAttributes { get; set; } + public Dictionary>> DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib { get; set; } + + public Dictionary>> DictionaryForRoleClassInstanceAttributes { get; set; } + public Dictionary>> DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib { get; set; } + + public string referencedClassName { get; set; } + + /// + /// This is the constructor of this class where all properties are intitialised to there early state + /// + public SearchAMLLibraryFile() + + { + + } + + /// + /// This method is responsible to iterate over "Interafce Class Libraries & Interafce Classes in it", and strore attributes of "Referenced Class Name" in + /// the dictionary. + /// + /// This is the "CAEXDocument, where the search has to be done " + /// This is "String" variable, that stores the name of the "Referenced Class Name" + /// This "InterfaceFamilyType", which is a"Ground Class". + public void SearchForReferencedClassName(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType) + { + //This is the "String" variable, where the "Refernced Class Name" of the "Referenced class Name" has to be stored + string referencedClassNameofReferencedClassName = ""; + + // foreach "Interface Class Lib"..... + foreach (var classLibTypeSearchForReferencedClassName in doc.CAEXFile.InterfaceClassLib) + { + //Foreach "Interface Class"....... + foreach (var classTypeSearchForReferencedClassName in classLibTypeSearchForReferencedClassName.InterfaceClass) + { + //If "referenced Class Name" is found.... + if (classTypeSearchForReferencedClassName.Name == referencedClassName) + { + //IF "Referenced Class Name" is having "External Interface".... + if (classTypeSearchForReferencedClassName.ExternalInterface.Exists) + { + //Foreach "ExternalInterface"...... + foreach (var externalInterface in classTypeSearchForReferencedClassName.ExternalInterface) + { + //If "Referenced Class Name" is existing (here:- Base class == refernced Class Name) + if (externalInterface.BaseClass != null) + { + + referencedClassName = externalInterface.BaseClass.ToString(); + + //This method check attributes of "referenced Class name" + CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalInterface); + //This method search for "Referenced Class" of "External Interface" + SearchForReferencedClassNameofExternalIterface(doc, referencedClassName, classType, externalInterface); + } + + } + } + + //This method check attributes of "Referenced Class Name" + CheckForAttributesOfReferencedClassName(classTypeSearchForReferencedClassName, classType); + if (classTypeSearchForReferencedClassName.ReferencedClassName != "" && classTypeSearchForReferencedClassName.ReferencedClassName != classTypeSearchForReferencedClassName.Name) + { + referencedClassNameofReferencedClassName = classTypeSearchForReferencedClassName.ReferencedClassName; + //This method is recursion of itself... + SearchForReferencedClassName(doc, referencedClassNameofReferencedClassName, classType); + } + + } + if (classTypeSearchForReferencedClassName.InterfaceClass.Exists) + { + //This class is responsible to search for interface classes ´nested inside Interface classes and recursion of + // this interface classes. + SearchForInterfaceClassesInsideInterfaceClass(doc, referencedClassName, classType, classTypeSearchForReferencedClassName); + + } + + + } + } + + } + + /// + /// This class is responsible to search for interface classes ´nested inside Interface classes and recursion of + /// this interface classes. + /// + /// This is the "CAEXDocument, where the search has to be done " + /// This is "String" variable, that stores the name of the "Referenced Class Name" + /// This "InterfaceFamilyType", which is a"Ground Class" + /// This is "InterfaceFamilyType", where the "referenced Class Name" is presented + public void SearchForInterfaceClassesInsideInterfaceClass(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName) + { + //This is the "String" variable, where the "Refernced Class Name" of the "Referenced class Name" has to be stored + string referencedClassNameofReferencedClassName = ""; + //Foreach "Interface Class" inside "Interface Class" + foreach (var item in classTypeSearchForReferencedClassName.InterfaceClass) + { + //If "Refrenced Class Name" is existing... + if (item.Name == referencedClassName) + { + //If external Interface is existing.... + if (item.ExternalInterface.Exists) + { + foreach (var externalInterface in item.ExternalInterface) + { + if (externalInterface.BaseClass != null) + { + referencedClassName = externalInterface.BaseClass.ToString(); + //This method is responsible to Check "attributes" of "Referenced Class Name" + CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalInterface); + //This method search for "Referenced Class" of "External Interface" + SearchForReferencedClassNameofExternalIterface(doc, referencedClassName, classType, externalInterface); + } + + } + } + + //This method search for "Attributes" of "referenced Class name". + CheckForAttributesOfReferencedClassName(item, classType); + if (item.ReferencedClassName != "" && item.ReferencedClassName != item.Name) + { + referencedClassNameofReferencedClassName = item.ReferencedClassName; + //This method is responsible to iterate over "Interafce Class Libraries & Interafce Classes in it", and strore attributes of "Referenced Class Name" in + // the dictionary. + SearchForReferencedClassName(doc, referencedClassNameofReferencedClassName, classType); + } + + } + //If "Interface Class" inside "Interface Class" is existng.... + if (item.InterfaceClass.Exists) + { + //This class is responsible to search for interface classes ´nested inside Interface classes and recursion of + // this interface classes. + SearchForInterfaceClassesInsideInterfaceClass(doc, referencedClassName, classType, item); + + } + } + } + + public void CheckForAttributesOfReferencedClassName(InterfaceFamilyType classType) + { + List> attributelist = new List>(); + if (classType.Attribute.Exists) + { + foreach (var attribute in classType.Attribute) + { + StoreEachAttributeValueInListOfReferencedClassName(attributelist, classType, attribute); + CkeckForNestedAttributesOfReferencedClassName(attribute, classType); + + } + + } + if (!classType.Attribute.Exists) + { + List> list = new List>(); + List sublist = new List(); + + list.Add(sublist); + try + { + if (DictionaryForInterfaceClassInstancesAttributes.ContainsKey(classType.Name.ToString()+"{"+ "Class:" + " " +classType.ReferencedClassName+"}")) + { + DictionaryForInterfaceClassInstancesAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + else + { + DictionaryForInterfaceClassInstancesAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + catch (Exception) + { + + throw; + } + } + + + } + + public void CkeckForNestedAttributesOfReferencedClassName(AttributeType attributeType, InterfaceFamilyType classType) + { + List> attributelist = new List>(); + if (attributeType.Attribute.Exists) + { + + foreach (var attributeinattribute in attributeType.Attribute) + { + StoreEachAttributeValueInListOfReferencedClassName(attributelist, attributeinattribute, classType, attributeType); + CkeckForNestedAttributesOfReferencedClassName(attributeinattribute, classType); + + } + + } + if (!attributeType.Attribute.Exists) + { + List> list = new List>(); + List sublist = new List(); + + list.Add(sublist); + if (DictionaryForInterfaceClassInstancesAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForInterfaceClassInstancesAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + else + { + DictionaryForInterfaceClassInstancesAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + + } + + /// + /// This method search for "Attributes" of "referenced Class name". + /// + /// This is "InterfaceFamilyType", for which attributes has to be stored in dictionary. + /// This is "InterfaceFamilyType", to which this "referenced Class name" belongs to + public void CheckForAttributesOfReferencedClassName(InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType) + { + //Initiate new list of attributes. + List> attributelist = new List>(); + //If attributes are existing... + if (classTypeSearchForReferencedClassName.Attribute.Exists) + { + //Foreach attribute..... + foreach (var attribute in classTypeSearchForReferencedClassName.Attribute) + { + //This the method that stores Attribute values of "Referened Class name" of "Interface Class" in the dictionary. + StoreEachAttributeValueInListOfReferencedClassName(attributelist, classType, attribute); + //This method is responsible to check nested attributes of "Referenced Class Name" + CkeckForNestedAttributesOfReferencedClassName(classTypeSearchForReferencedClassName, attribute, classType); + + } + + } + //If attributes exists.... + if (!classTypeSearchForReferencedClassName.Attribute.Exists) + { + //Initiate new list of attribute values.... + List> list = new List>(); + List sublist = new List(); + + + //Add sublist to list + list.Add(sublist); + try + { + //If dictioanry contains key , update the values under the key + if (DictionaryForInterfaceClassInstancesAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForInterfaceClassInstancesAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + //Else create the key with values... + else + { + DictionaryForInterfaceClassInstancesAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + catch (Exception) + { + + throw; + } + } + + } + + /// + /// This method is responsible to check nested attributes of "Referenced Class Name" + /// + /// This is "InterfaceFamilyType", for which attributes has to be stored in dictionary. + /// This is "AttributeType", where the attributes values has to be stored + /// This is "InterfaceFamilyType", to which this "referenced Class name" belongs to + public void CkeckForNestedAttributesOfReferencedClassName(InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType) + { + //Initiate new list of attributes. + List> attributelist = new List>(); + //If attributes are existing... + if (attributeType.Attribute.Exists) + { + //Foreach attribute..... + foreach (var attributeinattribute in attributeType.Attribute) + { + // This method store nested attributes of each attribute of "Referenced CLASS name" in the dictionary. + StoreEachAttributeValueInListOfReferencedClassName(attributelist, attributeinattribute, classType, attributeType); + //This method is recursion of it self. + CkeckForNestedAttributesOfReferencedClassName(classTypeSearchForReferencedClassName, attributeinattribute, classType); + + } + + } + //If attributes exists.... + if (!attributeType.Attribute.Exists) + { + //Initiate new list of attribute values.... + List> list = new List>(); + List sublist = new List(); + + //Add sublist to list + list.Add(sublist); + //If dictioanry contains key , update the values under the key + if (DictionaryForInterfaceClassInstancesAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForInterfaceClassInstancesAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + //Else create the key with values... + else + { + DictionaryForInterfaceClassInstancesAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + } + + /// + /// This the method that stores Attribute values of "Referened Class name" of "Interface Class" in the dictionary. + /// + /// This is list of attribute values . + /// This is "Interafce Class", which is having "Referenced Class Name " + /// This is "AttributeType", where the values has to be stored. + public void StoreEachAttributeValueInListOfReferencedClassName(List> list, InterfaceFamilyType classType, AttributeType attributeType) + { + // Initiate new list of attributes + list = new List>(); + List sublist = new List(); + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + attributeparameters.Name = attributeType.Name; + attributeparameters.Value = attributeType.Value; + attributeparameters.Default = attributeType.DefaultValue; + attributeparameters.Unit = attributeType.Unit; + attributeparameters.DataType = attributeType.AttributeDataType; + // attributeparameters.Semantic = attributeType.RefSemantic; + attributeparameters.Description = attributeType.Description; + attributeparameters.CopyRight = attributeType.Copyright; + attributeparameters.AttributePath = attributeType.AttributePath; + attributeparameters.RefSemanticList = attributeType.RefSemantic; + attributeparameters.ReferencedClassName = classType.ReferencedClassName; + attributeparameters.RefBaseClassPath = classType.RefBaseClassPath; + attributeparameters.ID = classType.ID; + + + //Add attrbutes to sublist + sublist.Add(attributeparameters); + //Ass sublit to list. + list.Add(sublist); + try + { + //If dictionary conatains key, the update values of the key... + if (DictionaryForInterfaceClassInstancesAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForInterfaceClassInstancesAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + //Else create new key with values... + else + { + DictionaryForInterfaceClassInstancesAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + catch (Exception) + { + + throw; + } + + + } + + /// + /// This method store nested attributes of each attribute of "Referenced CLASS name" in the dictionary. + /// + /// This is list of attribute values . + /// This is "AttributeType ", where the values has to be stored. + /// This is "Interafce Class", which is having "Referenced Class Name " + /// This is "AttributeType", + public void StoreEachAttributeValueInListOfReferencedClassName(List> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType) + { + // Initiate new list of attributes + list = new List>(); + List sublist = new List(); + + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + // In the following parameters on right hand side "attributeType" has been changed to "AttributeInAttribute" this has been repeated to all + // methods of name "StoreEachAttributeValuesInList" with four parameters. + attributeparameters.Name = AttributeInAttribute.Name; + attributeparameters.Value = AttributeInAttribute.Value; + attributeparameters.Default = AttributeInAttribute.DefaultValue; + attributeparameters.Unit = AttributeInAttribute.Unit; + attributeparameters.DataType = AttributeInAttribute.AttributeDataType; + attributeparameters.Description = AttributeInAttribute.Description; + attributeparameters.CopyRight = AttributeInAttribute.Copyright; + attributeparameters.AttributePath = AttributeInAttribute.AttributePath; + attributeparameters.RefSemanticList = attributeType.RefSemantic; + attributeparameters.ReferencedClassName = classType.ReferencedClassName; + attributeparameters.RefBaseClassPath = classType.RefBaseClassPath; + attributeparameters.ID = classType.ID; + + //Add attrbutes to sublist + sublist.Add(attributeparameters); + //Ass sublit to list. + list.Add(sublist); + + //If dictionary conatains key, the update values of the key... + if (DictionaryForInterfaceClassInstancesAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForInterfaceClassInstancesAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + //Else create new key with values... + else + { + DictionaryForInterfaceClassInstancesAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + + } + + /// + /// //This method search for "Referenced Class" of "External Interface" + /// + /// This is "CAEXDocuemt" in which the search has to be done. + /// This is "String variable" in which "Refrenced Class name" is stored. + /// This is "InterfaceFamilyType", which is a "Ground Class"´used to generate key name in dictionary. + /// This is the "ExternalInterfaceType", for which refernced name attributes has to be stored. + public void SearchForReferencedClassNameofExternalIterface(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface) + { + //This is "String variable" in which "Refrenced Class name" is stored + string referencedClassNameofReferencedClassName = ""; + + //Foreach "InterfaceClassLib" in CAEXDocument.... + foreach (var classLibTypeSearchForReferencedClassName in doc.CAEXFile.InterfaceClassLib) + { + //Foreach "Interface Class" in "InterfaceClassLib"......... + foreach (var classTypeSearchForReferencedClassName in classLibTypeSearchForReferencedClassName.InterfaceClass) + { + //If "Refernced Class Name" is existing........ + if (classTypeSearchForReferencedClassName.Name == referencedClassName) + { + //This method check for "attributes" of "referenced Class name" of "External Interface" + CheckForAttributesOfReferencedClassNameofExternalIterface(classTypeSearchForReferencedClassName, classType, externalInterface); + if (classTypeSearchForReferencedClassName.ReferencedClassName != "" && classTypeSearchForReferencedClassName.ReferencedClassName != classTypeSearchForReferencedClassName.Name) + { + referencedClassNameofReferencedClassName = classTypeSearchForReferencedClassName.ReferencedClassName; + //THis method is recursion of itself... + SearchForReferencedClassNameofExternalIterface(doc, referencedClassNameofReferencedClassName, classType, externalInterface); + } + + } + if (classTypeSearchForReferencedClassName.InterfaceClass.Exists) + { + //This method search for "Interface Classes" inside "Interface classes" + SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(doc, referencedClassName, classType, classTypeSearchForReferencedClassName, externalInterface); + + } + + + } + } + + } + + /// + /// This method search for "Interface Classes" inside "Interface Classes" + /// + /// This is "CAEXDocuemt" in which the search has to be done: + /// This is "String variable" in which "Refrenced Class name" is stored + /// This is "InterfaceFamilyType", which is a "Ground Class"´used to generate key name in dictionary. + /// This is "Interface Class TYPE"; where "Interfac Classes" inside has to be searched. + /// This is the "ExternalInterfaceType", for which refernced name attributes has to be stored. + public void SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(CAEXDocument doc, string referencedClassName, InterfaceFamilyType classType, InterfaceFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface) + { + //This is "String variable" in which "Refrenced Class name" is stored + string referencedClassNameofReferencedClassName = ""; + //Foreach "InterfaceClassLib" in classTypeSearchForReferencedClassName + foreach (var item in classTypeSearchForReferencedClassName.InterfaceClass) + { + //If referenced Class Name is Existing ........ + if (item.Name == referencedClassName) + { + //This method is responsible to check "attributes" OF "Refrenced Class Name" of "ExternalInterface" + CheckForAttributesOfReferencedClassNameofExternalIterface(item, classType, externalInterface); + if (item.ReferencedClassName != "" && item.ReferencedClassName != item.Name) + { + referencedClassNameofReferencedClassName = item.ReferencedClassName; + //This method search for "Referenced Class" of "External Interface" + SearchForReferencedClassNameofExternalIterface(doc, referencedClassNameofReferencedClassName, classType, externalInterface); + } + + } + if (item.InterfaceClass.Exists) + { + //This method search for "Interface Classes" inside "Interface Classes" + SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(doc, referencedClassName, classType, item, externalInterface); + + } + + } + } + + /// + /// This method is responsible to Check "attributes" of "Referenced Class Name" + /// + /// This is "InterfaceFamilyType", which is a "Ground Class". + /// This is "ExternalInterfaceType", which attributes has to be stored in a dictionary + public void CheckForAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classType, ExternalInterfaceType externalInterface) + { + //Initaite the list of atrributes + List> attributelist = new List>(); + //IF "External Interface" is having "Attributes"...... + if (externalInterface.Attribute.Exists) + { + //Foreach "Attribute"..... + foreach (var attribute in externalInterface.Attribute) + { + //This method store each "Attribute" value in the dictionary... + StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(attributelist, classType, attribute, externalInterface); + + //This method check for the "Nested Attributes" inside the "Attribute" of "External Interface". + CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(attribute, classType, externalInterface); + + } + + } + //IF there is no attributes...... + if (!externalInterface.Attribute.Exists) + { + //Initiate empty list of "Attributes values"..... + List> list = new List>(); + List sublist = new List(); + + list.Add(sublist); + try + { + //IF dictionary is having the key, the update the values for the key. + if (DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + { + //Else create the key with values. + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + } + + + } + + /// + /// This method is responsible to check "Nested ATtributes" of "External Interface's Attribute " + /// + /// This is "AttributeType" , for which nested attributes has to be checked. + /// This is "InterfaceFamilyType, which is "Ground Class" used while creating "keyname" in dictionary + /// This "ExternalInterfaceType for which attributes are checked." + public void CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface) + { + //Initiate new list of attributes... + List> attributelist = new List>(); + //If attributes are existing .... + if (attributeType.Attribute.Exists) + { + //Foreach "Attribute"... + foreach (var attributeinattribute in attributeType.Attribute) + { + //This method stores attribute values of "referenced Class's External Interface" + StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(attributelist, attributeinattribute, classType, attributeType, externalInterface); + //This method is recursion of itself. + CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(attributeinattribute, classType, externalInterface); + + } + + } + //IF there is no attributes...... + if (!attributeType.Attribute.Exists) + { + //Initiate empty list of "Attributes values"..... + List> list = new List>(); + List sublist = new List(); + + //Add sub list to list + list.Add(sublist); + + //IF dictionary is having the key, the update the values for the key. + if (DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + //Else create the key with values. + else + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + + } + + } + + /// + /// This method is responsible to check "attributes" OF "Refrenced Class Name" of "ExternalInterface" + /// + /// This is "InterfaceFamilyType", for which attributes are checked. + /// This is "Interface Family Type", which is a "Ground Class" used for creating Key to the dictionary. + /// + public void CheckForAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classTypeSearchForReferencedClassName, InterfaceFamilyType classType, ExternalInterfaceType externalInterface) + { + //Initiate new list of "Attributes" values. + List> attributelist = new List>(); + //IF Attributes for "Referenced Class" is Existing.... + if (classTypeSearchForReferencedClassName.Attribute.Exists) + { + //for each "Attribute".......... + foreach (var attribute in classTypeSearchForReferencedClassName.Attribute) + { + //This method store each "Attribute value" into respective dictionary + StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(attributelist, classType, attribute, externalInterface); + // This method is responsible to check the "Nested Attributes" of "Attributes" of"Interface Class's External interafce" + CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(classTypeSearchForReferencedClassName, attribute, classType, externalInterface); + + } + + } + //If attributes are not existing.... + if (!classTypeSearchForReferencedClassName.Attribute.Exists) + { + //Initiate new list of "Attribute " values + List> list = new List>(); + List sublist = new List(); + + //Add sublist to list. + list.Add(sublist); + try + { + //If dictionary contains key, the update the key. + if (DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + //Else Create new key with value. + else + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + } + + } + + /// + /// This method is responsible to check the "Nested Attributes" of "Attributes" of"Interface Class's External interafce" + /// + /// This is "InterfaceFamilyType", for which attributes are checked. + /// This is "AttributeType", which attribtes has to be stored. + /// This is "InterfceClassType", which is a "Ground Class" used for creating a key in dictionary. + /// + public void CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(InterfaceFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, InterfaceFamilyType classType, ExternalInterfaceType externalInterface) + { + //Initiate new list of "Attribute " values + List> attributelist = new List>(); + //If "Attributes" Exist........... + if (attributeType.Attribute.Exists) + { + //Foreach Attribute......... + foreach (var attributeinattribute in attributeType.Attribute) + { + //This method stores "Attributes" of "Referenced Class's External Interface" + StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(attributelist, attributeinattribute, classType, attributeType, externalInterface); + //This method is the recursion of itself.... + CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(classTypeSearchForReferencedClassName, attributeinattribute, classType, externalInterface); + + } + + } + //If attributes are not existing.... + if (!attributeType.Attribute.Exists) + { + //Initiate new list of "Attribute " values + List> list = new List>(); + List sublist = new List(); + //Add sublist to list. + list.Add(sublist); + //If dictionary contains key, the update the key. + if (DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + else + //Else Create new key with value. + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + } + + /// + /// This method store each "Attribute value" into respective dictionary + /// + /// This is the list of attribute values + /// This is "InterfaceFamilyType", which is "ground class" used while creating "key name" . + /// This is "AttributeType", whose values are going to be stored. + /// This "ExternalInterfaceType", to which these attributes belong to. + public void StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List> list, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface) + { + //Initiate the list of "Attribiute values". + list = new List>(); + List sublist = new List(); + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + attributeparameters.Name = attributeType.Name; + attributeparameters.Value = attributeType.Value; + attributeparameters.Default = attributeType.DefaultValue; + attributeparameters.Unit = attributeType.Unit; + attributeparameters.DataType = attributeType.AttributeDataType; + attributeparameters.Description = attributeType.Description; + attributeparameters.CopyRight = attributeType.Copyright; + attributeparameters.AttributePath = attributeType.AttributePath; + attributeparameters.RefSemanticList = attributeType.RefSemantic; + attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.RefBaseClassPath = externalInterface.RefBaseClassPath; + attributeparameters.ID = externalInterface.ID; + + //Add attributes to sublist + sublist.Add(attributeparameters); + //Add Sublist to list. + list.Add(sublist); + try + { + //If the dictionary is already contains key, then add values end to the existing values. + if (DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + //Else create a key to the values and store them in dictionary. + else + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + + + } + + /// + /// This method stores "Attributes" of "Referenced Class's External Interface" + /// + /// This is list of "attribute values", that a"ttribute values" of "External Interfacs" has to be stored in. + /// This is "AttributeType, for which "Nested Attributes" has to be stored. + /// This is "InterfaceFamilyType", which is "Ground Class" used while naming a key in dictioonary. + /// This "AttributeType" is nested attribute of parent attribute. + /// + public void StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List> list, AttributeType AttributeInAttribute, InterfaceFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface) + { + //Initiate ne list of "Attribute Values" + list = new List>(); + List sublist = new List(); + + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + // In the following parameters on right hand side "attributeType" has been changed to "AttributeInAttribute" this has been repeated to all + // methods of name "StoreEachAttributeValuesInList" with four parameters. + attributeparameters.Name = AttributeInAttribute.Name; + attributeparameters.Value = AttributeInAttribute.Value; + attributeparameters.Default = AttributeInAttribute.DefaultValue; + attributeparameters.Unit = AttributeInAttribute.Unit; + attributeparameters.DataType = AttributeInAttribute.AttributeDataType; + attributeparameters.Description = AttributeInAttribute.Description; + attributeparameters.CopyRight = AttributeInAttribute.Copyright; + attributeparameters.AttributePath = AttributeInAttribute.AttributePath; + attributeparameters.RefSemanticList = AttributeInAttribute.RefSemantic; + attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.RefBaseClassPath = externalInterface.RefBaseClassPath; + attributeparameters.ID = externalInterface.ID; + + //Add each attribute in to sublist + sublist.Add(attributeparameters); + //Add sublist to list. + list.Add(sublist); + + //If the dictionary is already having the keyname, the update the key values. + if (DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + //Else create the key with ne values. + else + { + DictionaryForExternalInterfacesInstanceAttributesofInterfaceClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + + } + + /// + /// This function is responsible for checking whole document for the "Referenced Class Name": + /// Note:- This function is a recursion function, which conduct many iterations in the document. + /// + /// This is the loaded document. This might be loaded by user or can be from the plugin as well. + /// This is the "Role Class Name" in the documentm, which the function is checking for + /// This is just the Class Type that we are asking this function to check in the document. i.e. (RoleFamilyType) + public void SearchForReferencedClassName(CAEXDocument doc, string referencedClassName, RoleFamilyType classType) + { + // There can be a "Referenced Class Náme" for the "Referenced Class Name", which we are looking for. + // This name can be stored in this string. + string referencedClassNameofReferencedClassName = ""; + + //Searches "Role Class Libraires" + foreach (var classLibTypeSearchForReferencedClassName in doc.CAEXFile.RoleClassLib) + { + //Searches "Role Classes" inside "Role Class Libs" + foreach (var classTypeSearchForReferencedClassName in classLibTypeSearchForReferencedClassName.RoleClass) + { + // If loop checks for the "Refernced Class Name" + if (classTypeSearchForReferencedClassName.Name == referencedClassName) + { + // If loop checks for "External Interface" + if (classTypeSearchForReferencedClassName.ExternalInterface.Exists) + { + // for each "external interfaces" inside "Role class" + foreach (var externalInterface in classTypeSearchForReferencedClassName.ExternalInterface) + { + // Here "BaseClass" is nothing but a "Referenced Name" for "External Interface" + if (externalInterface.BaseClass != null) + { + + referencedClassName = externalInterface.BaseClass.ToString(); + + // this function is responsible to search for "Referenced Class" for "ExternalInterface" + SearchForReferencedClassNameofExternalIterface(doc, referencedClassName, classType, externalInterface); + // This function is responsible to search for "Attributes" inside the "Referencd Class Name" of "eXTERNAL iNTERFACE" + CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalInterface); + + } + } + } + + //This method is responsible for checking attributes under "Referenced Class Name" + CheckForAttributesOfReferencedClassName(classTypeSearchForReferencedClassName, classType); + if (classTypeSearchForReferencedClassName.ReferencedClassName != "" && classTypeSearchForReferencedClassName.ReferencedClassName != classTypeSearchForReferencedClassName.Name) + { + referencedClassNameofReferencedClassName = classTypeSearchForReferencedClassName.ReferencedClassName; + //This function is recursion function...... + SearchForReferencedClassName(doc, referencedClassNameofReferencedClassName, classType); + } + + } + //If the referenced class is having "Role Class" + if (classTypeSearchForReferencedClassName.RoleClass.Exists) + { + //This mthod is responsible to Check the Role Class under "Referenced Class Name" + SearchForInterfaceClassesInsideInterfaceClass(doc, referencedClassName, classType, classTypeSearchForReferencedClassName); + + } + + + } + } + + } + + /// + /// This method is responsible for checking "Attributes" under "Referenced Class Name" + /// + /// this is "RoleFamilyType", which we are checking attributes for. + /// This is the "Ground Class" + public void CheckForAttributesOfReferencedClassName(RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType) + { + //Initiate new list of attributes + List> attributelist = new List>(); + //If attributes are existing ..... + if (classTypeSearchForReferencedClassName.Attribute.Exists) + { + //foreach attribute..... + foreach (var attribute in classTypeSearchForReferencedClassName.Attribute) + { + //This method stores each attribute value in the dicionary. + StoreEachAttributeValueInListOfReferencedClassName(attributelist, classType, attribute); + //This function check for nested attributes in the attributes of "Refernced Class Name" + CkeckForNestedAttributesOfReferencedClassName(classTypeSearchForReferencedClassName, attribute, classType); + + } + + } + //If attributes are not existing.... + if (!classTypeSearchForReferencedClassName.Attribute.Exists) + { + // Iniiate new list of attributes + List> list = new List>(); + List sublist = new List(); + + + list.Add(sublist); + try + { + // if keyname is existing already in that dictionary, then add the value to the end og existing values + if (DictionaryForRoleClassInstanceAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForRoleClassInstanceAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + else + { + DictionaryForRoleClassInstanceAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + catch (Exception) + { + + throw; + } + + } + + } + + /// + /// This method check for nested attributes under attributes of "Referenced Class Name" + /// + /// This is "RoleFamilyType", which we are checking attributes + /// This is the "AttributeType", which is having "Nested Attributes" + /// This id the "Ground Class" + public void CkeckForNestedAttributesOfReferencedClassName(RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType) + { + //Initiate new list of attributes + List> attributelist = new List>(); + //If attributes are existing ..... + if (attributeType.Attribute.Exists) + { + //foreach attribute..... + foreach (var attributeinattribute in attributeType.Attribute) + { + //This method stores nested attributes in the respective dictionary + StoreEachAttributeValueInListOfReferencedClassName(attributelist, attributeinattribute, classType, attributeType); + //This method is recursion of itself + CkeckForNestedAttributesOfReferencedClassName(classTypeSearchForReferencedClassName, attributeinattribute, classType); + + } + + } + //If attributes are not existing.... + if (!attributeType.Attribute.Exists) + { + // Iniiate new list of attributes + List> list = new List>(); + List sublist = new List(); + + + list.Add(sublist); + // if keyname is existing already in that dictionary, then add the value to the end og existing values + if (DictionaryForRoleClassInstanceAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForRoleClassInstanceAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + else + { + DictionaryForRoleClassInstanceAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + } + + /// + /// This fuunction stores "Attributes" of "Referenced Class Name" in the dictionary "DictionaryForRoleClassInstanceAttributes" + /// + /// This is the list of attributes, which has to be initiated and stores values + /// This is the "Ground Class" + /// This is "AttributeType", Which can give access to every value in the "Attribute" + public void StoreEachAttributeValueInListOfReferencedClassName(List> list, RoleFamilyType classType, AttributeType attributeType) + { + //Initate list in to empty list. + list = new List>(); + List sublist = new List(); + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + //Store every parameter value.... + + attributeparameters.Name = attributeType.Name; + attributeparameters.Value = attributeType.Value; + attributeparameters.Default = attributeType.DefaultValue; + attributeparameters.Unit = attributeType.Unit; + + attributeparameters.DataType = attributeType.AttributeDataType; + attributeparameters.Description = attributeType.Description; + attributeparameters.CopyRight = attributeType.Copyright; + attributeparameters.AttributePath = attributeType.AttributePath; + attributeparameters.RefSemanticList = attributeType.RefSemantic; + attributeparameters.ReferencedClassName = classType.ReferencedClassName; + attributeparameters.RefBaseClassPath = classType.RefBaseClassPath; + attributeparameters.ID = classType.ID; + attributeparameters.SupportesRoleClassType = classType.CAEXPath(); + + //Store attributes in Sublist + sublist.Add(attributeparameters); + //Store Sublist in list. + list.Add(sublist); + try + { + // if keyname is existing already in that dictionary, then add the value to the end og existing values + if (DictionaryForRoleClassInstanceAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForRoleClassInstanceAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + else + { + DictionaryForRoleClassInstanceAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + catch (Exception) + { + + throw; + } + + + } + + /// + /// This method is responsible to store "Nested Attributes" under "Attributes" of "Referenced Class Name" + /// + /// This is the list of attributes which has to be intantiaed as an empty list . + /// This is "AttributeType", which represents "nested attributes" of an "attribute" + /// This is the "Ground Class" + /// This is "AttributeType", which is the main attribute. + public void StoreEachAttributeValueInListOfReferencedClassName(List> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType) + { + //Initate list in to empty list. + list = new List>(); + List sublist = new List(); + + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + // In the following parameters on right hand side "attributeType" has been changed to "AttributeInAttribute" this has been repeated to all + // methods of name "StoreEachAttributeValuesInList" with four parameters. + + + + attributeparameters.Name = AttributeInAttribute.Name; + attributeparameters.Value = AttributeInAttribute.Value; + attributeparameters.Default = AttributeInAttribute.DefaultValue; + attributeparameters.Unit = AttributeInAttribute.Unit; + attributeparameters.DataType = AttributeInAttribute.AttributeDataType; + attributeparameters.Description = AttributeInAttribute.Description; + attributeparameters.CopyRight = AttributeInAttribute.Copyright; + attributeparameters.AttributePath = AttributeInAttribute.AttributePath; + attributeparameters.RefSemanticList = AttributeInAttribute.RefSemantic; + attributeparameters.ReferencedClassName = classType.ReferencedClassName; + attributeparameters.RefBaseClassPath = classType.RefBaseClassPath; + attributeparameters.ID = classType.ID; + attributeparameters.SupportesRoleClassType = classType.CAEXPath(); + + //Store attributes in Sublist + sublist.Add(attributeparameters); + //Store Sublist in list. + list.Add(sublist); + + // if keyname is existing already in that dictionary, then add the value to the end og existing values + if (DictionaryForRoleClassInstanceAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForRoleClassInstanceAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + else + { + DictionaryForRoleClassInstanceAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + + } + + /// + /// This Function is responsible to search attributes under the "Referenced Classs Name" i.e. in this part "RoleFamilyType" + /// + /// This is "Ground Class we are checking attributes for." + /// This is "ExternalInterfaceType", for which the attributes has to be checked and stored + public void CheckForAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classType, ExternalInterfaceType externalInterface) + { + //Initate new attribute list. + List> attributelist = new List>(); + //If attributes under "External Interface" are existing + if (externalInterface.Attribute.Exists) + { + //For each attribute...... + foreach (var attribute in externalInterface.Attribute) + { + //Store each attribute value in the dictionary using following method. + StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(attributelist, classType, attribute, externalInterface); + + // This method look for nested attributes. + CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(attribute, classType, externalInterface); + + } + + } + //If "External Interface" is not having attributes + if (!externalInterface.Attribute.Exists) + { + //Create new list of attributes + List> list = new List>(); + List sublist = new List(); + + //Add sublit to list..... + list.Add(sublist); + try + { + //If key already exists in dictionary, then add values to the already existing values. + if (DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + //Else create new key -..... + else + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + } + + } + + /// + /// This function is responsible for checking "nested attributes" under "attributes" of the "External Interface" + /// + /// This is the "AttributeType", which is having nested attributes. + /// This is the "Ground Class" we are Searching in. + /// This is the "ExternalInterfaceType", which is having attributes. + public void CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface) + { + //Initate new list of attributes + List> attributelist = new List>(); + //If attributres are existing.......... + if (attributeType.Attribute.Exists) + { + // FOR EACH ATTRIBUTE............. + foreach (var attributeinattribute in attributeType.Attribute) + { + // This method allows to store the "attribute values" in the designated "Dictionary" + StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(attributelist, attributeinattribute, classType, attributeType, externalInterface); + // This method allows tocheck for nested attribute inside attributes i.e. recursion of this own method. + CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(attributeinattribute, classType, externalInterface); + + } + + } + //If attributes are not existing + if (!attributeType.Attribute.Exists) + { + //Initiate new list of attributes + List> list = new List>(); + List sublist = new List(); + + //Ads sublist to list . + list.Add(sublist); + //If Dictionary already contains the key, then add values to the existing values + if (DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + //Else Create new key ..... + else + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + + } + } + + /// + /// This function is responsible to check and store "Attributes" under "External Interface" of "Referenced Class Name" of "Role Class" + /// + /// This is the "Referenced Class Name" of Role Classe's "External Interface". + /// This is the "Role Class" + /// Thi is the "External Interface" we are looking for. + public void CheckForAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classTypeSearchForReferencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface) + { + // Initiate new list of attributes + List> attributelist = new List>(); + + //If attributes are existing + if (classTypeSearchForReferencedClassName.Attribute.Exists) + { + //foreach loop for each "attribute" + foreach (var attribute in classTypeSearchForReferencedClassName.Attribute) + { + // This function is responsible for storing each attribute of External Interface + StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(attributelist, classType, attribute, externalInterface); + + // This method looks for "nested attributes" under each "attribute" + CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(classTypeSearchForReferencedClassName, attribute, classType, externalInterface); + + } + + } + //If attributes are not existing + if (!classTypeSearchForReferencedClassName.Attribute.Exists) + { + //Initiate lists as empty lists + List> list = new List>(); + List sublist = new List(); + + + list.Add(sublist); + + try + { + // Dictionary is containing specific key already, the add attributes to the end of the existing values. + if (DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + //Else create new keyname as specified below and add to dictionary + else + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + + } + + } + + /// + /// This function is responsible to check "attribute" under "attributes" i.e. nested attributes + /// This function is a recursive function, which check nested attributes untill they were ended. + /// + /// This if "RoleFamilyType", which we are storing attributes for + /// This is "AttributeType ", which retrives attribute values + /// This is the "Ground Class", which we are looking in + /// This is the "external interface", under which the attributes has to be stored. + public void CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(RoleFamilyType classTypeSearchForReferencedClassName, AttributeType attributeType, RoleFamilyType classType, ExternalInterfaceType externalInterface) + { + //Initiate new attribute list. + List> attributelist = new List>(); + + // if attributes are existing as nested attributes + if (attributeType.Attribute.Exists) + { + + foreach (var attributeinattribute in attributeType.Attribute) + { + // Using this method "attributes" are stored in the respective dictionary + StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(attributelist, attributeinattribute, classType, attributeType, externalInterface); + + //Do recursion of this method untill the nested attributes were ended + CkeckForNestedAttributesOfReferencedClassNameofExternalIterface(classTypeSearchForReferencedClassName, attributeinattribute, classType, externalInterface); + + } + + } + //If attributes are not existing + if (!attributeType.Attribute.Exists) + { + //Initiate new list of attributes + List> list = new List>(); + List sublist = new List(); + + //Add sublist to list. + list.Add(sublist); + + //If specified keyname is already existing in the dioctionary, then add them to the end of the list of values under specified key + if (DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + //Else create nes keyname with below specified syntax. + else + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + } + + /// + /// This method is responsible to store each attribute value of "Referenced Class Name" of "External Interface" of Role Class. + /// This method stores each value in attribute into a dictionary (DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib) + /// + /// This is list of lists that can hold attribute values + /// RoleFamilyType is the "ground Class" We are storing this "Attributes" for + /// This is each attribute + /// This is "external interface" we are storing "Attributes" for + public void StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List> list, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface) + { + //Initiate list as new list. + list = new List>(); + List sublist = new List(); + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + + + attributeparameters.Name = attributeType.Name; + attributeparameters.Value = attributeType.Value; + attributeparameters.Default = attributeType.DefaultValue; + attributeparameters.Unit = attributeType.Unit; + attributeparameters.DataType = attributeType.AttributeDataType; + attributeparameters.Description = attributeType.Description; + attributeparameters.CopyRight = attributeType.Copyright; + attributeparameters.AttributePath = attributeType.AttributePath; + attributeparameters.RefSemanticList = attributeType.RefSemantic; + attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.RefBaseClassPath = externalInterface.RefBaseClassPath; + attributeparameters.ID = externalInterface.ID; + attributeparameters.SupportesRoleClassType = externalInterface.CAEXPath(); + + //Add each parameter to sublist + sublist.Add(attributeparameters); + //Add sublist to main list. + list.Add(sublist); + try + { + // If the dictionary is already containing the key with specific syntax the add to the already existing attributes. + if (DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + // else normally add "attribute ´values" withe the "specific key syntax" as stated below + else + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + } + catch (Exception) + { + + throw; + } + + + } + + /// + /// This method stores the nested attributes in "DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib" + /// + /// This the list of attributes + /// This is "AttributeType" i.e. nested attribute + /// This is the "RoleFamilyType" used to define the "keyname" of the dictionary + /// This is "AttributeType" under which "Nested Attributes" are present + /// This is the "ExternalInterfaceType" used to define the "keyname" of the dictionary and also the attribute holder "External Interface" + public void StoreEachAttributeValueInListOfReferencedClassNameofExternalIterface(List> list, AttributeType AttributeInAttribute, RoleFamilyType classType, AttributeType attributeType, ExternalInterfaceType externalInterface) + { + //Initate new list of attributes. + list = new List>(); + List sublist = new List(); + + ClassOfListsFromReferencefile attributeparameters = new ClassOfListsFromReferencefile(); + + // In the following parameters on right hand side "attributeType" has been changed to "AttributeInAttribute" this has been repeated to all + // methods of name "StoreEachAttributeValuesInList" with four parameters. + + + attributeparameters.Name = AttributeInAttribute.Name; + attributeparameters.Value = AttributeInAttribute.Value; + attributeparameters.Default = AttributeInAttribute.DefaultValue; + attributeparameters.Unit = AttributeInAttribute.Unit; + attributeparameters.DataType = AttributeInAttribute.AttributeDataType; + attributeparameters.Description = AttributeInAttribute.Description; + attributeparameters.CopyRight = AttributeInAttribute.Copyright; + attributeparameters.AttributePath = AttributeInAttribute.AttributePath; + attributeparameters.RefSemanticList = AttributeInAttribute.RefSemantic; + attributeparameters.ReferencedClassName = externalInterface.BaseClass.ToString(); + attributeparameters.RefBaseClassPath = externalInterface.RefBaseClassPath; + attributeparameters.ID = externalInterface.ID; + attributeparameters.SupportesRoleClassType = externalInterface.CAEXPath(); + + //Add "Each Attribute Values" to sub list + sublist.Add(attributeparameters); + //Add sublist to main list. + list.Add(sublist); + // If Dictionary is already having key withe specified key name syntax, then add to the end of the list. + if (DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.ContainsKey(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}")) + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib[classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}"].AddRange(list); + } + //Else add new keyname to the dictionary and store the values + else + { + DictionaryForExternalInterfacesInstancesAttributesOfRoleClassLib.Add(classType.Name.ToString() + + "{" + "Class:" + " " + classType.ReferencedClassName + "}" + externalInterface.Name.ToString() + + "{" + "Class:" + " " + externalInterface.BaseClass + "}", list); + } + + } + + /// + /// This method is responsible to check for "Referenced Class Name" of "External Interfaces" under the "Role Class" + /// This method is a recursive method, that looks for the "Referenced Class Name" of the "Extenal Interface" under "Role Class" + /// + /// This is the document loaded from the plugin or loaded by user from his local machine. + /// This is the string that we are looking for inside the document. + /// This is the Class Type i.e. "RoleFamliyType" i.e. under "Role Classes" we are looking for. + /// Don't forget we are looking for thev"ExtenalInterface" + public void SearchForReferencedClassNameofExternalIterface(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, ExternalInterfaceType externalInterface) + { + //String that store "referenced clas name" of the "referenced class name" + string referencedClassNameofReferencedClassName = ""; + + // Search for Role Class Lib in the document + foreach (var classLibTypeSearchForReferencedClassName in doc.CAEXFile.RoleClassLib) + { + // Search for the "Role Class" + foreach (var classTypeSearchForReferencedClassName in classLibTypeSearchForReferencedClassName.RoleClass) + { + // If "referenced class name" we are looking for is found + if (classTypeSearchForReferencedClassName.Name == referencedClassName) + { + // This method Checks "Attributes" inside the "External Interface and store in the dictionary" + CheckForAttributesOfReferencedClassNameofExternalIterface(classTypeSearchForReferencedClassName, classType, externalInterface); + + //If the referenced name is not equal to null, and not equal to the name we found, the start recursion of this method itself.... + //....untill we found it. + if (classTypeSearchForReferencedClassName.ReferencedClassName != "" && classTypeSearchForReferencedClassName.ReferencedClassName != classTypeSearchForReferencedClassName.Name) + { + referencedClassNameofReferencedClassName = classTypeSearchForReferencedClassName.ReferencedClassName; + + //Recursion of this method itself start here. + SearchForReferencedClassNameofExternalIterface(doc, referencedClassNameofReferencedClassName, classType, externalInterface); + } + + } + //If there are "Role Classes", under "Referenced Class Name" + if (classTypeSearchForReferencedClassName.RoleClass.Exists) + { + //This function ignites new search in "Role Classes" under "Referenced Class Name" + // CAUTION:- Though the function Name States Interface Class, It serves for "Role Class" in this part. + //CAUTION:- This function naming has to be changed. + SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(doc, referencedClassName, classType, classTypeSearchForReferencedClassName, externalInterface); + + } + + + } + } + + } + + /// + /// This method searches "Role Classes" under "Referenced Class Name" + /// + /// This is the document, where we are searching for "Referenced Class Name" + /// This is the "Referenced Class Name" i.e. "String" used to search for the name of thE "Referenced Class Name" + /// This is "RoleFamilyType" i.e. "Ground Class" + /// This is "RoleFamilyType", under which the role clasees are searched. + public void SearchForInterfaceClassesInsideInterfaceClass(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName) + { + //This is a "String" variable, where the "Referenced class Name" is stroed... + string referencedClassNameofReferencedClassName = ""; + //Foreach "role class" in the "Referenced Class name" + foreach (var item in classTypeSearchForReferencedClassName.RoleClass) + { + if (item.Name == referencedClassName) + { + if (item.ExternalInterface.Exists) + { + foreach (var externalInterface in item.ExternalInterface) + { + if (externalInterface.BaseClass != null) + { + referencedClassName = externalInterface.BaseClass.ToString(); + //This method is responsible to check for "Referenced Class Name" of "External Interfaces" under the "Role Class" + SearchForReferencedClassNameofExternalIterface(doc, referencedClassName, classType, externalInterface); + //This Function is responsible to search attributes under the "Referenced Classs Name" i.e. in this part "RoleFamilyType" + CheckForAttributesOfReferencedClassNameofExternalIterface(classType, externalInterface); + + } + } + } + + //This method is responsible for checking "Attributes" under "Referenced Class Name" + CheckForAttributesOfReferencedClassName(item, classType); + //If referenced Class Name is not null ...... + if (item.ReferencedClassName != "" && item.ReferencedClassName != item.Name) + { + referencedClassNameofReferencedClassName = item.ReferencedClassName; + //This function is responsible for checking whole document for the "Referenced Class Name": + SearchForReferencedClassName(doc, referencedClassNameofReferencedClassName, classType); + } + + } + //If "Role Class" exists + if (item.RoleClass.Exists) + { + //This method is recursion of itself + SearchForInterfaceClassesInsideInterfaceClass(doc, referencedClassName, classType, item); + + } + } + } + + /// + /// This method is a recursive method, which checks for "Refernced Class Name" under role class under role class + /// + /// + /// This is the document or file, where the search has to be done + /// This is the "Referenced ClassName", that we are looking i the document. + /// This is the "Ground Class" we stared search at. + /// This is "RoleFamilType" to search, if "Role Classes" are present. + /// + public void SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(CAEXDocument doc, string referencedClassName, RoleFamilyType classType, RoleFamilyType classTypeSearchForReferencedClassName, ExternalInterfaceType externalInterface) + { + // This string represents the "Refernced Class Name" of the "Referenced Class Name" + string referencedClassNameofReferencedClassName = ""; + + //For each "Role Class" existing under the "Role Class". + foreach (var item in classTypeSearchForReferencedClassName.RoleClass) + { + + if (item.Name == referencedClassName) + { + // This method check for attributes under "Referenced name" + CheckForAttributesOfReferencedClassNameofExternalIterface(item, classType, externalInterface); + + //If the referenced name is not equal to null, the search for "Referenced Class Name" + if (item.ReferencedClassName != "" && item.ReferencedClassName != item.Name) + { + referencedClassNameofReferencedClassName = item.ReferencedClassName; + //This method search for the "Refernced Class Name" + SearchForReferencedClassNameofExternalIterface(doc, referencedClassNameofReferencedClassName, classType, externalInterface); + } + + } + //IF this "Role Class" is having further "Role Classes" the do recursion + if (item.RoleClass.Exists) + { + SearchForInterfaceClassesInsideInterfaceClassofExternalIterface(doc, referencedClassName, classType, item, externalInterface); + + } + + } + } + + /// + /// This method is responsible for checking attributes under "Referenced Class Name" + /// + /// This is "RoleFamilyType", which is "GroudClass" + public void CheckForAttributesOfReferencedClassName(RoleFamilyType classType) + { + //Initiate New list of attributes. + List> attributelist = new List>(); + //If attributes are existing ... + if (classType.Attribute.Exists) + { + //for each attribute ..... + foreach (var attribute in classType.Attribute) + { + //This fuunction stores "Attributes" of "Referenced Class Name" in the dictionary "DictionaryForRoleClassInstanceAttributes" + StoreEachAttributeValueInListOfReferencedClassName(attributelist, classType, attribute); + //This function check for nested attributes of referenced Class Name. + CkeckForNestedAttributesOfReferencedClassName(attribute, classType); + + } + + } + //If attributes are not existing... + if (!classType.Attribute.Exists) + { + //Initaitae new list of attributes... + List> list = new List>(); + List sublist = new List(); + + list.Add(sublist); + + try + { + //If Dictionary contains the key , then update the values of the key. + if (DictionaryForRoleClassInstanceAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForRoleClassInstanceAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + //Else create new key and add values to it. + else + { + DictionaryForRoleClassInstanceAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + catch (Exception) + { + + throw; + } + } + + } + + /// + /// This method check for "nested attributes" of "referenced class name" + /// + /// This is "AttributeType", for which nest attributes has to be checked. + /// This "RoleFamilyType", which is "Ground class" + public void CkeckForNestedAttributesOfReferencedClassName(AttributeType attributeType, RoleFamilyType classType) + { + //Initiate new list of attributes + List> attributelist = new List>(); + //If attributes are existing..... + if (attributeType.Attribute.Exists) + { + ///Foreach attribute..... + foreach (var attributeinattribute in attributeType.Attribute) + { + // This method is responsible to store "Nested Attributes" under "Attributes" of "Referenced Class Name" + StoreEachAttributeValueInListOfReferencedClassName(attributelist, attributeinattribute, classType, attributeType); + //This method is recursion of itself... + CkeckForNestedAttributesOfReferencedClassName(attributeinattribute, classType); + + } + + } + //If attributes are not existing... + if (!attributeType.Attribute.Exists) + { + //Initiate new list of attributes + List> list = new List>(); + List sublist = new List(); + + list.Add(sublist); + //If Dictionary contains key the update key values + if (DictionaryForRoleClassInstanceAttributes.ContainsKey(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}")) + { + DictionaryForRoleClassInstanceAttributes[classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}"].AddRange(list); + } + //Else create new key with the list of attributes. + else + { + DictionaryForRoleClassInstanceAttributes.Add(classType.Name.ToString() + "{" + "Class:" + " " + classType.ReferencedClassName + "}", list); + } + } + } + + /// + /// This method takes arguments "TreeNode" and "RoleFamilyType" to print tree nodes in "Role Class Library TreeView " in Plugin. + /// + /// This is a "TreeNode", which is parent node for the new node that is going to be created using this method. + /// This is "RoleFamilyType", which is a "Ground Class" + public void PrintNodesRecursiveInRoleClassLib(CAEXDocument document, TreeNode oParentNode, RoleFamilyType classType, string referencedclassName) + { + + foreach (var item in classType.RoleClass) + { + TreeNode newnode; + if (item.ReferencedClassName != "") + { + referencedClassName = item.ReferencedClassName; + newnode = oParentNode.Nodes.Add(item.ToString(), item.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 1); + //This function is responsible for checking whole document for the "Referenced Class Name": + SearchForReferencedClassName(document, referencedClassName, classType); + + //This method is responsible for checking attributes under "Referenced Class Name" + CheckForAttributesOfReferencedClassName(classType); + + } + else + { + newnode = oParentNode.Nodes.Add(item.ToString(), item.ToString(), 1); + } + + + if (item.ExternalInterface.Exists) + { + foreach (var externalinterfaces in item.ExternalInterface) + { + TreeNode externalinterafcenode; + if (externalinterfaces.BaseClass != null && externalinterfaces.BaseClass.ToString() != externalinterfaces.Name.ToString() ) + { + referencedClassName = externalinterfaces.BaseClass.ToString(); + externalinterafcenode = newnode.Nodes.Add(externalinterfaces.ToString(), externalinterfaces.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + externalinterafcenode.ForeColor = SystemColors.GrayText; + + //This method is responsible to check for "Referenced Class Name" of "External Interfaces" under the "Role Class" + SearchForReferencedClassNameofExternalIterface(document, referencedclassName, item, externalinterfaces); + + //This Function is responsible to search attributes under the "Referenced Classs Name" i.e. in this part "RoleFamilyType" + CheckForAttributesOfReferencedClassNameofExternalIterface(item, externalinterfaces); + + } + else + { + externalinterafcenode = newnode.Nodes.Add(externalinterfaces.ToString(), externalinterfaces.ToString(), 2); + externalinterafcenode.ForeColor = SystemColors.GrayText; + } + + //This method is called to print "External Interfaces" in both "Role class Library and Interface Class Library" in the plugin. + PrintExternalInterfaceNodes(document, externalinterafcenode, externalinterfaces, classType); + } + } + //This method is recursion of itself. + PrintNodesRecursiveInRoleClassLib(document, newnode, item, referencedclassName); + } + } + + /// + /// This method Takes parameters "TreeNode" and "InterfaceFamilyType" to print tree nodes in "Interface Class Library TreeView " in Plugin. + /// + /// + /// + public void PrintNodesRecursiveInInterfaceClassLib(CAEXDocument document, TreeNode oParentNode, InterfaceFamilyType classType, string referencedclassName) + { + + foreach (var item in classType.InterfaceClass) + { + TreeNode newnode; + if (item.ReferencedClassName != "") + { + + referencedclassName = item.ReferencedClassName; + newnode = oParentNode.Nodes.Add(item.ToString(), item.ToString() + "{" + "Class:" + " " + referencedclassName + "}", 1); + CheckForAttributesOfReferencedClassName(item); + + SearchForReferencedClassName(document, referencedclassName, item); + } + else + { + newnode = oParentNode.Nodes.Add(item.ToString(), item.ToString(), 1); + } + + + + if (item.ExternalInterface.Exists) + { + foreach (var externalinterfaces in item.ExternalInterface) + { + TreeNode externalinterafcenode; + if (externalinterfaces.BaseClass!= null) + { + + referencedclassName = externalinterfaces.BaseClass.ToString(); + externalinterafcenode = newnode.Nodes.Add(externalinterfaces.ToString(), externalinterfaces.ToString() + "{" + "Class:" + " " + referencedclassName + "}", 2); + externalinterafcenode.ForeColor = SystemColors.GrayText; + CheckForAttributesOfReferencedClassNameofExternalIterface(item, externalinterfaces); + SearchForReferencedClassNameofExternalIterface(document, referencedclassName, item, externalinterfaces); + + } + else + { + externalinterafcenode = newnode.Nodes.Add(externalinterfaces.ToString(), externalinterfaces.ToString(), 2); + externalinterafcenode.ForeColor = SystemColors.GrayText; + } + + + PrintExternalInterfaceNodes(document,externalinterafcenode, externalinterfaces, classType); + } + } + + PrintNodesRecursiveInInterfaceClassLib(document, newnode, item, referencedclassName); + } + } + + /// + /// This method is called to print "External Interfaces" in both "Role class Library and Interface Class Library" in the plugin. + /// + /// + /// + public void PrintExternalInterfaceNodes(CAEXDocument document,TreeNode oParentNode, ExternalInterfaceType classType, InterfaceFamilyType InterafceclassType) + { + if (classType.ExternalInterface.Exists) + { + + foreach (var item in classType.ExternalInterface) + { + TreeNode newnode; + if (item.BaseClass!= null) + { + referencedClassName = item.BaseClass.ToString(); + newnode = oParentNode.Nodes.Add(item.ToString(), item.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + newnode.ForeColor = SystemColors.GrayText; + CheckForAttributesOfReferencedClassNameofExternalIterface(InterafceclassType, item); + SearchForReferencedClassNameofExternalIterface(document, referencedClassName, InterafceclassType, item); + } + else + { + newnode = oParentNode.Nodes.Add(item.ToString(), item.ToString() , 2); + newnode.ForeColor = SystemColors.GrayText; + } + + + PrintExternalInterfaceNodes(document, newnode, item, InterafceclassType); + } + } + + } + + /// + /// This method is called to print "External Interfaces" in both "Role class Library and Interface Class Library" in the plugin. + /// + /// This is "TreeNode", which is parent node for the new node that is going to be created using this method. + /// This is "RoleFamilyType", which is a "Ground Class" + public void PrintExternalInterfaceNodes(CAEXDocument document, TreeNode oParentNode, ExternalInterfaceType classType, RoleFamilyType RoleclassType) + { + if (classType.ExternalInterface.Exists) + { + + foreach (var item in classType.ExternalInterface) + { + TreeNode newnode; + + + if (item.BaseClass != null) + { + referencedClassName = item.BaseClass.ToString(); + newnode = oParentNode.Nodes.Add(item.ToString(), item.ToString() + "{" + "Class:" + " " + referencedClassName + "}", 2); + newnode.ForeColor = SystemColors.GrayText; + + //This Function is responsible to search attributes under the "Referenced Classs Name" i.e. in this part "RoleFamilyType" + CheckForAttributesOfReferencedClassNameofExternalIterface(RoleclassType, item); + + //This method is responsible to check for "Referenced Class Name" of "External Interfaces" under the "Role Class" + SearchForReferencedClassNameofExternalIterface(document, referencedClassName, RoleclassType, item); + } + else + { + newnode = oParentNode.Nodes.Add(item.ToString(), item.ToString(), 2); + newnode.ForeColor = SystemColors.GrayText; + + } + + //This is a recursion of this method itself... + PrintExternalInterfaceNodes(document, newnode, item, RoleclassType); + } + } + + } + } + +} diff --git a/SOURCE/Plugin/app.config b/SOURCE/Plugin/app.config new file mode 100644 index 0000000..af99b7c --- /dev/null +++ b/SOURCE/Plugin/app.config @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/SOURCE/Plugin/gsd2aml.xml b/SOURCE/Plugin/gsd2aml.xml new file mode 100644 index 0000000..f81490c --- /dev/null +++ b/SOURCE/Plugin/gsd2aml.xml @@ -0,0 +1,444 @@ + + + + + + + + + DHBW Stuttgart TINF17C + D331B5B6-C3FA-4D3C-8F6D-93F6F0215EF4 + GSD2AML TINF17C + 1.0.0 + 1.0.0 + + GSD2AML Converter + GSD2AML Converter + + + + + + + + + + + + + + + + + + + + + + + + + + + + $2 + + + + $8 + + + + $1 + + + + $9 + + + + $3 + + + + $4 + + + + $6 + + + + $7 + + + + $10 + + + + + + + + + + + + + + + $5 + + + application/xml + + + + + + + + + + ProfileBody.ApplicationProcess.DeviceAccessPointList.DeviceAccessPointItem.SlotList.SlotItem + ProfileBody.ApplicationProcess.DeviceAccessPointList.DeviceAccessPointItem.SystemDefinedSubmoduleList.PortSubmoduleItem + + + + + ProfileBody.ApplicationProcess.DeviceAccessPointList.DeviceAccessPointItem.Graphics.GraphicItemRef + + + + ProfileBody.ApplicationProcess.DeviceAccessPointList.DeviceAccessPointItem.SystemDefinedSubmoduleList.InterfaceSubmoduleItem + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $2 + + + + + + + + + + + + + + + + + + $2 + + + $3 + + + $4 + + + $5 + + + $6 + + + $7 + + + $8 + + + $9 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $1 + + + + + + + + + + + + + + + + + $2 + + + $3 + + + $4 + + + $5 + + + $6 + + + $7 + + + $8 + + + $9 + + + $10 + + + $11 + + + $12 + + + + + + + + + $13 + + + $14 + + + + + + + + $15 + + + $16 + + + + + + + + $17 + + + $18 + + + + + + + + + + $19 + + + + + + + + $20 + + + $21 + + + + + + + + $22 + + + $23 + + + $24 + + + $25 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SOURCE/packages.config b/SOURCE/Plugin/packages.config similarity index 70% rename from SOURCE/packages.config rename to SOURCE/Plugin/packages.config index 53cee4c..83ee591 100644 --- a/SOURCE/packages.config +++ b/SOURCE/Plugin/packages.config @@ -1,6 +1,9 @@  + + + diff --git a/SOURCE/README.md b/SOURCE/README.md new file mode 100644 index 0000000..196d0e0 --- /dev/null +++ b/SOURCE/README.md @@ -0,0 +1,12 @@ +# SOURCE + +## Structure +Der `SOURCE` Ordner enthält zwei unter Ordner: `Application` und `Plugin`. +Der Ordner `Plugin` enthält den Source Code des Plugins aus dem Repository TINF19C-ModellingWizard](https://github.com/DekaAthlos/TINF19C-ModellingWizard). +Der Ordner `Application` entählt die eigentliche Windows-Forms Anwendung, die die Klasse `DeviceDescription` aus dem Ordner `Plugin` nutzt. + +## Development +Um Änderungen an der Anwendung vorzunehmen muss zuerst Visual Studio 2019 installiert werden. +In Visual Studio 2019 muss dann die Datei `Application.sln` aus dem `Application`-Ordner geöffnet werden. + +In der Projektmappen-Ansicht ist dann zum einen die Applikation als auch das Plugin (ModellingWizard) zu sehen. \ No newline at end of file diff --git a/SOURCE/logo.ico b/SOURCE/logo.ico deleted file mode 100644 index 22c6acffb50190cd71dc63e5dd1f5992d2e61835..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53302 zcmeI5J&)%!5XPN*VehyXZVw4sI%sHVs3?(;_ykmR6i^`w3P7SkAVGl;B@!J%NJvoe zC8+M}1Sj@09*@UKIBmRJJc~Fxjy*HaZzhiadw)R)Q~c-Ivk?Eh7hd}}gjYfcZ^VD& zQ22dHCf-(zJSFY%Iu}nmIQA1ba??B9fNJWWVhD| z22H=8FBng4V;Z;5)TIM$0+0bjQo--)LK(hz4Z36_cr3y9J5NNHp3~KpXW!0GaZ`w} zc1FHr=QwhflGj2tc~946$S*w&W9gr&OJ20rt8y z&r%4~?AbkCIqYReO5Hm~*ce^=I|t&J>O<^~uI0h?3la9t$(Llo&}=Uehau3>h2h0c z-f*7QHev4^T~dh6epN>S=#x4ct}`IO4=-&oNrEZFlXb~1XLQ(0gkjRvJNM@4>HXmr zA`JRK%u{Tm*}s;zk|`6jQr>jObRmn$O7>Bo)=t(Xg}8l|LKOOFxCRXcHTFCmZ@P3@ zdw|7yp@d`k8P5Bc<4{K}C;7Z!qcbmfTa*=bM};s9Mzi2hkho9G7RBq(oueqGD4SBno=X(hlrs5K$-8iy7Kh8 z3_+)i!s?0p2AodKsdfn-0r)#_S65wzA>2uJ1Q*PnstdK_#f|{{B5icRlnBTjTZk}w zsxC>2jV1)d=}C^W8(lfxQgAStZpio;UD!F=H!u7j)RoiXRJ18X*gZF2a`**Zw6dkx z=Os_D`O48d6tZI28KX-I(Y~XQNGH%$nbnoUm2v~0*rr>!Ge{RW+uZ@~+X77y8(sY} zlqWSSh2eAS5H#)Qo}D9Bvu^;8N>k}3DY+0w>v~w?h&^~m^;9>P3zM%r-=CguCL6GP zcE03q@2k+^-9C0Qsn)eshNci<`D|U18VNaeP*%NN!{!U~wGGuzT2e&}(}iQZ-XY*z zkEu9gx6W6d@0X!e^=bj8PtTWpVX6c!--IYbwpZ!eF2lMIhv||+EYA{NUOoO%WTgu! zx8mhGiCO=$ZJaLb=|u&67o`#*I+dl@047bcwSi9{J?e z2B$`pt{mxB8Hya~*smr+?$%zV+#l@1>M|X>NPl-*W))pW$}ohy#}3wokIgT|h_%K= zf&Wu<9V$bZy)Wj6)FHgZ?<7EC|7f@hExHbsA#}z6lV<)IqpLti8Tx6GQPG9RacehR zR-q8b>cYuYxNh$P<@tJ{5E0FOCkX@XM(L^wac|cs`(aA&vC~hUo0?&|8exXUe)<>r?i7QVdHe+WN5$g+Qt`0DqY9Qur9=Ly4?6VNCG540wh2J zBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZr zKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{ Q0wh2JBtQZraKj1w2gs;JoB#j-
    + +
    +
    + + +
    + +
    + +
    + +
    +
    About.xaml.cs File Reference
    +
    +
    + + + + + +

    +Classes

    class  Aml.Editor.Plugin.About
     Interaction logic for About.xaml More...
     
    + + + + + + + +

    +Namespaces

    namespace  Aml
     
    namespace  Aml.Editor
     
    namespace  Aml.Editor.Plugin
     
    +
    +

    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Ν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 mM~$C!v~}dlmTN4kY;O-cl>)Y%(LjMO30k&)a literal 0 HcmV?d00001 diff --git a/SOURCE/Program.cs b/SOURCE/Application/Program.cs similarity index 100% rename from SOURCE/Program.cs rename to SOURCE/Application/Program.cs diff --git a/SOURCE/Properties/AssemblyInfo.cs b/SOURCE/Application/Properties/AssemblyInfo.cs similarity index 85% rename from SOURCE/Properties/AssemblyInfo.cs rename to SOURCE/Application/Properties/AssemblyInfo.cs index 3bbf419..f5f0f90 100644 --- a/SOURCE/Properties/AssemblyInfo.cs +++ b/SOURCE/Application/Properties/AssemblyInfo.cs @@ -5,11 +5,11 @@ using System.Runtime.InteropServices; // Allgemeine Informationen über eine Assembly werden über die folgenden // Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, // die einer Assembly zugeordnet sind. -[assembly: AssemblyTitle("Modelling Wizard für Gerätemodelle")] +[assembly: AssemblyTitle("Application")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("DHBW")] -[assembly: AssemblyProduct("TINF20C_ModellingWizard_Devices")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Application")] [assembly: AssemblyCopyright("Copyright © 2022")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -20,7 +20,7 @@ using System.Runtime.InteropServices; [assembly: ComVisible(false)] // Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird -[assembly: Guid("e2deecd6-0102-4cab-a3d9-c76314d81d99")] +[assembly: Guid("165d011d-d27b-48f5-995d-bac062f41986")] // Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: // diff --git a/SOURCE/Properties/Resources.Designer.cs b/SOURCE/Application/Properties/Resources.Designer.cs similarity index 67% rename from SOURCE/Properties/Resources.Designer.cs rename to SOURCE/Application/Properties/Resources.Designer.cs index c3b33fc..e978574 100644 --- a/SOURCE/Properties/Resources.Designer.cs +++ b/SOURCE/Application/Properties/Resources.Designer.cs @@ -1,61 +1,68 @@ //------------------------------------------------------------------------------ // // Dieser Code wurde von einem Tool generiert. -// Laufzeitversion:4.0.30319.42000 +// Laufzeitversion: 4.0.30319.42000 // -// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn -// der Code erneut generiert wird. +// Änderungen an dieser Datei können fehlerhaftes Verhalten verursachen und gehen verloren, wenn +// der Code neu generiert wird. // //------------------------------------------------------------------------------ -namespace App.Properties { - using System; - - + +namespace App.Properties +{ ///

  • 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