User Tools

Site Tools


code:common:project-structure

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
code:common:project-structure [2020/08/20 08:09] joerg.hampelcode:common:project-structure [2025/01/23 10:50] (current) joerg.hampel
Line 3: Line 3:
 This page defines the default project structure used by most of our projects. We have also information on our [[code:common:repository-structure|default repo structure]] and our [[kb:bestpractices:wow:structure|overall software structure]]. Screenshots are included from an example repository for demonstrative purposes. This page defines the default project structure used by most of our projects. We have also information on our [[code:common:repository-structure|default repo structure]] and our [[kb:bestpractices:wow:structure|overall software structure]]. Screenshots are included from an example repository for demonstrative purposes.
  
-| {{:code:common:hse-project-structure.png?600|}} |+| {{:code:common:hse-project-structure-2024.png?600|}} |
  
 <WRAP left round info 100%> <WRAP left round info 100%>
Line 49: Line 49:
  
       /TEMPLATE_Source/       /TEMPLATE_Source/
-          /Framework/+          /_Examples                   
 +          /_VI Templates              
           /Libraries/           /Libraries/
           /Modules/           /Modules/
           /Project/           /Project/
           TEMPLATE.lvproj           TEMPLATE.lvproj
-          TEMPLATE_Main.vi       Main VI for Real-Time applications +          TEMPLATE_Main.vi            Main VI for Real-Time applications 
-          startup.vi             Main VI for Windows applications+          startup.vi                  Main VI for Windows applications
  
 Contains the following directories and files: Contains the following directories and files:
  
 +==== '_Examples' directory ====
  
-==== 'Framework' directory ====+      /TEMPLATE_Source/ 
 +          /_Examples 
 +              Some Example.vi 
 +              Another Example.vi 
 + 
 +The ''_Examples'' directory is optional and contains example VIs. If the repo or project is built into a VI package, these example VIs are installed into the ''<LabVIEW>\Examples\'' directory, which allows access via the NI Example finder  (“Help -> Find Examples…” menu item in the LabVIEW IDE).  
 + 
 + 
 +==== '_VI Templates' directory ====
  
       /TEMPLATE_Source/       /TEMPLATE_Source/
-          /Framework/ +          /_VI Templates 
-              /Event Manager/ +              <%Project Part1%> Quickstart.vi 
-              /Sidebar/ +              <%Project Part2%> Quickstart.vi 
-              /UI Manager/              +              Another Template.vi
  
-For Windows Applications: Contains generic, as-is reusable modulesCurrentlywe use the following modules:+The ''_VI Templates'' directory is optional for projects which contain code that is built into a VI packageThe template VIs will be placed on the palette and configured to "place VI contents"making it easier to fill a blank VI with the required source code.
  
-  * Event Manager +//Quickstart// VIs are a special variant of template VIs meant to kick-start the development of new code by providing the block diagram for a simple use case of the library in question.
-  * Sidebar +
-  * UI Manager+
  
-<WRAP left round info 80%> +==== 'Framework' directory (deprecated) ====
-More information on framework modules: [[code:dqmh:hse-application-template:overview|Application Template]] +
-</WRAP>+
  
-==== 'Libraries' directory ====+      /TEMPLATE_Source/ 
 +          /Framework/ 
 + 
 +Starting from [[https://code.hampel-soft.com/open-source/dqmh/hse-application-template/-/tree/v3.0.0?ref_type=tags|HSE Application Template v3.0.0]] the 'Framework' directory does not exist anymore within the application template. 
 +Generic framework modules are now part of [[https://code.hampel-soft.com/open-source/hse-framework|HSE Core - Framework repository]] and are installed into ''vi.lib''
 + 
 +==== 'Libraries' directory (optional) ====
  
       /TEMPLATE_Source/       /TEMPLATE_Source/
           /Libraries/           /Libraries/
-              /hse-core-libs/ 
-              /hse-layout-manager/ 
-              /hse-logger/ 
-              /hse-networking/ 
  
-Contains libraries shared by projects.+Contains generic reuse libraries that are neither DQMH modules nor project-specific code. The content of this directory varies from project to project.
  
-<WRAP left round info 80%> +<WRAP left round info 100%> 
-More information on our libraries: [[code:open-source:hse-libraries|HSE-Libraries]]+Starting from [[https://code.hampel-soft.com/open-source/dqmh/hse-application-template/-/tree/v3.0.0?ref_type=tags|HSE Application Template v3.0.0]] the 'Libraries' directory does not contain our [[code:open-source:hse-libraries|HSE-Libraries]] anymore as they are now installed into ''vi.lib''.
 </WRAP> </WRAP>
- 
  
 ==== 'Modules' directory ==== ==== 'Modules' directory ====
Line 99: Line 106:
           /Modules/           /Modules/
               /ActorModule/               /ActorModule/
-              /Dummie+              /DBModule
-              /Dummie2+              /Dummy
-              /User Interface/+              /ExampleClone/ 
 +              /StateMachine/
  
  
Line 126: Line 134:
               /PROJECT_UserCredentials.vi               /PROJECT_UserCredentials.vi
                              
-Contains all project-specific files that are not part of a DQMH module or a library. The content of this directory varies from project to project.+Contains all project-specific files that are not part of a DQMH module or a generic reuse library. The content of this directory varies from project to project.
  
 ==== 'TEMPLATE.lvproj' ==== ==== 'TEMPLATE.lvproj' ====
Line 143: Line 151:
 <WRAP left round download 80%> <WRAP left round download 80%>
 The source code for the project shown can be found at \\ The source code for the project shown can be found at \\
-https://gitlab.com/hampel-soft/dqmh/hse-application-template+https://code.hampel-soft.com/open-source/dqmh/hse-application-template
 </WRAP> </WRAP>
code/common/project-structure.1597910950.txt.gz · Last modified: 2020/08/20 08:09 by joerg.hampel