From 5f6abf300e3816391858c0f0aa34e1633fa6a5b7 Mon Sep 17 00:00:00 2001 From: Luis Stanglmeier Date: Thu, 23 Jun 2022 13:44:39 +0200 Subject: [PATCH] created project with cmake --- .gitignore | 1 + .../CMake.1.6.0/AutoBuild/BuildAllLinux.sh | 0 .../CMake.1.6.0/AutoBuild/BuildAllVS2017.cmd | 0 .../AutoBuild/BuildAllVS2017INtime.cmd | 0 .../AutoBuild/BuildLinuxProject.sh | 0 .../AutoBuild/BuildVS2017INtimeProject.cmd | 0 .../AutoBuild/BuildVS2017Project.cmd | 0 .../CMake.1.6.0/AutoBuild/RunUnitTest.sh | 0 .../CMake.1.6.0/CMake.1.6.0.nupkg | Bin .../CMake.1.6.0/CMakeCore.cmake | 0 .../CMake.1.6.0/CMakeMacros.cmake | 0 .../CMake.1.6.0/CMakeSettings.cmake | 0 .../CMake.1.6.0/Includes/TsepVersion.h | 0 .../TsepNativeRecommendedRules.ruleset | 0 .../RuleSets/TsepPropertySheet.props | 0 .../Templates/CMake.nuspec.Template | 0 .../CMakeLists.Console.Template.cmake | 0 .../Templates/CMakeLists.Dll.Template.cmake | 0 .../Templates/CMakeLists.Gui.Template.cmake | 0 .../Templates/CMakeLists.Lib.Template.cmake | 0 .../Templates/CMakeLists.Nexus.Template.cmake | 0 .../CMakeLists.Project.Template.cmake | 0 .../CMakeLists.UnitTests.Template.cmake | 0 .../CMakeLists.VS_CodeAnalyzer.Template.cmake | 0 .../LinuxGenerateProject.Template.sh | 0 .../Templates/ProjektName.Exports.Template.h | 0 .../Templates/Translation.Template.ts | 0 .../Templates/Translations.Template.qrc | 0 .../Templates/VSGenerateProject.cmd.Template | 0 .../Versions/Win32/DefaultAppVersion.rc | 0 .../Versions/Win32/DefaultDllVersion.rc | 0 .../CMake.1.6.0/Versions/Win32/TSEP.ico | Bin LSFramework.sln | 31 ---- LSFramework/LSFramework.vcxproj | 170 ------------------ LSFramework/LSFramework.vcxproj.user | 4 - LSFramework/LSVector.h | 92 ---------- Software/CMakeLists.txt | 57 ++++++ Software/Framework/CMakeLists.txt | 109 +++++++++++ .../Framework/src}/CJsonArray.h | 0 .../Framework/src}/CJsonDocument.h | 0 .../Framework/src}/CJsonNode.h | 0 .../Framework/src}/CJsonObject.h | 0 Software/Framework/src/LSFramework.Exports.h | 47 +++++ .../Framework/src}/LSList.h | 4 +- .../Framework/src}/LSListItem.h | 0 .../Framework/src}/LSMacros.h | 0 .../Framework/src}/LSString.cpp | 12 +- .../Framework/src}/LSString.h | 6 +- Software/Framework/src/LSVector.h | 131 ++++++++++++++ .../Framework/src}/Timer.cpp | 0 .../Framework/src}/Timer.h | 6 +- .../Framework/src}/main.cpp | 0 Software/Project.conf.cmake | 50 ++++++ .../VSGenerateProject.cmd | 2 +- 54 files changed, 412 insertions(+), 310 deletions(-) create mode 100644 .gitignore rename {LSFramework/CMake => CMake}/CMake.1.6.0/AutoBuild/BuildAllLinux.sh (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/AutoBuild/BuildAllVS2017.cmd (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/AutoBuild/BuildAllVS2017INtime.cmd (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/AutoBuild/BuildLinuxProject.sh (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/AutoBuild/BuildVS2017INtimeProject.cmd (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/AutoBuild/BuildVS2017Project.cmd (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/AutoBuild/RunUnitTest.sh (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/CMake.1.6.0.nupkg (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/CMakeCore.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/CMakeMacros.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/CMakeSettings.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Includes/TsepVersion.h (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/RuleSets/TsepNativeRecommendedRules.ruleset (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/RuleSets/TsepPropertySheet.props (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/CMake.nuspec.Template (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/CMakeLists.Console.Template.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/CMakeLists.Dll.Template.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/CMakeLists.Gui.Template.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/CMakeLists.Lib.Template.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/CMakeLists.Nexus.Template.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/CMakeLists.Project.Template.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/CMakeLists.UnitTests.Template.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/CMakeLists.VS_CodeAnalyzer.Template.cmake (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/LinuxGenerateProject.Template.sh (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/ProjektName.Exports.Template.h (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/Translation.Template.ts (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/Translations.Template.qrc (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Templates/VSGenerateProject.cmd.Template (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Versions/Win32/DefaultAppVersion.rc (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Versions/Win32/DefaultDllVersion.rc (100%) rename {LSFramework/CMake => CMake}/CMake.1.6.0/Versions/Win32/TSEP.ico (100%) delete mode 100644 LSFramework.sln delete mode 100644 LSFramework/LSFramework.vcxproj delete mode 100644 LSFramework/LSFramework.vcxproj.user delete mode 100644 LSFramework/LSVector.h create mode 100644 Software/CMakeLists.txt create mode 100644 Software/Framework/CMakeLists.txt rename {LSFramework => Software/Framework/src}/CJsonArray.h (100%) rename {LSFramework => Software/Framework/src}/CJsonDocument.h (100%) rename {LSFramework => Software/Framework/src}/CJsonNode.h (100%) rename {LSFramework => Software/Framework/src}/CJsonObject.h (100%) create mode 100644 Software/Framework/src/LSFramework.Exports.h rename {LSFramework => Software/Framework/src}/LSList.h (96%) rename {LSFramework => Software/Framework/src}/LSListItem.h (100%) rename {LSFramework => Software/Framework/src}/LSMacros.h (100%) rename {LSFramework => Software/Framework/src}/LSString.cpp (94%) rename {LSFramework => Software/Framework/src}/LSString.h (98%) create mode 100644 Software/Framework/src/LSVector.h rename {LSFramework => Software/Framework/src}/Timer.cpp (100%) rename {LSFramework => Software/Framework/src}/Timer.h (78%) rename {LSFramework => Software/Framework/src}/main.cpp (100%) create mode 100644 Software/Project.conf.cmake rename {LSFramework => Software}/VSGenerateProject.cmd (92%) diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8666d51 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/BuildResults diff --git a/LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildAllLinux.sh b/CMake/CMake.1.6.0/AutoBuild/BuildAllLinux.sh similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildAllLinux.sh rename to CMake/CMake.1.6.0/AutoBuild/BuildAllLinux.sh diff --git a/LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildAllVS2017.cmd b/CMake/CMake.1.6.0/AutoBuild/BuildAllVS2017.cmd similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildAllVS2017.cmd rename to CMake/CMake.1.6.0/AutoBuild/BuildAllVS2017.cmd diff --git a/LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildAllVS2017INtime.cmd b/CMake/CMake.1.6.0/AutoBuild/BuildAllVS2017INtime.cmd similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildAllVS2017INtime.cmd rename to CMake/CMake.1.6.0/AutoBuild/BuildAllVS2017INtime.cmd diff --git a/LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildLinuxProject.sh b/CMake/CMake.1.6.0/AutoBuild/BuildLinuxProject.sh similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildLinuxProject.sh rename to CMake/CMake.1.6.0/AutoBuild/BuildLinuxProject.sh diff --git a/LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildVS2017INtimeProject.cmd b/CMake/CMake.1.6.0/AutoBuild/BuildVS2017INtimeProject.cmd similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildVS2017INtimeProject.cmd rename to CMake/CMake.1.6.0/AutoBuild/BuildVS2017INtimeProject.cmd diff --git a/LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildVS2017Project.cmd b/CMake/CMake.1.6.0/AutoBuild/BuildVS2017Project.cmd similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/AutoBuild/BuildVS2017Project.cmd rename to CMake/CMake.1.6.0/AutoBuild/BuildVS2017Project.cmd diff --git a/LSFramework/CMake/CMake.1.6.0/AutoBuild/RunUnitTest.sh b/CMake/CMake.1.6.0/AutoBuild/RunUnitTest.sh similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/AutoBuild/RunUnitTest.sh rename to CMake/CMake.1.6.0/AutoBuild/RunUnitTest.sh diff --git a/LSFramework/CMake/CMake.1.6.0/CMake.1.6.0.nupkg b/CMake/CMake.1.6.0/CMake.1.6.0.nupkg similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/CMake.1.6.0.nupkg rename to CMake/CMake.1.6.0/CMake.1.6.0.nupkg diff --git a/LSFramework/CMake/CMake.1.6.0/CMakeCore.cmake b/CMake/CMake.1.6.0/CMakeCore.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/CMakeCore.cmake rename to CMake/CMake.1.6.0/CMakeCore.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/CMakeMacros.cmake b/CMake/CMake.1.6.0/CMakeMacros.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/CMakeMacros.cmake rename to CMake/CMake.1.6.0/CMakeMacros.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/CMakeSettings.cmake b/CMake/CMake.1.6.0/CMakeSettings.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/CMakeSettings.cmake rename to CMake/CMake.1.6.0/CMakeSettings.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/Includes/TsepVersion.h b/CMake/CMake.1.6.0/Includes/TsepVersion.h similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Includes/TsepVersion.h rename to CMake/CMake.1.6.0/Includes/TsepVersion.h diff --git a/LSFramework/CMake/CMake.1.6.0/RuleSets/TsepNativeRecommendedRules.ruleset b/CMake/CMake.1.6.0/RuleSets/TsepNativeRecommendedRules.ruleset similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/RuleSets/TsepNativeRecommendedRules.ruleset rename to CMake/CMake.1.6.0/RuleSets/TsepNativeRecommendedRules.ruleset diff --git a/LSFramework/CMake/CMake.1.6.0/RuleSets/TsepPropertySheet.props b/CMake/CMake.1.6.0/RuleSets/TsepPropertySheet.props similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/RuleSets/TsepPropertySheet.props rename to CMake/CMake.1.6.0/RuleSets/TsepPropertySheet.props diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/CMake.nuspec.Template b/CMake/CMake.1.6.0/Templates/CMake.nuspec.Template similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/CMake.nuspec.Template rename to CMake/CMake.1.6.0/Templates/CMake.nuspec.Template diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Console.Template.cmake b/CMake/CMake.1.6.0/Templates/CMakeLists.Console.Template.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Console.Template.cmake rename to CMake/CMake.1.6.0/Templates/CMakeLists.Console.Template.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Dll.Template.cmake b/CMake/CMake.1.6.0/Templates/CMakeLists.Dll.Template.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Dll.Template.cmake rename to CMake/CMake.1.6.0/Templates/CMakeLists.Dll.Template.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Gui.Template.cmake b/CMake/CMake.1.6.0/Templates/CMakeLists.Gui.Template.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Gui.Template.cmake rename to CMake/CMake.1.6.0/Templates/CMakeLists.Gui.Template.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Lib.Template.cmake b/CMake/CMake.1.6.0/Templates/CMakeLists.Lib.Template.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Lib.Template.cmake rename to CMake/CMake.1.6.0/Templates/CMakeLists.Lib.Template.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Nexus.Template.cmake b/CMake/CMake.1.6.0/Templates/CMakeLists.Nexus.Template.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Nexus.Template.cmake rename to CMake/CMake.1.6.0/Templates/CMakeLists.Nexus.Template.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Project.Template.cmake b/CMake/CMake.1.6.0/Templates/CMakeLists.Project.Template.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.Project.Template.cmake rename to CMake/CMake.1.6.0/Templates/CMakeLists.Project.Template.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.UnitTests.Template.cmake b/CMake/CMake.1.6.0/Templates/CMakeLists.UnitTests.Template.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.UnitTests.Template.cmake rename to CMake/CMake.1.6.0/Templates/CMakeLists.UnitTests.Template.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.VS_CodeAnalyzer.Template.cmake b/CMake/CMake.1.6.0/Templates/CMakeLists.VS_CodeAnalyzer.Template.cmake similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/CMakeLists.VS_CodeAnalyzer.Template.cmake rename to CMake/CMake.1.6.0/Templates/CMakeLists.VS_CodeAnalyzer.Template.cmake diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/LinuxGenerateProject.Template.sh b/CMake/CMake.1.6.0/Templates/LinuxGenerateProject.Template.sh similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/LinuxGenerateProject.Template.sh rename to CMake/CMake.1.6.0/Templates/LinuxGenerateProject.Template.sh diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/ProjektName.Exports.Template.h b/CMake/CMake.1.6.0/Templates/ProjektName.Exports.Template.h similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/ProjektName.Exports.Template.h rename to CMake/CMake.1.6.0/Templates/ProjektName.Exports.Template.h diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/Translation.Template.ts b/CMake/CMake.1.6.0/Templates/Translation.Template.ts similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/Translation.Template.ts rename to CMake/CMake.1.6.0/Templates/Translation.Template.ts diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/Translations.Template.qrc b/CMake/CMake.1.6.0/Templates/Translations.Template.qrc similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/Translations.Template.qrc rename to CMake/CMake.1.6.0/Templates/Translations.Template.qrc diff --git a/LSFramework/CMake/CMake.1.6.0/Templates/VSGenerateProject.cmd.Template b/CMake/CMake.1.6.0/Templates/VSGenerateProject.cmd.Template similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Templates/VSGenerateProject.cmd.Template rename to CMake/CMake.1.6.0/Templates/VSGenerateProject.cmd.Template diff --git a/LSFramework/CMake/CMake.1.6.0/Versions/Win32/DefaultAppVersion.rc b/CMake/CMake.1.6.0/Versions/Win32/DefaultAppVersion.rc similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Versions/Win32/DefaultAppVersion.rc rename to CMake/CMake.1.6.0/Versions/Win32/DefaultAppVersion.rc diff --git a/LSFramework/CMake/CMake.1.6.0/Versions/Win32/DefaultDllVersion.rc b/CMake/CMake.1.6.0/Versions/Win32/DefaultDllVersion.rc similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Versions/Win32/DefaultDllVersion.rc rename to CMake/CMake.1.6.0/Versions/Win32/DefaultDllVersion.rc diff --git a/LSFramework/CMake/CMake.1.6.0/Versions/Win32/TSEP.ico b/CMake/CMake.1.6.0/Versions/Win32/TSEP.ico similarity index 100% rename from LSFramework/CMake/CMake.1.6.0/Versions/Win32/TSEP.ico rename to CMake/CMake.1.6.0/Versions/Win32/TSEP.ico diff --git a/LSFramework.sln b/LSFramework.sln deleted file mode 100644 index 9d54065..0000000 --- a/LSFramework.sln +++ /dev/null @@ -1,31 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.28307.1778 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LSFramework", "LSFramework\LSFramework.vcxproj", "{5FE98B77-3558-4384-BDAF-82AC8B69B752}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|x64 = Release|x64 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {5FE98B77-3558-4384-BDAF-82AC8B69B752}.Debug|x64.ActiveCfg = Debug|x64 - {5FE98B77-3558-4384-BDAF-82AC8B69B752}.Debug|x64.Build.0 = Debug|x64 - {5FE98B77-3558-4384-BDAF-82AC8B69B752}.Debug|x86.ActiveCfg = Debug|Win32 - {5FE98B77-3558-4384-BDAF-82AC8B69B752}.Debug|x86.Build.0 = Debug|Win32 - {5FE98B77-3558-4384-BDAF-82AC8B69B752}.Release|x64.ActiveCfg = Release|x64 - {5FE98B77-3558-4384-BDAF-82AC8B69B752}.Release|x64.Build.0 = Release|x64 - {5FE98B77-3558-4384-BDAF-82AC8B69B752}.Release|x86.ActiveCfg = Release|Win32 - {5FE98B77-3558-4384-BDAF-82AC8B69B752}.Release|x86.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {CDE2A97D-BF32-4748-9A47-B8D0E10D3A9D} - EndGlobalSection -EndGlobal diff --git a/LSFramework/LSFramework.vcxproj b/LSFramework/LSFramework.vcxproj deleted file mode 100644 index 70660bc..0000000 --- a/LSFramework/LSFramework.vcxproj +++ /dev/null @@ -1,170 +0,0 @@ - - - - - Debug - Win32 - - - Release - Win32 - - - Debug - x64 - - - Release - x64 - - - - 15.0 - {5FE98B77-3558-4384-BDAF-82AC8B69B752} - Win32Proj - String - 10.0 - LSFramework - - - - Application - true - v142 - Unicode - - - Application - false - v142 - true - Unicode - - - Application - true - v142 - Unicode - - - Application - false - v142 - true - Unicode - - - - - - - - - - - - - - - - - - - - - true - - - true - - - false - - - false - - - - - - Level3 - Disabled - true - WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) - true - - - Console - true - - - - - - - Level3 - Disabled - true - _DEBUG;_CONSOLE;%(PreprocessorDefinitions) - true - - - Console - true - - - - - - - Level3 - MaxSpeed - true - true - true - WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - true - - - Console - true - true - true - - - - - - - Level3 - MaxSpeed - true - true - true - NDEBUG;_CONSOLE;%(PreprocessorDefinitions) - true - - - Console - true - true - true - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/LSFramework/LSFramework.vcxproj.user b/LSFramework/LSFramework.vcxproj.user deleted file mode 100644 index 88a5509..0000000 --- a/LSFramework/LSFramework.vcxproj.user +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/LSFramework/LSVector.h b/LSFramework/LSVector.h deleted file mode 100644 index 31a297a..0000000 --- a/LSFramework/LSVector.h +++ /dev/null @@ -1,92 +0,0 @@ -#pragma once -#include -#include "LSMacros.h" - -template - -class LSVector -{ -public: - LSVector(size_t zSize = 1) - { - m_pData = new T[zSize]; - m_zCapacity = zSize; - } - - ~LSVector() - { - - } - - T& PushBack(T obj) - { - } - - T& PopBack() - { - } - - T& Insert(const size_t zPos) - { - - } - - T& Remove(const size_t zPos) - { - - } - - T& At(const size_t zPos) - { - return m_pData[zPos]; - } - - void Reserve(const size_t zSize) - { - T* pOld = m_pData; - m_pData = new T[zSize]; - - memmove_s(m_pData, zSize, pOld, m_zSize); - m_zSize = zSize; - m_zCapacity = zSize; - - DELETE_ARRAY(pOld); - } - - void Clear() - { - DELETE_ARRAY(m_pData) - } - - size_t Size() const - { - return m_zSize; - } - - size_t Capacity() const - { - return m_zCapacity; - } - - T* Data() const - { - return m_pData; - } - - LSVector& operator=(const LSVector oRhs) - { - - } - - LSVector& operator[](const size_t _Pos) - { - - } - -private: - - std::vector s; - T* m_pData = nullptr; - size_t m_zSize = 0; - size_t m_zCapacity = 0; -}; \ No newline at end of file diff --git a/Software/CMakeLists.txt b/Software/CMakeLists.txt new file mode 100644 index 0000000..88b3ce3 --- /dev/null +++ b/Software/CMakeLists.txt @@ -0,0 +1,57 @@ +########################################################################################### +# +# (c) Technical Software Engineering Plazotta 2021 +# +# CMAKE project main file / LSFramework +# +#----------------------------------------------------------------------------------------- +# Define project specific requirements +# +# Minimum CMAKE version for this project +# +cmake_minimum_required (VERSION 3.23.0) +# +# Name of the project +set(MAIN_PROJECT_NAME LSFramework) +project(${MAIN_PROJECT_NAME}) +# +#----------------------------------------------------------------------------------------- +# Include project specific definitions -> Generated file +# +include(Project.conf.cmake) +# +#----------------------------------------------------------------------------------------- +# Include cmake settings and macros +# +include(${TSEP_PROJECT_CMAKE}/CMakeMacros.cmake) +include(${TSEP_PROJECT_CMAKE}/CMakeSettings.cmake) +# +#----------------------------------------------------------------------------------------- +# google test framework -> enable if used +# +#TSEP_USE_GOOGLE_TESTING() +# +#----------------------------------------------------------------------------------------- +# Current project description +# +set(TSEP_PROJECT "Framework") +# +#----------------------------------------------------------------------------------------- +# Allow project folder structure +# +set_property(GLOBAL PROPERTY USE_FOLDERS ON) +# +#----------------------------------------------------------------------------------------- +# Define projects for building +# +add_subdirectory("Framework") +# +#----------------------------------------------------------------------------------------- +# Define projects for managing and distributing +# +# NEXUS Upload (Only windows) +# +IF(WIN32) + +ENDIF() +# diff --git a/Software/Framework/CMakeLists.txt b/Software/Framework/CMakeLists.txt new file mode 100644 index 0000000..b6edbf9 --- /dev/null +++ b/Software/Framework/CMakeLists.txt @@ -0,0 +1,109 @@ +########################################################################################### +# +# (c) Technical Software Engineering Plazotta 2021 +# +# CMAKE project file / @Add your project name@ +# +# +#----------------------------------------------------------------------------------------- +# Define project specific requirements +# +# Project name, output file name, project description +# +set(PROJECT_NAME LSFramework) +set(PROJECT_OUTPUT_NAME LSFramework) +set(PROJECT_DESCRIPTION "LSFramework") +# +#----------------------------------------------------------------------------------------- +# Define group file names +# +# SOURCE FILES +# +set(SOURCE_FILES + src/Timer.cpp + src/LSString.cpp +) +# +# HEADER FILES +# +set(HEADER_FILES + src/LSFramework.Exports.h + src/LSMacros.h + src/Timer.h + src/CJsonDocument.h + src/CJsonNode.h + src/CJsonArray.h + src/CJsonObject.h + src/LSString.h + src/LSList.h + src/LSListItem.h + src/LSVector.h +) +# +#----------------------------------------------------------------------------------------- +# Define solution folders for group files +# +source_group("Source Files" FILES ${SOURCE_FILES}) +source_group("Header Files" FILES ${HEADER_FILES}) +# +#----------------------------------------------------------------------------------------- +# DLL definitions +# +# Setup shared library version +# +TSEP_SETUP_DLL_VERSION(${PROJECT_DESCRIPTION}) +# +# Create shared library target +# +add_library(${PROJECT_NAME} SHARED + ${SOURCE_FILES} + ${HEADER_FILES} + ${TSEP_DLL_VERSION_RC} +) +# +# Add alias for the project +# +add_library(LS::${PROJECT_NAME} ALIAS ${PROJECT_NAME}) +# +# Setup TSEP OS specific settings for the project +# +TSEP_ADD_OS_SPECIFIC_SETTINGS() +# +# Setup output name +# +set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_OUTPUT_NAME}) +# +# Use VS Code Analysis for the project +# +TSEP_USE_CODE_ANALYSIS(${PROJECT_NAME}) +# +# Define Export Headers +# +TSEP_ADD_EXPORT_HEADER("${HEADER_FILES}") +# +# Include files, add your own includes and for the export +# +target_include_directories(${PROJECT_NAME} + PUBLIC + $ + $ + #PRIVATE + # include paths, which will not be exported +) +# +# Add used libs +# +#target_link_libraries(${PROJECT_NAME} +# PUBLIC +# /- Add your additional libraries -/ +#) +# +# Create an Export directory with the defined data +# +TSEP_CREATE_EXPORT() +# +# +# Create links to necessary dependency libraries +# +TSEP_GENERATE_DEPENDENCY_LINKS() +# diff --git a/LSFramework/CJsonArray.h b/Software/Framework/src/CJsonArray.h similarity index 100% rename from LSFramework/CJsonArray.h rename to Software/Framework/src/CJsonArray.h diff --git a/LSFramework/CJsonDocument.h b/Software/Framework/src/CJsonDocument.h similarity index 100% rename from LSFramework/CJsonDocument.h rename to Software/Framework/src/CJsonDocument.h diff --git a/LSFramework/CJsonNode.h b/Software/Framework/src/CJsonNode.h similarity index 100% rename from LSFramework/CJsonNode.h rename to Software/Framework/src/CJsonNode.h diff --git a/LSFramework/CJsonObject.h b/Software/Framework/src/CJsonObject.h similarity index 100% rename from LSFramework/CJsonObject.h rename to Software/Framework/src/CJsonObject.h diff --git a/Software/Framework/src/LSFramework.Exports.h b/Software/Framework/src/LSFramework.Exports.h new file mode 100644 index 0000000..0d9b601 --- /dev/null +++ b/Software/Framework/src/LSFramework.Exports.h @@ -0,0 +1,47 @@ +/** +* @page @Add your project name@ +* +* @author TSEP +* +* @copyright (c) Technical Software Engineering Plazotta 2021 +* +*/ +/** +* @file @Add your project name@.Exports.h +* @brief Definition of export declarations for this library +* +**************************************************************************/ +//TSEP_Pragma.UnitTest.Skip +#pragma once + +// Note: +// "_EXPORTS" preprocessor define is defined by CMake when compiling + +/*------------------------------------------------------------------------------ +// OPERATING SYSTEM : WIN32 +//----------------------------------------------------------------------------*/ +#ifdef _WIN32 + +/// @cond Exclude this macro from doxygen +#ifdef LSFramework_EXPORTS +#define LSFRAMEWORK_API __declspec(dllexport) +#else +#define LSFRAMEWORK_API __declspec(dllimport) +#endif +/// @endcond + +#endif + +/*------------------------------------------------------------------------------ +// OPERATING SYSTEM : LINUX +//----------------------------------------------------------------------------*/ +#ifdef __linux__ + +#ifdef LSFRAMEWORK_EXPORTS +#define LSFRAMEWORK_API __attribute__((visibility("default"))) +#else +#define LSFRAMEWORK_API +#endif + +#endif // __linux__ + diff --git a/LSFramework/LSList.h b/Software/Framework/src/LSList.h similarity index 96% rename from LSFramework/LSList.h rename to Software/Framework/src/LSList.h index 25eed2b..dab1500 100644 --- a/LSFramework/LSList.h +++ b/Software/Framework/src/LSList.h @@ -1,10 +1,11 @@ #pragma once +#include "LSFramework.Exports.h" #include "LSMacros.h" #include "LSListItem.h" template -class LSList +class LSFRAMEWORK_API LSList { public: LSList() @@ -101,6 +102,5 @@ public: private: LSListItem* m_pFirst = nullptr; LSListItem* m_pLast = nullptr; - size_t m_zSize = 0; }; \ No newline at end of file diff --git a/LSFramework/LSListItem.h b/Software/Framework/src/LSListItem.h similarity index 100% rename from LSFramework/LSListItem.h rename to Software/Framework/src/LSListItem.h diff --git a/LSFramework/LSMacros.h b/Software/Framework/src/LSMacros.h similarity index 100% rename from LSFramework/LSMacros.h rename to Software/Framework/src/LSMacros.h diff --git a/LSFramework/LSString.cpp b/Software/Framework/src/LSString.cpp similarity index 94% rename from LSFramework/LSString.cpp rename to Software/Framework/src/LSString.cpp index 6a8185b..a80d57e 100644 --- a/LSFramework/LSString.cpp +++ b/Software/Framework/src/LSString.cpp @@ -86,12 +86,12 @@ bool LSString::RemoveAt(size_t uiPos, size_t uiSize) size_t LSString::StringLength(const char* pChar) const { if (!pChar) return 0; - size_t zRet = 0; - while (*(pChar + zRet) != 0x0) + const char* pStart = pChar; + while (*pChar != 0x0) { - zRet++; + pChar++; } - return zRet; + return pChar - pStart; } //----------------------------------------------------------------------------------------------------------------------------- @@ -110,10 +110,10 @@ int LSString::Find(const char * pData, size_t uiOffset, size_t uiLength) const //----------------------------------------------------------------------------------------------------------------------------- void LSString::IncreaseCapacity(size_t uiNewLength) { - m_uiCapacity = (m_uiCapacity + uiNewLength) * c_uiCapacityIncreaseFactor; + m_uiCapacity = uiNewLength * c_uiCapacityIncreaseFactor; char* pNew = new char[m_uiCapacity + 1]; memset(pNew, 0, m_uiCapacity + 1); - memcpy(pNew, m_pData, m_zSize); + memmove(pNew, m_pData, m_zSize); DELETE_ARRAY(m_pData); m_pData = pNew; } \ No newline at end of file diff --git a/LSFramework/LSString.h b/Software/Framework/src/LSString.h similarity index 98% rename from LSFramework/LSString.h rename to Software/Framework/src/LSString.h index beb9be6..6bab27e 100644 --- a/LSFramework/LSString.h +++ b/Software/Framework/src/LSString.h @@ -1,8 +1,10 @@ #pragma once -#include +#include "LSFramework.Exports.h" #include "LSMacros.h" -class LSString +#include + +class LSFRAMEWORK_API LSString { public: // - Constructor diff --git a/Software/Framework/src/LSVector.h b/Software/Framework/src/LSVector.h new file mode 100644 index 0000000..7c4b3f0 --- /dev/null +++ b/Software/Framework/src/LSVector.h @@ -0,0 +1,131 @@ +#pragma once +#include "LSFramework.Exports.h" +#include "LSMacros.h" + +#include + +template + +class LSFRAMEWORK_API LSVector +{ +public: + + LSVector() + { + } + + LSVector(size_t zSize) + { + m_pData = new T[zSize]; + m_zCapacity = zSize; + } + + LSVector(const LSVector& oRhs) + : m_pData(oRhs.m_pData) + , m_zSize(oRhs.m_zSize) + , m_zCapacity(oRhs.m_zCapacity) + { + } + + ~LSVector() + { + DELETE_ARRAY(m_pData) + } + + T& PushBack(T oNewobj) + { + return Assign(oNewobj); + } + + T& Assign(T oNewobj) + { + if (m_zSize == m_zCapacity) + { + m_zCapacity *= c_dCapacityIncreaseFactor; + T* pNew = new T[m_zCapacity]; + memmove(pNew, m_pData, m_zSize); + DELETE_ARRAY(m_pData); + m_pData = pNew; + } + m_zSize += 1; + m_pData[m_zSize] = oNewobj; + return m_pData[m_zSize]; + } + + T& Insert(T oNewobj, const size_t zPos) + { + if (zPos == m_zCapacity) + { + return Assign(oNewobj); + } + else + { + m_pData[zPos] = oNewobj; + return m_pData[zPos]; + } + } + + void PopBack() + { + Remove(m_zSize); + } + + void Remove(const size_t zPos) + { + memset(m_pData[zPos], 0, sizeof(T)); + } + + T& At(const size_t zPos) + { + return m_pData[zPos]; + } + + void Reserve(const size_t zNewCapacity) + { + if (zNewCapacity < m_zCapacity) return; + T* pOld = m_pData; + m_pData = new T[zNewCapacity]; + memmove_s(m_pData, zNewCapacity, pOld, m_zSize); + m_zCapacity = zNewCapacity; + DELETE_ARRAY(pOld); + } + + void Clear() + { + DELETE_ARRAY(m_pData) + } + + size_t Size() const + { + return m_zSize; + } + + size_t Capacity() const + { + return m_zCapacity; + } + + T* Data() const + { + return m_pData; + } + + LSVector operator=(const LSVector oRhs) + { + LSVector vTemp(); + vTemp.m_pData = oRhs.m_pData; + } + + T& operator[](const size_t _Pos) + { + m_pData + _Pos * sizeof(T); + } + +private: + + std::vector s; + T* m_pData = nullptr; + size_t m_zSize = 0; + size_t m_zCapacity = 0; + const float c_dCapacityIncreaseFactor = 1.5; +}; \ No newline at end of file diff --git a/LSFramework/Timer.cpp b/Software/Framework/src/Timer.cpp similarity index 100% rename from LSFramework/Timer.cpp rename to Software/Framework/src/Timer.cpp diff --git a/LSFramework/Timer.h b/Software/Framework/src/Timer.h similarity index 78% rename from LSFramework/Timer.h rename to Software/Framework/src/Timer.h index ef50ae5..eb0dead 100644 --- a/LSFramework/Timer.h +++ b/Software/Framework/src/Timer.h @@ -1,8 +1,10 @@ #pragma once -#include +#include "LSFramework.Exports.h" #include "LSString.h" -class Timer +#include + +class LSFRAMEWORK_API Timer { public: Timer(LSString sEndString = ""); diff --git a/LSFramework/main.cpp b/Software/Framework/src/main.cpp similarity index 100% rename from LSFramework/main.cpp rename to Software/Framework/src/main.cpp diff --git a/Software/Project.conf.cmake b/Software/Project.conf.cmake new file mode 100644 index 0000000..6ebf4ba --- /dev/null +++ b/Software/Project.conf.cmake @@ -0,0 +1,50 @@ +########################################################################################### +# +# (c) Technical Software Engineering Plazotta 2022 +# +# CMAKE project configuration file +# +# -- DO NOT EDIT, will be generated automatically -- +# +#----------------------------------------------------------------------------------------- +# Define user specific elements for all tools and components +# +IF(WIN32) +set (TSEP_STORAGE_PATH "E:/TsepStorage") +ELSE() +set (TSEP_STORAGE_PATH /opt/tsep-storage) +ENDIF() +set (TSEP_PRODUCT_GROUP "Development") +set (TSEP_PRODUCT_NAME "LSFramework") +set (TSEP_PRODUCT_DESCRIPTION "TSEP Core Framework") +set (TSEP_PRODUCT_VERSION "1,5,100") +set (TSEP_VERSION "1.5.100") +set (TSEP_VERSION_MAJOR 1) +set (TSEP_VERSION_MINOR 5) +set (TSEP_VERSION_PATCH 100) +set (TSEP_NEXUS_VERSION "01.05.100") +set (TSEP_UPDATE_IN_NEXUS "true") +set (TSEP_COPYRIGHT_STRING "Copyright Technical Software Engineering Plazotta 2022") +set (TSEP_COMPANY_LONGNAME "Technical Software Engineering Plazotta") +set (TSEP_NEXUS_URL "https://srv-nexus-3.tsep.local/repository") +set (TSEP_NEXUS_GUID "53ec8373-e298-31ed-bd2f-c21204d48a32") +# +#----------------------------------------------------------------------------------------- +# Define component specific private elements +# +set (TSEP_PROJECT_CMAKE "${TSEP_STORAGE_PATH}/CMake/CMake.1.5.1") +set (TSEP_PROJECT_GOOGLE.TEST "${TSEP_STORAGE_PATH}/Google.Test/Google.Test.1.10.1") +set (TSEP_PROJECT_INTIME "${TSEP_STORAGE_PATH}/INtime/INtime.6.4.5") + + +#----------------------------------------------------------------------------------------- +# Include the cmake definition for basic compiler and os defines +# +include(${TSEP_PROJECT_CMAKE}/CMakeCore.cmake) +# +# +#----------------------------------------------------------------------------------------- +# Define component specific public elements +# +set (TSEP_PROJECT_FRAMEWORK.CORE "${TSEP_STORAGE_PATH}/Framework.Core/Framework.Core.1.5.100/bin/${TSEP_CMAKE_GENERATOR}/cmake") + diff --git a/LSFramework/VSGenerateProject.cmd b/Software/VSGenerateProject.cmd similarity index 92% rename from LSFramework/VSGenerateProject.cmd rename to Software/VSGenerateProject.cmd index 0c0d8f7..bad4b45 100644 --- a/LSFramework/VSGenerateProject.cmd +++ b/Software/VSGenerateProject.cmd @@ -4,7 +4,7 @@ setlocal rem define build parameters set ARCHITECTURE=x64 set VISUAL_STUDIO=msvc2019 -set GENERATOR=Visual Studio 16 2019 Win64 +set GENERATOR=Visual Studio 16 2019 rem concatenate build directory set BUILDRESULTS=%~dp0\..\BuildResults\%VISUAL_STUDIO%_%ARCHITECTURE%