diff --git a/.gitignore b/.gitignore
index 56d8c06..c965b30 100644
--- a/.gitignore
+++ b/.gitignore
@@ -338,6 +338,7 @@ ASALocalRun/
!**/.vscode/settings.json
!**/.vscode/tasks.json
!**/.vscode/mklink.md
+!**/.vscode/6062c774-99a9-4f4a-b42d-a9cb7fcbd8be.json
*.lnk
diff --git a/.vscode/tasks.json b/.vscode/tasks.json
index 1bdc434..6df4a8d 100644
--- a/.vscode/tasks.json
+++ b/.vscode/tasks.json
@@ -1,95 +1,138 @@
{
- "version": "2.0.0",
- "tasks": [
- {
- "label": "MSBuild for FindResources",
- "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
- "type": "process",
- "args": [
- "/target:Build",
- "/restore:True",
- "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
- "/detailedsummary",
- "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
- "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
- "NI-VISA/Examples/.NET/FindResources/FindResources.2012.csproj"
- ],
- "problemMatcher": "$msCompile"
- },
- {
- "label": "MSBuild for RegisterBasedOperations",
- "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
- "type": "process",
- "args": [
- "/target:Build",
- "/restore:True",
- "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
- "/detailedsummary",
- "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
- "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
- "NI-VISA/Examples/.NET/RegisterBasedOperations/RegisterBasedOperations.2012.csproj"
- ],
- "problemMatcher": "$msCompile"
- },
- {
- "label": "MSBuild for ServiceRequest",
- "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
- "type": "process",
- "args": [
- "/target:Build",
- "/restore:True",
- "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
- "/detailedsummary",
- "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
- "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
- "NI-VISA/Examples/.NET/ServiceRequest/ServiceRequest.2012.csproj"
- ],
- "problemMatcher": "$msCompile"
- },
- {
- "label": "MSBuild for SimpleAsynchronousReadWrite",
- "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
- "type": "process",
- "args": [
- "/target:Build",
- "/restore:True",
- "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
- "/detailedsummary",
- "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
- "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
- "NI-VISA/Examples/.NET/SimpleAsynchronousReadWrite/SimpleAsynchronousReadWrite.2012.csproj"
- ],
- "problemMatcher": "$msCompile"
- },
- {
- "label": "MSBuild for SimpleReadWrite",
- "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
- "type": "process",
- "args": [
- "/target:Build",
- "/restore:True",
- "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
- "/detailedsummary",
- "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
- "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
- "NI-VISA/Examples/.NET/SimpleReadWrite/SimpleReadWrite.2012.csproj"
- ],
- "problemMatcher": "$msCompile"
- },
- {
- "label": "MSBuild for TC01App",
- "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
- "type": "process",
- "args": [
- "/target:Build",
- "/restore:True",
- "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
- "/detailedsummary",
- "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
- "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
- "NI-VISA/Examples/.NET/TC01App/TC01App/TC01App.csproj"
- ],
- "problemMatcher": "$msCompile"
- }
- ]
+ "version": "2.0.0",
+ "tasks": [
+ {
+ "label": "MSBuild for FindResources",
+ "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
+ "type": "process",
+ "args": [
+ "/target:Build",
+ "/restore:True",
+ "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
+ "/detailedsummary",
+ "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
+ "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
+ "NI-VISA/Examples/.NET/FindResources/FindResources.2012.csproj"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "MSBuild for RegisterBasedOperations",
+ "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
+ "type": "process",
+ "args": [
+ "/target:Build",
+ "/restore:True",
+ "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
+ "/detailedsummary",
+ "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
+ "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
+ "NI-VISA/Examples/.NET/RegisterBasedOperations/RegisterBasedOperations.2012.csproj"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "MSBuild for ServiceRequest",
+ "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
+ "type": "process",
+ "args": [
+ "/target:Build",
+ "/restore:True",
+ "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
+ "/detailedsummary",
+ "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
+ "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
+ "NI-VISA/Examples/.NET/ServiceRequest/ServiceRequest.2012.csproj"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "MSBuild for SimpleAsynchronousReadWrite",
+ "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
+ "type": "process",
+ "args": [
+ "/target:Build",
+ "/restore:True",
+ "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
+ "/detailedsummary",
+ "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
+ "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
+ "NI-VISA/Examples/.NET/SimpleAsynchronousReadWrite/SimpleAsynchronousReadWrite.2012.csproj"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "MSBuild for SimpleReadWrite",
+ "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
+ "type": "process",
+ "args": [
+ "/target:Build",
+ "/restore:True",
+ "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
+ "/detailedsummary",
+ "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
+ "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
+ "NI-VISA/Examples/.NET/SimpleReadWrite/SimpleReadWrite.2012.csproj"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "MSBuild for TC01App",
+ "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
+ "type": "process",
+ "args": [
+ "/target:Build",
+ "/restore:True",
+ "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
+ "/detailedsummary",
+ "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
+ "/property:Configuration=Debug;TargetFrameworkVersion=v4.8",
+ "TC01App/TC01App/TC01App.csproj"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "Build National Instruments DAQ MX",
+ "command": "dotnet",
+ "type": "process",
+ "args": [
+ "build",
+ "National-Instruments-DAQ-MX/National-Instruments-DAQ-MX.csproj",
+ "--configuration",
+ "Release",
+ "--framework",
+ "net48",
+ "--runtime",
+ "win-x64"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "Run National Instruments DAQ MX",
+ "command": "National-Instruments-DAQ-MX/bin/Release/net48/win-x64/National-Instruments-DAQ-MX.exe",
+ "dependsOn": "Build",
+ "type": "process",
+ "args": [
+ "ai0",
+ "ai1",
+ "ai2",
+ "ai3",
+ "ai4",
+ "ai5",
+ "ai6",
+ "ai7"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "Copy",
+ "command": "copy",
+ "type": "shell",
+ "args": [
+ "C:/Program Files (x86)/National Instruments/MeasurementStudioVS2010/DotNET/Assemblies/Current/NationalInstruments.DAQmx.dll",
+ "L:/Git/usb-6009/National-Instruments-DAQ-MX/.vscode/NationalInstruments.DAQmx.dll"
+ ],
+ "problemMatcher": "$msCompile"
+ }
+ ]
}
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/.editorconfig b/National-Instruments-DAQ-MX/.editorconfig
new file mode 100644
index 0000000..cd5d265
--- /dev/null
+++ b/National-Instruments-DAQ-MX/.editorconfig
@@ -0,0 +1,296 @@
+[*.md]
+end_of_line = crlf
+file_header_template = unset
+indent_size = 2
+indent_style = space
+insert_final_newline = false
+root = true
+tab_width = 2
+[*.csproj]
+end_of_line = crlf
+file_header_template = unset
+indent_size = 2
+indent_style = space
+insert_final_newline = false
+root = true
+tab_width = 2
+[*.cs]
+csharp_indent_block_contents = true
+csharp_indent_braces = false
+csharp_indent_case_contents = true
+csharp_indent_case_contents_when_block = true
+csharp_indent_labels = one_less_than_current
+csharp_indent_switch_labels = true
+csharp_new_line_before_catch = false
+csharp_new_line_before_else = false
+csharp_new_line_before_finally = false
+csharp_new_line_before_members_in_anonymous_types = true
+csharp_new_line_before_members_in_object_initializers = true
+csharp_new_line_before_open_brace = none
+csharp_new_line_between_query_expression_clauses = true
+csharp_prefer_braces = false
+csharp_prefer_qualified_reference = true:error
+csharp_prefer_simple_default_expression = true:warning
+csharp_prefer_simple_using_statement = true:warning
+csharp_prefer_static_local_function = true:warning
+csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async
+csharp_preserve_single_line_blocks = true
+csharp_preserve_single_line_statements = false
+csharp_space_after_cast = false
+csharp_space_after_colon_in_inheritance_clause = true
+csharp_space_after_comma = true
+csharp_space_after_dot = false
+csharp_space_after_keywords_in_control_flow_statements = true
+csharp_space_after_semicolon_in_for_statement = true
+csharp_space_around_binary_operators = before_and_after
+csharp_space_around_declaration_statements = false
+csharp_space_before_colon_in_inheritance_clause = true
+csharp_space_before_comma = false
+csharp_space_before_dot = false
+csharp_space_before_open_square_brackets = false
+csharp_space_before_semicolon_in_for_statement = false
+csharp_space_between_empty_square_brackets = false
+csharp_space_between_method_call_empty_parameter_list_parentheses = false
+csharp_space_between_method_call_name_and_opening_parenthesis = false
+csharp_space_between_method_call_parameter_list_parentheses = false
+csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
+csharp_space_between_method_declaration_name_and_open_parenthesis = false
+csharp_space_between_method_declaration_parameter_list_parentheses = false
+csharp_space_between_parentheses = false
+csharp_space_between_square_brackets = false
+csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental = true
+csharp_style_allow_blank_lines_between_consecutive_braces_experimental = true
+csharp_style_allow_embedded_statements_on_same_line_experimental = true
+csharp_style_conditional_delegate_call = true
+csharp_style_deconstructed_variable_declaration = false
+csharp_style_expression_bodied_accessors = when_on_single_line:warning
+csharp_style_expression_bodied_constructors = when_on_single_line:warning
+csharp_style_expression_bodied_indexers = when_on_single_line:warning
+csharp_style_expression_bodied_lambdas = when_on_single_line:warning
+csharp_style_expression_bodied_local_functions = when_on_single_line:warning
+csharp_style_expression_bodied_methods = when_on_single_line:warning
+csharp_style_expression_bodied_operators = when_on_single_line:warning
+csharp_style_expression_bodied_properties = when_on_single_line:warning
+csharp_style_implicit_object_creation_when_type_is_apparent = true:warning
+csharp_style_inlined_variable_declaration = false
+csharp_style_namespace_declarations = file_scoped:warning
+csharp_style_pattern_local_over_anonymous_function = true:warning
+csharp_style_pattern_matching_over_as_with_null_check = true:warning
+csharp_style_pattern_matching_over_is_with_cast_check = true:warning
+csharp_style_prefer_index_operator = true:warning
+csharp_style_prefer_not_pattern = true:warning
+csharp_style_prefer_null_check_over_type_check = true
+csharp_style_prefer_pattern_matching = true:warning
+csharp_style_prefer_range_operator = true:warning
+csharp_style_prefer_switch_expression = true:warning
+csharp_style_throw_expression = true
+csharp_style_unused_value_assignment_preference = discard_variable:warning
+csharp_style_unused_value_expression_statement_preference = discard_variable:warning
+csharp_style_var_elsewhere = false:warning
+csharp_style_var_for_built_in_types = false:warning
+csharp_style_var_when_type_is_apparent = false:warning
+csharp_using_directive_placement = outside_namespace
+dotnet_analyzer_diagnostic.category-Design.severity = error
+dotnet_analyzer_diagnostic.category-Documentation.severity = error
+dotnet_analyzer_diagnostic.category-Globalization.severity = none
+dotnet_analyzer_diagnostic.category-Interoperability.severity = error
+dotnet_analyzer_diagnostic.category-Maintainability.severity = error
+dotnet_analyzer_diagnostic.category-Naming.severity = none
+dotnet_analyzer_diagnostic.category-Performance.severity = none
+dotnet_analyzer_diagnostic.category-Reliability.severity = error
+dotnet_analyzer_diagnostic.category-Security.severity = error
+dotnet_analyzer_diagnostic.category-SingleFile.severity = error
+dotnet_analyzer_diagnostic.category-Style.severity = error
+dotnet_analyzer_diagnostic.category-Usage.severity = error
+dotnet_code_quality_unused_parameters = all
+dotnet_code_quality_unused_parameters = non_public
+dotnet_code_quality.CAXXXX.api_surface = private, internal
+dotnet_diagnostic.CA1001.severity = error # CA1001: Types that own disposable fields should be disposable
+dotnet_diagnostic.CA1051.severity = error # CA1051: Do not declare visible instance fields
+dotnet_diagnostic.CA1511.severity = warning # CA1511: Use 'ArgumentException.ThrowIfNullOrEmpty' instead of explicitly throwing a new exception instance
+dotnet_diagnostic.CA1513.severity = warning # Use 'ObjectDisposedException.ThrowIf' instead of explicitly throwing a new exception instance
+dotnet_diagnostic.CA1825.severity = warning # CA1825: Avoid zero-length array allocations
+dotnet_diagnostic.CA1829.severity = warning # CA1829: Use Length/Count property instead of Count() when available
+dotnet_diagnostic.CA1834.severity = warning # CA1834: Consider using 'StringBuilder.Append(char)' when applicable
+dotnet_diagnostic.CA1860.severity = error # CA1860: Prefer comparing 'Count' to 0 rather than using 'Any()', both for clarity and for performance
+dotnet_diagnostic.CA1862.severity = warning # CA1862: Prefer using 'string.Equals(string, StringComparison)' to perform a case-insensitive comparison, but keep in mind that this might cause subtle changes in behavior, so make sure to conduct thorough testing after applying the suggestion, or if culturally sensitive comparison is not required, consider using 'StringComparison.OrdinalIgnoreCase'
+dotnet_diagnostic.CA1869.severity = none # CA1869: Avoid creating a new 'JsonSerializerOptions' instance for every serialization operation. Cache and reuse instances instead.
+dotnet_diagnostic.CA2201.severity = none # CA2201: Exception type System.NullReferenceException is reserved by the runtime
+dotnet_diagnostic.CA2254.severity = none # CA2254: The logging message template should not vary between calls to 'LoggerExtensions.LogInformation(ILogger, string?, params object?[])'
+dotnet_diagnostic.IDE0001.severity = warning # IDE0001: Simplify name
+dotnet_diagnostic.IDE0002.severity = warning # Simplify (member access) - System.Version.Equals("1", "2"); Version.Equals("1", "2");
+dotnet_diagnostic.IDE0004.severity = warning # IDE0004: Cast is redundant.
+dotnet_diagnostic.IDE0005.severity = warning # Using directive is unnecessary
+dotnet_diagnostic.IDE0010.severity = none # Add missing cases to switch statement (IDE0010)
+dotnet_diagnostic.IDE0028.severity = error # IDE0028: Collection initialization can be simplified
+dotnet_diagnostic.IDE0031.severity = warning # Use null propagation (IDE0031)
+dotnet_diagnostic.IDE0047.severity = warning # IDE0047: Parentheses can be removed
+dotnet_diagnostic.IDE0048.severity = none # Parentheses preferences (IDE0047 and IDE0048)
+dotnet_diagnostic.IDE0049.severity = warning # Use language keywords instead of framework type names for type references (IDE0049)
+dotnet_diagnostic.IDE0051.severity = error # Private member '' is unused [, ]
+dotnet_diagnostic.IDE0058.severity = warning # IDE0058: Expression value is never used
+dotnet_diagnostic.IDE0060.severity = error # IDE0060: Remove unused parameter
+dotnet_diagnostic.IDE0074.severity = warning # IDE0074: Use compound assignment
+dotnet_diagnostic.IDE0130.severity = none # Namespace does not match folder structure (IDE0130)
+dotnet_diagnostic.IDE0270.severity = warning # IDE0270: Null check can be simplified
+dotnet_diagnostic.IDE0290.severity = none # Use primary constructor [Distance]csharp(IDE0290)
+dotnet_diagnostic.IDE0300.severity = error # IDE0300: Collection initialization can be simplified
+dotnet_diagnostic.IDE0301.severity = error #IDE0301: Collection initialization can be simplified
+dotnet_diagnostic.IDE0305.severity = none # IDE0305: Collection initialization can be simplified
+dotnet_naming_rule.abstract_method_should_be_pascal_case.severity = warning
+dotnet_naming_rule.abstract_method_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.abstract_method_should_be_pascal_case.symbols = abstract_method
+dotnet_naming_rule.class_should_be_pascal_case.severity = warning
+dotnet_naming_rule.class_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.class_should_be_pascal_case.symbols = class
+dotnet_naming_rule.delegate_should_be_pascal_case.severity = warning
+dotnet_naming_rule.delegate_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.delegate_should_be_pascal_case.symbols = delegate
+dotnet_naming_rule.enum_should_be_pascal_case.severity = warning
+dotnet_naming_rule.enum_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.enum_should_be_pascal_case.symbols = enum
+dotnet_naming_rule.event_should_be_pascal_case.severity = warning
+dotnet_naming_rule.event_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.event_should_be_pascal_case.symbols = event
+dotnet_naming_rule.interface_should_be_begins_with_i.severity = warning
+dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i
+dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface
+dotnet_naming_rule.method_should_be_pascal_case.severity = warning
+dotnet_naming_rule.method_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.method_should_be_pascal_case.symbols = method
+dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = warning
+dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members
+dotnet_naming_rule.private_method_should_be_pascal_case.severity = warning
+dotnet_naming_rule.private_method_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.private_method_should_be_pascal_case.symbols = private_method
+dotnet_naming_rule.private_or_internal_field_should_be_private_of_internal_field.severity = warning
+dotnet_naming_rule.private_or_internal_field_should_be_private_of_internal_field.style = private_of_internal_field
+dotnet_naming_rule.private_or_internal_field_should_be_private_of_internal_field.symbols = private_or_internal_field
+dotnet_naming_rule.private_or_internal_static_field_should_be_private_of_internal_field.severity = warning
+dotnet_naming_rule.private_or_internal_static_field_should_be_private_of_internal_field.style = private_of_internal_field
+dotnet_naming_rule.private_or_internal_static_field_should_be_private_of_internal_field.symbols = private_or_internal_static_field
+dotnet_naming_rule.property_should_be_pascal_case.severity = warning
+dotnet_naming_rule.property_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.property_should_be_pascal_case.symbols = property
+dotnet_naming_rule.public_or_protected_field_should_be_private_of_internal_field.severity = warning
+dotnet_naming_rule.public_or_protected_field_should_be_private_of_internal_field.style = private_of_internal_field
+dotnet_naming_rule.public_or_protected_field_should_be_private_of_internal_field.symbols = public_or_protected_field
+dotnet_naming_rule.static_field_should_be_pascal_case.severity = warning
+dotnet_naming_rule.static_field_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.static_field_should_be_pascal_case.symbols = static_field
+dotnet_naming_rule.static_method_should_be_pascal_case.severity = warning
+dotnet_naming_rule.static_method_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.static_method_should_be_pascal_case.symbols = static_method
+dotnet_naming_rule.struct_should_be_pascal_case.severity = warning
+dotnet_naming_rule.struct_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.struct_should_be_pascal_case.symbols = struct
+dotnet_naming_rule.types_should_be_pascal_case.severity = warning
+dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.types_should_be_pascal_case.symbols = types
+dotnet_naming_style.begins_with_i.capitalization = pascal_case
+dotnet_naming_style.begins_with_i.required_prefix = I
+dotnet_naming_style.begins_with_i.required_suffix =
+dotnet_naming_style.begins_with_i.word_separator =
+dotnet_naming_style.pascal_case.capitalization = pascal_case
+dotnet_naming_style.pascal_case.required_prefix =
+dotnet_naming_style.pascal_case.required_suffix =
+dotnet_naming_style.pascal_case.word_separator =
+dotnet_naming_style.private_of_internal_field.capitalization = pascal_case
+dotnet_naming_style.private_of_internal_field.required_prefix = _
+dotnet_naming_style.private_of_internal_field.required_suffix =
+dotnet_naming_style.private_of_internal_field.word_separator =
+dotnet_naming_symbols.abstract_method.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.abstract_method.applicable_kinds = method
+dotnet_naming_symbols.abstract_method.required_modifiers = abstract
+dotnet_naming_symbols.class.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.class.applicable_kinds = class
+dotnet_naming_symbols.class.required_modifiers =
+dotnet_naming_symbols.delegate.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.delegate.applicable_kinds = delegate
+dotnet_naming_symbols.delegate.required_modifiers =
+dotnet_naming_symbols.enum.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.enum.applicable_kinds = enum
+dotnet_naming_symbols.enum.required_modifiers =
+dotnet_naming_symbols.event.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.event.applicable_kinds = event
+dotnet_naming_symbols.event.required_modifiers =
+dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.interface.applicable_kinds = interface
+dotnet_naming_symbols.interface.required_modifiers =
+dotnet_naming_symbols.method.applicable_accessibilities = public
+dotnet_naming_symbols.method.applicable_kinds = method
+dotnet_naming_symbols.method.required_modifiers =
+dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method
+dotnet_naming_symbols.non_field_members.required_modifiers =
+dotnet_naming_symbols.private_method.applicable_accessibilities = private
+dotnet_naming_symbols.private_method.applicable_kinds = method
+dotnet_naming_symbols.private_method.required_modifiers =
+dotnet_naming_symbols.private_or_internal_field.applicable_accessibilities = internal, private, private_protected
+dotnet_naming_symbols.private_or_internal_field.applicable_kinds = field
+dotnet_naming_symbols.private_or_internal_field.required_modifiers =
+dotnet_naming_symbols.private_or_internal_static_field.applicable_accessibilities = internal, private, private_protected
+dotnet_naming_symbols.private_or_internal_static_field.applicable_kinds = field
+dotnet_naming_symbols.private_or_internal_static_field.required_modifiers = static
+dotnet_naming_symbols.property.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.property.applicable_kinds = property
+dotnet_naming_symbols.property.required_modifiers =
+dotnet_naming_symbols.public_or_protected_field.applicable_accessibilities = public, protected
+dotnet_naming_symbols.public_or_protected_field.applicable_kinds = field
+dotnet_naming_symbols.public_or_protected_field.required_modifiers =
+dotnet_naming_symbols.static_field.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.static_field.applicable_kinds = field
+dotnet_naming_symbols.static_field.required_modifiers = static
+dotnet_naming_symbols.static_method.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.static_method.applicable_kinds = method
+dotnet_naming_symbols.static_method.required_modifiers = static
+dotnet_naming_symbols.struct.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.struct.applicable_kinds = struct
+dotnet_naming_symbols.struct.required_modifiers =
+dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum
+dotnet_naming_symbols.types.required_modifiers =
+dotnet_remove_unnecessary_suppression_exclusions = 0
+dotnet_separate_import_directive_groups = false
+dotnet_sort_system_directives_first = false
+dotnet_style_allow_multiple_blank_lines_experimental = false:warning
+dotnet_style_allow_statement_immediately_after_block_experimental = true
+dotnet_style_coalesce_expression = true
+dotnet_style_collection_initializer = true:warning
+dotnet_style_explicit_tuple_names = true:warning
+dotnet_style_namespace_match_folder = true
+dotnet_style_null_propagation = true:warning
+dotnet_style_object_initializer = true:warning
+dotnet_style_operator_placement_when_wrapping = beginning_of_line
+dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity
+dotnet_style_parentheses_in_other_binary_operators = always_for_clarity
+dotnet_style_parentheses_in_other_operators = never_if_unnecessary
+dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity
+dotnet_style_predefined_type_for_locals_parameters_members = true
+dotnet_style_predefined_type_for_member_access = true:warning
+dotnet_style_prefer_auto_properties = true:warning
+dotnet_style_prefer_compound_assignment = true:warning
+dotnet_style_prefer_conditional_expression_over_assignment = false
+dotnet_style_prefer_conditional_expression_over_return = false
+dotnet_style_prefer_inferred_anonymous_type_member_names = true:warning
+dotnet_style_prefer_inferred_tuple_names = true:warning
+dotnet_style_prefer_is_null_check_over_reference_equality_method = true:warning
+dotnet_style_prefer_simplified_boolean_expressions = true:warning
+dotnet_style_prefer_simplified_interpolation = true
+dotnet_style_qualification_for_event = false:error
+dotnet_style_qualification_for_field = false
+dotnet_style_qualification_for_method = false:error
+dotnet_style_qualification_for_property = false:error
+dotnet_style_readonly_field = true:warning
+dotnet_style_require_accessibility_modifiers = for_non_interface_members
+end_of_line = crlf
+file_header_template = unset
+indent_size = 4
+indent_style = space
+insert_final_newline = false
+root = true
+tab_width = 4
+# https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1822
+# https://github.com/dotnet/aspnetcore/blob/main/.editorconfig
+# https://github.com/dotnet/project-system/blob/main/.editorconfig
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/.vscode/format-report.json b/National-Instruments-DAQ-MX/.vscode/format-report.json
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/National-Instruments-DAQ-MX/.vscode/format-report.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/.vscode/settings.json b/National-Instruments-DAQ-MX/.vscode/settings.json
new file mode 100644
index 0000000..3599b51
--- /dev/null
+++ b/National-Instruments-DAQ-MX/.vscode/settings.json
@@ -0,0 +1,5 @@
+{
+ "[markdown]": {
+ "editor.wordWrap": "off"
+ }
+}
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/.vscode/tasks.json b/National-Instruments-DAQ-MX/.vscode/tasks.json
new file mode 100644
index 0000000..42bb2de
--- /dev/null
+++ b/National-Instruments-DAQ-MX/.vscode/tasks.json
@@ -0,0 +1,64 @@
+{
+ "version": "2.0.0",
+ "tasks": [
+ {
+ "label": "Build",
+ "command": "dotnet",
+ "type": "process",
+ "args": [
+ "build",
+ "--configuration",
+ "Release",
+ "--framework",
+ "net48",
+ "--runtime",
+ "win-x64"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "Run",
+ "command": "bin/Release/net48/win-x64/National-Instruments-DAQ-MX.exe",
+ "dependsOn": "Build",
+ "type": "process",
+ "args": [
+ "ai0",
+ "ai1",
+ "ai2",
+ "ai3",
+ "ai4",
+ "ai5",
+ "ai6",
+ "ai7"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "Push Package",
+ "command": "dotnet",
+ "type": "process",
+ "args": [
+ "nuget",
+ "push",
+ "bin/Release/Infineon.Mesa.National.Instruments.DAQ.MX.4.8.0.asdf.nupkg",
+ "--api-key",
+ "asdf",
+ "--source",
+ "https://api.nuget.org/v3/index.json"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "Build Self",
+ "command": "dotnet",
+ "type": "process",
+ "args": [
+ "build",
+ "--runtime",
+ "win-x64",
+ "--self-contained"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ ]
+}
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/National-Instruments-DAQ-MX.csproj b/National-Instruments-DAQ-MX/National-Instruments-DAQ-MX.csproj
new file mode 100644
index 0000000..7d26605
--- /dev/null
+++ b/National-Instruments-DAQ-MX/National-Instruments-DAQ-MX.csproj
@@ -0,0 +1,43 @@
+
+
+ 10.0
+ Exe
+ win-x86
+ net48
+ 4.8.0.2
+
+
+ $([System.Math]::Floor($([MSBuild]::Divide($([MSBuild]::Subtract($([System.DateTimeOffset]::UtcNow.ToUnixTimeSeconds()), 1555545600)), 3600))))
+
+
+ Mike Phares
+ 12.0
+ true
+ README.md
+ snupkg
+ true
+ Infineon Technologies Americas Corp.
+ MIT
+ Infineon.Mesa.National.Instruments.DAQ.MX
+ 4.8.0.$([System.Math]::Floor($([MSBuild]::Divide($([MSBuild]::Subtract($([System.DateTimeOffset]::UtcNow.ToUnixTimeSeconds()), 1555545600)), 3600))))
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ False
+ .vscode\NationalInstruments.DAQmx.dll
+
+
+
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/Program.cs b/National-Instruments-DAQ-MX/Program.cs
new file mode 100644
index 0000000..b0980f3
--- /dev/null
+++ b/National-Instruments-DAQ-MX/Program.cs
@@ -0,0 +1,101 @@
+using NationalInstruments.DAQmx;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace National_Instruments_DAQ_MX;
+
+public class Program {
+
+ public static void Secondary(List args) {
+ try {
+ List results = [];
+ Task task;
+ double value;
+ AIChannel aiChannel;
+ AnalogSingleChannelReader analogSingleChannelReader;
+ if (args.Contains("ai0")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai0", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai0: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai1")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai1", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai1: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai2")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai2", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai2: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai3")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai3", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai3: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai4")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai4", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai4: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai5")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai5", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai5: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai6")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai6", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai6: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai7")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai7", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai7: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ Console.WriteLine(string.Join(Environment.NewLine, results));
+ } catch (Exception ex) {
+ Console.WriteLine(string.Concat(ex.Message, Environment.NewLine, ex.StackTrace));
+ throw;
+ }
+ }
+
+ public static void Main(string[] args) {
+ if (args is not null) {
+ Secondary(args.ToList());
+ }
+ }
+}
diff --git a/National-Instruments-DAQ-MX/README.md b/National-Instruments-DAQ-MX/README.md
new file mode 100644
index 0000000..5c41a7d
--- /dev/null
+++ b/National-Instruments-DAQ-MX/README.md
@@ -0,0 +1,20 @@
+# Introduction
+TODO: Give a short introduction of your project. Let this section explain the objectives or the motivation behind this project.
+
+# Getting Started
+TODO: Guide users through getting your code up and running on their own system. In this section you can talk about:
+1. Installation process
+2. Software dependencies
+3. Latest releases
+4. API references
+
+# Build and Test
+"C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe" /ConsoleLoggerParameters:PerformanceSummary;ErrorsOnly; /DetailedSummary /m /property:Configuration=Debug;TargetFrameworkVersion=v4.8 /restore:True /target:Build PDF-Text-Stripper.sln
+
+# Contribute
+TODO: Explain how other users and developers can contribute to make your code better.
+
+If you want to learn more about creating good readme files then refer the following [guidelines](https://docs.microsoft.com/en-us/azure/devops/repos/git/create-a-readme?view=azure-devops). You can also seek inspiration from the below readme files:
+- [ASP.NET Core](https://github.com/aspnet/Home)
+- [Visual Studio Code](https://github.com/Microsoft/vscode)
+- [Chakra Core](https://github.com/Microsoft/ChakraCore)
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/core/.editorconfig b/National-Instruments-DAQ-MX/core/.editorconfig
new file mode 100644
index 0000000..cd5d265
--- /dev/null
+++ b/National-Instruments-DAQ-MX/core/.editorconfig
@@ -0,0 +1,296 @@
+[*.md]
+end_of_line = crlf
+file_header_template = unset
+indent_size = 2
+indent_style = space
+insert_final_newline = false
+root = true
+tab_width = 2
+[*.csproj]
+end_of_line = crlf
+file_header_template = unset
+indent_size = 2
+indent_style = space
+insert_final_newline = false
+root = true
+tab_width = 2
+[*.cs]
+csharp_indent_block_contents = true
+csharp_indent_braces = false
+csharp_indent_case_contents = true
+csharp_indent_case_contents_when_block = true
+csharp_indent_labels = one_less_than_current
+csharp_indent_switch_labels = true
+csharp_new_line_before_catch = false
+csharp_new_line_before_else = false
+csharp_new_line_before_finally = false
+csharp_new_line_before_members_in_anonymous_types = true
+csharp_new_line_before_members_in_object_initializers = true
+csharp_new_line_before_open_brace = none
+csharp_new_line_between_query_expression_clauses = true
+csharp_prefer_braces = false
+csharp_prefer_qualified_reference = true:error
+csharp_prefer_simple_default_expression = true:warning
+csharp_prefer_simple_using_statement = true:warning
+csharp_prefer_static_local_function = true:warning
+csharp_preferred_modifier_order = public,private,protected,internal,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,volatile,async
+csharp_preserve_single_line_blocks = true
+csharp_preserve_single_line_statements = false
+csharp_space_after_cast = false
+csharp_space_after_colon_in_inheritance_clause = true
+csharp_space_after_comma = true
+csharp_space_after_dot = false
+csharp_space_after_keywords_in_control_flow_statements = true
+csharp_space_after_semicolon_in_for_statement = true
+csharp_space_around_binary_operators = before_and_after
+csharp_space_around_declaration_statements = false
+csharp_space_before_colon_in_inheritance_clause = true
+csharp_space_before_comma = false
+csharp_space_before_dot = false
+csharp_space_before_open_square_brackets = false
+csharp_space_before_semicolon_in_for_statement = false
+csharp_space_between_empty_square_brackets = false
+csharp_space_between_method_call_empty_parameter_list_parentheses = false
+csharp_space_between_method_call_name_and_opening_parenthesis = false
+csharp_space_between_method_call_parameter_list_parentheses = false
+csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
+csharp_space_between_method_declaration_name_and_open_parenthesis = false
+csharp_space_between_method_declaration_parameter_list_parentheses = false
+csharp_space_between_parentheses = false
+csharp_space_between_square_brackets = false
+csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental = true
+csharp_style_allow_blank_lines_between_consecutive_braces_experimental = true
+csharp_style_allow_embedded_statements_on_same_line_experimental = true
+csharp_style_conditional_delegate_call = true
+csharp_style_deconstructed_variable_declaration = false
+csharp_style_expression_bodied_accessors = when_on_single_line:warning
+csharp_style_expression_bodied_constructors = when_on_single_line:warning
+csharp_style_expression_bodied_indexers = when_on_single_line:warning
+csharp_style_expression_bodied_lambdas = when_on_single_line:warning
+csharp_style_expression_bodied_local_functions = when_on_single_line:warning
+csharp_style_expression_bodied_methods = when_on_single_line:warning
+csharp_style_expression_bodied_operators = when_on_single_line:warning
+csharp_style_expression_bodied_properties = when_on_single_line:warning
+csharp_style_implicit_object_creation_when_type_is_apparent = true:warning
+csharp_style_inlined_variable_declaration = false
+csharp_style_namespace_declarations = file_scoped:warning
+csharp_style_pattern_local_over_anonymous_function = true:warning
+csharp_style_pattern_matching_over_as_with_null_check = true:warning
+csharp_style_pattern_matching_over_is_with_cast_check = true:warning
+csharp_style_prefer_index_operator = true:warning
+csharp_style_prefer_not_pattern = true:warning
+csharp_style_prefer_null_check_over_type_check = true
+csharp_style_prefer_pattern_matching = true:warning
+csharp_style_prefer_range_operator = true:warning
+csharp_style_prefer_switch_expression = true:warning
+csharp_style_throw_expression = true
+csharp_style_unused_value_assignment_preference = discard_variable:warning
+csharp_style_unused_value_expression_statement_preference = discard_variable:warning
+csharp_style_var_elsewhere = false:warning
+csharp_style_var_for_built_in_types = false:warning
+csharp_style_var_when_type_is_apparent = false:warning
+csharp_using_directive_placement = outside_namespace
+dotnet_analyzer_diagnostic.category-Design.severity = error
+dotnet_analyzer_diagnostic.category-Documentation.severity = error
+dotnet_analyzer_diagnostic.category-Globalization.severity = none
+dotnet_analyzer_diagnostic.category-Interoperability.severity = error
+dotnet_analyzer_diagnostic.category-Maintainability.severity = error
+dotnet_analyzer_diagnostic.category-Naming.severity = none
+dotnet_analyzer_diagnostic.category-Performance.severity = none
+dotnet_analyzer_diagnostic.category-Reliability.severity = error
+dotnet_analyzer_diagnostic.category-Security.severity = error
+dotnet_analyzer_diagnostic.category-SingleFile.severity = error
+dotnet_analyzer_diagnostic.category-Style.severity = error
+dotnet_analyzer_diagnostic.category-Usage.severity = error
+dotnet_code_quality_unused_parameters = all
+dotnet_code_quality_unused_parameters = non_public
+dotnet_code_quality.CAXXXX.api_surface = private, internal
+dotnet_diagnostic.CA1001.severity = error # CA1001: Types that own disposable fields should be disposable
+dotnet_diagnostic.CA1051.severity = error # CA1051: Do not declare visible instance fields
+dotnet_diagnostic.CA1511.severity = warning # CA1511: Use 'ArgumentException.ThrowIfNullOrEmpty' instead of explicitly throwing a new exception instance
+dotnet_diagnostic.CA1513.severity = warning # Use 'ObjectDisposedException.ThrowIf' instead of explicitly throwing a new exception instance
+dotnet_diagnostic.CA1825.severity = warning # CA1825: Avoid zero-length array allocations
+dotnet_diagnostic.CA1829.severity = warning # CA1829: Use Length/Count property instead of Count() when available
+dotnet_diagnostic.CA1834.severity = warning # CA1834: Consider using 'StringBuilder.Append(char)' when applicable
+dotnet_diagnostic.CA1860.severity = error # CA1860: Prefer comparing 'Count' to 0 rather than using 'Any()', both for clarity and for performance
+dotnet_diagnostic.CA1862.severity = warning # CA1862: Prefer using 'string.Equals(string, StringComparison)' to perform a case-insensitive comparison, but keep in mind that this might cause subtle changes in behavior, so make sure to conduct thorough testing after applying the suggestion, or if culturally sensitive comparison is not required, consider using 'StringComparison.OrdinalIgnoreCase'
+dotnet_diagnostic.CA1869.severity = none # CA1869: Avoid creating a new 'JsonSerializerOptions' instance for every serialization operation. Cache and reuse instances instead.
+dotnet_diagnostic.CA2201.severity = none # CA2201: Exception type System.NullReferenceException is reserved by the runtime
+dotnet_diagnostic.CA2254.severity = none # CA2254: The logging message template should not vary between calls to 'LoggerExtensions.LogInformation(ILogger, string?, params object?[])'
+dotnet_diagnostic.IDE0001.severity = warning # IDE0001: Simplify name
+dotnet_diagnostic.IDE0002.severity = warning # Simplify (member access) - System.Version.Equals("1", "2"); Version.Equals("1", "2");
+dotnet_diagnostic.IDE0004.severity = warning # IDE0004: Cast is redundant.
+dotnet_diagnostic.IDE0005.severity = warning # Using directive is unnecessary
+dotnet_diagnostic.IDE0010.severity = none # Add missing cases to switch statement (IDE0010)
+dotnet_diagnostic.IDE0028.severity = error # IDE0028: Collection initialization can be simplified
+dotnet_diagnostic.IDE0031.severity = warning # Use null propagation (IDE0031)
+dotnet_diagnostic.IDE0047.severity = warning # IDE0047: Parentheses can be removed
+dotnet_diagnostic.IDE0048.severity = none # Parentheses preferences (IDE0047 and IDE0048)
+dotnet_diagnostic.IDE0049.severity = warning # Use language keywords instead of framework type names for type references (IDE0049)
+dotnet_diagnostic.IDE0051.severity = error # Private member '' is unused [, ]
+dotnet_diagnostic.IDE0058.severity = warning # IDE0058: Expression value is never used
+dotnet_diagnostic.IDE0060.severity = error # IDE0060: Remove unused parameter
+dotnet_diagnostic.IDE0074.severity = warning # IDE0074: Use compound assignment
+dotnet_diagnostic.IDE0130.severity = none # Namespace does not match folder structure (IDE0130)
+dotnet_diagnostic.IDE0270.severity = warning # IDE0270: Null check can be simplified
+dotnet_diagnostic.IDE0290.severity = none # Use primary constructor [Distance]csharp(IDE0290)
+dotnet_diagnostic.IDE0300.severity = error # IDE0300: Collection initialization can be simplified
+dotnet_diagnostic.IDE0301.severity = error #IDE0301: Collection initialization can be simplified
+dotnet_diagnostic.IDE0305.severity = none # IDE0305: Collection initialization can be simplified
+dotnet_naming_rule.abstract_method_should_be_pascal_case.severity = warning
+dotnet_naming_rule.abstract_method_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.abstract_method_should_be_pascal_case.symbols = abstract_method
+dotnet_naming_rule.class_should_be_pascal_case.severity = warning
+dotnet_naming_rule.class_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.class_should_be_pascal_case.symbols = class
+dotnet_naming_rule.delegate_should_be_pascal_case.severity = warning
+dotnet_naming_rule.delegate_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.delegate_should_be_pascal_case.symbols = delegate
+dotnet_naming_rule.enum_should_be_pascal_case.severity = warning
+dotnet_naming_rule.enum_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.enum_should_be_pascal_case.symbols = enum
+dotnet_naming_rule.event_should_be_pascal_case.severity = warning
+dotnet_naming_rule.event_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.event_should_be_pascal_case.symbols = event
+dotnet_naming_rule.interface_should_be_begins_with_i.severity = warning
+dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i
+dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface
+dotnet_naming_rule.method_should_be_pascal_case.severity = warning
+dotnet_naming_rule.method_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.method_should_be_pascal_case.symbols = method
+dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = warning
+dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members
+dotnet_naming_rule.private_method_should_be_pascal_case.severity = warning
+dotnet_naming_rule.private_method_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.private_method_should_be_pascal_case.symbols = private_method
+dotnet_naming_rule.private_or_internal_field_should_be_private_of_internal_field.severity = warning
+dotnet_naming_rule.private_or_internal_field_should_be_private_of_internal_field.style = private_of_internal_field
+dotnet_naming_rule.private_or_internal_field_should_be_private_of_internal_field.symbols = private_or_internal_field
+dotnet_naming_rule.private_or_internal_static_field_should_be_private_of_internal_field.severity = warning
+dotnet_naming_rule.private_or_internal_static_field_should_be_private_of_internal_field.style = private_of_internal_field
+dotnet_naming_rule.private_or_internal_static_field_should_be_private_of_internal_field.symbols = private_or_internal_static_field
+dotnet_naming_rule.property_should_be_pascal_case.severity = warning
+dotnet_naming_rule.property_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.property_should_be_pascal_case.symbols = property
+dotnet_naming_rule.public_or_protected_field_should_be_private_of_internal_field.severity = warning
+dotnet_naming_rule.public_or_protected_field_should_be_private_of_internal_field.style = private_of_internal_field
+dotnet_naming_rule.public_or_protected_field_should_be_private_of_internal_field.symbols = public_or_protected_field
+dotnet_naming_rule.static_field_should_be_pascal_case.severity = warning
+dotnet_naming_rule.static_field_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.static_field_should_be_pascal_case.symbols = static_field
+dotnet_naming_rule.static_method_should_be_pascal_case.severity = warning
+dotnet_naming_rule.static_method_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.static_method_should_be_pascal_case.symbols = static_method
+dotnet_naming_rule.struct_should_be_pascal_case.severity = warning
+dotnet_naming_rule.struct_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.struct_should_be_pascal_case.symbols = struct
+dotnet_naming_rule.types_should_be_pascal_case.severity = warning
+dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case
+dotnet_naming_rule.types_should_be_pascal_case.symbols = types
+dotnet_naming_style.begins_with_i.capitalization = pascal_case
+dotnet_naming_style.begins_with_i.required_prefix = I
+dotnet_naming_style.begins_with_i.required_suffix =
+dotnet_naming_style.begins_with_i.word_separator =
+dotnet_naming_style.pascal_case.capitalization = pascal_case
+dotnet_naming_style.pascal_case.required_prefix =
+dotnet_naming_style.pascal_case.required_suffix =
+dotnet_naming_style.pascal_case.word_separator =
+dotnet_naming_style.private_of_internal_field.capitalization = pascal_case
+dotnet_naming_style.private_of_internal_field.required_prefix = _
+dotnet_naming_style.private_of_internal_field.required_suffix =
+dotnet_naming_style.private_of_internal_field.word_separator =
+dotnet_naming_symbols.abstract_method.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.abstract_method.applicable_kinds = method
+dotnet_naming_symbols.abstract_method.required_modifiers = abstract
+dotnet_naming_symbols.class.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.class.applicable_kinds = class
+dotnet_naming_symbols.class.required_modifiers =
+dotnet_naming_symbols.delegate.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.delegate.applicable_kinds = delegate
+dotnet_naming_symbols.delegate.required_modifiers =
+dotnet_naming_symbols.enum.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.enum.applicable_kinds = enum
+dotnet_naming_symbols.enum.required_modifiers =
+dotnet_naming_symbols.event.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.event.applicable_kinds = event
+dotnet_naming_symbols.event.required_modifiers =
+dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.interface.applicable_kinds = interface
+dotnet_naming_symbols.interface.required_modifiers =
+dotnet_naming_symbols.method.applicable_accessibilities = public
+dotnet_naming_symbols.method.applicable_kinds = method
+dotnet_naming_symbols.method.required_modifiers =
+dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method
+dotnet_naming_symbols.non_field_members.required_modifiers =
+dotnet_naming_symbols.private_method.applicable_accessibilities = private
+dotnet_naming_symbols.private_method.applicable_kinds = method
+dotnet_naming_symbols.private_method.required_modifiers =
+dotnet_naming_symbols.private_or_internal_field.applicable_accessibilities = internal, private, private_protected
+dotnet_naming_symbols.private_or_internal_field.applicable_kinds = field
+dotnet_naming_symbols.private_or_internal_field.required_modifiers =
+dotnet_naming_symbols.private_or_internal_static_field.applicable_accessibilities = internal, private, private_protected
+dotnet_naming_symbols.private_or_internal_static_field.applicable_kinds = field
+dotnet_naming_symbols.private_or_internal_static_field.required_modifiers = static
+dotnet_naming_symbols.property.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.property.applicable_kinds = property
+dotnet_naming_symbols.property.required_modifiers =
+dotnet_naming_symbols.public_or_protected_field.applicable_accessibilities = public, protected
+dotnet_naming_symbols.public_or_protected_field.applicable_kinds = field
+dotnet_naming_symbols.public_or_protected_field.required_modifiers =
+dotnet_naming_symbols.static_field.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.static_field.applicable_kinds = field
+dotnet_naming_symbols.static_field.required_modifiers = static
+dotnet_naming_symbols.static_method.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.static_method.applicable_kinds = method
+dotnet_naming_symbols.static_method.required_modifiers = static
+dotnet_naming_symbols.struct.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.struct.applicable_kinds = struct
+dotnet_naming_symbols.struct.required_modifiers =
+dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
+dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum
+dotnet_naming_symbols.types.required_modifiers =
+dotnet_remove_unnecessary_suppression_exclusions = 0
+dotnet_separate_import_directive_groups = false
+dotnet_sort_system_directives_first = false
+dotnet_style_allow_multiple_blank_lines_experimental = false:warning
+dotnet_style_allow_statement_immediately_after_block_experimental = true
+dotnet_style_coalesce_expression = true
+dotnet_style_collection_initializer = true:warning
+dotnet_style_explicit_tuple_names = true:warning
+dotnet_style_namespace_match_folder = true
+dotnet_style_null_propagation = true:warning
+dotnet_style_object_initializer = true:warning
+dotnet_style_operator_placement_when_wrapping = beginning_of_line
+dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity
+dotnet_style_parentheses_in_other_binary_operators = always_for_clarity
+dotnet_style_parentheses_in_other_operators = never_if_unnecessary
+dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity
+dotnet_style_predefined_type_for_locals_parameters_members = true
+dotnet_style_predefined_type_for_member_access = true:warning
+dotnet_style_prefer_auto_properties = true:warning
+dotnet_style_prefer_compound_assignment = true:warning
+dotnet_style_prefer_conditional_expression_over_assignment = false
+dotnet_style_prefer_conditional_expression_over_return = false
+dotnet_style_prefer_inferred_anonymous_type_member_names = true:warning
+dotnet_style_prefer_inferred_tuple_names = true:warning
+dotnet_style_prefer_is_null_check_over_reference_equality_method = true:warning
+dotnet_style_prefer_simplified_boolean_expressions = true:warning
+dotnet_style_prefer_simplified_interpolation = true
+dotnet_style_qualification_for_event = false:error
+dotnet_style_qualification_for_field = false
+dotnet_style_qualification_for_method = false:error
+dotnet_style_qualification_for_property = false:error
+dotnet_style_readonly_field = true:warning
+dotnet_style_require_accessibility_modifiers = for_non_interface_members
+end_of_line = crlf
+file_header_template = unset
+indent_size = 4
+indent_style = space
+insert_final_newline = false
+root = true
+tab_width = 4
+# https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1822
+# https://github.com/dotnet/aspnetcore/blob/main/.editorconfig
+# https://github.com/dotnet/project-system/blob/main/.editorconfig
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/core/.vscode/6062c774-99a9-4f4a-b42d-a9cb7fcbd8be.json b/National-Instruments-DAQ-MX/core/.vscode/6062c774-99a9-4f4a-b42d-a9cb7fcbd8be.json
new file mode 100644
index 0000000..e2962f1
--- /dev/null
+++ b/National-Instruments-DAQ-MX/core/.vscode/6062c774-99a9-4f4a-b42d-a9cb7fcbd8be.json
@@ -0,0 +1,386 @@
+{
+ "_Application": "File-Watcher",
+ "_UserSecretsId": "6062c774-99a9-4f4a-b42d-a9cb7fcbd8be",
+ "BuildNumber": "1234",
+ "CamstarOracleConfiguration": {
+ "DateFormat": "yyyy-MM-dd HH:mm:ss:fff",
+ "Directory": "D:/Tmp/Phares/WinLog/Logs",
+ "DirectoryX": "C:/Users/ECUSLEOCamstarTsvc/AppData/Local/IFXApps/WinLog/Logs",
+ "LogFilter": "Camstar",
+ "MessageFilters": [
+ "Connection Dead",
+ "not connected to ORACLE"
+ ],
+ "MillisecondsDelay": 90000,
+ "MonitorApplicationResource": "LEO_CAMSTAR_ORACLE_P21_COUNT",
+ "MonitorApplicationSite": "auc",
+ "RollingMinutes": 998877123
+ },
+ "CompassConfiguration": {
+ "Destination": "\\\\10.95.1.211\\Share\\RawData\\TRENDLOG",
+ "HoursBack": 4,
+ "MonthPattern": "MMM",
+ "Pattern": "*.csv",
+ "Source": "C:/Alerton/Compass/1.0/CLIMATEC/archive/trendlog",
+ "TriggerAppendage": ".trg",
+ "YearPattern": "yyyy"
+ },
+ "DeterministicHashCodeConfiguration": {
+ "MaxDegreeOfParallelism": 1,
+ "MaxDegreeOfParallelismXX": 6,
+ "MaxDegreeOfParallelismXXX": 11,
+ "SidecarExtensions": [
+ ".nef"
+ ],
+ "SidecarExtensionsX": [
+ ".nef",
+ ".tif"
+ ]
+ },
+ "DiskInfoConfiguration": {
+ "Bars": 110,
+ "Classes": [
+ "Win32_DiskDrive | Select-Object DeviceID, FirmwareRevision, Index, Model, Name, Partitions, SerialNumber, Size, Status, SystemName, TotalCylinders, TotalHeads",
+ "Win32_DiskPartition | Select-Object BootPartition, Description, DeviceID, DiskIndex, Index, Size, StartingOffset, SystemName, Type",
+ "Win32_LogicalDisk | Select-Object DeviceID, DriveType, FileSystem, Name, FreeSpace, Size, SystemName, VolumeName, VolumeSerialNumber"
+ ],
+ "ClassesX": [
+ "Win32_DiskDrive | Select-Object Caption, DeviceID, FirmwareRevision, Index, Model, Name, Partitions, SerialNumber, Size, Status, SystemName, TotalCylinders, TotalHeads",
+ "Win32_DiskPartition | Select-Object BootPartition, Caption, Description, DeviceID, DiskIndex, Index, Size, StartingOffset, SystemName, Type",
+ "Win32_LogicalDisk | Select-Object Caption, DeviceID, DriveType, FileSystem, Name, FreeSpace, Size, SystemName, VolumeName, VolumeSerialNumber",
+ "Win32_NetworkAdapter | Select-Object AdapterType, AdapterTypeId, Availability, Caption, Description, DeviceID, Index, MACAddress, Manufacturer, Name, NetConnectionID, NetConnectionStatus, NetEnabled, PNPDeviceID, PowerManagementSupported, ProductName, Speed, SystemName, TimeOfLastReset",
+ "Win32_Processor | Select-Object Architecture, AssetTag, Caption, CurrentClockSpeed, DataWidth, Description, DeviceID, Family, L2CacheSize, L3CacheSize, Level, LoadPercentage, Manufacturer, MaxClockSpeed, Name, NumberOfCores, NumberOfEnabledCore, NumberOfLogicalProcessors, OtherFamilyDescription, PartNumber, ProcessorId, ProcessorType, Revision, Role, SerialNumber, SocketDesignation, Stepping, SystemName, Version"
+ ],
+ "Destination": "J:/5-Other-Small/Disk/Win32",
+ "Max": 4096798110720
+ },
+ "DriveConfiguration": {
+ "Letter": "s",
+ "Password": "zjtaxxwdEnJ/9tfXQFdj6TKiKBAmpCHWjdi6XYrflw4=",
+ "Share": "\\\\10.95.1.211\\Share",
+ "Use": true,
+ "User": "infineon\\ECMESEAF"
+ },
+ "EAFLogConfiguration": {
+ "SearchPattern": "*.log*"
+ },
+ "EAFProgramDataConfiguration": {
+ "Destination": "\\\\messa08ec.infineon.com\\d$\\ProgramData\\EC_Characterization_Si\\RawData",
+ "Source": "D:/ProgramData/EC_Characterization_Si/RawData"
+ },
+ "EDADatabaseConfiguration": {
+ "CSharpDateTimeFormat": "yyyy-MM-dd_hh:mm:ss tt",
+ "FileShare": "\\\\mesfs.infineon.com\\EC_EDA",
+ "Name": "Production",
+ "OracleDateTimeFormat": "yyyy-MM-dd_hh:mi:ss AM",
+ "Password": "8vIs2nEZPkcdBUfXX0hHlA==",
+ "TNS": "(description=(address_list=(address=(protocol=tcp)(host=fimess-db.mes.infineon.com)(port=7001)))(connect_data=(sid=fimess)))",
+ "TNSX": "(description=(address_list=(address=(protocol=tcp)(host=fimesp-db.mes.infineon.com)(port=7002)))(connect_data=(sid=fimesp)))",
+ "UserName": "edaprod"
+ },
+ "FileWatcherConfiguration": {
+ "Company": "Infineon Technologies Americas Corp.",
+ "Helper": "NationalInstrumentsHelper",
+ "HelperX": "HelperISO",
+ "HelperXX": "HelperTCP",
+ "HelperXXX": "SyncHelper",
+ "HelperXXXX": "HelperNuget",
+ "HelperXXXXX": "HelperEAFLog",
+ "HelperXXXXXXXX": "HelperSerial",
+ "HelperXXXXXXXXX": "HelperCompass",
+ "HelperXXXXXXXXXX": "HelperSignalR",
+ "HelperXXXXXXXXXXX": "HelperStratus",
+ "HelperXXXXXXXXXXXX": "DiskInfoHelper",
+ "HelperXXXXXXXXXXXXX": "HelperEventLog",
+ "HelperXXXXXXXXXXXXXX": "SeleniumHelper",
+ "HelperXXXXXXXXXXXXXXX": "HelperInfinityQS",
+ "HelperXXXXXXXXXXXXXXXX": "HelperEDADatabase",
+ "HelperXXXXXXXXXXXXXXXXX": "HelperWaferCounter",
+ "HelperXXXXXXXXXXXXXXXXXX": "HelperCamstarOracle",
+ "HelperXXXXXXXXXXXXXXXXXXX": "HelperEAFProgramData",
+ "HelperXXXXXXXXXXXXXXXXXXXX": "HelperMetrologyFiles",
+ "HelperXXXXXXXXXXXXXXXXXXXXX": "DeterministicHashCodeHelper",
+ "MillisecondsDelayX": 54000,
+ "MillisecondsDelay": 5000,
+ "MillisecondsDelayXXX": 360000,
+ "MillisecondsDelayXXXX": 2147483647,
+ "WatchDirectory": "D:/Tmp/Phares/Event-Log",
+ "WatchDirectoryXX": "D:/EAF/EAF Instances",
+ "WatchDirectoryXXX": "C:/software/WaferCounter/V203"
+ },
+ "GitCommitSeven": "asdf",
+ "InfinityQSConfiguration": {
+ "ConnectionString": "Data Source=messqlec1.infineon.com\\PROD1,53959;Initial Catalog=IRMNSPC;Integrated Security=True;",
+ "ConnectionStringX": "Data Source=messad1001\\test1,59583;Initial Catalog=LSL2SQL;Persist Security Info=True;User ID=srpadmin;Password=0okm9ijn;",
+ "ConnectionStringXX": "Data Source=messqlec1.infineon.com\\PROD1,53959;Initial Catalog=Metrology;User ID=metrology_rouser;Password=Metrologyrouser2024!;",
+ "ConnectionStringXXX": "Data Source=messqlec1.infineon.com\\PROD1,53959;Initial Catalog=IRMNSPC;User ID=IRMNSPC;Password=dsaf;",
+ "DestinationDirectory": "L:/File-Watcher/Helper/InfinityQS",
+ "EncryptedPassword": "MOsiyCwT4GQ5AP1cwdyU/h9FO6WBlhnqcriVY4kBQnw=",
+ "SubGroupTime": 1727177147,
+ "Tests": [
+ {
+ "Name": "Bin2",
+ "Value": 1655396897
+ },
+ {
+ "Name": "Thresh",
+ "Value": 1655396909
+ },
+ {
+ "Name": "GradeStdDev",
+ "Value": 1656695902
+ },
+ {
+ "Name": "HgCV Res Average",
+ "Value": 1228920625
+ },
+ {
+ "Name": "3mm Edge % from R/2",
+ "Value": 1423499546
+ },
+ {
+ "Name": "Average Sum of Defects",
+ "Value": 1125073605
+ }
+ ],
+ "TestsFile": "L:/File-Watcher/Helper/InfinityQS/.json"
+ },
+ "IsoConfiguration": {
+ "DestinationDirectory": "D:/EAF/drssdv702.eu.infineon.com-eafdev-DeliveredPackages-IFX.EAF Kernel SEMI/v2.57.0.0",
+ "SourceDirectory": "\\\\eafdev.drs.infineon.com\\eafdev\\DeliveredPackages\\IFX.EAF Kernel SEMI\\v2.57.0.0\\EAF v2.57.0.0 API\\complete_with_adaptations"
+ },
+ "Logging:Console:FormatterName": "simple",
+ "Logging:Console:FormatterOptions:IncludeScopes": "True",
+ "Logging:Console:FormatterOptions:SingleLine": "True",
+ "Logging:Console:FormatterOptions:TimestampFormat": "HH:mm:ss ",
+ "Logging:Console:FormatterOptions:UseUtcTimestamp": "True",
+ "Logging:Console:LogLevel:Default": "Information",
+ "Logging:Console:LogLevel:Microsoft": "Warning",
+ "Logging:Console:LogLevel:Microsoft.Hosting.Lifetime": "Information",
+ "Logging:Debug:FormatterName": "simple",
+ "Logging:Debug:FormatterOptions:IncludeScopes": "True",
+ "Logging:Debug:FormatterOptions:SingleLine": "True",
+ "Logging:Debug:FormatterOptions:TimestampFormat": "HH:mm:ss ",
+ "Logging:Debug:FormatterOptions:UseUtcTimestamp": "True",
+ "Logging:Debug:LogLevel:Default": "Warning",
+ "Logging:Debug:LogLevel:Microsoft": "Information",
+ "Logging:Debug:LogLevel:Microsoft.Hosting.Lifetime": "Debug",
+ "Logging:EventLog:LogLevel:Default": "Warning",
+ "Logging:EventSource:LogLevel:Default": "Warning",
+ "Logging:LogLevel:Default": "Debug",
+ "Logging:LogLevel:Microsoft": "Information",
+ "Logging:LogLevel:Microsoft.Hosting.Lifetime": "Debug",
+ "MetadataSettings": {
+ "ForceMetadataLastWriteTimeToCreationTime": false,
+ "IgnoreRulesKeyWords": [
+ "Collage",
+ "Corrupt",
+ "Indecent"
+ ],
+ "IntMinValueLength": 11,
+ "Offset": 9876543,
+ "OffsetX": -1,
+ "OffsetXX": 1000000,
+ "OffsetXXX": 1048800,
+ "OffsetXXXX": 1054050,
+ "OffsetXXXXX": 1055000,
+ "PropertiesChangedForMetadata": false
+ },
+ "MetrologyConfiguration": {
+ "DeleteOlderThanWeeks": 16,
+ "DirectoriesBack": 2,
+ "HardcodedValues": [
+ "BIORAD2",
+ "BIORAD3",
+ "BIORAD4",
+ "BIORAD5",
+ "CDE2",
+ "CDE3",
+ "CDE4",
+ "CDE5",
+ "CDE6",
+ "HGCV1",
+ "HGCV2",
+ "HGCV3",
+ "TENCOR1",
+ "TENCOR2",
+ "TENCOR3",
+ "SP101",
+ "SPV01",
+ "SRP",
+ "WC6Inch",
+ "WC8Inch",
+ "Bio-Rad"
+ ],
+ "SourceDirectories": [
+ "\\\\messa01ec.infineon.com\\apps\\Metrology\\Run Data Repository\\MET08ANLYSDIFAAST230\\Source\\MET08ANLYSDIFAAST230",
+ "\\\\messa01ec.infineon.com\\apps\\Metrology\\Run Data Repository\\MET08DDUPSFS6420\\Source\\MET08DDUPSFS6420",
+ "\\\\messa01ec.infineon.com\\apps\\Metrology\\Run Data Repository\\MET08DDUPSP1TBI\\Source\\MET08DDUPSP1TBI",
+ "\\\\messa01ec.infineon.com\\apps\\Metrology\\Run Data Repository\\MET08RESIHGCV\\Source\\MET08RESIHGCV",
+ "\\\\messa01ec.infineon.com\\apps\\Metrology\\Run Data Repository\\MET08RESIMAPCDE\\Source\\MET08RESIMAPCDE",
+ "\\\\messa01ec.infineon.com\\apps\\Metrology\\Run Data Repository\\MET08RESISRP2100\\Source\\MET08RESISRP2100",
+ "\\\\messa01ec.infineon.com\\apps\\Metrology\\Run Data Repository\\MET08THFTIRQS408M\\Source\\MET08THFTIRQS408M",
+ "\\\\messa01ec.infineon.com\\apps\\Metrology\\Run Data Repository\\MET08THFTIRSTRATUS\\Source\\MET08THFTIRSTRATUS"
+ ]
+ },
+ "NationalInstrumentsConfiguration": {
+ "CustomScaleName": "",
+ "DifferentialPhysicalChannels": [
+ "dev1/ai0",
+ "dev1/ai1",
+ "dev1/ai2",
+ "dev1/ai3"
+ ],
+ "MaximumValue": 5,
+ "MiniumValue": 0,
+ "ReadTimeout": 1,
+ "ReferencedSingleEndedPhysicalChannels": [
+ "dev1/ai4",
+ "dev1/ai5",
+ "dev1/ai6",
+ "dev1/ai7"
+ ]
+ },
+ "NugetConfiguration": {
+ "Destination": "L:/File-Watcher/Helper/Nuget/Packages",
+ "KeyFileExtension": ".nuspec",
+ "KeyFileExtensionB": "icon",
+ "KeyFileExtensionC": "readme",
+ "RenameToLower": true,
+ "SearchPattern": "*.nupkg",
+ "Source": "C:/Users/phares/.nuget/packages"
+ },
+ "ResultSettings": {
+ "DateGroup": "0b793904",
+ "EpicYear": 2014,
+ "IgnoreExtensions": [
+ ".gif",
+ ".ffs_db",
+ ".json",
+ ".lnk",
+ ".nef",
+ ".pdf"
+ ],
+ "ModelName": "Hog",
+ "NumberOfJitters": 0,
+ "NumberOfTimesToUpsample": 0,
+ "PredictorModelName": "Large",
+ "ResultAllInOneSubdirectoryLength": 2,
+ "ResultCollection": "[]",
+ "ResultContent": "()",
+ "ResultSingleton": "{}",
+ "RootDirectory": "J:/5-Other-Small/Proxmox/iCloud Photos 2025",
+ "ValidImageFormatExtensions": [
+ ".bmp",
+ ".gif",
+ ".heic",
+ ".jpeg",
+ ".jpg",
+ ".lsv",
+ ".png",
+ ".tiff",
+ ".tif",
+ ".webp"
+ ],
+ "ValidVideoFormatExtensions": [
+ ".3gp",
+ ".avi",
+ ".dvr-ms",
+ ".m4v",
+ ".mkv",
+ ".mov",
+ ".mp4",
+ ".ts"
+ ]
+ },
+ "SeleniumConfiguration": {
+ "DestinationDirectory": "D:/Tmp",
+ "EdgeOptions": [
+ "--no-sandbox",
+ "--start-maximized",
+ "--profile-directory=Default",
+ "--browser-version 135.0.3179.85"
+ ],
+ "EdgeOptionsX": [
+ "--no-sandbox",
+ "--disable-gpu",
+ "--headless=new",
+ "--start-maximized",
+ "--profile-directory=Default",
+ "--browser-version 135.0.3179.85"
+ ],
+ "UniformResourceLocator": "https://ourrescue.org/",
+ "UniformResourceLocatorX": "https://messa020ec.infineon.com:50205/ProductionReport/DailyReport"
+ },
+ "SerialConfiguration": {
+ "Destination": "L:/DevOps/MESA_FI/File-Watcher/.vscode",
+ "GhostPCLFileName": "gpcl6win64.exe",
+ "LincPDFCFileName": "LincPDFC.exe",
+ "PortName": "COM37"
+ },
+ "SignalRConfiguration": {
+ "Destination": "D:/Tmp",
+ "WatchFile": "DataBiorad.txt"
+ },
+ "StratusConfiguration": {
+ "Days": 4,
+ "Destination": "D:/Tmp",
+ "DestinationX": "\\\\10.95.1.211\\Share\\RawData\\BIORAD4",
+ "FileDelimiterPattern": "Mean [0-9.]*, STDD [0-9.]*",
+ "WatchFile": "DataBiorad.txt"
+ },
+ "SyncConfiguration": {
+ "UniformResourceLocator": "http://+:8072"
+ },
+ "TransmissionControlProtocolConfiguration": {
+ "Destination": "L:/DevOps/MESA_FI/File-Watcher/.vscode",
+ "GhostPCLFileName": "gpcl6win64.exe",
+ "IPAddress": "tibrvd.mes.infineon.com",
+ "IPAddresses": {
+ "10.95.154.19": [
+ "EPP-WEST",
+ "6INCH",
+ "WC6INCH3"
+ ],
+ "10.95.154.43": [
+ "FQA",
+ "6INCH",
+ "WC6INCH1"
+ ],
+ "10.95.154.44": [
+ "MU",
+ "6INCH",
+ "WC6INCH2"
+ ],
+ "10.95.154.46": [
+ "EPP-EAST",
+ "6INCH",
+ "WC6INCH4"
+ ],
+ "10.95.154.47": [
+ "FQA",
+ "8INCH",
+ "WC8INCH1"
+ ],
+ "10.95.154.48": [
+ "MU",
+ "8INCH",
+ "WC8INCH2"
+ ],
+ "10.95.154.49": [
+ "EPP-WEST",
+ "8INCH",
+ "WC8INCH3"
+ ]
+ },
+ "IPAddressX": "COM37",
+ "Port": 8804,
+ "PortX": 950,
+ "Server": false
+ },
+ "URLs": "http://localhost:5003;",
+ "WaferCounterConfiguration": {
+ "Destination": "\\\\mestsa01ec.infineon.com\\apps\\WaferCounter\\V203",
+ "MatchPath": false
+ }
+}
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/core/.vscode/format-report.json b/National-Instruments-DAQ-MX/core/.vscode/format-report.json
new file mode 100644
index 0000000..0637a08
--- /dev/null
+++ b/National-Instruments-DAQ-MX/core/.vscode/format-report.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/core/.vscode/settings.json b/National-Instruments-DAQ-MX/core/.vscode/settings.json
new file mode 100644
index 0000000..3599b51
--- /dev/null
+++ b/National-Instruments-DAQ-MX/core/.vscode/settings.json
@@ -0,0 +1,5 @@
+{
+ "[markdown]": {
+ "editor.wordWrap": "off"
+ }
+}
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/core/.vscode/tasks.json b/National-Instruments-DAQ-MX/core/.vscode/tasks.json
new file mode 100644
index 0000000..3da4f80
--- /dev/null
+++ b/National-Instruments-DAQ-MX/core/.vscode/tasks.json
@@ -0,0 +1,35 @@
+{
+ "version": "2.0.0",
+ "tasks": [
+ {
+ "label": "Build",
+ "command": "dotnet",
+ "type": "process",
+ "args": [
+ "build",
+ "--configuration",
+ "Release",
+ "--runtime",
+ "win-x64"
+ ],
+ "problemMatcher": "$msCompile"
+ },
+ {
+ "label": "Run",
+ "command": "bin/Release/net48/win-x64/National-Instruments-DAQ-MX.exe",
+ "dependsOn": "Build",
+ "type": "process",
+ "args": [
+ "ai0",
+ "ai1",
+ "ai2",
+ "ai3",
+ "ai4",
+ "ai5",
+ "ai6",
+ "ai7"
+ ],
+ "problemMatcher": "$msCompile"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/core/National-Instruments-DAQ-MX.csproj b/National-Instruments-DAQ-MX/core/National-Instruments-DAQ-MX.csproj
new file mode 100644
index 0000000..f1e0755
--- /dev/null
+++ b/National-Instruments-DAQ-MX/core/National-Instruments-DAQ-MX.csproj
@@ -0,0 +1,43 @@
+
+
+ 10.0
+ Exe
+ win-x86
+ net48
+ 4.8.0.2
+
+
+ $([System.Math]::Floor($([MSBuild]::Divide($([MSBuild]::Subtract($([System.DateTimeOffset]::UtcNow.ToUnixTimeSeconds()), 1555545600)), 3600))))
+
+
+ Mike Phares
+ 12.0
+ true
+ README.md
+ snupkg
+ true
+ Infineon Technologies Americas Corp.
+ MIT
+ Infineon.Mesa.National.Instruments.DAQ.MX
+ 4.8.0.$([System.Math]::Floor($([MSBuild]::Divide($([MSBuild]::Subtract($([System.DateTimeOffset]::UtcNow.ToUnixTimeSeconds()), 1555545600)), 3600))))
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ False
+ .vscode\NationalInstruments.DAQmx.dll
+
+
+
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/core/Program.cs b/National-Instruments-DAQ-MX/core/Program.cs
new file mode 100644
index 0000000..b0980f3
--- /dev/null
+++ b/National-Instruments-DAQ-MX/core/Program.cs
@@ -0,0 +1,101 @@
+using NationalInstruments.DAQmx;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace National_Instruments_DAQ_MX;
+
+public class Program {
+
+ public static void Secondary(List args) {
+ try {
+ List results = [];
+ Task task;
+ double value;
+ AIChannel aiChannel;
+ AnalogSingleChannelReader analogSingleChannelReader;
+ if (args.Contains("ai0")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai0", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai0: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai1")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai1", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai1: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai2")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai2", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai2: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai3")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai3", "myAIChannel", AITerminalConfiguration.Differential, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai3: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai4")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai4", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai4: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai5")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai5", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai5: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai6")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai6", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai6: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ if (args.Contains("ai7")) {
+ task = new();
+ aiChannel = task.AIChannels.CreateVoltageChannel("dev1/ai7", "myAIChannel", AITerminalConfiguration.Rse, 0, 5, AIVoltageUnits.Volts);
+ analogSingleChannelReader = new(task.Stream);
+ value = analogSingleChannelReader.ReadSingleSample();
+ results.Add($"ai7: {value}");
+ aiChannel.Dispose();
+ task.Dispose();
+ }
+ Console.WriteLine(string.Join(Environment.NewLine, results));
+ } catch (Exception ex) {
+ Console.WriteLine(string.Concat(ex.Message, Environment.NewLine, ex.StackTrace));
+ throw;
+ }
+ }
+
+ public static void Main(string[] args) {
+ if (args is not null) {
+ Secondary(args.ToList());
+ }
+ }
+}
diff --git a/National-Instruments-DAQ-MX/core/global.json b/National-Instruments-DAQ-MX/core/global.json
new file mode 100644
index 0000000..ce26ebb
--- /dev/null
+++ b/National-Instruments-DAQ-MX/core/global.json
@@ -0,0 +1,6 @@
+{
+ "sdk": {
+ "version": "8.0.118"
+ }
+ }
+
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/global.json b/National-Instruments-DAQ-MX/global.json
new file mode 100644
index 0000000..ce26ebb
--- /dev/null
+++ b/National-Instruments-DAQ-MX/global.json
@@ -0,0 +1,6 @@
+{
+ "sdk": {
+ "version": "8.0.118"
+ }
+ }
+
\ No newline at end of file
diff --git a/National-Instruments-DAQ-MX/package.json b/National-Instruments-DAQ-MX/package.json
new file mode 100644
index 0000000..47d29e5
--- /dev/null
+++ b/National-Instruments-DAQ-MX/package.json
@@ -0,0 +1,14 @@
+{
+ "scripts": {
+ "Alpha": "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
+ "nuget-clear": "dotnet nuget locals all --clear",
+ "build": "dotnet build --runtime win-x64 --self-contained",
+ "build-Package-Management": "dotnet build --runtime win-x64 --self-contained --source https://packagemanagement.eu.infineon.com:4430/api/v2/",
+ "build-nuget-And-Package-Management": "dotnet build --runtime win-x64 --self-contained --source https://api.nuget.org/v3/index.json --source https://packagemanagement.eu.infineon.com:4430/api/v2/",
+ "build-All-Sources": "dotnet build --runtime win-x64 --self-contained --source https://api.nuget.org/v3/index.json --source https://packagemanagement.eu.infineon.com:4430/api/v2/ --source https://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json --source http://192.168.0.73:5002/v3/index.json",
+ "dotnet-format": "dotnet format --report .vscode --verbosity detailed --severity warn",
+ "MSBuild": "\"C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe\" /ConsoleLoggerParameters:PerformanceSummary;ErrorsOnly; /DetailedSummary /m /property:Configuration=Debug;TargetFrameworkVersion=v4.8 /restore:True /target:Build PDF-Text-Stripper.sln",
+ "pull": "git pull",
+ "garbage-collect": "git gc"
+ }
+}
\ No newline at end of file
diff --git a/TC01App/TC01App/.vscode/launch.json b/TC01App/TC01App/.vscode/launch.json
new file mode 100644
index 0000000..7534880
--- /dev/null
+++ b/TC01App/TC01App/.vscode/launch.json
@@ -0,0 +1,24 @@
+{
+ // Use IntelliSense to learn about possible attributes.
+ // Hover to view descriptions of existing attributes.
+ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
+ "version": "0.2.0",
+ "configurations": [
+ {
+ "name": ".NET Core Launch (console)",
+ "type": "coreclr",
+ "request": "launch",
+ "preLaunchTask": "build",
+ "program": "${workspaceFolder}/bin/Debug/net8.0/TC01App.dll",
+ "args": [],
+ "cwd": "${workspaceFolder}",
+ "console": "externalTerminal",
+ "stopAtEntry": false
+ },
+ {
+ "name": ".NET Core Attach",
+ "type": "coreclr",
+ "request": "attach"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/TC01App/TC01App/.vscode/mklink.md b/TC01App/TC01App/.vscode/mklink.md
new file mode 100644
index 0000000..cab493e
--- /dev/null
+++ b/TC01App/TC01App/.vscode/mklink.md
@@ -0,0 +1,5 @@
+# mklink
+
+```bash
+mklink /J "T:\MET08RESIMAPCDE\06_SourceCode\MET08RESIMAPCDE\Adaptation\.kanbn" "D:\5-Other-Small\Kanban\MET08RESIMAPCDE"
+```
diff --git a/TC01App/TC01App/.vscode/settings.json b/TC01App/TC01App/.vscode/settings.json
new file mode 100644
index 0000000..3599b51
--- /dev/null
+++ b/TC01App/TC01App/.vscode/settings.json
@@ -0,0 +1,5 @@
+{
+ "[markdown]": {
+ "editor.wordWrap": "off"
+ }
+}
\ No newline at end of file
diff --git a/TC01App/TC01App/.vscode/tasks.json b/TC01App/TC01App/.vscode/tasks.json
new file mode 100644
index 0000000..c89cd5f
--- /dev/null
+++ b/TC01App/TC01App/.vscode/tasks.json
@@ -0,0 +1,20 @@
+{
+ "version": "2.0.0",
+ "tasks": [
+ {
+ "label": "MSBuild for TC01App",
+ "command": "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/MSBuild/Current/Bin/MSBuild.exe",
+ "type": "process",
+ "args": [
+ "/target:Build",
+ "/restore:True",
+ "/detailedsummary",
+ "/p:Configuration=Release;TargetFrameworkVersion=v4.8",
+ "/consoleloggerparameters:PerformanceSummary;ErrorsOnly;",
+ "/p:RestoreSources=https://artifactory.intra.infineon.com/artifactory/api/nuget/ngt-fi-package-main-vir/%3Bhttps://packagemanagement.eu.infineon.com:4430/api/v2/%3Bhttps://tfs.intra.infineon.com/tfs/ManufacturingIT/_packaging/eaf/nuget/v3/index.json%3Bhttps://tfs.intra.infineon.com/tfs/FactoryIntegration/_packaging/EAF%40Local/nuget/v3/index.json%3Bhttps://api.nuget.org/v3/index.json",
+ "TC01App.csproj"
+ ],
+ "problemMatcher": "$msCompile"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/TC01App/TC01App/TC01App.csproj b/TC01App/TC01App/TC01App.csproj
index cd6a9ac..6079c80 100644
--- a/TC01App/TC01App/TC01App.csproj
+++ b/TC01App/TC01App/TC01App.csproj
@@ -35,12 +35,12 @@
False
- ..\..\..\..\..\Program Files (x86)\National Instruments\Measurement Studio\DotNET\v4.0\AnyCPU\NationalInstruments.Common 19.0.40\NationalInstruments.Common.dll
+ C:\Program Files (x86)\National Instruments\Measurement Studio\DotNET\v4.0\AnyCPU\NationalInstruments.Common 19.0.40\NationalInstruments.Common.dll
False
False
- ..\..\..\..\..\Program Files (x86)\National Instruments\MeasurementStudioVS2010\DotNET\Assemblies\Current\NationalInstruments.DAQmx.dll
+ C:\Program Files (x86)\National Instruments\MeasurementStudioVS2010\DotNET\Assemblies\Current\NationalInstruments.DAQmx.dll