mirror of
https://bitbucket.org/mfeemster/fractorium.git
synced 2025-01-21 05:00:06 -05:00
--User changes
-Add new preset dimensions to the right click menu of the width and height fields in the editor. -Change QSS stylesheets to properly handle tabs. -Make tabs rectangular by default. For some reason, they had always been triangular. --Bug fixes -Incremental rendering times in the editor were wrong. --Code changes -Migrate to Qt6. There is probably more work to be done here. -Migrate to VS2022. -Migrate to Wix 4 installer. -Change installer to install to program files for all users. -Fix many VS2022 code analysis warnings. -No longer use byte typedef, because std::byte is now a type. Revert all back to unsigned char. -Upgrade OpenCL headers to version 3.0 and keep locally now rather than trying to look for system files. -No longer link to Nvidia or AMD specific OpenCL libraries. Use the generic installer located at OCL_ROOT too. -Add the ability to change OpenCL grid dimensions. This was attempted for investigating possible performance improvments, but made no difference. This has not been verified on Linux or Mac yet.
This commit is contained in:
parent
64d4470b12
commit
1dfbd4eff2
@ -1,24 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Project Sdk="WixToolset.Sdk/4.0.0">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||
<ProductVersion>3.7</ProductVersion>
|
||||
<ProjectGuid>{c8096c47-e358-438c-a520-146d46b0637d}</ProjectGuid>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<OutputName>Fractorium_22.21.4.2</OutputName>
|
||||
<OutputType>Package</OutputType>
|
||||
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
|
||||
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||
<OutputPath>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutputPath>
|
||||
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||
<DefineConstants>Debug</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||
<OutputPath>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutputPath>
|
||||
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
|
||||
<DefineConstants>Debug</DefineConstants>
|
||||
@ -32,6 +22,7 @@
|
||||
<WixVariables>
|
||||
</WixVariables>
|
||||
<DefineConstants>GpuType=AMD_NVIDIA</DefineConstants>
|
||||
<SuppressValidation>false</SuppressValidation>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'ReleaseNvidia|x86' ">
|
||||
<OutputPath>bin\$(Platform)\$(Configuration)\</OutputPath>
|
||||
@ -54,21 +45,6 @@
|
||||
<IntermediateOutputPath>obj\$(Platform)\$(Configuration)\</IntermediateOutputPath>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Product.wxs" />
|
||||
<PackageReference Include="WixToolset.UI.wixext" Version="4.0.0" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<WixExtension Include="WixUIExtension">
|
||||
<HintPath>$(WixExtDir)\WixUIExtension.dll</HintPath>
|
||||
<Name>WixUIExtension</Name>
|
||||
</WixExtension>
|
||||
</ItemGroup>
|
||||
<Import Project="$(WixTargetsPath)" />
|
||||
<!--
|
||||
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Wix.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,5 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:ui="http://wixtoolset.org/schemas/v4/wxs/ui">
|
||||
<?define ProductVersion="22.21.4.2" ?>
|
||||
<?define ProductName="Fractorium $(var.ProductVersion) ($(var.GpuType))" ?>
|
||||
<?define UpgradeCode="{4714cd15-bfba-44f6-8059-9e1466ebfa6e}"?>
|
||||
@ -15,28 +14,11 @@
|
||||
-->
|
||||
<?define ProductCode="{5EB322AE-7613-4D8B-AC60-2B53C4CC7941}"?>
|
||||
|
||||
<Product Id="$(var.ProductCode)" Name="$(var.ProductName)" Language="1033" Version="$(var.ProductVersion)" Manufacturer="$(var.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
|
||||
<Package
|
||||
Keywords="Installer"
|
||||
Platform="x64"
|
||||
Description="$(var.Manufacturer)"
|
||||
Comments="$(var.Manufacturer)"
|
||||
Manufacturer="$(var.Manufacturer)"
|
||||
InstallScope="perUser"
|
||||
InstallerVersion="400"
|
||||
InstallPrivileges="limited"
|
||||
Compressed="yes"
|
||||
Languages="1033"
|
||||
SummaryCodepage="1252"
|
||||
/>
|
||||
<Package Name="$(var.ProductName)" Language="1033" Version="$(var.ProductVersion)" Manufacturer="$(var.Manufacturer)" UpgradeCode="$(var.UpgradeCode)" InstallerVersion="400" Scope="perMachine" ProductCode="$(var.ProductCode)">
|
||||
<SummaryInformation Keywords="Installer" Description="$(var.Manufacturer)" Manufacturer="$(var.Manufacturer)" />
|
||||
|
||||
<Upgrade Id="$(var.UpgradeCode)">
|
||||
<UpgradeVersion Minimum="0.0.0"
|
||||
IncludeMinimum="no"
|
||||
OnlyDetect="no"
|
||||
Maximum="$(var.ProductVersion)"
|
||||
IncludeMaximum="no"
|
||||
Property="PREVIOUSFOUND" />
|
||||
<UpgradeVersion Minimum="0.0.0" IncludeMinimum="no" OnlyDetect="no" Maximum="$(var.ProductVersion)" IncludeMaximum="no" Property="PREVIOUSFOUND" />
|
||||
</Upgrade>
|
||||
|
||||
<InstallExecuteSequence>
|
||||
@ -65,64 +47,44 @@
|
||||
<Property Id="MSIFASTINSTALL" Value="1" />
|
||||
|
||||
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER" />
|
||||
<UIRef Id="WixUI_InstallDir" />
|
||||
<ui:WixUI Id="WixUI_InstallDir" />
|
||||
<UIRef Id="WixUI_ErrorProgressText" />
|
||||
</Product>
|
||||
</Package>
|
||||
|
||||
<Fragment>
|
||||
<Directory Id="TARGETDIR" Name="SourceDir" >
|
||||
<!-- Doing this requires admin access, so we don't do it.
|
||||
<Directory Id="ProgramFiles64Folder" >
|
||||
<Directory Id="INSTALLFOLDER" Name="Fractorium" >
|
||||
<Directory Id="INSTALLFOLDERPLATFORMS" Name="platforms" />
|
||||
</Directory>
|
||||
</Directory>
|
||||
-->
|
||||
|
||||
<!-- Doing this doesn't require admin access.
|
||||
It reports a ton of errors, but oddly enough, an MSI is still created with the errors.
|
||||
<!--
|
||||
<StandardDirectory Id="AppDataFolder">
|
||||
-->
|
||||
<Directory Id="AppDataFolder" >
|
||||
<StandardDirectory Id="ProgramFiles64Folder" >
|
||||
<Directory Id="INSTALLFOLDER" Name="Fractorium">
|
||||
<Directory Id="INSTALLFOLDERBENCH" Name="Bench" />
|
||||
<Directory Id="INSTALLFOLDEREXAMPLES" Name="Examples" />
|
||||
<Directory Id="INSTALLFOLDERPLATFORMS" Name="platforms" />
|
||||
<Directory Id="INSTALLFOLDERIMAGEFORMATS" Name="imageformats" />
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
</StandardDirectory>
|
||||
<!-- Shortcut folders-->
|
||||
<Directory Id="ProgramMenuFolder" Name="Programs">
|
||||
<StandardDirectory Id="ProgramMenuFolder">
|
||||
<Directory Id="ProgramMenuDirLevel1" Name="Fractorium" />
|
||||
</Directory>
|
||||
<Directory Id="DesktopFolder" Name="Desktop" />
|
||||
</Directory>
|
||||
</StandardDirectory>
|
||||
<StandardDirectory Id="DesktopFolder" />
|
||||
</Fragment>
|
||||
|
||||
<Fragment>
|
||||
<Component Id="FractoriumStartMenuShortcut" Directory="ProgramMenuDirLevel1" Guid="f1eaf3ba-9b61-48b6-8994-49ebc6b405aa">
|
||||
<Shortcut Id="FractoriumStartMenuShortcut"
|
||||
Directory="ProgramMenuDirLevel1"
|
||||
Name="Fractorium"
|
||||
Target="[INSTALLFOLDER]\Fractorium.exe"
|
||||
WorkingDirectory="INSTALLFOLDER"
|
||||
Icon="AddRemoveProgramsIcon"
|
||||
/>
|
||||
<Condition>1</Condition>
|
||||
|
||||
|
||||
<Component Id="FractoriumStartMenuShortcut" Directory="ProgramMenuDirLevel1" Guid="f1eaf3ba-9b61-48b6-8994-49ebc6b405aa" Condition="1">
|
||||
<Shortcut Id="FractoriumStartMenuShortcut" Directory="ProgramMenuDirLevel1" Name="Fractorium" Target="[INSTALLFOLDER]\Fractorium.exe" WorkingDirectory="INSTALLFOLDER" Icon="AddRemoveProgramsIcon" />
|
||||
|
||||
<RemoveFolder Id="FractoriumStartMenuShortcut" On="uninstall" />
|
||||
<RegistryValue Root='HKCU' Key='Software\[Manufacturer]\[ProductName]' Type='string' Value='' KeyPath='yes' />
|
||||
<RegistryValue Root="HKCU" Key="Software\[Manufacturer]\[ProductName]" Type="string" Value="" KeyPath="yes" />
|
||||
</Component>
|
||||
<Component Id="FractoriumDesktopShortcut" Directory="DesktopFolder" Guid="b73ff21c-08ac-47ad-a510-b3ce90e43979">
|
||||
<Shortcut Id="FractoriumDesktopShortcut"
|
||||
Directory="DesktopFolder"
|
||||
Name="Fractorium"
|
||||
Target="[INSTALLFOLDER]\Fractorium.exe"
|
||||
WorkingDirectory="INSTALLFOLDER"
|
||||
Icon="AddRemoveProgramsIcon"
|
||||
/>
|
||||
<Component Id="FractoriumDesktopShortcut" Directory="DesktopFolder" Guid="b73ff21c-08ac-47ad-a510-b3ce90e43979" Condition="1">
|
||||
<Shortcut Id="FractoriumDesktopShortcut" Directory="DesktopFolder" Name="Fractorium" Target="[INSTALLFOLDER]\Fractorium.exe" WorkingDirectory="INSTALLFOLDER" Icon="AddRemoveProgramsIcon" />
|
||||
<RemoveFolder Id="FractoriumDesktopShortcut" On="uninstall" />
|
||||
<Condition>1</Condition>
|
||||
<RegistryValue Root='HKCU' Key='Software\[Manufacturer]\[ProductName]' Type='string' Value='' KeyPath='yes' />
|
||||
|
||||
<RegistryValue Root="HKCU" Key="Software\[Manufacturer]\[ProductName]" Type="string" Value="" KeyPath="yes" />
|
||||
</Component>
|
||||
</Fragment>
|
||||
|
||||
@ -162,19 +124,19 @@
|
||||
<File Id="libxml2.dll" Source="$(var.SolutionDir)..\..\..\Bin\$(var.Platform)\Release\libxml2.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes" />
|
||||
</Component>
|
||||
<Component Id="msvcp140.dll" Guid="8f1ffde7-c1bd-45fb-8bc8-26dde552eafd">
|
||||
<File Id="msvcp140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.29.30133\x64\Microsoft.VC142.CRT\msvcp140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
<File Id="msvcp140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.34.31931\x64\Microsoft.VC143.CRT\msvcp140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes" />
|
||||
</Component>
|
||||
<Component Id="vcruntime140.dll" Guid="50c9bc27-c547-4a03-9f6c-cd416f449dd8">
|
||||
<File Id="vcruntime140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.29.30133\x64\Microsoft.VC142.CRT\vcruntime140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
<File Id="vcruntime140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.34.31931\x64\Microsoft.VC143.CRT\vcruntime140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes" />
|
||||
</Component>
|
||||
<Component Id="vcruntime140_1.dll" Guid="a02507f8-326b-45b2-b734-e5091921559f">
|
||||
<File Id="vcruntime140_1.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.29.30133\x64\Microsoft.VC142.CRT\vcruntime140_1.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
<File Id="vcruntime140_1.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.34.31931\x64\Microsoft.VC143.CRT\vcruntime140_1.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes" />
|
||||
</Component>
|
||||
<Component Id="vccorlib140.dll" Guid="affe33e7-1e64-4bb0-a062-2b56f77459b4">
|
||||
<File Id="vccorlib140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.29.30133\x64\Microsoft.VC142.CRT\vccorlib140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
<File Id="vccorlib140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.34.31931\x64\Microsoft.VC143.CRT\vccorlib140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes" />
|
||||
</Component>
|
||||
<Component Id="concrt140.dll" Guid="7fb716a1-1b4f-42fb-89c7-4d216ebd6e2e">
|
||||
<File Id="concrt140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.29.30133\x64\Microsoft.VC142.CRT\concrt140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes"/>
|
||||
<File Id="concrt140.dll" Source="$(var.DevEnvDir)..\..\VC\Redist\MSVC\14.34.31931\x64\Microsoft.VC143.CRT\concrt140.dll" KeyPath="yes" Checksum="yes" ReadOnly="yes" />
|
||||
</Component>
|
||||
<Component Id="flam3palettes.xml" Guid="d3adb0bb-14ef-4923-99d9-a5784b7ef04e">
|
||||
<File Id="flam3palettes.xml" Source="$(var.SolutionDir)..\..\..\Data\flam3-palettes.xml" KeyPath="yes" Checksum="yes" ReadOnly="yes" />
|
||||
@ -292,16 +254,24 @@
|
||||
<File Id="VersionHistory.txt" Source="$(var.SolutionDir)..\..\..\Data\Version History.txt" KeyPath="yes" Checksum="yes" ReadOnly="yes" />
|
||||
</Component>
|
||||
|
||||
<Component Id="Qt5Core.dll" Guid="0198dd4b-9bbb-4ea2-86e3-6ea0f4f6ac51">
|
||||
<File Id="Qt5Core.dll" Source="$(env.QTDIR)\bin\Qt5Core.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes"/>
|
||||
<Component Id="Qt6Core.dll" Guid="0198dd4b-9bbb-4ea2-86e3-6ea0f4f6ac51">
|
||||
<File Id="Qt6Core.dll" Source="$(env.QTDIR)\bin\Qt6Core.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes" />
|
||||
</Component>
|
||||
|
||||
<Component Id="Qt5Gui.dll" Guid="7f93dcc2-55db-4920-83d7-e06c23f7719a">
|
||||
<File Id="Qt5Gui.dll" Source="$(env.QTDIR)\bin\Qt5Gui.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes"/>
|
||||
<Component Id="Qt6Gui.dll" Guid="7f93dcc2-55db-4920-83d7-e06c23f7719a">
|
||||
<File Id="Qt6Gui.dll" Source="$(env.QTDIR)\bin\Qt6Gui.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes" />
|
||||
</Component>
|
||||
|
||||
<Component Id="Qt5Widgets.dll" Guid="006bb2f1-7a38-426f-ba2c-5196d1d6c24d">
|
||||
<File Id="Qt5Widgets.dll" Source="$(env.QTDIR)\bin\Qt5Widgets.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes"/>
|
||||
<Component Id="Qt6Widgets.dll" Guid="006bb2f1-7a38-426f-ba2c-5196d1d6c24d">
|
||||
<File Id="Qt6Widgets.dll" Source="$(env.QTDIR)\bin\Qt6Widgets.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes" />
|
||||
</Component>
|
||||
|
||||
<Component Id="Qt6OpenGL.dll" Guid="4693556b-5392-4e84-94f8-7a97ef55da87">
|
||||
<File Id="Qt6OpenGL.dll" Source="$(env.QTDIR)\bin\Qt6OpenGL.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes" />
|
||||
</Component>
|
||||
|
||||
<Component Id="Qt6OpenGLWidgets.dll" Guid="1d8c4733-e0be-4a7b-bf3a-00e2b1b7a4a8">
|
||||
<File Id="Qt6OpenGLWidgets.dll" Source="$(env.QTDIR)\bin\Qt6OpenGLWidgets.dll" KeyPath="yes" Checksum="yes" ProcessorArchitecture="x64" ReadOnly="yes" />
|
||||
</Component>
|
||||
</ComponentGroup>
|
||||
</Fragment>
|
||||
|
@ -46,11 +46,13 @@
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
@ -72,6 +74,7 @@
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
@ -102,6 +105,7 @@
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
|
@ -46,11 +46,13 @@
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
@ -59,7 +61,7 @@
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<PrecompiledHeaderFile>EmberCommonPch.h</PrecompiledHeaderFile>
|
||||
@ -69,12 +71,13 @@
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<GenerateDebugInformation>DebugFull</GenerateDebugInformation>
|
||||
<AdditionalDependencies>libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;opencl.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Deps\*.dll" "$(OutDir)"
|
||||
@ -91,7 +94,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<PrecompiledHeaderFile>EmberCommonPch.h</PrecompiledHeaderFile>
|
||||
@ -100,6 +103,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
@ -107,7 +111,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;opencl.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Deps\*.dll" "$(OutDir)"
|
||||
|
@ -46,11 +46,13 @@
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
@ -61,7 +63,7 @@
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember\;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libxml2\include;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember\;$(ProjectDir)..\..\..\Source\EmberCL\;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libxml2\include</AdditionalIncludeDirectories>
|
||||
<StructMemberAlignment>Default</StructMemberAlignment>
|
||||
<PrecompiledHeaderFile>EmberCLPch.h</PrecompiledHeaderFile>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
@ -70,12 +72,13 @@
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>DebugFull</GenerateDebugInformation>
|
||||
<AdditionalDependencies>libxml2.lib;opencl.lib;Opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
@ -89,7 +92,7 @@
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember\;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libxml2\include;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember\;$(ProjectDir)..\..\..\Source\EmberCL\;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libxml2\include</AdditionalIncludeDirectories>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<PrecompiledHeaderFile>EmberCLPch.h</PrecompiledHeaderFile>
|
||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
@ -99,6 +102,7 @@
|
||||
<StringPooling>true</StringPooling>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
@ -106,7 +110,7 @@
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>libxml2.lib;opencl.lib;Opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
@ -134,6 +138,24 @@
|
||||
<ClCompile Include="..\..\..\Source\EmberCL\RendererClDevice.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_d3d10.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_d3d11.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_dx9_media_sharing.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_dx9_media_sharing_intel.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_egl.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_ext.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_ext_intel.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_gl.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_gl_ext.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_half.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_icd.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_layer.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_platform.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_va_api_media_sharing_intel.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_version.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\opencl.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\opencl.hpp" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\EmberCLFunctions.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\EmberCLStructs.h" />
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\DEOpenCLKernelCreator.h" />
|
||||
|
@ -16,6 +16,9 @@
|
||||
<Filter Include="Kernel Creators">
|
||||
<UniqueIdentifier>{d66f35ca-a4cd-470a-9c56-653b0665b598}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="CL">
|
||||
<UniqueIdentifier>{e37b04de-79bc-483b-9725-618dbe484452}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\..\Source\EmberCL\DllMain.cpp">
|
||||
@ -80,6 +83,60 @@
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\FunctionMapper.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_d3d10.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_d3d11.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_dx9_media_sharing.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_dx9_media_sharing_intel.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_egl.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_ext.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_ext_intel.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_gl.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_gl_ext.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_half.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_icd.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_layer.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_platform.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_va_api_media_sharing_intel.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\cl_version.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\opencl.h">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\Source\EmberCL\CL\opencl.hpp">
|
||||
<Filter>CL</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="EmberCL.rc">
|
||||
|
@ -46,11 +46,13 @@
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
@ -59,7 +61,7 @@
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<PrecompiledHeaderFile>EmberCommonPch.h</PrecompiledHeaderFile>
|
||||
@ -69,12 +71,13 @@
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<GenerateDebugInformation>DebugFull</GenerateDebugInformation>
|
||||
<AdditionalDependencies>libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;opencl.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Deps\*.dll" "$(OutDir)"
|
||||
@ -91,7 +94,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<PrecompiledHeaderFile>EmberCommonPch.h</PrecompiledHeaderFile>
|
||||
@ -100,6 +103,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
@ -107,7 +111,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;opencl.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Deps\*.dll" "$(OutDir)"
|
||||
|
@ -46,11 +46,13 @@
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
@ -59,7 +61,7 @@
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<PrecompiledHeaderFile>EmberCommonPch.h</PrecompiledHeaderFile>
|
||||
@ -69,12 +71,13 @@
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<GenerateDebugInformation>DebugFull</GenerateDebugInformation>
|
||||
<AdditionalDependencies>libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;opencl.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Deps\*.dll" "$(OutDir)"
|
||||
@ -91,7 +94,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<PrecompiledHeaderFile>EmberCommonPch.h</PrecompiledHeaderFile>
|
||||
@ -101,6 +104,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<StringPooling>true</StringPooling>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
@ -108,7 +112,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;opencl.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Deps\*.dll" "$(OutDir)"
|
||||
|
@ -46,11 +46,15 @@
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)..\..\..\Bin\$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir>$(SolutionDir)Obj\$(TargetName)\$(Platform)\$(Configuration)\</IntDir>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
@ -59,7 +63,7 @@
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;OPENEXR_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<PrecompiledHeaderFile>EmberCommonPch.h</PrecompiledHeaderFile>
|
||||
@ -69,12 +73,13 @@
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<GenerateDebugInformation>DebugFull</GenerateDebugInformation>
|
||||
<AdditionalDependencies>libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;opencl.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Deps\*.dll" "$(OutDir)"
|
||||
@ -91,7 +96,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;OPENEXR_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories>$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR</AdditionalIncludeDirectories>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<PrecompiledHeaderFile>EmberCommonPch.h</PrecompiledHeaderFile>
|
||||
@ -100,6 +105,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Console</SubSystem>
|
||||
@ -107,7 +113,7 @@ xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;opencl.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(OCL_ROOT)\lib\x86_64</AdditionalLibraryDirectories>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Deps\*.dll" "$(OutDir)"
|
||||
|
@ -51,59 +51,66 @@
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
|
||||
<RunCodeAnalysis>false</RunCodeAnalysis>
|
||||
<EnableMicrosoftCodeAnalysis>false</EnableMicrosoftCodeAnalysis>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>UNICODE;WIN32;QT_DLL;QT_CORE_LIB;QT_GUI_LIB;QT_MULTIMEDIA_LIB;QT_HELP_LIB;QT_OPENGL_LIB;QT_WIDGETS_LIB;QT_XML_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>.;.\PaletteEditor;$(QTDIR)\include;$(ProjectDir)..\..\..\Fractorium\GeneratedFiles;$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName;$(QTDIR)\..\qtmultimedia\include\QtMultimedia;$(QTDIR)\..\qtmultimedia\include;$(QTDIR)\..\qttools\include;$(QTDIR)\..\qttools\include\QtHelp;$(QTDIR)\include\QtConcurrent;$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtOpenGL;$(QTDIR)\include\QtWidgets;$(QTDIR)\include\QtXml;.\GeneratedFiles;$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\Fractorium;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include;.\GeneratedFiles\$(ConfigurationName);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_MULTIMEDIA_LIB;QT_HELP_LIB;QT_OPENGL_LIB;QT_WIDGETS_LIB;QT_XML_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>.;.\PaletteEditor;$(QTDIR)\include;$(ProjectDir)..\..\..\Fractorium\GeneratedFiles;$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName;$(QTDIR)\..\qtmultimedia\include\QtMultimedia;$(QTDIR)\..\qtmultimedia\include;$(QTDIR)\..\qttools\include;$(QTDIR)\..\qttools\include\QtHelp;$(QTDIR)\include\QtConcurrent;$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtOpenGL;$(QTDIR)\include\QtWidgets;$(QTDIR)\include\QtXml;.\GeneratedFiles;$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\Fractorium;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;.\GeneratedFiles\$(ConfigurationName);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<TreatWChar_tAsBuiltInType>false</TreatWChar_tAsBuiltInType>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<PrecompiledHeaderFile>FractoriumPch.h</PrecompiledHeaderFile>
|
||||
<PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
<ProgramDataBaseFileName>$(TargetDir)$(TargetName).pdb</ProgramDataBaseFileName>
|
||||
<DisableSpecificWarnings>
|
||||
</DisableSpecificWarnings>
|
||||
<AdditionalOptions>/bigobj -Zm150 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions>/bigobj -Zm150 /Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<StringPooling>true</StringPooling>
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(QTDIR)\lib;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(QTDIR)\lib;$(OCL_ROOT)\lib\x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>DebugFull</GenerateDebugInformation>
|
||||
<AdditionalDependencies>qtmaind.lib;Qt5Cored.lib;Qt5Guid.lib;Qt5OpenGLd.lib;opengl32.lib;glu32.lib;opencl.lib;Qt5Widgetsd.lib;Qt5Xmld.lib;Ws2_32.lib;libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>Qt6Cored.lib;Qt6EntryPointd.lib;Qt6Guid.lib;Qt6OpenGLd.lib;Qt6OpenGLWidgetsd.lib;Qt6Widgetsd.lib;opengl32.lib;glu32.lib;opencl.lib;Ws2_32.lib;libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Deps\*.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\*.gradient" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\*.ugr" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\dark_windows.qss" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt5Cored.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt5Guid.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt5Widgetsd.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\*.qss" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6Cored.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6Guid.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6OpenGLd.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6OpenGLWidgetsd.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6Widgetsd.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\plugins\platforms\qwindowsd.dll" "$(OutDir)\platforms\"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpegd.dll" "$(OutDir)\imageformats\"</Command>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>UNICODE;WIN32;QT_DLL;QT_NO_DEBUG;NDEBUG;QT_CORE_LIB;QT_GUI_LIB;QT_MULTIMEDIA_LIB;QT_HELP_LIB;QT_OPENGL_LIB;QT_WIDGETS_LIB;QT_XML_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>.;.\PaletteEditor;$(QTDIR)\include;$(ProjectDir)..\..\..\Fractorium\GeneratedFiles;$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName;$(QTDIR)\..\qtmultimedia\include\QtMultimedia;$(QTDIR)\..\qtmultimedia\include;$(QTDIR)\..\qttools\include;$(QTDIR)\..\qttools\include\QtHelp;$(QTDIR)\include\QtConcurrent;$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtOpenGL;$(QTDIR)\include\QtWidgets;$(QTDIR)\include\QtXml;.\GeneratedFiles;$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\Fractorium;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;$(AMDAPPSDKROOT)\include;$(CUDA_PATH)\include;.\GeneratedFiles\$(ConfigurationName);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>UNICODE;WIN32;QT_NO_DEBUG;NDEBUG;QT_CORE_LIB;QT_GUI_LIB;QT_MULTIMEDIA_LIB;QT_HELP_LIB;QT_OPENGL_LIB;QT_WIDGETS_LIB;QT_XML_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories>.;.\PaletteEditor;$(QTDIR)\include;$(ProjectDir)..\..\..\Fractorium\GeneratedFiles;$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName;$(QTDIR)\..\qtmultimedia\include\QtMultimedia;$(QTDIR)\..\qtmultimedia\include;$(QTDIR)\..\qttools\include;$(QTDIR)\..\qttools\include\QtHelp;$(QTDIR)\include\QtConcurrent;$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtOpenGL;$(QTDIR)\include\QtWidgets;$(QTDIR)\include\QtXml;.\GeneratedFiles;$(ProjectDir)..\..\..\Source\Ember;$(ProjectDir)..\..\..\Source\EmberCL;$(ProjectDir)..\..\..\Source\EmberCommon;$(ProjectDir)..\..\..\Source\Fractorium;$(ProjectDir)..\..\..\..\glm;$(ProjectDir)..\..\..\..\libjpeg;$(ProjectDir)..\..\..\..\libpng;$(ProjectDir)..\..\..\..\libxml2\include;$(ProjectDir)..\..\..\..\openexr\output\include\Imath;$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR;.\GeneratedFiles\$(ConfigurationName);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<TreatWChar_tAsBuiltInType>false</TreatWChar_tAsBuiltInType>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<PrecompiledHeaderFile>FractoriumPch.h</PrecompiledHeaderFile>
|
||||
<PrecompiledHeaderOutputFile>$(IntDir)$(TargetName).pch</PrecompiledHeaderOutputFile>
|
||||
@ -113,17 +120,18 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpegd.dll" "$(OutDir)\imagefor
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<StringPooling>true</StringPooling>
|
||||
<FloatingPointExceptions>false</FloatingPointExceptions>
|
||||
<AdditionalOptions>/bigobj -Zm150 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions>/bigobj -Zm150 /Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<LanguageStandard>stdcpp20</LanguageStandard>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(QTDIR)\lib;$(AMDAPPSDKROOT)\lib\x86_64;$(CUDA_PATH)\lib\$(PlatformName);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalLibraryDirectories>$(ProjectDir)..\..\..\Deps;$(QTDIR)\lib;$(OCL_ROOT)\lib\x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<GenerateDebugInformation>DebugFull</GenerateDebugInformation>
|
||||
<AdditionalDependencies>qtmain.lib;Qt5Core.lib;Qt5Gui.lib;Qt5OpenGL.lib;opengl32.lib;glu32.lib;opencl.lib;Qt5Widgets.lib;Ws2_32.lib;libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>Qt6Core.lib;Qt6EntryPoint.lib;Qt6Gui.lib;Qt6OpenGL.lib;Qt6OpenGLWidgets.lib;Qt6Widgets.lib;opengl32.lib;glu32.lib;opencl.lib;Ws2_32.lib;libjpeg.lib;libpng.lib;libxml2.lib;zlib.lib;Iex-3_1.lib;Imath-3_1.lib;OpenEXR-3_1.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<Version>0.1</Version>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
@ -131,10 +139,12 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpegd.dll" "$(OutDir)\imagefor
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\flam3-palettes.xml" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\*.gradient" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\*.ugr" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\dark_windows.qss" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt5Core.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt5Gui.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt5Widgets.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(SolutionDir)..\..\..\Data\*.qss" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6Core.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6Gui.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6OpenGL.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6OpenGLWidgets.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\bin\Qt6Widgets.dll" "$(OutDir)"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\plugins\platforms\qwindows.dll" "$(OutDir)\platforms\"
|
||||
xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageformats\"</Command>
|
||||
</PostBuildEvent>
|
||||
@ -337,30 +347,30 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\VariationsDialog.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing VariationsDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/VariationsDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing VariationsDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/VariationsDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\QssDialog.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing QssDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/QssDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing QssDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/QssDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\csshighlighter.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing csshighlighter.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/csshighlighter.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing csshighlighter.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/csshighlighter.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
@ -368,72 +378,72 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing LibraryTreeWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/LibraryTreeWidget.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing LibraryTreeWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/LibraryTreeWidget.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\PaletteEditor\ColorPanel.h">
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing ColorPanel.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/ColorPanel.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing ColorPanel.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/ColorPanel.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\PaletteEditor\ColorPickerWidget.h">
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing ColorPickerWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/ColorPickerWidget.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing ColorPickerWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/ColorPickerWidget.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\PaletteEditor\ColorTriangle.h">
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing ColorTriangle.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/ColorTriangle.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing ColorTriangle.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/ColorTriangle.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
</CustomBuild>
|
||||
<ClInclude Include="..\..\..\Source\Fractorium\PaletteEditor\GradientArrow.h" />
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\PaletteEditor\GradientColorsView.h">
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing GradientColorsView.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/GradientColorsView.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing GradientColorsView.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/GradientColorsView.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\PaletteEditor\PaletteEditor.h">
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing PaletteEditor.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/PaletteEditor.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing PaletteEditor.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/PaletteEditor.h" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\."</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/PaletteEditor/%(Filename)%(Extension)"</Command>
|
||||
</CustomBuild>
|
||||
<ClInclude Include="..\..\..\Source\Fractorium\qcssparser.h" />
|
||||
<ClInclude Include="..\..\..\Source\Fractorium\qfunctions.h" />
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\QssTextEdit.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing QssTextEdit.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/QssTextEdit.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing QssTextEdit.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/QssTextEdit.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
@ -443,30 +453,30 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\OptionsDialog.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing OptionsDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/OptionsDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing OptionsDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/OptionsDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\AboutDialog.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing AboutDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/AboutDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing AboutDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/AboutDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\FinalRenderDialog.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing FinalRenderDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/FinalRenderDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing FinalRenderDialog.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/FinalRenderDialog.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
@ -489,20 +499,20 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\FractoriumSettings.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing FractoriumSettings.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/FractoriumSettings.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing FractoriumSettings.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/FractoriumSettings.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\TwoButtonComboWidget.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing TwoButtonComboWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/TwoButtonComboWidget.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing TwoButtonComboWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/TwoButtonComboWidget.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
@ -510,20 +520,20 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\CurvesGraphicsView.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing CurvesGraphicsView.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/CurvesGraphicsView.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing CurvesGraphicsView.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/CurvesGraphicsView.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\DoubleSpinBoxTableItemDelegate.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing DoubleSpinBoxTableItemDelegate.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/DoubleSpinBoxTableItemDelegate.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing DoubleSpinBoxTableItemDelegate.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/DoubleSpinBoxTableItemDelegate.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
@ -539,10 +549,10 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\GLWidget.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing GLWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/GLWidget.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing GLWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/GLWidget.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
@ -550,30 +560,30 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\DoubleSpinBox.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing DoubleSpinBox.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/DoubleSpinBox.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing DoubleSpinBox.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/DoubleSpinBox.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\SpinBox.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing SpinBox.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/SpinBox.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing SpinBox.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/SpinBox.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\StealthComboBox.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing StealthComboBox.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/StealthComboBox.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing StealthComboBox.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/StealthComboBox.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
@ -597,10 +607,10 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\TableWidget.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing TableWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/TableWidget.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing TableWidget.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/TableWidget.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
@ -608,10 +618,10 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
<CustomBuild Include="..\..\..\Source\Fractorium\Fractorium.h">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Moc%27ing Fractorium.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/Fractorium.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Moc%27ing Fractorium.h...</Message>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp</Outputs>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D_MBCS "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\tbb\include" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(AMDAPPSDKROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/Fractorium.h"</Command>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">"$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DWIN32 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_HELP_LIB -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_XML_LIB -D%(PreprocessorDefinitions) "-I." "-I.\PaletteEditor" "-I$(QTDIR)\include" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles" "-I$(ProjectDir)..\..\..\Fractorium\GeneratedFiles\ConfigurationName" "-I$(QTDIR)\..\qtmultimedia\include\QtMultimedia" "-I$(QTDIR)\..\qtmultimedia\include" "-I$(QTDIR)\..\qttools\include" "-I$(QTDIR)\..\qttools\include\QtHelp" "-I$(QTDIR)\include\QtConcurrent" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtOpenGL" "-I$(QTDIR)\include\QtWidgets" "-I$(QTDIR)\include\QtXml" "-I.\GeneratedFiles" "-I$(ProjectDir)..\..\..\Source\Ember" "-I$(ProjectDir)..\..\..\Source\EmberCL" "-I$(ProjectDir)..\..\..\Source\EmberCommon" "-I$(ProjectDir)..\..\..\Source\Fractorium" "-I$(ProjectDir)..\..\..\..\glm" "-I$(ProjectDir)..\..\..\..\libjpeg" "-I$(ProjectDir)..\..\..\..\libpng" "-I$(ProjectDir)..\..\..\..\libxml2\include" "-I$(ProjectDir)..\..\..\..\openexr\output\include\Imath" "-I$(ProjectDir)..\..\..\..\openexr\output\include\OpenEXR" "-I$(OCL_ROOT)\include" "-I$(CUDA_PATH)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-fFractoriumPch.h" "-f../../../../../Source/Fractorium/%(Filename)%(Extension)"</Command>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\bin\moc.exe;%(FullPath)</AdditionalInputs>
|
||||
</CustomBuild>
|
||||
@ -734,7 +744,7 @@ xcopy /F /Y /R /D "$(QTDIR)\plugins\imageformats\qjpeg.dll" "$(OutDir)\imageform
|
||||
</ImportGroup>
|
||||
<ProjectExtensions>
|
||||
<VisualStudio>
|
||||
<UserProperties MocDir=".\GeneratedFiles\$(ConfigurationName)" UicDir=".\GeneratedFiles" RccDir=".\GeneratedFiles" lupdateOptions="" lupdateOnBuild="0" lreleaseOptions="" Qt5Version_x0020_x64="Qt5" MocOptions="" />
|
||||
<UserProperties lreleaseOptions="" lupdateOnBuild="0" lupdateOptions="" MocDir=".\GeneratedFiles\$(ConfigurationName)" MocOptions="" Qt5Version_x0020_x64="$(DefaultQtVersion)" RccDir=".\GeneratedFiles" UicDir=".\GeneratedFiles" />
|
||||
</VisualStudio>
|
||||
</ProjectExtensions>
|
||||
</Project>
|
@ -61,4 +61,3 @@ HEADERS += \
|
||||
$$PRJ_SRC_DIR/OpenCLWrapper.h \
|
||||
$$PRJ_SRC_DIR/RendererClDevice.h \
|
||||
$$PRJ_SRC_DIR/RendererCL.h
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
TEMPLATE = app
|
||||
QT += core gui widgets opengl concurrent
|
||||
QT += core gui widgets opengl openglwidgets concurrent
|
||||
|
||||
TARGET = fractorium
|
||||
|
||||
@ -22,7 +22,8 @@ PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/Fractorium)
|
||||
win32 {
|
||||
CONFIG(release, debug|release) {
|
||||
qtfiles.path = $$BIN_INSTALL_DIR
|
||||
qtfiles.files = $$(QTDIR)\bin\Qt5Core.dll $$(QTDIR)\bin\Qt5Gui.dll $$(QTDIR)\bin\Qt5Widgets.dll
|
||||
|
||||
qtfiles.files = $$(QTDIR)\bin\Qt6Core.dll $$(QTDIR)\bin\Qt6Gui.dll $$(QTDIR)\bin\Qt6OpenGL.dll $$(QTDIR)\bin\Qt6OpenGLWidgets.dll $$(QTDIR)\bin\Qt6Widgets.dll
|
||||
INSTALLS += qtfiles
|
||||
|
||||
qtplatforms.path = $$BIN_INSTALL_DIR\platforms
|
||||
@ -36,7 +37,7 @@ CONFIG(release, debug|release) {
|
||||
|
||||
CONFIG(debug, debug|release) {
|
||||
qtfiles.path = $$BIN_INSTALL_DIR
|
||||
qtfiles.files = $$(QTDIR)\bin\Qt5Cored.dll $$(QTDIR)\bin\Qt5Guid.dll $$(QTDIR)\bin\Qt5Widgetsd.dll
|
||||
qtfiles.files = $$(QTDIR)\bin\Qt6Cored.dll $$(QTDIR)\bin\Qt6Guid.dll $$(QTDIR)\bin\Qt6OpenGLd.dll $$(QTDIR)\bin\Qt6OpenGLWidgetsd.dll $$(QTDIR)\bin\Qt6Widgetsd.dll
|
||||
INSTALLS += qtfiles
|
||||
|
||||
qtplatforms.path = $$BIN_INSTALL_DIR\platforms
|
||||
@ -52,6 +53,7 @@ CONFIG(debug, debug|release) {
|
||||
#For some reason, a Qt project needs to be told to look at itself.
|
||||
INCLUDEPATH += $$PRJ_SRC_DIR
|
||||
INCLUDEPATH += $$PRJ_SRC_DIR/PaletteEditor
|
||||
INCLUDEPATH += $$(QTDIR)\include\QtWidget
|
||||
|
||||
# Uncomment this if you only want to build a binary instead of an app bundle.
|
||||
#macx:CONFIG -= app_bundle
|
||||
|
@ -1,6 +1,6 @@
|
||||
VERSION = 22.21.4.2
|
||||
win32:CONFIG += skip_target_version_ext
|
||||
CONFIG += c++14
|
||||
CONFIG += c++20
|
||||
|
||||
#message(PWD: $$absolute_path($$PWD))
|
||||
|
||||
@ -14,8 +14,6 @@ autobuild {
|
||||
}
|
||||
|
||||
#2) Declare where dependency folders are.
|
||||
# Point to local copy of OpenCL includes to ensure we have the right ones.
|
||||
LOCAL_INCLUDE_DIR = $$absolute_path($$EMBER_ROOT/Builds/include/vendor)
|
||||
# Parent folders for third party dependencies and their compiled outputs.
|
||||
win32: {
|
||||
EXTERNAL_DIR = $$absolute_path($$EMBER_ROOT/..)
|
||||
@ -27,7 +25,7 @@ SRC_DIR = $$EMBER_ROOT/Source
|
||||
SRC_COMMON_DIR = $$absolute_path($$EMBER_ROOT/Source/EmberCommon)
|
||||
ASSETS_DIR = $$absolute_path($$EMBER_ROOT/Data)
|
||||
QTCREATOR_DIR = $$absolute_path($$EMBER_ROOT/Builds/QtCreator)
|
||||
win32:RCPATH=$$absolute_path($$QTCREATOR_DIR/../MSVC/VS2019)
|
||||
win32:RCPATH=$$absolute_path($$QTCREATOR_DIR/../MSVC/Solution)
|
||||
|
||||
#4) Add up all include paths.
|
||||
INCLUDEPATH += $$LOCAL_INCLUDE_DIR
|
||||
@ -81,14 +79,7 @@ win32 {
|
||||
LIBS = ""
|
||||
LIBS += OpenGL32.lib
|
||||
LIBS += WS2_32.lib
|
||||
_AMDAPPSDK = $$(AMDAPPSDKROOT)
|
||||
|
||||
isEmpty(_AMDAPPSDK) {
|
||||
LIBS += $$(CUDA_PATH)/lib/x64/OpenCL.lib
|
||||
}
|
||||
else {
|
||||
LIBS += $$(AMDAPPSDKROOT)/lib/x86_64/OpenCL.lib
|
||||
}
|
||||
LIBS += $$(OCL_ROOT)/lib/x86_64/OpenCL.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/libjpeg.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/libpng.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/libxml2.lib
|
||||
@ -144,6 +135,10 @@ QMAKE_CXXFLAGS_RELEASE += -DNDEBUG
|
||||
QMAKE_CXXFLAGS += -D_M_X64
|
||||
QMAKE_CXXFLAGS += -D_CONSOLE
|
||||
QMAKE_CXXFLAGS += -D_USRDLL
|
||||
QMAKE_CXXFLAGS -= -D_UNICODE
|
||||
QMAKE_CXXFLAGS -= -DUNICODE
|
||||
DEFINES -= _UNICODE
|
||||
DEFINES -= UNICODE
|
||||
|
||||
win32 {
|
||||
QMAKE_CXXFLAGS += -bigobj #Allow for very large object files.
|
||||
@ -189,12 +184,11 @@ win32 {
|
||||
QMAKE_CXXFLAGS += -march=k8
|
||||
}
|
||||
|
||||
CMAKE_CXXFLAGS += -DCL_USE_DEPRECATED_OPENCL_1_1_APIS # Not sure if this is needed. We remove it if all systems we build on support 1.2.
|
||||
QMAKE_CXXFLAGS_RELEASE += -fomit-frame-pointer
|
||||
QMAKE_CXXFLAGS += -fPIC
|
||||
QMAKE_CXXFLAGS += -fpermissive
|
||||
QMAKE_CXXFLAGS += -pedantic
|
||||
QMAKE_CXXFLAGS += -std=c++14
|
||||
QMAKE_CXXFLAGS += -std=c++20
|
||||
QMAKE_CXXFLAGS += -Wnon-virtual-dtor
|
||||
QMAKE_CXXFLAGS += -Wshadow
|
||||
QMAKE_CXXFLAGS += -Winit-self
|
||||
|
@ -1,4 +1,4 @@
|
||||
<flame version="EMBER-WIN-1.0.0.7" time="0" name="tyrantwave_normal_flippeddisc" size="1920 1280" center="0 0" scale="625" rotate="0" supersample="1" filter="0.5" filter_shape="gaussian" temporal_filter_type="box" temporal_filter_width="1" quality="1000" temporal_samples="100" sub_batch_size="10240" fuse="15" background="0 0 0" brightness="30" gamma="3" highlight_power="1" vibrancy="1" estimator_radius="0" estimator_minimum="0" estimator_curve="0.4" gamma_threshold="0.01" cam_zpos="0" cam_persp="0" cam_yaw="0" cam_pitch="0" cam_dof="0" palette_mode="linear" interpolation="linear" interpolation_type="log" plugins="disc linear spherical radial_blur" new_linear="1" curves="0 0 1 0 0 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1 1 1 1 ">
|
||||
<flame version="EMBER-WIN-1.0.0.7" time="0" name="tyrantwave_flippeddisc_normal" size="1920 1280" center="0 0" scale="625" rotate="0" supersample="1" filter="0.5" filter_shape="gaussian" temporal_filter_type="box" temporal_filter_width="1" quality="1000" temporal_samples="100" sub_batch_size="10240" fuse="15" background="0 0 0" brightness="30" gamma="3" highlight_power="1" vibrancy="1" estimator_radius="0" estimator_minimum="0" estimator_curve="0.4" gamma_threshold="0.01" cam_zpos="0" cam_persp="0" cam_yaw="0" cam_pitch="0" cam_dof="0" palette_mode="linear" interpolation="linear" interpolation_type="log" plugins="disc linear spherical radial_blur" new_linear="1" curves="0 0 1 0 0 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1 1 1 1 0 0 1 0 0 1 1 1 1 1 1 1 ">
|
||||
<xform weight="1" color="0" var_color="1" color_speed="0.05" symmetry="0.9" name="" animate="0" disc="1" coefs="0.4 0 0 0.4 0 0" opacity="1"/>
|
||||
<xform weight="1" color="0" var_color="1" color_speed="0.05" symmetry="0.9" name="" animate="0" disc="1" coefs="0.4 0 0 0.4 0 0" post="-1 0 0 1 0 0" opacity="1"/>
|
||||
<xform weight="0.5" color="1" var_color="1" color_speed="1" symmetry="-1" name="" animate="1" linear="0.5" spherical="0.5" radial_blur="1" radial_blur_angle="1" coefs="1 0 0 1 1 0" opacity="1"/>
|
||||
|
@ -1,8 +1,15 @@
|
||||
/*---Base Style---
|
||||
This is needed to deal with the large tabs in the fusion theme which is the default on Linux, and optional on Windows.
|
||||
It's not needed for other themes.
|
||||
This may be needed to deal with the large tabs.
|
||||
You should keep this at the top of whatever custom style you make to ensure the tabs aren't unusually large.*/
|
||||
/*
|
||||
QTabBar::tab { height: 4ex; }
|
||||
*/
|
||||
/*
|
||||
*
|
||||
{
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
*/
|
||||
|
||||
/*This is needed to give the labels on the status bar some padding.*/
|
||||
QStatusBar QLabel { padding-left: 2px; padding-right: 2px; }
|
||||
@ -101,7 +108,6 @@ QDoubleSpinBox
|
||||
padding-right: 0px;
|
||||
color: darkgray;
|
||||
selection-background-color: darkgray;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QCheckBox
|
||||
@ -322,7 +328,6 @@ QTreeView
|
||||
{
|
||||
border: 1px solid gray;
|
||||
background-color: rgb(53, 53, 53);
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
/*Setting this gives a more consistent look. Also, by omitting color and background color, it allows us to set it above with VariationTreeColorNonZero etc...*/
|
||||
@ -378,7 +383,6 @@ QTableView
|
||||
color: darkgray;
|
||||
selection-color: darkgray;
|
||||
selection-background-color: rgb(53, 53, 53);
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QTableView QTableCornerButton::section:enabled
|
||||
@ -411,7 +415,6 @@ QHeaderView::section::vertical:enabled
|
||||
border-bottom: 1px solid gray;
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:enabled
|
||||
@ -423,7 +426,6 @@ QHeaderView::section::horizontal:enabled
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::vertical:disabled
|
||||
@ -434,7 +436,6 @@ QHeaderView::section::vertical:disabled
|
||||
border-bottom: 1px solid rgb(53, 53, 53);
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:disabled
|
||||
@ -446,7 +447,6 @@ QHeaderView::section::horizontal:disabled
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QScrollBar::vertical
|
||||
|
@ -1,11 +1,15 @@
|
||||
/*---Base Style---
|
||||
This is needed to deal with the large tabs in the fusion theme which is the default on Linux, and optional on Windows.
|
||||
It's not needed for other themes.
|
||||
This may be needed to deal with the large tabs.
|
||||
You should keep this at the top of whatever custom style you make to ensure the tabs aren't unusually large.*/
|
||||
/*
|
||||
QTabBar::tab { height: 4ex; }
|
||||
|
||||
/*This is needed to give the labels on the status bar some padding.*/
|
||||
QStatusBar QLabel { padding-left: 2px; padding-right: 2px; }
|
||||
*/
|
||||
/*
|
||||
*
|
||||
{
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
*/
|
||||
|
||||
/*Specific styles below this line*/
|
||||
Fractorium
|
||||
@ -101,7 +105,6 @@ QDoubleSpinBox
|
||||
padding-right: 0px;
|
||||
color: darkgray;
|
||||
selection-background-color: darkgray;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QCheckBox
|
||||
@ -322,7 +325,6 @@ QTreeView
|
||||
{
|
||||
border: 1px solid gray;
|
||||
background-color: rgb(53, 53, 53);
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
|
||||
@ -379,7 +381,6 @@ QTableView
|
||||
color: darkgray;
|
||||
selection-color: darkgray;
|
||||
selection-background-color: rgb(53, 53, 53);
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QTableView QTableCornerButton::section:enabled
|
||||
@ -412,7 +413,6 @@ QHeaderView::section::vertical:enabled
|
||||
border-bottom: 1px solid gray;
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:enabled
|
||||
@ -424,7 +424,6 @@ QHeaderView::section::horizontal:enabled
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::vertical:disabled
|
||||
@ -435,7 +434,6 @@ QHeaderView::section::vertical:disabled
|
||||
border-bottom: 1px solid rgb(53, 53, 53);
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:disabled
|
||||
@ -447,7 +445,6 @@ QHeaderView::section::horizontal:disabled
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QScrollBar::vertical
|
||||
|
@ -1,8 +1,13 @@
|
||||
/*---Base Style---
|
||||
This is needed to deal with the large tabs in the fusion theme which is the default on Linux, and optional on Windows.
|
||||
It's not needed for other themes.
|
||||
This may be needed to deal with the large tabs.
|
||||
You should keep this at the top of whatever custom style you make to ensure the tabs aren't unusually large.*/
|
||||
/*
|
||||
QTabBar::tab { height: 4ex; }
|
||||
*/
|
||||
*
|
||||
{
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
/*This is needed to give the labels on the status bar some padding.*/
|
||||
QStatusBar QLabel { padding-left: 2px; padding-right: 2px; }
|
||||
@ -101,7 +106,6 @@ QDoubleSpinBox
|
||||
padding-right: 0px;
|
||||
color: darkgray;
|
||||
selection-background-color: darkgray;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QCheckBox
|
||||
@ -322,7 +326,6 @@ QTreeView
|
||||
{
|
||||
border: 1px solid gray;
|
||||
background-color: rgb(53, 53, 53);
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
/*Setting this gives a more consistent look. Also, by omitting color and background color, it allows us to set it above with VariationTreeColorNonZero etc...*/
|
||||
@ -378,7 +381,6 @@ QTableView
|
||||
color: darkgray;
|
||||
selection-color: darkgray;
|
||||
selection-background-color: rgb(53, 53, 53);
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QTableView QTableCornerButton::section:enabled
|
||||
@ -411,7 +413,6 @@ QHeaderView::section::vertical:enabled
|
||||
border-bottom: 1px solid gray;
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:enabled
|
||||
@ -423,7 +424,6 @@ QHeaderView::section::horizontal:enabled
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::vertical:disabled
|
||||
@ -434,7 +434,6 @@ QHeaderView::section::vertical:disabled
|
||||
border-bottom: 1px solid rgb(53, 53, 53);
|
||||
padding-left: 5px;
|
||||
padding-right: 0px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QHeaderView::section::horizontal:disabled
|
||||
@ -446,7 +445,6 @@ QHeaderView::section::horizontal:disabled
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 3px;
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QScrollBar::vertical
|
||||
|
@ -1,6 +1,12 @@
|
||||
/*---Base Style---
|
||||
This may be needed to deal with the large tabs.
|
||||
You should keep this at the top of whatever custom style you make to ensure the tabs aren't unusually large.*/
|
||||
/*
|
||||
QTabBar::tab { height: 4ex; }
|
||||
*/
|
||||
*
|
||||
{
|
||||
font: 8.5pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QObject
|
||||
|
@ -1,6 +1,12 @@
|
||||
/*---Base Style---
|
||||
This may be needed to deal with the large tabs.
|
||||
You should keep this at the top of whatever custom style you make to ensure the tabs aren't unusually large.*/
|
||||
/*
|
||||
QTabBar::tab { height: 4ex; }
|
||||
*/
|
||||
*
|
||||
{
|
||||
font: 8.5pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
font: 8pt "MS Shell Dlg 2";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/
|
||||
}
|
||||
|
||||
QObject
|
||||
|
@ -1605,16 +1605,16 @@ public:
|
||||
/// <summary>
|
||||
/// Accessors.
|
||||
/// </summary>
|
||||
inline const Xform<T>* Xforms() const { return m_Xforms.data(); }
|
||||
inline Xform<T>* NonConstXforms() { return m_Xforms.data(); }
|
||||
inline size_t XformCount() const { return m_Xforms.size(); }
|
||||
inline const Xform<T>* FinalXform() const { return &m_FinalXform; }
|
||||
inline Xform<T>* NonConstFinalXform() { return &m_FinalXform; }
|
||||
inline bool UseFinalXform() const { return !m_FinalXform.Empty(); }
|
||||
inline size_t TotalXformCount(bool forceFinal = false) const { return XformCount() + ((forceFinal || UseFinalXform()) ? 1 : 0); }
|
||||
inline int PaletteIndex() const { return m_Palette.m_Index; }
|
||||
inline T BlurCoef() { return m_BlurCoef; }
|
||||
inline eScaleType ScaleType() const { return m_ScaleType; }
|
||||
inline const Xform<T>* Xforms() const noexcept { return m_Xforms.data(); }
|
||||
inline Xform<T>* NonConstXforms() noexcept { return m_Xforms.data(); }
|
||||
inline size_t XformCount() const noexcept { return m_Xforms.size(); }
|
||||
inline const Xform<T>* FinalXform() const noexcept { return &m_FinalXform; }
|
||||
inline Xform<T>* NonConstFinalXform() noexcept { return &m_FinalXform; }
|
||||
inline bool UseFinalXform() const noexcept { return !m_FinalXform.Empty(); }
|
||||
inline size_t TotalXformCount(bool forceFinal = false) const noexcept { return XformCount() + ((forceFinal || UseFinalXform()) ? 1 : 0); }
|
||||
inline int PaletteIndex() const noexcept { return m_Palette.m_Index; }
|
||||
inline T BlurCoef() noexcept { return m_BlurCoef; }
|
||||
inline eScaleType ScaleType() const noexcept { return m_ScaleType; }
|
||||
|
||||
//The width and height in pixels of the final output image. The size of the histogram and DE filtering buffers will differ from this.
|
||||
//Xml fields: "size".
|
||||
|
@ -88,12 +88,12 @@ typedef std::lock_guard <std::recursive_mutex> rlg;
|
||||
typedef std::chrono::high_resolution_clock Clock;
|
||||
typedef std::chrono::duration<double, std::ratio<1, 1000>> DoubleMs;
|
||||
typedef std::chrono::time_point<Clock, DoubleMs> DoubleMsTimePoint;
|
||||
static inline DoubleMsTimePoint NowMsD() { return time_point_cast<DoubleMs>(Clock::now()); }
|
||||
static inline size_t NowMs() { return duration_cast<milliseconds>(Clock::now().time_since_epoch()).count(); }
|
||||
static inline DoubleMsTimePoint NowMsD() noexcept { return time_point_cast<DoubleMs>(Clock::now()); }
|
||||
static inline size_t NowMs() noexcept { return duration_cast<milliseconds>(Clock::now().time_since_epoch()).count(); }
|
||||
|
||||
#ifndef byte
|
||||
typedef unsigned char byte;
|
||||
#endif
|
||||
//#ifndef byte
|
||||
// typedef unsigned char byte;
|
||||
//#endif
|
||||
|
||||
#define DO_DOUBLE 1//Comment this out for shorter build times during development. Always uncomment for release.
|
||||
//#define ISAAC_FLAM3_DEBUG 1//This is almost never needed, but is very useful when troubleshooting difficult bugs. Enable it to do a side by side comparison with flam3.
|
||||
|
@ -758,11 +758,11 @@ public:
|
||||
refang = xform->m_Wind[col] - M_2PI;
|
||||
|
||||
//Make sure both angles are within [refang refang + 2 * pi].
|
||||
while (cxAng[k - 1][col] < refang)
|
||||
cxAng[k - 1][col] += M_2PI;
|
||||
while (cxAng[k - 1L][col] < refang)
|
||||
cxAng[k - 1L][col] += M_2PI;
|
||||
|
||||
while (cxAng[k - 1][col] > refang + M_2PI)
|
||||
cxAng[k - 1][col] -= M_2PI;
|
||||
while (cxAng[k - 1L][col] > refang + M_2PI)
|
||||
cxAng[k - 1L][col] -= M_2PI;
|
||||
|
||||
while (cxAng[k][col] < refang)
|
||||
cxAng[k][col] += M_2PI;
|
||||
|
@ -33,10 +33,10 @@
|
||||
|
||||
#ifndef __ISAAC64
|
||||
typedef uint ISAAC_INT;
|
||||
const ISAAC_INT GOLDEN_RATIO = ISAAC_INT{ 0x9e3779b9 };
|
||||
constexpr ISAAC_INT GOLDEN_RATIO = ISAAC_INT{ 0x9e3779b9 };
|
||||
#else
|
||||
typedef size_t ISAAC_INT;
|
||||
const ISAAC_INT GOLDEN_RATIO = ISAAC_INT{ 0x9e3779b97f4a7c13 };
|
||||
constexpr ISAAC_INT GOLDEN_RATIO = ISAAC_INT{ 0x9e3779b97f4a7c13 };
|
||||
#endif
|
||||
|
||||
namespace EmberNs
|
||||
|
@ -142,7 +142,7 @@ public:
|
||||
#ifdef _DEBUG
|
||||
|
||||
//Ensure distribution contains no out of bounds indices.
|
||||
if (byte(i) >= ember.XformCount())
|
||||
if ((unsigned char)i >= ember.XformCount())
|
||||
throw "Out of bounds xform index in selection distribution.";
|
||||
|
||||
#endif
|
||||
@ -156,7 +156,7 @@ public:
|
||||
//If probability was zero, then nothing was filled in, so make all zero.
|
||||
//If it was non zero but for some reason didn't fill all elements, then just make the remaining
|
||||
//elements have the index of the last xform.
|
||||
byte val = j ? byte(i - 1) : 0;
|
||||
byte val = j ? byte(i - 1) : byte(0);
|
||||
|
||||
for (; j < CHOOSE_XFORM_GRAIN; j++)//Make absolutely sure they are set to a valid value.
|
||||
m_XformDistributions[(distrib * CHOOSE_XFORM_GRAIN) + j] = val;
|
||||
|
@ -54,7 +54,7 @@ public:
|
||||
else//They passed in null, so just fill with hard coded values so they at least have something.
|
||||
{
|
||||
//Palette 15 used in the test ember file.
|
||||
byte palette15[COLORMAP_LENGTH * 4] =
|
||||
unsigned char palette15[COLORMAP_LENGTH * 4] =
|
||||
{
|
||||
0x00, 0xda, 0xde, 0xbc, 0x00, 0xee, 0xe6, 0xc5, 0x00, 0xee, 0xf2, 0xce, 0x00, 0xee, 0xf2, 0xcf, 0x00, 0xe6, 0xee, 0xe1, 0x00, 0xea, 0xee, 0xd8, 0x00, 0xf2, 0xf1, 0xeb, 0x00, 0xf2, 0xf5, 0xd8,
|
||||
0x00, 0xe6, 0xf2, 0xce, 0x00, 0xde, 0xea, 0xc5, 0x00, 0xd6, 0xda, 0xc6, 0x00, 0xce, 0xd2, 0xbc, 0x00, 0xc2, 0xca, 0xa9, 0x00, 0xbe, 0xca, 0xa0, 0x00, 0xce, 0xd6, 0xaa, 0x00, 0xde, 0xe2, 0xc5,
|
||||
@ -395,10 +395,10 @@ public:
|
||||
/// </summary>
|
||||
/// <param name="height">The height of the output block</param>
|
||||
/// <returns>A vector holding the color values</returns>
|
||||
vector<byte> MakeRgbPaletteBlock(size_t height)
|
||||
vector<unsigned char> MakeRgbPaletteBlock(size_t height)
|
||||
{
|
||||
const auto width = Size();
|
||||
vector<byte> v(height * width * 3);
|
||||
vector<unsigned char> v(height * width * 3);
|
||||
|
||||
if (v.size() == (height * Size() * 3))
|
||||
{
|
||||
@ -406,9 +406,9 @@ public:
|
||||
{
|
||||
for (size_t j = 0; j < width; j++)
|
||||
{
|
||||
v[(width * 3 * i) + (j * 3)] = static_cast<byte>(m_Entries[j][0] * static_cast<T>(255));//Palettes are as [0..1], so convert to [0..255] here since it's for GUI display.
|
||||
v[(width * 3 * i) + (j * 3) + 1] = static_cast<byte>(m_Entries[j][1] * static_cast<T>(255));
|
||||
v[(width * 3 * i) + (j * 3) + 2] = static_cast<byte>(m_Entries[j][2] * static_cast<T>(255));
|
||||
v[(width * 3 * i) + (j * 3)] = static_cast<unsigned char>(m_Entries[j][0] * static_cast<T>(255));//Palettes are as [0..1], so convert to [0..255] here since it's for GUI display.
|
||||
v[(width * 3 * i) + (j * 3) + 1] = static_cast<unsigned char>(m_Entries[j][1] * static_cast<T>(255));
|
||||
v[(width * 3 * i) + (j * 3) + 2] = static_cast<unsigned char>(m_Entries[j][2] * static_cast<T>(255));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -291,7 +291,7 @@ Palette<T>* PaletteList<T>::GetRandomPalette()
|
||||
attempts++;
|
||||
}
|
||||
|
||||
return Size() ? &s_Palettes[0][0] : nullptr;
|
||||
return Size() ? (&s_Palettes.begin()->second[0]) : nullptr;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -116,12 +116,10 @@ static int SortPointByY(const Point<T>& a, const Point<T>& b)
|
||||
template <typename T>
|
||||
struct EMBER_API Color : public v4T
|
||||
{
|
||||
#ifndef _WIN32
|
||||
using v4T::r;
|
||||
using v4T::g;
|
||||
using v4T::b;
|
||||
using v4T::a;
|
||||
#endif
|
||||
public:
|
||||
/// <summary>
|
||||
/// Constructor to set color values to zero, with full visibility.
|
||||
|
@ -384,6 +384,7 @@ bool Renderer<T, bucketT>::CreateTemporalFilter(bool& newAlloc)
|
||||
template <typename T, typename bucketT>
|
||||
eRenderStatus Renderer<T, bucketT>::Run(vector<v4F>& finalImage, double time, size_t subBatchCountOverride, bool forceOutput, size_t finalOffset)
|
||||
{
|
||||
m_RenderTimer.Tic();
|
||||
m_InRender = true;
|
||||
EnterRender();
|
||||
m_Abort = false;
|
||||
@ -406,7 +407,6 @@ eRenderStatus Renderer<T, bucketT>::Run(vector<v4F>& finalImage, double time, si
|
||||
|
||||
if (!resume)//Beginning, reset everything.
|
||||
{
|
||||
m_RenderTimer.Tic();
|
||||
m_LastTemporalSample = 0;
|
||||
m_LastIter = 0;
|
||||
m_LastIterPercent = 0;
|
||||
@ -420,7 +420,6 @@ eRenderStatus Renderer<T, bucketT>::Run(vector<v4F>& finalImage, double time, si
|
||||
//User requested an increase in quality after finishing.
|
||||
else if (m_ProcessState == eProcessState::ITER_STARTED && m_ProcessAction == eProcessAction::KEEP_ITERATING && TemporalSamples() == 1)
|
||||
{
|
||||
m_RenderTimer.Tic();
|
||||
m_LastTemporalSample = 0;
|
||||
m_LastIter = m_Stats.m_Iters;
|
||||
m_LastIterPercent = 0;//Might skip a progress update, but shouldn't matter.
|
||||
@ -709,7 +708,6 @@ AccumOnly:
|
||||
|
||||
if (AccumulatorToFinalImage(finalImage, finalOffset) == eRenderStatus::RENDER_OK)
|
||||
{
|
||||
m_Stats.m_RenderMs += m_RenderTimer.Toc();//Record total time from the very beginning to the very end, including all intermediate calls.
|
||||
//Even though the ember changes throughought the inner loops because of interpolation, it's probably ok to assign here.
|
||||
//This will hold the last interpolated value (even though spatial and temporal filters were created based off of one of the first interpolated values).
|
||||
m_LastEmber = m_Ember;
|
||||
@ -741,6 +739,7 @@ Finish:
|
||||
|
||||
LeaveRender();
|
||||
m_InRender = false;
|
||||
m_Stats.m_RenderMs += m_RenderTimer.Toc();//Record total time from the very beginning to the very end, including all intermediate calls.
|
||||
return success;
|
||||
}
|
||||
|
||||
|
@ -432,7 +432,7 @@ void RendererBase::ThreadCount(size_t threads, const char* seedString)
|
||||
m_Rand.push_back(isaac);
|
||||
|
||||
for (i = 0; i < (isaacSize * sizeof(ISAAC_INT)); i++)
|
||||
reinterpret_cast<byte*>(seeds)[i]++;
|
||||
reinterpret_cast<unsigned char*>(seeds)[i]++;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -54,12 +54,12 @@ public:
|
||||
/// <summary>
|
||||
/// Constructor which sets all values to 0.
|
||||
/// </summary>
|
||||
EmberStats()
|
||||
EmberStats() noexcept
|
||||
{
|
||||
Clear();
|
||||
}
|
||||
|
||||
void Clear()
|
||||
void Clear() noexcept
|
||||
{
|
||||
m_Success = true;
|
||||
m_Iters = 0;
|
||||
@ -68,7 +68,7 @@ public:
|
||||
m_RenderMs = 0;
|
||||
}
|
||||
|
||||
EmberStats& operator += (const EmberStats& stats)
|
||||
EmberStats& operator += (const EmberStats& stats) noexcept
|
||||
{
|
||||
m_Success &= stats.m_Success;
|
||||
m_Iters += stats.m_Iters;
|
||||
|
@ -22,7 +22,7 @@ public:
|
||||
/// As a convenience, the Tic() function is called automatically.
|
||||
/// </summary>
|
||||
/// <param name="precision">The precision of the seconds field of the elapsed time. Default: 2.</param>
|
||||
Timing(int precision = 2)
|
||||
Timing(int precision = 2) noexcept
|
||||
{
|
||||
m_Precision = precision;
|
||||
Init();
|
||||
@ -33,7 +33,7 @@ public:
|
||||
/// Set the begin time.
|
||||
/// </summary>
|
||||
/// <returns>The begin time cast to a double</returns>
|
||||
double Tic()
|
||||
double Tic() noexcept
|
||||
{
|
||||
m_BeginTime = NowMsD();
|
||||
return BeginTime();
|
||||
@ -62,19 +62,19 @@ public:
|
||||
/// Return the begin time as a double.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
double BeginTime() const { return static_cast<double>(m_BeginTime.time_since_epoch().count()); }
|
||||
double BeginTime() const noexcept { return static_cast<double>(m_BeginTime.time_since_epoch().count()); }
|
||||
|
||||
/// <summary>
|
||||
/// Return the end time as a double.
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
double EndTime() const { return static_cast<double>(m_EndTime.time_since_epoch().count()); }
|
||||
double EndTime() const noexcept { return static_cast<double>(m_EndTime.time_since_epoch().count()); }
|
||||
|
||||
/// <summary>
|
||||
/// Return the elapsed time in milliseconds.
|
||||
/// </summary>
|
||||
/// <returns>The elapsed time in milliseconds as a double</returns>
|
||||
double ElapsedTime() const
|
||||
double ElapsedTime() const noexcept
|
||||
{
|
||||
return (m_EndTime - m_BeginTime).count();
|
||||
}
|
||||
@ -128,7 +128,7 @@ private:
|
||||
/// Since it will never change it only needs to be queried once.
|
||||
/// This is achieved by keeping static state and performance variables.
|
||||
/// </summary>
|
||||
static void Init()
|
||||
static void Init() noexcept
|
||||
{
|
||||
if (!m_TimingInit)
|
||||
{
|
||||
|
@ -48,7 +48,7 @@ static inline bool FindIf(c& container, pr pred)
|
||||
/// <param name="val">The value to search for</param>
|
||||
/// <returns>True if the value was contained at least once, else false.</returns>
|
||||
template<class c, class T>
|
||||
static inline bool Contains(c& container, const T& val)
|
||||
static inline bool Contains(c& container, const T& val) noexcept
|
||||
{
|
||||
return std::find_if(container.begin(), container.end(), [&](const T & t) -> bool { return t == val; }) != container.end();
|
||||
}
|
||||
@ -60,7 +60,7 @@ static inline bool Contains(c& container, const T& val)
|
||||
/// <param name="str1">The string to call find() on</param>
|
||||
/// <param name="str2">The string to search for</param>
|
||||
/// <returns>True if str2 was present at least once, else false.</returns>
|
||||
static bool Find(const string& str1, const string& str2)
|
||||
static bool Find(const string& str1, const string& str2) noexcept
|
||||
{
|
||||
return str1.find(str2) != string::npos;
|
||||
}
|
||||
@ -71,7 +71,7 @@ static bool Find(const string& str1, const string& str2)
|
||||
/// <param name="vec">The vector to compute the size of</param>
|
||||
/// <returns>The size of one element times the length.</returns>
|
||||
template<typename T>
|
||||
static inline size_t SizeOf(const vector<T>& vec)
|
||||
static inline size_t SizeOf(const vector<T>& vec) noexcept
|
||||
{
|
||||
return sizeof(vec[0]) * vec.size();
|
||||
}
|
||||
@ -140,7 +140,7 @@ public:
|
||||
/// Derived classes with members that also derive from EmberReport should override this to clear
|
||||
/// their error information as well as that of their members.
|
||||
/// </summary>
|
||||
virtual void ClearErrorReport() { m_ErrorReport.clear(); }
|
||||
virtual void ClearErrorReport() noexcept { m_ErrorReport.clear(); }
|
||||
|
||||
/// <summary>
|
||||
/// Return the entire error report as a single string.
|
||||
@ -310,7 +310,7 @@ static bool ReadFile(const char* filename, string& buf, bool nullTerminate = tru
|
||||
ifs.exceptions(ifstream::failbit);
|
||||
ifs.open(filename, ios::binary | ios::ate);
|
||||
|
||||
if (auto pos = ifs.tellg())//Ensure it exists and wasn't empty.
|
||||
if (const auto pos = ifs.tellg())//Ensure it exists and wasn't empty.
|
||||
{
|
||||
buf.resize(pos + streampos(nullTerminate ? 1 : 0));
|
||||
ifs.seekg(0, ios::beg);
|
||||
@ -465,7 +465,7 @@ static inline void Memset(vector<T>& vec, int val = 0)
|
||||
/// <param name="x">The value to return the floor of</param>
|
||||
/// <returns>The floored value</returns>
|
||||
template <typename T>
|
||||
static inline intmax_t Floor(T val)
|
||||
static inline intmax_t Floor(T val) noexcept
|
||||
{
|
||||
if (val >= 0)
|
||||
{
|
||||
@ -487,7 +487,7 @@ static inline intmax_t Floor(T val)
|
||||
/// <param name="max">A value which the clamped value must be less than or equal to</param>
|
||||
/// <returns>The clamped value</returns>
|
||||
template <typename T>
|
||||
static inline T Clamp(T val, T min, T max)
|
||||
static inline T Clamp(T val, T min, T max) noexcept
|
||||
{
|
||||
if (val < min)
|
||||
return min;
|
||||
@ -498,7 +498,7 @@ static inline T Clamp(T val, T min, T max)
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC float Clamp<float>(float val, float min, float max)
|
||||
STATIC float Clamp<float>(float val, float min, float max) noexcept
|
||||
{
|
||||
if (val < min)
|
||||
return min;
|
||||
@ -511,7 +511,7 @@ STATIC float Clamp<float>(float val, float min, float max)
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC double Clamp<double>(double val, double min, double max)
|
||||
STATIC double Clamp<double>(double val, double min, double max) noexcept
|
||||
{
|
||||
if (val < min)
|
||||
return min;
|
||||
@ -533,7 +533,7 @@ STATIC double Clamp<double>(double val, double min, double max)
|
||||
/// <param name="max">A value which the clamped value must be less than or equal to</param>
|
||||
/// <returns>The clamped and modded value</returns>
|
||||
template <typename T>
|
||||
static inline T ClampMod(T val, T min, T max)
|
||||
static inline T ClampMod(T val, T min, T max) noexcept
|
||||
{
|
||||
if (val < min)
|
||||
return min + fmod(val - min, max - min);
|
||||
@ -552,7 +552,7 @@ static inline T ClampMod(T val, T min, T max)
|
||||
/// <param name="min">A value which the clamped value must be greater than or equal to</param>
|
||||
/// <param name="max">A value which the clamped value must be less than or equal to</param>
|
||||
template <typename T>
|
||||
static inline void ClampRef(T& val, T min, T max)
|
||||
static inline void ClampRef(T& val, T min, T max) noexcept
|
||||
{
|
||||
if (val < min)
|
||||
val = min;
|
||||
@ -561,7 +561,7 @@ static inline void ClampRef(T& val, T min, T max)
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC void ClampRef<float>(float& val, float min, float max)
|
||||
STATIC void ClampRef<float>(float& val, float min, float max) noexcept
|
||||
{
|
||||
if (val < min)
|
||||
val = min;
|
||||
@ -572,7 +572,7 @@ STATIC void ClampRef<float>(float& val, float min, float max)
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC void ClampRef<double>(double& val, double min, double max)
|
||||
STATIC void ClampRef<double>(double& val, double min, double max) noexcept
|
||||
{
|
||||
if (val < min)
|
||||
val = min;
|
||||
@ -588,21 +588,21 @@ STATIC void ClampRef<double>(double& val, double min, double max)
|
||||
/// <param name="val">The reference value to be clamped in place</param>
|
||||
/// <param name="gte">A value which the clamped value must be less than or equal to</param>
|
||||
template <typename T>
|
||||
static inline void ClampLteRef(T& val, T lte)
|
||||
static inline void ClampLteRef(T& val, T lte) noexcept
|
||||
{
|
||||
if (val > lte)
|
||||
val = lte;
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC void ClampLteRef<float>(float& val, float lte)
|
||||
STATIC void ClampLteRef<float>(float& val, float lte) noexcept
|
||||
{
|
||||
if (val > lte || !std::isfinite(val))
|
||||
val = lte;
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC void ClampLteRef<double>(double& val, double lte)
|
||||
STATIC void ClampLteRef<double>(double& val, double lte) noexcept
|
||||
{
|
||||
if (val > lte || !std::isfinite(val))
|
||||
val = lte;
|
||||
@ -616,13 +616,13 @@ STATIC void ClampLteRef<double>(double& val, double lte)
|
||||
/// <param name="gte">A value which the clamped value must be greater than or equal to</param>
|
||||
/// <returns>The clamped value</returns>
|
||||
template <typename T>
|
||||
static inline T ClampGte(T val, T gte)
|
||||
static inline T ClampGte(T val, T gte) noexcept
|
||||
{
|
||||
return (val < gte) ? gte : val;
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC float ClampGte<float>(float val, float gte)
|
||||
STATIC float ClampGte<float>(float val, float gte) noexcept
|
||||
{
|
||||
if (val < gte || !std::isfinite(val))
|
||||
return gte;
|
||||
@ -631,7 +631,7 @@ STATIC float ClampGte<float>(float val, float gte)
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC double ClampGte<double>(double val, double gte)
|
||||
STATIC double ClampGte<double>(double val, double gte) noexcept
|
||||
{
|
||||
if (val < gte || !std::isfinite(val))
|
||||
return gte;
|
||||
@ -645,21 +645,21 @@ STATIC double ClampGte<double>(double val, double gte)
|
||||
/// <param name="val">The reference value to be clamped in place</param>
|
||||
/// <param name="gte">A value which the clamped value must be greater than or equal to</param>
|
||||
template <typename T>
|
||||
static inline void ClampGteRef(T& val, T gte)
|
||||
static inline void ClampGteRef(T& val, T gte) noexcept
|
||||
{
|
||||
if (val < gte)
|
||||
val = gte;
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC void ClampGteRef<float>(float& val, float gte)
|
||||
STATIC void ClampGteRef<float>(float& val, float gte) noexcept
|
||||
{
|
||||
if (val < gte || !std::isfinite(val))
|
||||
val = gte;
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC void ClampGteRef<double>(double& val, double gte)
|
||||
STATIC void ClampGteRef<double>(double& val, double gte) noexcept
|
||||
{
|
||||
if (val < gte || !std::isfinite(val))
|
||||
val = gte;
|
||||
@ -671,7 +671,7 @@ STATIC void ClampGteRef<double>(double& val, double gte)
|
||||
/// <param name="val">The value to be clamped</param>
|
||||
/// <returns>The clamped value</returns>
|
||||
template <typename T>
|
||||
static inline T ClampGte0(T val)
|
||||
static inline T ClampGte0(T val) noexcept
|
||||
{
|
||||
return ClampGte<T>(val, 0);
|
||||
}
|
||||
@ -681,7 +681,7 @@ static inline T ClampGte0(T val)
|
||||
/// </summary>
|
||||
/// <param name="val">The reference value to be clamped in place</param>
|
||||
template <typename T>
|
||||
static inline void ClampGte0Ref(T& val)
|
||||
static inline void ClampGte0Ref(T& val) noexcept
|
||||
{
|
||||
ClampGteRef<T>(val, 0);
|
||||
}
|
||||
@ -692,7 +692,7 @@ static inline void ClampGte0Ref(T& val)
|
||||
/// <param name="r">The value to round</param>
|
||||
/// <returns>The rounded value</returns>
|
||||
template <typename T>
|
||||
static inline T Round(T r)
|
||||
static inline T Round(T r) noexcept
|
||||
{
|
||||
return (r > 0) ? static_cast<T>(Floor<T>(r + T(0.5))) : std::ceil(r - T(0.5));
|
||||
}
|
||||
@ -703,7 +703,7 @@ static inline T Round(T r)
|
||||
/// <param name="r">The value to round</param>
|
||||
/// <returns>The rounded value</returns>
|
||||
template <typename T>
|
||||
static inline T Round6(T r)
|
||||
static inline T Round6(T r) noexcept
|
||||
{
|
||||
r *= 1e6;
|
||||
|
||||
@ -721,7 +721,7 @@ static inline T Round6(T r)
|
||||
/// <param name="v">The value to square</param>
|
||||
/// <returns>The squared value</returns>
|
||||
template <typename T>
|
||||
static inline T Sqr(T t)
|
||||
static inline T Sqr(T t) noexcept
|
||||
{
|
||||
return t * t;
|
||||
}
|
||||
@ -734,25 +734,25 @@ static inline T Sqr(T t)
|
||||
/// <param name="v">The value to cube</param>
|
||||
/// <returns>The cubed value</returns>
|
||||
template <typename T>
|
||||
static inline T Cube(T t)
|
||||
static inline T Cube(T t) noexcept
|
||||
{
|
||||
return t * t * t;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
static inline T SafeTan(T x)
|
||||
static inline T SafeTan(T x) noexcept
|
||||
{
|
||||
return x;
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC float SafeTan<float>(float x)
|
||||
STATIC float SafeTan<float>(float x) noexcept
|
||||
{
|
||||
return std::tan(Clamp<float>(x, FLOAT_MIN_TAN, FLOAT_MAX_TAN));
|
||||
}
|
||||
|
||||
template <>
|
||||
STATIC double SafeTan<double>(double x)
|
||||
STATIC double SafeTan<double>(double x) noexcept
|
||||
{
|
||||
return std::tan(x);
|
||||
}
|
||||
@ -764,7 +764,7 @@ STATIC double SafeTan<double>(double x)
|
||||
/// <param name="y">The y distance</param>
|
||||
/// <returns>EPS or the value if it was non-zero</returns>
|
||||
template <typename T>
|
||||
static inline T Zeps(T x)
|
||||
static inline T Zeps(T x) noexcept
|
||||
{
|
||||
return x == 0 ? EPS : x;
|
||||
}
|
||||
@ -777,7 +777,7 @@ static inline T Zeps(T x)
|
||||
/// <param name="p">The percentage between the two values to calculate.</param>
|
||||
/// <returns>The interpolated value.</returns>
|
||||
template <typename T>
|
||||
static inline T Lerp(T a, T b, T p)
|
||||
static inline T Lerp(T a, T b, T p) noexcept
|
||||
{
|
||||
return a + (b - a) * p;
|
||||
}
|
||||
@ -802,7 +802,7 @@ static inline bool Compare(const xmlChar* name, const char* val)
|
||||
/// <param name="tolerance">The tolerance. Default: 1e-6.</param>
|
||||
/// <returns>True if the value was very close to zero, else false</returns>
|
||||
template <typename T>
|
||||
static inline bool IsNearZero(T val, T tolerance = 1e-6)
|
||||
static inline bool IsNearZero(T val, T tolerance = 1e-6) noexcept
|
||||
{
|
||||
return (val > -tolerance && val < tolerance);
|
||||
}
|
||||
@ -816,7 +816,7 @@ static inline bool IsNearZero(T val, T tolerance = 1e-6)
|
||||
/// <param name="tolerance">The tolerance. Default: 1e-6.</param>
|
||||
/// <returns>True if the values were very close to each other, else false</returns>
|
||||
template <typename T>
|
||||
static inline bool IsClose(T val1, T val2, T tolerance = 1e-6)
|
||||
static inline bool IsClose(T val1, T val2, T tolerance = 1e-6) noexcept
|
||||
{
|
||||
return IsNearZero(val1 - val2, tolerance);
|
||||
}
|
||||
@ -827,7 +827,7 @@ static inline bool IsClose(T val1, T val2, T tolerance = 1e-6)
|
||||
/// <param name="angle">The angle to normalize</param>
|
||||
/// <returns>The normalized angle in a range of -180 - 180</returns>
|
||||
template <typename T>
|
||||
static inline T NormalizeDeg180(T angle)
|
||||
static inline T NormalizeDeg180(T angle) noexcept
|
||||
{
|
||||
auto a = fmod(angle, T(360));
|
||||
|
||||
@ -845,7 +845,7 @@ static inline T NormalizeDeg180(T angle)
|
||||
/// <param name="angle">The angle to normalize</param>
|
||||
/// <returns>The normalized angle in a range of 0 - 360</returns>
|
||||
template <typename T>
|
||||
static inline T NormalizeDeg360(T angle)
|
||||
static inline T NormalizeDeg360(T angle) noexcept
|
||||
{
|
||||
if (angle > 360 || angle < -360)
|
||||
angle = fmod(angle, T(360));
|
||||
@ -862,7 +862,7 @@ static inline T NormalizeDeg360(T angle)
|
||||
/// <param name="Angle">The angle to convert</param>
|
||||
/// <returns>The trig equivalent of the angle passed in</returns>
|
||||
template <typename T>
|
||||
static inline T ToTrigAngle(T angle)
|
||||
static inline T ToTrigAngle(T angle) noexcept
|
||||
{
|
||||
return NormalizeDeg360(90 - angle);
|
||||
}
|
||||
@ -1164,7 +1164,7 @@ static void Join(std::vector<std::thread>& vec)
|
||||
/// <summary>
|
||||
/// Return a character pointer to a version string composed of the EMBER_OS and EMBER_VERSION values.
|
||||
/// </summary>
|
||||
static inline const char* EmberVersion()
|
||||
static inline const char* EmberVersion() noexcept
|
||||
{
|
||||
return EMBER_OS "-" EMBER_VERSION;
|
||||
}
|
||||
|
@ -555,7 +555,7 @@ public:
|
||||
/// <summary>
|
||||
/// Compute color cache values: color speed and one minus color speed.
|
||||
/// </summary>
|
||||
void CacheColorVals()
|
||||
void CacheColorVals() noexcept
|
||||
{
|
||||
//Figure out which is right. //TODO.
|
||||
//m_ColorSpeedCache = m_ColorX * (1 - m_ColorSpeed) / 2;//Apo style.
|
||||
@ -572,7 +572,7 @@ public:
|
||||
/// </summary>
|
||||
/// <param name="i">The xaos index to retrieve</param>
|
||||
/// <returns>The value at the index if in range, else 1.</returns>
|
||||
T Xaos(size_t i) const
|
||||
T Xaos(size_t i) const noexcept
|
||||
{
|
||||
return i < m_Xaos.size() ? m_Xaos[i] : 1;
|
||||
}
|
||||
@ -605,7 +605,7 @@ public:
|
||||
/// of the parent ember is anything other than 1.
|
||||
/// </summary>
|
||||
/// <returns>True if found, else false.</returns>
|
||||
bool XaosPresent() const
|
||||
bool XaosPresent() const noexcept
|
||||
{
|
||||
if (m_ParentEmber)
|
||||
for (size_t i = 0; i < m_Xaos.size(); i++)
|
||||
@ -859,25 +859,25 @@ public:
|
||||
/// The precalc flags are duplicated in each variation. Each value here
|
||||
/// is true if any of the variations need it precalculated.
|
||||
/// </summary>
|
||||
inline bool NeedPrecalcSumSquares() const { return m_NeedPrecalcSumSquares; }
|
||||
inline bool NeedPrecalcSqrtSumSquares() const { return m_NeedPrecalcSqrtSumSquares; }
|
||||
inline bool NeedPrecalcAngles() const { return m_NeedPrecalcAngles; }
|
||||
inline bool NeedPrecalcAtanXY() const { return m_NeedPrecalcAtanXY; }
|
||||
inline bool NeedPrecalcAtanYX() const { return m_NeedPrecalcAtanYX; }
|
||||
inline bool NeedAnyPrecalc() const { return NeedPrecalcSumSquares() || NeedPrecalcSqrtSumSquares() || NeedPrecalcAngles() || NeedPrecalcAtanXY() || NeedPrecalcAtanYX(); }
|
||||
bool HasPre() const { return m_HasPre; }
|
||||
bool HasPost() const { return m_HasPost; }
|
||||
size_t PreVariationCount() const { return m_PreVariations.size(); }
|
||||
size_t VariationCount() const { return m_Variations.size(); }
|
||||
size_t PostVariationCount() const { return m_PostVariations.size(); }
|
||||
size_t TotalVariationCount() const { return PreVariationCount() + VariationCount() + PostVariationCount(); }
|
||||
bool Empty() const { return TotalVariationCount() == 0 && m_Affine.IsID(); }//Use this instead of padding like the original did.
|
||||
T ColorSpeedCache() const { return m_ColorSpeedCache; }
|
||||
T OneMinusColorCache() const { return m_OneMinusColorCache; }
|
||||
const vector<T>& XaosVec() const { return m_Xaos; }
|
||||
Ember<T>* ParentEmber() const { return m_ParentEmber; }
|
||||
inline bool NeedPrecalcSumSquares() const noexcept { return m_NeedPrecalcSumSquares; }
|
||||
inline bool NeedPrecalcSqrtSumSquares() const noexcept { return m_NeedPrecalcSqrtSumSquares; }
|
||||
inline bool NeedPrecalcAngles() const noexcept { return m_NeedPrecalcAngles; }
|
||||
inline bool NeedPrecalcAtanXY() const noexcept { return m_NeedPrecalcAtanXY; }
|
||||
inline bool NeedPrecalcAtanYX() const noexcept { return m_NeedPrecalcAtanYX; }
|
||||
inline bool NeedAnyPrecalc() const noexcept { return NeedPrecalcSumSquares() || NeedPrecalcSqrtSumSquares() || NeedPrecalcAngles() || NeedPrecalcAtanXY() || NeedPrecalcAtanYX(); }
|
||||
bool HasPre() const noexcept { return m_HasPre; }
|
||||
bool HasPost() const noexcept { return m_HasPost; }
|
||||
size_t PreVariationCount() const noexcept { return m_PreVariations.size(); }
|
||||
size_t VariationCount() const noexcept { return m_Variations.size(); }
|
||||
size_t PostVariationCount() const noexcept { return m_PostVariations.size(); }
|
||||
size_t TotalVariationCount() const noexcept { return PreVariationCount() + VariationCount() + PostVariationCount(); }
|
||||
bool Empty() const noexcept { return TotalVariationCount() == 0 && m_Affine.IsID(); }//Use this instead of padding like the original did.
|
||||
T ColorSpeedCache() const noexcept { return m_ColorSpeedCache; }
|
||||
T OneMinusColorCache() const noexcept { return m_OneMinusColorCache; }
|
||||
const vector<T>& XaosVec() const noexcept { return m_Xaos; }
|
||||
Ember<T>* ParentEmber() const noexcept { return m_ParentEmber; }
|
||||
void ParentEmber(Ember<T>* ember) { m_ParentEmber = ember; }
|
||||
intmax_t IndexInParentEmber() const { return m_ParentEmber ? m_ParentEmber->GetTotalXformIndex(const_cast<Xform<T>*>(this)) : -1; }
|
||||
intmax_t IndexInParentEmber() const noexcept { return m_ParentEmber ? m_ParentEmber->GetTotalXformIndex(const_cast<Xform<T>*>(this)) : -1; }
|
||||
|
||||
/// <summary>
|
||||
/// Set the precalc flags based on whether any variation in the vector needs them.
|
||||
@ -1079,7 +1079,7 @@ public:
|
||||
/// </summary>
|
||||
/// <param name="helper">The helper to store the output values in</param>
|
||||
/// <param name="assignType">The type of assignment this variation uses, assign or sum.</param>
|
||||
inline void WritePost(IteratorHelper<T>& helper, Point<T>& outPoint, eVariationAssignType assignType)
|
||||
inline void WritePost(IteratorHelper<T>& helper, Point<T>& outPoint, eVariationAssignType assignType) noexcept
|
||||
{
|
||||
switch (assignType)
|
||||
{
|
||||
|
@ -353,7 +353,7 @@ bool EmberAnimate(int argc, _TCHAR* argv[], EmberOptions& opt)
|
||||
{
|
||||
const auto finalImagep = finalImage.data();
|
||||
const auto size = w * h;
|
||||
vector<byte> rgb8Image;
|
||||
vector<unsigned char> rgb8Image;
|
||||
vector<std::thread> writeFileThreads;
|
||||
writeFileThreads.reserve(6);
|
||||
|
||||
@ -399,7 +399,7 @@ bool EmberAnimate(int argc, _TCHAR* argv[], EmberOptions& opt)
|
||||
{
|
||||
const auto fn = baseFilename + ".png";
|
||||
VerbosePrint("Writing " + fn);
|
||||
vector<byte> rgba8Image(size * 4);
|
||||
vector<unsigned char> rgba8Image(size * 4);
|
||||
Rgba32ToRgba8(finalImagep, rgba8Image.data(), w, h, opt.Transparency());
|
||||
const auto writeSuccess = WritePng(fn.c_str(), rgba8Image.data(), w, h, 1, opt.EnableComments(), comments, opt.Id(), opt.Url(), opt.Nick());
|
||||
|
||||
@ -425,7 +425,7 @@ bool EmberAnimate(int argc, _TCHAR* argv[], EmberOptions& opt)
|
||||
VerbosePrint("Writing " + fn);
|
||||
vector<glm::uint16> rgba16Image(size * 4);
|
||||
Rgba32ToRgba16(finalImagep, rgba16Image.data(), w, h, opt.Transparency());
|
||||
const auto writeSuccess = WritePng(fn.c_str(), (byte*)rgba16Image.data(), w, h, 2, opt.EnableComments(), comments, opt.Id(), opt.Url(), opt.Nick());
|
||||
const auto writeSuccess = WritePng(fn.c_str(), (unsigned char*)rgba16Image.data(), w, h, 2, opt.EnableComments(), comments, opt.Id(), opt.Url(), opt.Nick());
|
||||
|
||||
if (!writeSuccess)
|
||||
cout << "Error writing " << fn << "\n";
|
||||
|
1945
Source/EmberCL/CL/cl.h
Normal file
1945
Source/EmberCL/CL/cl.h
Normal file
File diff suppressed because it is too large
Load Diff
241
Source/EmberCL/CL/cl_d3d10.h
Normal file
241
Source/EmberCL/CL/cl_d3d10.h
Normal file
@ -0,0 +1,241 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2023 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef OPENCL_CL_D3D10_H_
|
||||
#define OPENCL_CL_D3D10_H_
|
||||
|
||||
/*
|
||||
** This header is generated from the Khronos OpenCL XML API Registry.
|
||||
*/
|
||||
|
||||
#if defined(_MSC_VER)
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 )
|
||||
#pragma warning( disable : 5105 )
|
||||
#endif
|
||||
#endif
|
||||
#include <d3d10.h>
|
||||
#if defined(_MSC_VER)
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <CL/cl.h>
|
||||
|
||||
/* CL_NO_PROTOTYPES implies CL_NO_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_PROTOTYPES) && !defined(CL_NO_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
/* CL_NO_EXTENSION_PROTOTYPES implies
|
||||
CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES and
|
||||
CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************************************
|
||||
* cl_khr_d3d10_sharing
|
||||
***************************************************************/
|
||||
#define cl_khr_d3d10_sharing 1
|
||||
#define CL_KHR_D3D10_SHARING_EXTENSION_NAME \
|
||||
"cl_khr_d3d10_sharing"
|
||||
|
||||
typedef cl_uint cl_d3d10_device_source_khr;
|
||||
typedef cl_uint cl_d3d10_device_set_khr;
|
||||
|
||||
/* Error codes */
|
||||
#define CL_INVALID_D3D10_DEVICE_KHR -1002
|
||||
#define CL_INVALID_D3D10_RESOURCE_KHR -1003
|
||||
#define CL_D3D10_RESOURCE_ALREADY_ACQUIRED_KHR -1004
|
||||
#define CL_D3D10_RESOURCE_NOT_ACQUIRED_KHR -1005
|
||||
|
||||
/* cl_d3d10_device_source_khr */
|
||||
#define CL_D3D10_DEVICE_KHR 0x4010
|
||||
#define CL_D3D10_DXGI_ADAPTER_KHR 0x4011
|
||||
|
||||
/* cl_d3d10_device_set_khr */
|
||||
#define CL_PREFERRED_DEVICES_FOR_D3D10_KHR 0x4012
|
||||
#define CL_ALL_DEVICES_FOR_D3D10_KHR 0x4013
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_D3D10_DEVICE_KHR 0x4014
|
||||
#define CL_CONTEXT_D3D10_PREFER_SHARED_RESOURCES_KHR 0x402C
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_D3D10_RESOURCE_KHR 0x4015
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_D3D10_SUBRESOURCE_KHR 0x4016
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_D3D10_OBJECTS_KHR 0x4017
|
||||
#define CL_COMMAND_RELEASE_D3D10_OBJECTS_KHR 0x4018
|
||||
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetDeviceIDsFromD3D10KHR_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_d3d10_device_source_khr d3d_device_source,
|
||||
void* d3d_object,
|
||||
cl_d3d10_device_set_khr d3d_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromD3D10BufferKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Buffer* resource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromD3D10Texture2DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Texture2D* resource,
|
||||
UINT subresource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromD3D10Texture3DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Texture3D* resource,
|
||||
UINT subresource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueAcquireD3D10ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueReleaseD3D10ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetDeviceIDsFromD3D10KHR(
|
||||
cl_platform_id platform,
|
||||
cl_d3d10_device_source_khr d3d_device_source,
|
||||
void* d3d_object,
|
||||
cl_d3d10_device_set_khr d3d_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromD3D10BufferKHR(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Buffer* resource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromD3D10Texture2DKHR(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Texture2D* resource,
|
||||
UINT subresource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromD3D10Texture3DKHR(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D10Texture3D* resource,
|
||||
UINT subresource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireD3D10ObjectsKHR(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseD3D10ObjectsKHR(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_d3d10
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_d3d10 1
|
||||
#define CL_INTEL_SHARING_FORMAT_QUERY_D3D10_EXTENSION_NAME \
|
||||
"cl_intel_sharing_format_query_d3d10"
|
||||
|
||||
/* when cl_khr_d3d10_sharing is supported */
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedD3D10TextureFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint num_entries,
|
||||
DXGI_FORMAT* d3d10_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
#if !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedD3D10TextureFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint num_entries,
|
||||
DXGI_FORMAT* d3d10_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
#endif /* !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* OPENCL_CL_D3D10_H_ */
|
243
Source/EmberCL/CL/cl_d3d11.h
Normal file
243
Source/EmberCL/CL/cl_d3d11.h
Normal file
@ -0,0 +1,243 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2023 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef OPENCL_CL_D3D11_H_
|
||||
#define OPENCL_CL_D3D11_H_
|
||||
|
||||
/*
|
||||
** This header is generated from the Khronos OpenCL XML API Registry.
|
||||
*/
|
||||
|
||||
#if defined(_MSC_VER)
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 )
|
||||
#pragma warning( disable : 5105 )
|
||||
#endif
|
||||
#endif
|
||||
#include <d3d11.h>
|
||||
#if defined(_MSC_VER)
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <CL/cl.h>
|
||||
|
||||
/* CL_NO_PROTOTYPES implies CL_NO_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_PROTOTYPES) && !defined(CL_NO_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
/* CL_NO_EXTENSION_PROTOTYPES implies
|
||||
CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES and
|
||||
CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************************************
|
||||
* cl_khr_d3d11_sharing
|
||||
***************************************************************/
|
||||
#define cl_khr_d3d11_sharing 1
|
||||
#define CL_KHR_D3D11_SHARING_EXTENSION_NAME \
|
||||
"cl_khr_d3d11_sharing"
|
||||
|
||||
typedef cl_uint cl_d3d11_device_source_khr;
|
||||
typedef cl_uint cl_d3d11_device_set_khr;
|
||||
|
||||
/* Error codes */
|
||||
#define CL_INVALID_D3D11_DEVICE_KHR -1006
|
||||
#define CL_INVALID_D3D11_RESOURCE_KHR -1007
|
||||
#define CL_D3D11_RESOURCE_ALREADY_ACQUIRED_KHR -1008
|
||||
#define CL_D3D11_RESOURCE_NOT_ACQUIRED_KHR -1009
|
||||
|
||||
/* cl_d3d11_device_source_khr */
|
||||
#define CL_D3D11_DEVICE_KHR 0x4019
|
||||
#define CL_D3D11_DXGI_ADAPTER_KHR 0x401A
|
||||
|
||||
/* cl_d3d11_device_set_khr */
|
||||
#define CL_PREFERRED_DEVICES_FOR_D3D11_KHR 0x401B
|
||||
#define CL_ALL_DEVICES_FOR_D3D11_KHR 0x401C
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_D3D11_DEVICE_KHR 0x401D
|
||||
#define CL_CONTEXT_D3D11_PREFER_SHARED_RESOURCES_KHR 0x402D
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_D3D11_RESOURCE_KHR 0x401E
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_D3D11_SUBRESOURCE_KHR 0x401F
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_D3D11_OBJECTS_KHR 0x4020
|
||||
#define CL_COMMAND_RELEASE_D3D11_OBJECTS_KHR 0x4021
|
||||
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetDeviceIDsFromD3D11KHR_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_d3d11_device_source_khr d3d_device_source,
|
||||
void* d3d_object,
|
||||
cl_d3d11_device_set_khr d3d_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromD3D11BufferKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Buffer* resource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromD3D11Texture2DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Texture2D* resource,
|
||||
UINT subresource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromD3D11Texture3DKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Texture3D* resource,
|
||||
UINT subresource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueAcquireD3D11ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueReleaseD3D11ObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetDeviceIDsFromD3D11KHR(
|
||||
cl_platform_id platform,
|
||||
cl_d3d11_device_source_khr d3d_device_source,
|
||||
void* d3d_object,
|
||||
cl_d3d11_device_set_khr d3d_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromD3D11BufferKHR(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Buffer* resource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromD3D11Texture2DKHR(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Texture2D* resource,
|
||||
UINT subresource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromD3D11Texture3DKHR(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
ID3D11Texture3D* resource,
|
||||
UINT subresource,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireD3D11ObjectsKHR(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseD3D11ObjectsKHR(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_d3d11
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_d3d11 1
|
||||
#define CL_INTEL_SHARING_FORMAT_QUERY_D3D11_EXTENSION_NAME \
|
||||
"cl_intel_sharing_format_query_d3d11"
|
||||
|
||||
/* when cl_khr_d3d11_sharing is supported */
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedD3D11TextureFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
DXGI_FORMAT* d3d11_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
#if !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedD3D11TextureFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
DXGI_FORMAT* d3d11_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
#endif /* !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* OPENCL_CL_D3D11_H_ */
|
350
Source/EmberCL/CL/cl_dx9_media_sharing.h
Normal file
350
Source/EmberCL/CL/cl_dx9_media_sharing.h
Normal file
@ -0,0 +1,350 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2023 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef OPENCL_CL_DX9_MEDIA_SHARING_H_
|
||||
#define OPENCL_CL_DX9_MEDIA_SHARING_H_
|
||||
|
||||
/*
|
||||
** This header is generated from the Khronos OpenCL XML API Registry.
|
||||
*/
|
||||
|
||||
#if defined(_WIN32)
|
||||
#if defined(_MSC_VER)
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4201 )
|
||||
#pragma warning( disable : 5105 )
|
||||
#endif
|
||||
#endif
|
||||
#include <d3d9.h>
|
||||
#if defined(_MSC_VER)
|
||||
#if _MSC_VER >=1500
|
||||
#pragma warning( pop )
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include <CL/cl.h>
|
||||
|
||||
/* CL_NO_PROTOTYPES implies CL_NO_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_PROTOTYPES) && !defined(CL_NO_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
/* CL_NO_EXTENSION_PROTOTYPES implies
|
||||
CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES and
|
||||
CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************************************
|
||||
* cl_khr_dx9_media_sharing
|
||||
***************************************************************/
|
||||
#define cl_khr_dx9_media_sharing 1
|
||||
#define CL_KHR_DX9_MEDIA_SHARING_EXTENSION_NAME \
|
||||
"cl_khr_dx9_media_sharing"
|
||||
|
||||
typedef cl_uint cl_dx9_media_adapter_type_khr;
|
||||
typedef cl_uint cl_dx9_media_adapter_set_khr;
|
||||
|
||||
#if defined(_WIN32)
|
||||
typedef struct _cl_dx9_surface_info_khr {
|
||||
IDirect3DSurface9* resource;
|
||||
HANDLE shared_handle;
|
||||
} cl_dx9_surface_info_khr;
|
||||
|
||||
#endif /* defined(_WIN32) */
|
||||
|
||||
/* Error codes */
|
||||
#define CL_INVALID_DX9_MEDIA_ADAPTER_KHR -1010
|
||||
#define CL_INVALID_DX9_MEDIA_SURFACE_KHR -1011
|
||||
#define CL_DX9_MEDIA_SURFACE_ALREADY_ACQUIRED_KHR -1012
|
||||
#define CL_DX9_MEDIA_SURFACE_NOT_ACQUIRED_KHR -1013
|
||||
|
||||
/* cl_media_adapter_type_khr */
|
||||
#define CL_ADAPTER_D3D9_KHR 0x2020
|
||||
#define CL_ADAPTER_D3D9EX_KHR 0x2021
|
||||
#define CL_ADAPTER_DXVA_KHR 0x2022
|
||||
|
||||
/* cl_media_adapter_set_khr */
|
||||
#define CL_PREFERRED_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR 0x2023
|
||||
#define CL_ALL_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR 0x2024
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_ADAPTER_D3D9_KHR 0x2025
|
||||
#define CL_CONTEXT_ADAPTER_D3D9EX_KHR 0x2026
|
||||
#define CL_CONTEXT_ADAPTER_DXVA_KHR 0x2027
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_DX9_MEDIA_ADAPTER_TYPE_KHR 0x2028
|
||||
#define CL_MEM_DX9_MEDIA_SURFACE_INFO_KHR 0x2029
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_DX9_MEDIA_PLANE_KHR 0x202A
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_DX9_MEDIA_SURFACES_KHR 0x202B
|
||||
#define CL_COMMAND_RELEASE_DX9_MEDIA_SURFACES_KHR 0x202C
|
||||
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetDeviceIDsFromDX9MediaAdapterKHR_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_uint num_media_adapters,
|
||||
cl_dx9_media_adapter_type_khr* media_adapter_type,
|
||||
void* media_adapters,
|
||||
cl_dx9_media_adapter_set_khr media_adapter_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromDX9MediaSurfaceKHR_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_dx9_media_adapter_type_khr adapter_type,
|
||||
void* surface_info,
|
||||
cl_uint plane,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueAcquireDX9MediaSurfacesKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueReleaseDX9MediaSurfacesKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetDeviceIDsFromDX9MediaAdapterKHR(
|
||||
cl_platform_id platform,
|
||||
cl_uint num_media_adapters,
|
||||
cl_dx9_media_adapter_type_khr* media_adapter_type,
|
||||
void* media_adapters,
|
||||
cl_dx9_media_adapter_set_khr media_adapter_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromDX9MediaSurfaceKHR(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_dx9_media_adapter_type_khr adapter_type,
|
||||
void* surface_info,
|
||||
cl_uint plane,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireDX9MediaSurfacesKHR(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseDX9MediaSurfacesKHR(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_dx9_media_sharing
|
||||
***************************************************************/
|
||||
#define cl_intel_dx9_media_sharing 1
|
||||
#define CL_INTEL_DX9_MEDIA_SHARING_EXTENSION_NAME \
|
||||
"cl_intel_dx9_media_sharing"
|
||||
|
||||
typedef cl_uint cl_dx9_device_source_intel;
|
||||
typedef cl_uint cl_dx9_device_set_intel;
|
||||
|
||||
/* Error codes */
|
||||
#define CL_INVALID_DX9_DEVICE_INTEL -1010
|
||||
#define CL_INVALID_DX9_RESOURCE_INTEL -1011
|
||||
#define CL_DX9_RESOURCE_ALREADY_ACQUIRED_INTEL -1012
|
||||
#define CL_DX9_RESOURCE_NOT_ACQUIRED_INTEL -1013
|
||||
|
||||
/* cl_dx9_device_source_intel */
|
||||
#define CL_D3D9_DEVICE_INTEL 0x4022
|
||||
#define CL_D3D9EX_DEVICE_INTEL 0x4070
|
||||
#define CL_DXVA_DEVICE_INTEL 0x4071
|
||||
|
||||
/* cl_dx9_device_set_intel */
|
||||
#define CL_PREFERRED_DEVICES_FOR_DX9_INTEL 0x4024
|
||||
#define CL_ALL_DEVICES_FOR_DX9_INTEL 0x4025
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_D3D9_DEVICE_INTEL 0x4026
|
||||
#define CL_CONTEXT_D3D9EX_DEVICE_INTEL 0x4072
|
||||
#define CL_CONTEXT_DXVA_DEVICE_INTEL 0x4073
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_DX9_RESOURCE_INTEL 0x4027
|
||||
#define CL_MEM_DX9_SHARED_HANDLE_INTEL 0x4074
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_DX9_PLANE_INTEL 0x4075
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_DX9_OBJECTS_INTEL 0x402A
|
||||
#define CL_COMMAND_RELEASE_DX9_OBJECTS_INTEL 0x402B
|
||||
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetDeviceIDsFromDX9INTEL_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_dx9_device_source_intel dx9_device_source,
|
||||
void* dx9_object,
|
||||
cl_dx9_device_set_intel dx9_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromDX9MediaSurfaceINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
IDirect3DSurface9* resource,
|
||||
HANDLE sharedHandle,
|
||||
UINT plane,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueAcquireDX9ObjectsINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueReleaseDX9ObjectsINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
#if !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetDeviceIDsFromDX9INTEL(
|
||||
cl_platform_id platform,
|
||||
cl_dx9_device_source_intel dx9_device_source,
|
||||
void* dx9_object,
|
||||
cl_dx9_device_set_intel dx9_device_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromDX9MediaSurfaceINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
IDirect3DSurface9* resource,
|
||||
HANDLE sharedHandle,
|
||||
UINT plane,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireDX9ObjectsINTEL(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseDX9ObjectsINTEL(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
#endif /* !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_dx9
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_dx9 1
|
||||
#define CL_INTEL_SHARING_FORMAT_QUERY_DX9_EXTENSION_NAME \
|
||||
"cl_intel_sharing_format_query_dx9"
|
||||
|
||||
/* when cl_khr_dx9_media_sharing or cl_intel_dx9_media_sharing is supported */
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedDX9MediaSurfaceFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
D3DFORMAT* dx9_formats,
|
||||
cl_uint* num_surface_formats) ;
|
||||
|
||||
#if !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedDX9MediaSurfaceFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
D3DFORMAT* dx9_formats,
|
||||
cl_uint* num_surface_formats) ;
|
||||
|
||||
#endif /* !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* OPENCL_CL_DX9_MEDIA_SHARING_H_ */
|
18
Source/EmberCL/CL/cl_dx9_media_sharing_intel.h
Normal file
18
Source/EmberCL/CL/cl_dx9_media_sharing_intel.h
Normal file
@ -0,0 +1,18 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2020 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#include <CL/cl_dx9_media_sharing.h>
|
||||
#pragma message("The Intel DX9 media sharing extensions have been moved into cl_dx9_media_sharing.h. Please include cl_dx9_media_sharing.h directly.")
|
167
Source/EmberCL/CL/cl_egl.h
Normal file
167
Source/EmberCL/CL/cl_egl.h
Normal file
@ -0,0 +1,167 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2023 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef OPENCL_CL_EGL_H_
|
||||
#define OPENCL_CL_EGL_H_
|
||||
|
||||
/*
|
||||
** This header is generated from the Khronos OpenCL XML API Registry.
|
||||
*/
|
||||
|
||||
#include <CL/cl.h>
|
||||
|
||||
/* CL_NO_PROTOTYPES implies CL_NO_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_PROTOTYPES) && !defined(CL_NO_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
/* CL_NO_EXTENSION_PROTOTYPES implies
|
||||
CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES and
|
||||
CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************************************
|
||||
* cl_khr_egl_image
|
||||
***************************************************************/
|
||||
#define cl_khr_egl_image 1
|
||||
#define CL_KHR_EGL_IMAGE_EXTENSION_NAME \
|
||||
"cl_khr_egl_image"
|
||||
|
||||
/* Command type for events created with clEnqueueAcquireEGLObjectsKHR */
|
||||
#define CL_COMMAND_EGL_FENCE_SYNC_OBJECT_KHR 0x202F
|
||||
#define CL_COMMAND_ACQUIRE_EGL_OBJECTS_KHR 0x202D
|
||||
#define CL_COMMAND_RELEASE_EGL_OBJECTS_KHR 0x202E
|
||||
|
||||
/* Error type for clCreateFromEGLImageKHR */
|
||||
#define CL_INVALID_EGL_OBJECT_KHR -1093
|
||||
#define CL_EGL_RESOURCE_NOT_ACQUIRED_KHR -1092
|
||||
|
||||
/* CLeglImageKHR is an opaque handle to an EGLImage */
|
||||
typedef void* CLeglImageKHR;
|
||||
|
||||
/* CLeglDisplayKHR is an opaque handle to an EGLDisplay */
|
||||
typedef void* CLeglDisplayKHR;
|
||||
|
||||
/* properties passed to clCreateFromEGLImageKHR */
|
||||
typedef intptr_t cl_egl_image_properties_khr;
|
||||
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromEGLImageKHR_fn)(
|
||||
cl_context context,
|
||||
CLeglDisplayKHR egldisplay,
|
||||
CLeglImageKHR eglimage,
|
||||
cl_mem_flags flags,
|
||||
const cl_egl_image_properties_khr* properties,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueAcquireEGLObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueReleaseEGLObjectsKHR_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromEGLImageKHR(
|
||||
cl_context context,
|
||||
CLeglDisplayKHR egldisplay,
|
||||
CLeglImageKHR eglimage,
|
||||
cl_mem_flags flags,
|
||||
const cl_egl_image_properties_khr* properties,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireEGLObjectsKHR(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseEGLObjectsKHR(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
/***************************************************************
|
||||
* cl_khr_egl_event
|
||||
***************************************************************/
|
||||
#define cl_khr_egl_event 1
|
||||
#define CL_KHR_EGL_EVENT_EXTENSION_NAME \
|
||||
"cl_khr_egl_event"
|
||||
|
||||
/* CLeglDisplayKHR is an opaque handle to an EGLDisplay */
|
||||
/* type CLeglDisplayKHR */
|
||||
|
||||
/* CLeglSyncKHR is an opaque handle to an EGLSync object */
|
||||
typedef void* CLeglSyncKHR;
|
||||
|
||||
|
||||
typedef cl_event (CL_API_CALL *
|
||||
clCreateEventFromEGLSyncKHR_fn)(
|
||||
cl_context context,
|
||||
CLeglSyncKHR sync,
|
||||
CLeglDisplayKHR display,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_event CL_API_CALL
|
||||
clCreateEventFromEGLSyncKHR(
|
||||
cl_context context,
|
||||
CLeglSyncKHR sync,
|
||||
CLeglDisplayKHR display,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* OPENCL_CL_EGL_H_ */
|
3223
Source/EmberCL/CL/cl_ext.h
Normal file
3223
Source/EmberCL/CL/cl_ext.h
Normal file
File diff suppressed because it is too large
Load Diff
19
Source/EmberCL/CL/cl_ext_intel.h
Normal file
19
Source/EmberCL/CL/cl_ext_intel.h
Normal file
@ -0,0 +1,19 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2020 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
******************************************************************************/
|
||||
|
||||
#include <CL/cl_ext.h>
|
||||
#pragma message("The Intel extensions have been moved into cl_ext.h. Please include cl_ext.h directly.")
|
372
Source/EmberCL/CL/cl_gl.h
Normal file
372
Source/EmberCL/CL/cl_gl.h
Normal file
@ -0,0 +1,372 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2023 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef OPENCL_CL_GL_H_
|
||||
#define OPENCL_CL_GL_H_
|
||||
|
||||
/*
|
||||
** This header is generated from the Khronos OpenCL XML API Registry.
|
||||
*/
|
||||
|
||||
#include <CL/cl.h>
|
||||
|
||||
/* CL_NO_PROTOTYPES implies CL_NO_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_PROTOTYPES) && !defined(CL_NO_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
/* CL_NO_EXTENSION_PROTOTYPES implies
|
||||
CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES and
|
||||
CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************************************
|
||||
* cl_khr_gl_sharing
|
||||
***************************************************************/
|
||||
#define cl_khr_gl_sharing 1
|
||||
#define CL_KHR_GL_SHARING_EXTENSION_NAME \
|
||||
"cl_khr_gl_sharing"
|
||||
|
||||
typedef cl_uint cl_gl_context_info;
|
||||
|
||||
/* Error codes */
|
||||
#define CL_INVALID_GL_SHAREGROUP_REFERENCE_KHR -1000
|
||||
|
||||
/* cl_gl_context_info */
|
||||
#define CL_CURRENT_DEVICE_FOR_GL_CONTEXT_KHR 0x2006
|
||||
#define CL_DEVICES_FOR_GL_CONTEXT_KHR 0x2007
|
||||
|
||||
/* Additional cl_context_properties */
|
||||
#define CL_GL_CONTEXT_KHR 0x2008
|
||||
#define CL_EGL_DISPLAY_KHR 0x2009
|
||||
#define CL_GLX_DISPLAY_KHR 0x200A
|
||||
#define CL_WGL_HDC_KHR 0x200B
|
||||
#define CL_CGL_SHAREGROUP_KHR 0x200C
|
||||
|
||||
typedef cl_uint cl_gl_object_type;
|
||||
typedef cl_uint cl_gl_texture_info;
|
||||
typedef cl_uint cl_gl_platform_info;
|
||||
|
||||
/* cl_gl_object_type */
|
||||
#define CL_GL_OBJECT_BUFFER 0x2000
|
||||
#define CL_GL_OBJECT_TEXTURE2D 0x2001
|
||||
#define CL_GL_OBJECT_TEXTURE3D 0x2002
|
||||
#define CL_GL_OBJECT_RENDERBUFFER 0x2003
|
||||
|
||||
#if defined(CL_VERSION_1_2)
|
||||
/* cl_gl_object_type */
|
||||
#define CL_GL_OBJECT_TEXTURE2D_ARRAY 0x200E
|
||||
#define CL_GL_OBJECT_TEXTURE1D 0x200F
|
||||
#define CL_GL_OBJECT_TEXTURE1D_ARRAY 0x2010
|
||||
#define CL_GL_OBJECT_TEXTURE_BUFFER 0x2011
|
||||
|
||||
#endif /* defined(CL_VERSION_1_2) */
|
||||
|
||||
/* cl_gl_texture_info */
|
||||
#define CL_GL_TEXTURE_TARGET 0x2004
|
||||
#define CL_GL_MIPMAP_LEVEL 0x2005
|
||||
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetGLContextInfoKHR_fn)(
|
||||
const cl_context_properties* properties,
|
||||
cl_gl_context_info param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromGLBuffer_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLuint bufobj,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetGLContextInfoKHR(
|
||||
const cl_context_properties* properties,
|
||||
cl_gl_context_info param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromGLBuffer(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLuint bufobj,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
#if defined(CL_VERSION_1_2)
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromGLTexture_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLenum target,
|
||||
cl_GLint miplevel,
|
||||
cl_GLuint texture,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromGLTexture(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLenum target,
|
||||
cl_GLint miplevel,
|
||||
cl_GLuint texture,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
#endif /* defined(CL_VERSION_1_2) */
|
||||
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromGLRenderbuffer_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLuint renderbuffer,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetGLObjectInfo_fn)(
|
||||
cl_mem memobj,
|
||||
cl_gl_object_type* gl_object_type,
|
||||
cl_GLuint* gl_object_name) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetGLTextureInfo_fn)(
|
||||
cl_mem memobj,
|
||||
cl_gl_texture_info param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueAcquireGLObjects_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueReleaseGLObjects_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromGLRenderbuffer(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLuint renderbuffer,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetGLObjectInfo(
|
||||
cl_mem memobj,
|
||||
cl_gl_object_type* gl_object_type,
|
||||
cl_GLuint* gl_object_name) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetGLTextureInfo(
|
||||
cl_mem memobj,
|
||||
cl_gl_texture_info param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireGLObjects(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseGLObjects(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_0;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
/* OpenCL 1.0 APIs that were deprecated in OpenCL 1.2 */
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromGLTexture2D_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLenum target,
|
||||
cl_GLint miplevel,
|
||||
cl_GLuint texture,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromGLTexture3D_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLenum target,
|
||||
cl_GLint miplevel,
|
||||
cl_GLuint texture,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromGLTexture2D(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLenum target,
|
||||
cl_GLint miplevel,
|
||||
cl_GLuint texture,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromGLTexture3D(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_GLenum target,
|
||||
cl_GLint miplevel,
|
||||
cl_GLuint texture,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1_DEPRECATED;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
/***************************************************************
|
||||
* cl_khr_gl_event
|
||||
***************************************************************/
|
||||
#define cl_khr_gl_event 1
|
||||
#define CL_KHR_GL_EVENT_EXTENSION_NAME \
|
||||
"cl_khr_gl_event"
|
||||
|
||||
typedef struct __GLsync * cl_GLsync;
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_GL_FENCE_SYNC_OBJECT_KHR 0x200D
|
||||
|
||||
|
||||
typedef cl_event (CL_API_CALL *
|
||||
clCreateEventFromGLsyncKHR_fn)(
|
||||
cl_context context,
|
||||
cl_GLsync sync,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
#if !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_event CL_API_CALL
|
||||
clCreateEventFromGLsyncKHR(
|
||||
cl_context context,
|
||||
cl_GLsync sync,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_1;
|
||||
|
||||
#endif /* !defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
/***************************************************************
|
||||
* cl_khr_gl_depth_images
|
||||
***************************************************************/
|
||||
#define cl_khr_gl_depth_images 1
|
||||
#define CL_KHR_GL_DEPTH_IMAGES_EXTENSION_NAME \
|
||||
"cl_khr_gl_depth_images"
|
||||
|
||||
#if !defined(CL_VERSION_1_2)
|
||||
/* cl_channel_order - defined in CL.h for OpenCL 1.2 and newer */
|
||||
#define CL_DEPTH_STENCIL 0x10BE
|
||||
|
||||
#endif /* !defined(CL_VERSION_1_2) */
|
||||
|
||||
#if !defined(CL_VERSION_1_2)
|
||||
/* cl_channel_type - defined in CL.h for OpenCL 1.2 and newer */
|
||||
#define CL_UNORM_INT24 0x10DF
|
||||
|
||||
#endif /* !defined(CL_VERSION_1_2) */
|
||||
|
||||
/***************************************************************
|
||||
* cl_khr_gl_msaa_sharing
|
||||
***************************************************************/
|
||||
#define cl_khr_gl_msaa_sharing 1
|
||||
#define CL_KHR_GL_MSAA_SHARING_EXTENSION_NAME \
|
||||
"cl_khr_gl_msaa_sharing"
|
||||
|
||||
/* cl_gl_texture_info */
|
||||
#define CL_GL_NUM_SAMPLES 0x2012
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_gl
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_gl 1
|
||||
#define CL_INTEL_SHARING_FORMAT_QUERY_GL_EXTENSION_NAME \
|
||||
"cl_intel_sharing_format_query_gl"
|
||||
|
||||
/* when cl_khr_gl_sharing is supported */
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedGLTextureFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint num_entries,
|
||||
cl_GLenum* gl_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
#if !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedGLTextureFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint num_entries,
|
||||
cl_GLenum* gl_formats,
|
||||
cl_uint* num_texture_formats) ;
|
||||
|
||||
#endif /* !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* OPENCL_CL_GL_H_ */
|
18
Source/EmberCL/CL/cl_gl_ext.h
Normal file
18
Source/EmberCL/CL/cl_gl_ext.h
Normal file
@ -0,0 +1,18 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2021 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#include <CL/cl_gl.h>
|
||||
#pragma message("The extensions in cl_gl_ext.h have been moved into cl_gl.h. Please include cl_gl.h directly.")
|
440
Source/EmberCL/CL/cl_half.h
Normal file
440
Source/EmberCL/CL/cl_half.h
Normal file
@ -0,0 +1,440 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2019-2020 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
/**
|
||||
* This is a header-only utility library that provides OpenCL host code with
|
||||
* routines for converting to/from cl_half values.
|
||||
*
|
||||
* Example usage:
|
||||
*
|
||||
* #include <CL/cl_half.h>
|
||||
* ...
|
||||
* cl_half h = cl_half_from_float(0.5f, CL_HALF_RTE);
|
||||
* cl_float f = cl_half_to_float(h);
|
||||
*/
|
||||
|
||||
#ifndef OPENCL_CL_HALF_H
|
||||
#define OPENCL_CL_HALF_H
|
||||
|
||||
#include <CL/cl_platform.h>
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
/**
|
||||
* Rounding mode used when converting to cl_half.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
CL_HALF_RTE, // round to nearest even
|
||||
CL_HALF_RTZ, // round towards zero
|
||||
CL_HALF_RTP, // round towards positive infinity
|
||||
CL_HALF_RTN, // round towards negative infinity
|
||||
} cl_half_rounding_mode;
|
||||
|
||||
|
||||
/* Private utility macros. */
|
||||
#define CL_HALF_EXP_MASK 0x7C00
|
||||
#define CL_HALF_MAX_FINITE_MAG 0x7BFF
|
||||
|
||||
|
||||
/*
|
||||
* Utility to deal with values that overflow when converting to half precision.
|
||||
*/
|
||||
static inline cl_half cl_half_handle_overflow(cl_half_rounding_mode rounding_mode,
|
||||
uint16_t sign)
|
||||
{
|
||||
if (rounding_mode == CL_HALF_RTZ)
|
||||
{
|
||||
// Round overflow towards zero -> largest finite number (preserving sign)
|
||||
return (sign << 15) | CL_HALF_MAX_FINITE_MAG;
|
||||
}
|
||||
else if (rounding_mode == CL_HALF_RTP && sign)
|
||||
{
|
||||
// Round negative overflow towards positive infinity -> most negative finite number
|
||||
return (1 << 15) | CL_HALF_MAX_FINITE_MAG;
|
||||
}
|
||||
else if (rounding_mode == CL_HALF_RTN && !sign)
|
||||
{
|
||||
// Round positive overflow towards negative infinity -> largest finite number
|
||||
return CL_HALF_MAX_FINITE_MAG;
|
||||
}
|
||||
|
||||
// Overflow to infinity
|
||||
return (sign << 15) | CL_HALF_EXP_MASK;
|
||||
}
|
||||
|
||||
/*
|
||||
* Utility to deal with values that underflow when converting to half precision.
|
||||
*/
|
||||
static inline cl_half cl_half_handle_underflow(cl_half_rounding_mode rounding_mode,
|
||||
uint16_t sign)
|
||||
{
|
||||
if (rounding_mode == CL_HALF_RTP && !sign)
|
||||
{
|
||||
// Round underflow towards positive infinity -> smallest positive value
|
||||
return (sign << 15) | 1;
|
||||
}
|
||||
else if (rounding_mode == CL_HALF_RTN && sign)
|
||||
{
|
||||
// Round underflow towards negative infinity -> largest negative value
|
||||
return (sign << 15) | 1;
|
||||
}
|
||||
|
||||
// Flush to zero
|
||||
return (sign << 15);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Convert a cl_float to a cl_half.
|
||||
*/
|
||||
static inline cl_half cl_half_from_float(cl_float f, cl_half_rounding_mode rounding_mode)
|
||||
{
|
||||
// Type-punning to get direct access to underlying bits
|
||||
union
|
||||
{
|
||||
cl_float f;
|
||||
uint32_t i;
|
||||
} f32;
|
||||
f32.f = f;
|
||||
|
||||
// Extract sign bit
|
||||
uint16_t sign = f32.i >> 31;
|
||||
|
||||
// Extract FP32 exponent and mantissa
|
||||
uint32_t f_exp = (f32.i >> (CL_FLT_MANT_DIG - 1)) & 0xFF;
|
||||
uint32_t f_mant = f32.i & ((1 << (CL_FLT_MANT_DIG - 1)) - 1);
|
||||
|
||||
// Remove FP32 exponent bias
|
||||
int32_t exp = f_exp - CL_FLT_MAX_EXP + 1;
|
||||
|
||||
// Add FP16 exponent bias
|
||||
uint16_t h_exp = (uint16_t)(exp + CL_HALF_MAX_EXP - 1);
|
||||
|
||||
// Position of the bit that will become the FP16 mantissa LSB
|
||||
uint32_t lsb_pos = CL_FLT_MANT_DIG - CL_HALF_MANT_DIG;
|
||||
|
||||
// Check for NaN / infinity
|
||||
if (f_exp == 0xFF)
|
||||
{
|
||||
if (f_mant)
|
||||
{
|
||||
// NaN -> propagate mantissa and silence it
|
||||
uint16_t h_mant = (uint16_t)(f_mant >> lsb_pos);
|
||||
h_mant |= 0x200;
|
||||
return (sign << 15) | CL_HALF_EXP_MASK | h_mant;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Infinity -> zero mantissa
|
||||
return (sign << 15) | CL_HALF_EXP_MASK;
|
||||
}
|
||||
}
|
||||
|
||||
// Check for zero
|
||||
if (!f_exp && !f_mant)
|
||||
{
|
||||
return (sign << 15);
|
||||
}
|
||||
|
||||
// Check for overflow
|
||||
if (exp >= CL_HALF_MAX_EXP)
|
||||
{
|
||||
return cl_half_handle_overflow(rounding_mode, sign);
|
||||
}
|
||||
|
||||
// Check for underflow
|
||||
if (exp < (CL_HALF_MIN_EXP - CL_HALF_MANT_DIG - 1))
|
||||
{
|
||||
return cl_half_handle_underflow(rounding_mode, sign);
|
||||
}
|
||||
|
||||
// Check for value that will become denormal
|
||||
if (exp < -14)
|
||||
{
|
||||
// Denormal -> include the implicit 1 from the FP32 mantissa
|
||||
h_exp = 0;
|
||||
f_mant |= 1 << (CL_FLT_MANT_DIG - 1);
|
||||
|
||||
// Mantissa shift amount depends on exponent
|
||||
lsb_pos = -exp + (CL_FLT_MANT_DIG - 25);
|
||||
}
|
||||
|
||||
// Generate FP16 mantissa by shifting FP32 mantissa
|
||||
uint16_t h_mant = (uint16_t)(f_mant >> lsb_pos);
|
||||
|
||||
// Check whether we need to round
|
||||
uint32_t halfway = 1 << (lsb_pos - 1);
|
||||
uint32_t mask = (halfway << 1) - 1;
|
||||
switch (rounding_mode)
|
||||
{
|
||||
case CL_HALF_RTE:
|
||||
if ((f_mant & mask) > halfway)
|
||||
{
|
||||
// More than halfway -> round up
|
||||
h_mant += 1;
|
||||
}
|
||||
else if ((f_mant & mask) == halfway)
|
||||
{
|
||||
// Exactly halfway -> round to nearest even
|
||||
if (h_mant & 0x1)
|
||||
h_mant += 1;
|
||||
}
|
||||
break;
|
||||
case CL_HALF_RTZ:
|
||||
// Mantissa has already been truncated -> do nothing
|
||||
break;
|
||||
case CL_HALF_RTP:
|
||||
if ((f_mant & mask) && !sign)
|
||||
{
|
||||
// Round positive numbers up
|
||||
h_mant += 1;
|
||||
}
|
||||
break;
|
||||
case CL_HALF_RTN:
|
||||
if ((f_mant & mask) && sign)
|
||||
{
|
||||
// Round negative numbers down
|
||||
h_mant += 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// Check for mantissa overflow
|
||||
if (h_mant & 0x400)
|
||||
{
|
||||
h_exp += 1;
|
||||
h_mant = 0;
|
||||
}
|
||||
|
||||
return (sign << 15) | (h_exp << 10) | h_mant;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Convert a cl_double to a cl_half.
|
||||
*/
|
||||
static inline cl_half cl_half_from_double(cl_double d, cl_half_rounding_mode rounding_mode)
|
||||
{
|
||||
// Type-punning to get direct access to underlying bits
|
||||
union
|
||||
{
|
||||
cl_double d;
|
||||
uint64_t i;
|
||||
} f64;
|
||||
f64.d = d;
|
||||
|
||||
// Extract sign bit
|
||||
uint16_t sign = f64.i >> 63;
|
||||
|
||||
// Extract FP64 exponent and mantissa
|
||||
uint64_t d_exp = (f64.i >> (CL_DBL_MANT_DIG - 1)) & 0x7FF;
|
||||
uint64_t d_mant = f64.i & (((uint64_t)1 << (CL_DBL_MANT_DIG - 1)) - 1);
|
||||
|
||||
// Remove FP64 exponent bias
|
||||
int64_t exp = d_exp - CL_DBL_MAX_EXP + 1;
|
||||
|
||||
// Add FP16 exponent bias
|
||||
uint16_t h_exp = (uint16_t)(exp + CL_HALF_MAX_EXP - 1);
|
||||
|
||||
// Position of the bit that will become the FP16 mantissa LSB
|
||||
uint32_t lsb_pos = CL_DBL_MANT_DIG - CL_HALF_MANT_DIG;
|
||||
|
||||
// Check for NaN / infinity
|
||||
if (d_exp == 0x7FF)
|
||||
{
|
||||
if (d_mant)
|
||||
{
|
||||
// NaN -> propagate mantissa and silence it
|
||||
uint16_t h_mant = (uint16_t)(d_mant >> lsb_pos);
|
||||
h_mant |= 0x200;
|
||||
return (sign << 15) | CL_HALF_EXP_MASK | h_mant;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Infinity -> zero mantissa
|
||||
return (sign << 15) | CL_HALF_EXP_MASK;
|
||||
}
|
||||
}
|
||||
|
||||
// Check for zero
|
||||
if (!d_exp && !d_mant)
|
||||
{
|
||||
return (sign << 15);
|
||||
}
|
||||
|
||||
// Check for overflow
|
||||
if (exp >= CL_HALF_MAX_EXP)
|
||||
{
|
||||
return cl_half_handle_overflow(rounding_mode, sign);
|
||||
}
|
||||
|
||||
// Check for underflow
|
||||
if (exp < (CL_HALF_MIN_EXP - CL_HALF_MANT_DIG - 1))
|
||||
{
|
||||
return cl_half_handle_underflow(rounding_mode, sign);
|
||||
}
|
||||
|
||||
// Check for value that will become denormal
|
||||
if (exp < -14)
|
||||
{
|
||||
// Include the implicit 1 from the FP64 mantissa
|
||||
h_exp = 0;
|
||||
d_mant |= (uint64_t)1 << (CL_DBL_MANT_DIG - 1);
|
||||
|
||||
// Mantissa shift amount depends on exponent
|
||||
lsb_pos = (uint32_t)(-exp + (CL_DBL_MANT_DIG - 25));
|
||||
}
|
||||
|
||||
// Generate FP16 mantissa by shifting FP64 mantissa
|
||||
uint16_t h_mant = (uint16_t)(d_mant >> lsb_pos);
|
||||
|
||||
// Check whether we need to round
|
||||
uint64_t halfway = (uint64_t)1 << (lsb_pos - 1);
|
||||
uint64_t mask = (halfway << 1) - 1;
|
||||
switch (rounding_mode)
|
||||
{
|
||||
case CL_HALF_RTE:
|
||||
if ((d_mant & mask) > halfway)
|
||||
{
|
||||
// More than halfway -> round up
|
||||
h_mant += 1;
|
||||
}
|
||||
else if ((d_mant & mask) == halfway)
|
||||
{
|
||||
// Exactly halfway -> round to nearest even
|
||||
if (h_mant & 0x1)
|
||||
h_mant += 1;
|
||||
}
|
||||
break;
|
||||
case CL_HALF_RTZ:
|
||||
// Mantissa has already been truncated -> do nothing
|
||||
break;
|
||||
case CL_HALF_RTP:
|
||||
if ((d_mant & mask) && !sign)
|
||||
{
|
||||
// Round positive numbers up
|
||||
h_mant += 1;
|
||||
}
|
||||
break;
|
||||
case CL_HALF_RTN:
|
||||
if ((d_mant & mask) && sign)
|
||||
{
|
||||
// Round negative numbers down
|
||||
h_mant += 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// Check for mantissa overflow
|
||||
if (h_mant & 0x400)
|
||||
{
|
||||
h_exp += 1;
|
||||
h_mant = 0;
|
||||
}
|
||||
|
||||
return (sign << 15) | (h_exp << 10) | h_mant;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Convert a cl_half to a cl_float.
|
||||
*/
|
||||
static inline cl_float cl_half_to_float(cl_half h)
|
||||
{
|
||||
// Type-punning to get direct access to underlying bits
|
||||
union
|
||||
{
|
||||
cl_float f;
|
||||
uint32_t i;
|
||||
} f32;
|
||||
|
||||
// Extract sign bit
|
||||
uint16_t sign = h >> 15;
|
||||
|
||||
// Extract FP16 exponent and mantissa
|
||||
uint16_t h_exp = (h >> (CL_HALF_MANT_DIG - 1)) & 0x1F;
|
||||
uint16_t h_mant = h & 0x3FF;
|
||||
|
||||
// Remove FP16 exponent bias
|
||||
int32_t exp = h_exp - CL_HALF_MAX_EXP + 1;
|
||||
|
||||
// Add FP32 exponent bias
|
||||
uint32_t f_exp = exp + CL_FLT_MAX_EXP - 1;
|
||||
|
||||
// Check for NaN / infinity
|
||||
if (h_exp == 0x1F)
|
||||
{
|
||||
if (h_mant)
|
||||
{
|
||||
// NaN -> propagate mantissa and silence it
|
||||
uint32_t f_mant = h_mant << (CL_FLT_MANT_DIG - CL_HALF_MANT_DIG);
|
||||
f_mant |= 0x400000;
|
||||
f32.i = (sign << 31) | 0x7F800000 | f_mant;
|
||||
return f32.f;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Infinity -> zero mantissa
|
||||
f32.i = (sign << 31) | 0x7F800000;
|
||||
return f32.f;
|
||||
}
|
||||
}
|
||||
|
||||
// Check for zero / denormal
|
||||
if (h_exp == 0)
|
||||
{
|
||||
if (h_mant == 0)
|
||||
{
|
||||
// Zero -> zero exponent
|
||||
f_exp = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Denormal -> normalize it
|
||||
// - Shift mantissa to make most-significant 1 implicit
|
||||
// - Adjust exponent accordingly
|
||||
uint32_t shift = 0;
|
||||
while ((h_mant & 0x400) == 0)
|
||||
{
|
||||
h_mant <<= 1;
|
||||
shift++;
|
||||
}
|
||||
h_mant &= 0x3FF;
|
||||
f_exp -= shift - 1;
|
||||
}
|
||||
}
|
||||
|
||||
f32.i = (sign << 31) | (f_exp << 23) | (h_mant << 13);
|
||||
return f32.f;
|
||||
}
|
||||
|
||||
|
||||
#undef CL_HALF_EXP_MASK
|
||||
#undef CL_HALF_MAX_FINITE_MAG
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* OPENCL_CL_HALF_H */
|
1294
Source/EmberCL/CL/cl_icd.h
Normal file
1294
Source/EmberCL/CL/cl_icd.h
Normal file
File diff suppressed because it is too large
Load Diff
124
Source/EmberCL/CL/cl_layer.h
Normal file
124
Source/EmberCL/CL/cl_layer.h
Normal file
@ -0,0 +1,124 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2023 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef OPENCL_CL_LAYER_H_
|
||||
#define OPENCL_CL_LAYER_H_
|
||||
|
||||
/*
|
||||
** This header is generated from the Khronos OpenCL XML API Registry.
|
||||
*/
|
||||
|
||||
#include <CL/cl_icd.h>
|
||||
|
||||
#include <CL/cl.h>
|
||||
|
||||
/* CL_NO_PROTOTYPES implies CL_NO_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_PROTOTYPES) && !defined(CL_NO_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
/* CL_NO_EXTENSION_PROTOTYPES implies
|
||||
CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES and
|
||||
CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************************************
|
||||
* cl_loader_layers
|
||||
***************************************************************/
|
||||
#define cl_loader_layers 1
|
||||
#define CL_LOADER_LAYERS_EXTENSION_NAME \
|
||||
"cl_loader_layers"
|
||||
|
||||
typedef cl_uint cl_layer_info;
|
||||
typedef cl_uint cl_layer_api_version;
|
||||
|
||||
/* cl_layer_info */
|
||||
#define CL_LAYER_API_VERSION 0x4240
|
||||
#define CL_LAYER_NAME 0x4241
|
||||
|
||||
/* Misc API enums */
|
||||
#define CL_LAYER_API_VERSION_100 100
|
||||
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetLayerInfo_fn)(
|
||||
cl_layer_info param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret) ;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clInitLayer_fn)(
|
||||
cl_uint num_entries,
|
||||
const cl_icd_dispatch* target_dispatch,
|
||||
cl_uint* num_entries_ret,
|
||||
const cl_icd_dispatch** layer_dispatch_ret) ;
|
||||
|
||||
/*
|
||||
** The function pointer typedefs prefixed with "pfn_" are provided for
|
||||
** compatibility with earlier versions of the headers. New code is
|
||||
** encouraged to use the function pointer typedefs that are suffixed with
|
||||
** "_fn" instead, for consistency.
|
||||
*/
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
pfn_clGetLayerInfo)(
|
||||
cl_layer_info param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret) ;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
pfn_clInitLayer)(
|
||||
cl_uint num_entries,
|
||||
const cl_icd_dispatch* target_dispatch,
|
||||
cl_uint* num_entries_ret,
|
||||
const cl_icd_dispatch** layer_dispatch_ret) ;
|
||||
|
||||
#if !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetLayerInfo(
|
||||
cl_layer_info param_name,
|
||||
size_t param_value_size,
|
||||
void* param_value,
|
||||
size_t* param_value_size_ret) ;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clInitLayer(
|
||||
cl_uint num_entries,
|
||||
const cl_icd_dispatch* target_dispatch,
|
||||
cl_uint* num_entries_ret,
|
||||
const cl_icd_dispatch** layer_dispatch_ret) ;
|
||||
|
||||
#endif /* !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* OPENCL_CL_LAYER_H_ */
|
1412
Source/EmberCL/CL/cl_platform.h
Normal file
1412
Source/EmberCL/CL/cl_platform.h
Normal file
File diff suppressed because it is too large
Load Diff
199
Source/EmberCL/CL/cl_va_api_media_sharing_intel.h
Normal file
199
Source/EmberCL/CL/cl_va_api_media_sharing_intel.h
Normal file
@ -0,0 +1,199 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2023 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef OPENCL_CL_VA_API_MEDIA_SHARING_INTEL_H_
|
||||
#define OPENCL_CL_VA_API_MEDIA_SHARING_INTEL_H_
|
||||
|
||||
/*
|
||||
** This header is generated from the Khronos OpenCL XML API Registry.
|
||||
*/
|
||||
|
||||
#include <va/va.h>
|
||||
|
||||
#include <CL/cl.h>
|
||||
|
||||
/* CL_NO_PROTOTYPES implies CL_NO_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_PROTOTYPES) && !defined(CL_NO_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
/* CL_NO_EXTENSION_PROTOTYPES implies
|
||||
CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES and
|
||||
CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES: */
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
#if defined(CL_NO_EXTENSION_PROTOTYPES) && \
|
||||
!defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
#define CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_sharing_format_query_va_api
|
||||
***************************************************************/
|
||||
#define cl_intel_sharing_format_query_va_api 1
|
||||
#define CL_INTEL_SHARING_FORMAT_QUERY_VA_API_EXTENSION_NAME \
|
||||
"cl_intel_sharing_format_query_va_api"
|
||||
|
||||
/* when cl_intel_va_api_media_sharing is supported */
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetSupportedVA_APIMediaSurfaceFormatsINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
VAImageFormat* va_api_formats,
|
||||
cl_uint* num_surface_formats) ;
|
||||
|
||||
#if !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetSupportedVA_APIMediaSurfaceFormatsINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
cl_mem_object_type image_type,
|
||||
cl_uint plane,
|
||||
cl_uint num_entries,
|
||||
VAImageFormat* va_api_formats,
|
||||
cl_uint* num_surface_formats) ;
|
||||
|
||||
#endif /* !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
/***************************************************************
|
||||
* cl_intel_va_api_media_sharing
|
||||
***************************************************************/
|
||||
#define cl_intel_va_api_media_sharing 1
|
||||
#define CL_INTEL_VA_API_MEDIA_SHARING_EXTENSION_NAME \
|
||||
"cl_intel_va_api_media_sharing"
|
||||
|
||||
typedef cl_uint cl_va_api_device_source_intel;
|
||||
typedef cl_uint cl_va_api_device_set_intel;
|
||||
|
||||
/* Error codes */
|
||||
#define CL_INVALID_VA_API_MEDIA_ADAPTER_INTEL -1098
|
||||
#define CL_INVALID_VA_API_MEDIA_SURFACE_INTEL -1099
|
||||
#define CL_VA_API_MEDIA_SURFACE_ALREADY_ACQUIRED_INTEL -1100
|
||||
#define CL_VA_API_MEDIA_SURFACE_NOT_ACQUIRED_INTEL -1101
|
||||
|
||||
/* cl_va_api_device_source_intel */
|
||||
#define CL_VA_API_DISPLAY_INTEL 0x4094
|
||||
|
||||
/* cl_va_api_device_set_intel */
|
||||
#define CL_PREFERRED_DEVICES_FOR_VA_API_INTEL 0x4095
|
||||
#define CL_ALL_DEVICES_FOR_VA_API_INTEL 0x4096
|
||||
|
||||
/* cl_context_info */
|
||||
#define CL_CONTEXT_VA_API_DISPLAY_INTEL 0x4097
|
||||
|
||||
/* cl_mem_info */
|
||||
#define CL_MEM_VA_API_MEDIA_SURFACE_INTEL 0x4098
|
||||
|
||||
/* cl_image_info */
|
||||
#define CL_IMAGE_VA_API_PLANE_INTEL 0x4099
|
||||
|
||||
/* cl_command_type */
|
||||
#define CL_COMMAND_ACQUIRE_VA_API_MEDIA_SURFACES_INTEL 0x409A
|
||||
#define CL_COMMAND_RELEASE_VA_API_MEDIA_SURFACES_INTEL 0x409B
|
||||
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clGetDeviceIDsFromVA_APIMediaAdapterINTEL_fn)(
|
||||
cl_platform_id platform,
|
||||
cl_va_api_device_source_intel media_adapter_type,
|
||||
void* media_adapter,
|
||||
cl_va_api_device_set_intel media_adapter_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_mem (CL_API_CALL *
|
||||
clCreateFromVA_APIMediaSurfaceINTEL_fn)(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
VASurfaceID* surface,
|
||||
cl_uint plane,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueAcquireVA_APIMediaSurfacesINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
typedef cl_int (CL_API_CALL *
|
||||
clEnqueueReleaseVA_APIMediaSurfacesINTEL_fn)(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#if !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES)
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clGetDeviceIDsFromVA_APIMediaAdapterINTEL(
|
||||
cl_platform_id platform,
|
||||
cl_va_api_device_source_intel media_adapter_type,
|
||||
void* media_adapter,
|
||||
cl_va_api_device_set_intel media_adapter_set,
|
||||
cl_uint num_entries,
|
||||
cl_device_id* devices,
|
||||
cl_uint* num_devices) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_mem CL_API_CALL
|
||||
clCreateFromVA_APIMediaSurfaceINTEL(
|
||||
cl_context context,
|
||||
cl_mem_flags flags,
|
||||
VASurfaceID* surface,
|
||||
cl_uint plane,
|
||||
cl_int* errcode_ret) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueAcquireVA_APIMediaSurfacesINTEL(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
extern CL_API_ENTRY cl_int CL_API_CALL
|
||||
clEnqueueReleaseVA_APIMediaSurfacesINTEL(
|
||||
cl_command_queue command_queue,
|
||||
cl_uint num_objects,
|
||||
const cl_mem* mem_objects,
|
||||
cl_uint num_events_in_wait_list,
|
||||
const cl_event* event_wait_list,
|
||||
cl_event* event) CL_API_SUFFIX__VERSION_1_2;
|
||||
|
||||
#endif /* !defined(CL_NO_NON_ICD_DISPATCH_EXTENSION_PROTOTYPES) */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* OPENCL_CL_VA_API_MEDIA_SHARING_INTEL_H_ */
|
81
Source/EmberCL/CL/cl_version.h
Normal file
81
Source/EmberCL/CL/cl_version.h
Normal file
@ -0,0 +1,81 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2018-2020 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef __CL_VERSION_H
|
||||
#define __CL_VERSION_H
|
||||
|
||||
/* Detect which version to target */
|
||||
#if !defined(CL_TARGET_OPENCL_VERSION)
|
||||
#pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
|
||||
#define CL_TARGET_OPENCL_VERSION 300
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION != 100 && \
|
||||
CL_TARGET_OPENCL_VERSION != 110 && \
|
||||
CL_TARGET_OPENCL_VERSION != 120 && \
|
||||
CL_TARGET_OPENCL_VERSION != 200 && \
|
||||
CL_TARGET_OPENCL_VERSION != 210 && \
|
||||
CL_TARGET_OPENCL_VERSION != 220 && \
|
||||
CL_TARGET_OPENCL_VERSION != 300
|
||||
#pragma message("cl_version: CL_TARGET_OPENCL_VERSION is not a valid value (100, 110, 120, 200, 210, 220, 300). Defaulting to 300 (OpenCL 3.0)")
|
||||
#undef CL_TARGET_OPENCL_VERSION
|
||||
#define CL_TARGET_OPENCL_VERSION 300
|
||||
#endif
|
||||
|
||||
|
||||
/* OpenCL Version */
|
||||
#if CL_TARGET_OPENCL_VERSION >= 300 && !defined(CL_VERSION_3_0)
|
||||
#define CL_VERSION_3_0 1
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION >= 220 && !defined(CL_VERSION_2_2)
|
||||
#define CL_VERSION_2_2 1
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION >= 210 && !defined(CL_VERSION_2_1)
|
||||
#define CL_VERSION_2_1 1
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION >= 200 && !defined(CL_VERSION_2_0)
|
||||
#define CL_VERSION_2_0 1
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION >= 120 && !defined(CL_VERSION_1_2)
|
||||
#define CL_VERSION_1_2 1
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION >= 110 && !defined(CL_VERSION_1_1)
|
||||
#define CL_VERSION_1_1 1
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION >= 100 && !defined(CL_VERSION_1_0)
|
||||
#define CL_VERSION_1_0 1
|
||||
#endif
|
||||
|
||||
/* Allow deprecated APIs for older OpenCL versions. */
|
||||
#if CL_TARGET_OPENCL_VERSION <= 220 && !defined(CL_USE_DEPRECATED_OPENCL_2_2_APIS)
|
||||
#define CL_USE_DEPRECATED_OPENCL_2_2_APIS
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION <= 210 && !defined(CL_USE_DEPRECATED_OPENCL_2_1_APIS)
|
||||
#define CL_USE_DEPRECATED_OPENCL_2_1_APIS
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION <= 200 && !defined(CL_USE_DEPRECATED_OPENCL_2_0_APIS)
|
||||
#define CL_USE_DEPRECATED_OPENCL_2_0_APIS
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION <= 120 && !defined(CL_USE_DEPRECATED_OPENCL_1_2_APIS)
|
||||
#define CL_USE_DEPRECATED_OPENCL_1_2_APIS
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION <= 110 && !defined(CL_USE_DEPRECATED_OPENCL_1_1_APIS)
|
||||
#define CL_USE_DEPRECATED_OPENCL_1_1_APIS
|
||||
#endif
|
||||
#if CL_TARGET_OPENCL_VERSION <= 100 && !defined(CL_USE_DEPRECATED_OPENCL_1_0_APIS)
|
||||
#define CL_USE_DEPRECATED_OPENCL_1_0_APIS
|
||||
#endif
|
||||
|
||||
#endif /* __CL_VERSION_H */
|
32
Source/EmberCL/CL/opencl.h
Normal file
32
Source/EmberCL/CL/opencl.h
Normal file
@ -0,0 +1,32 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2008-2021 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef __OPENCL_H
|
||||
#define __OPENCL_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <CL/cl.h>
|
||||
#include <CL/cl_gl.h>
|
||||
#include <CL/cl_ext.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __OPENCL_H */
|
11103
Source/EmberCL/CL/opencl.hpp
Normal file
11103
Source/EmberCL/CL/opencl.hpp
Normal file
File diff suppressed because it is too large
Load Diff
@ -70,7 +70,7 @@ private:
|
||||
string m_GaussianDESsWithoutScfNoCacheKernel;
|
||||
string m_GaussianDESsWithoutScfNoCacheEntryPoint = "GaussianDESsWithoutScfNoCacheKernel";
|
||||
|
||||
bool m_DoublePrecision;
|
||||
bool m_NVidia;
|
||||
bool m_DoublePrecision = false;
|
||||
bool m_NVidia = false;
|
||||
};
|
||||
}
|
||||
|
@ -10,6 +10,13 @@
|
||||
#define WIN32_LEAN_AND_MEAN//Exclude rarely-used stuff from Windows headers.
|
||||
#define _USE_MATH_DEFINES
|
||||
//#define CL_USE_DEPRECATED_OPENCL_1_2_APIS 1
|
||||
//#define CL_USE_DEPRECATED_OPENCL_2_0_APIS 1
|
||||
//For reasons unknown, QtCreator cannot use any value higher than 120 with these, because
|
||||
//it causes errors when compiling opencl.hpp. This happens even though it's using MSVC under the hood
|
||||
//and it compiles in MSVC when using Visual Studio.
|
||||
#define CL_TARGET_OPENCL_VERSION 300
|
||||
#define CL_HPP_TARGET_OPENCL_VERSION 300
|
||||
#define CL_HPP_MINIMUM_OPENCL_VERSION 300
|
||||
|
||||
#include "Timing.h"
|
||||
#include "Renderer.h"
|
||||
@ -26,7 +33,7 @@
|
||||
#endif
|
||||
|
||||
#include <utility>
|
||||
#include <CL/cl.hpp>
|
||||
#include <CL/opencl.hpp>
|
||||
#include <algorithm>
|
||||
#include <atomic>
|
||||
#include <cstdio>
|
||||
|
@ -322,18 +322,18 @@ static constexpr char DensityFilterCLStructString[] =
|
||||
template <typename T>
|
||||
struct ALIGN SpatialFilterCL
|
||||
{
|
||||
uint m_SuperRasW;
|
||||
uint m_SuperRasH;
|
||||
uint m_FinalRasW;
|
||||
uint m_FinalRasH;
|
||||
uint m_Supersample;
|
||||
uint m_FilterWidth;
|
||||
uint m_DensityFilterOffset;
|
||||
uint m_YAxisUp;
|
||||
T m_Vibrancy;
|
||||
T m_HighlightPower;
|
||||
T m_Gamma;
|
||||
T m_LinRange;
|
||||
uint m_SuperRasW = 0;
|
||||
uint m_SuperRasH = 0;
|
||||
uint m_FinalRasW = 0;
|
||||
uint m_FinalRasH = 0;
|
||||
uint m_Supersample = 0;
|
||||
uint m_FilterWidth = 0;
|
||||
uint m_DensityFilterOffset = 0;
|
||||
uint m_YAxisUp = 0;
|
||||
T m_Vibrancy = 0;
|
||||
T m_HighlightPower = 0;
|
||||
T m_Gamma = 0;
|
||||
T m_LinRange = 0;
|
||||
Color<T> m_Background;
|
||||
};
|
||||
|
||||
|
@ -467,7 +467,7 @@ bool OpenCLWrapper::WriteImage2D(size_t index, bool shared, ::size_t width, ::si
|
||||
{
|
||||
cl_int err;
|
||||
cl::Event e;
|
||||
cl::size_t<3> origin, region;
|
||||
cl::array<cl::size_type, 3> origin, region;
|
||||
origin[0] = 0;
|
||||
origin[1] = 0;
|
||||
origin[2] = 0;
|
||||
@ -539,7 +539,7 @@ bool OpenCLWrapper::ReadImage(size_t imageIndex, ::size_t width, ::size_t height
|
||||
{
|
||||
cl_int err;
|
||||
cl::Event e;
|
||||
cl::size_t<3> origin, region;
|
||||
cl::array<cl::size_type, 3> origin, region;
|
||||
origin[0] = 0;
|
||||
origin[1] = 0;
|
||||
origin[2] = 0;
|
||||
@ -799,7 +799,7 @@ bool OpenCLWrapper::EnqueueReleaseGLObjects(cl::ImageGL& image)
|
||||
/// </summary>
|
||||
/// <param name="memObjects">The memory objects to acquire</param>
|
||||
/// <returns>True if success, else false.</returns>
|
||||
bool OpenCLWrapper::EnqueueAcquireGLObjects(const VECTOR_CLASS<cl::Memory>* memObjects)
|
||||
bool OpenCLWrapper::EnqueueAcquireGLObjects(const cl::vector<cl::Memory>* memObjects)
|
||||
{
|
||||
if (m_Init && m_Shared)
|
||||
{
|
||||
@ -816,7 +816,7 @@ bool OpenCLWrapper::EnqueueAcquireGLObjects(const VECTOR_CLASS<cl::Memory>* memO
|
||||
/// </summary>
|
||||
/// <param name="memObjects">The memory objects to release</param>
|
||||
/// <returns>True if success, else false.</returns>
|
||||
bool OpenCLWrapper::EnqueueReleaseGLObjects(const VECTOR_CLASS<cl::Memory>* memObjects)
|
||||
bool OpenCLWrapper::EnqueueReleaseGLObjects(const cl::vector<cl::Memory>* memObjects)
|
||||
{
|
||||
if (m_Init && m_Shared)
|
||||
{
|
||||
@ -989,7 +989,7 @@ size_t OpenCLWrapper::MaxAllocSize() const { return m_MaxAllocSize; }
|
||||
/// <summary>
|
||||
/// Clear the error report for this class as well as the global OpenCLInfo instance.
|
||||
/// </summary>
|
||||
void OpenCLWrapper::ClearErrorReport()
|
||||
void OpenCLWrapper::ClearErrorReport() noexcept
|
||||
{
|
||||
EmberReport::ClearErrorReport();
|
||||
m_Info->ClearErrorReport();
|
||||
@ -1056,8 +1056,9 @@ bool OpenCLWrapper::CreateSPK(const string& name, const string& program, const s
|
||||
if (m_Init)
|
||||
{
|
||||
cl_int err;
|
||||
vector<std::string> programvec{ program };
|
||||
spk.m_Name = name;
|
||||
spk.m_Source = cl::Program::Sources(1, std::make_pair(program.c_str(), program.length() + 1));
|
||||
spk.m_Source = cl::Program::Sources(programvec);
|
||||
spk.m_Program = cl::Program(m_Context, spk.m_Source);
|
||||
|
||||
if (doublePrecision)
|
||||
|
@ -28,7 +28,7 @@ public:
|
||||
class EMBERCL_API NamedBuffer
|
||||
{
|
||||
public:
|
||||
NamedBuffer()
|
||||
NamedBuffer() noexcept
|
||||
{
|
||||
}
|
||||
|
||||
@ -48,7 +48,7 @@ public:
|
||||
class EMBERCL_API NamedImage2D
|
||||
{
|
||||
public:
|
||||
NamedImage2D()
|
||||
NamedImage2D() noexcept
|
||||
{
|
||||
}
|
||||
|
||||
@ -69,7 +69,7 @@ public:
|
||||
class EMBERCL_API NamedImage2DGL
|
||||
{
|
||||
public:
|
||||
NamedImage2DGL()
|
||||
NamedImage2DGL() noexcept
|
||||
{
|
||||
}
|
||||
|
||||
@ -133,8 +133,8 @@ public:
|
||||
bool EnqueueAcquireGLObjects(cl::ImageGL& image);
|
||||
bool EnqueueReleaseGLObjects(const string& name);
|
||||
bool EnqueueReleaseGLObjects(cl::ImageGL& image);
|
||||
bool EnqueueAcquireGLObjects(const VECTOR_CLASS<cl::Memory>* memObjects = nullptr);
|
||||
bool EnqueueReleaseGLObjects(const VECTOR_CLASS<cl::Memory>* memObjects = nullptr);
|
||||
bool EnqueueAcquireGLObjects(const cl::vector<cl::Memory>* memObjects = nullptr);
|
||||
bool EnqueueReleaseGLObjects(const cl::vector<cl::Memory>* memObjects = nullptr);
|
||||
bool CreateSampler(cl::Sampler& sampler, cl_bool normalizedCoords, cl_addressing_mode addressingMode, cl_filter_mode filterMode);
|
||||
|
||||
//Arguments.
|
||||
@ -180,9 +180,9 @@ public:
|
||||
size_t MaxAllocSize() const;
|
||||
|
||||
//Public virtual functions overridden from base classes.
|
||||
virtual void ClearErrorReport() override;
|
||||
virtual string ErrorReportString() override;
|
||||
virtual vector<string> ErrorReport() override;
|
||||
void ClearErrorReport() noexcept override;
|
||||
string ErrorReportString() override;
|
||||
vector<string> ErrorReport() override;
|
||||
|
||||
static void MakeEvenGridDims(size_t blockW, size_t blockH, size_t& gridW, size_t& gridH);
|
||||
|
||||
@ -194,8 +194,8 @@ private:
|
||||
size_t m_PlatformIndex = 0;
|
||||
size_t m_DeviceIndex = 0;
|
||||
size_t m_LocalMemSize = 0;
|
||||
size_t m_GlobalMemSize;
|
||||
size_t m_MaxAllocSize;
|
||||
size_t m_GlobalMemSize = 0;
|
||||
size_t m_MaxAllocSize = 0;
|
||||
cl::Platform m_Platform;
|
||||
cl::Context m_Context;
|
||||
cl::Device m_Device;
|
||||
|
@ -33,7 +33,7 @@ RendererCL<T, bucketT>::RendererCL(const vector<pair<size_t, size_t>>& devices,
|
||||
m_FinalFormat.image_channel_order = CL_RGBA;
|
||||
m_FinalFormat.image_channel_data_type = CL_FLOAT;
|
||||
m_CompileBegun = [&]() { };
|
||||
m_IterCountPerKernel = size_t(m_SubBatchPercentPerThread * m_Ember.m_SubBatchSize);
|
||||
m_IterCountPerKernel = size_t(double(m_SubBatchPercentPerThread) * m_Ember.m_SubBatchSize);
|
||||
Init(devices, shared, outputTexID);
|
||||
}
|
||||
|
||||
@ -183,24 +183,29 @@ bool RendererCL<T, bucketT>::SetOutputTexture(GLuint outputTexID)
|
||||
/// </summary>
|
||||
|
||||
//Iters per kernel/block/grid.
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterCountPerKernel() const { return m_IterCountPerKernel; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterCountPerBlock() const { return IterCountPerKernel() * IterBlockKernelCount(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterCountPerGrid() const { return IterCountPerKernel() * IterGridKernelCount(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterCountPerKernel() const noexcept { return m_IterCountPerKernel; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterCountPerBlock() const noexcept { return IterCountPerKernel() * IterBlockKernelCount(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterCountPerGrid() const noexcept { return IterCountPerKernel() * IterGridKernelCount(); }
|
||||
|
||||
//Kernels per block.
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterBlockKernelWidth() const { return m_IterBlockWidth; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterBlockKernelHeight() const { return m_IterBlockHeight; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterBlockKernelCount() const { return IterBlockKernelWidth() * IterBlockKernelHeight(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterBlockKernelWidth() const noexcept { return m_IterBlockWidth; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterBlockKernelHeight() const noexcept { return m_IterBlockHeight; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterBlockKernelCount() const noexcept { return IterBlockKernelWidth() * IterBlockKernelHeight(); }
|
||||
|
||||
//Kernels per grid.
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridKernelWidth() const { return IterGridBlockWidth() * IterBlockKernelWidth(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridKernelHeight() const { return IterGridBlockHeight() * IterBlockKernelHeight(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridKernelCount() const { return IterGridKernelWidth() * IterGridKernelHeight(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridKernelWidth() const noexcept { return IterGridBlockWidth() * IterBlockKernelWidth(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridKernelHeight() const noexcept { return IterGridBlockHeight() * IterBlockKernelHeight(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridKernelCount() const noexcept { return IterGridKernelWidth() * IterGridKernelHeight(); }
|
||||
|
||||
//Blocks per grid.
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridBlockWidth() const { return m_IterBlocksWide; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridBlockHeight() const { return m_IterBlocksHigh; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridBlockCount() const { return IterGridBlockWidth() * IterGridBlockHeight(); }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridBlockWidth() const noexcept { return m_IterBlocksWide; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridBlockHeight() const noexcept { return m_IterBlocksHigh; }
|
||||
template <typename T, typename bucketT> size_t RendererCL<T, bucketT>::IterGridBlockCount() const noexcept { return IterGridBlockWidth() * IterGridBlockHeight(); }
|
||||
|
||||
//Allow for setting the number of blocks in each grid dimension.
|
||||
//These should only be calle before a run starts.
|
||||
template <typename T, typename bucketT> void RendererCL<T, bucketT>::IterBlocksWide(size_t w) noexcept { m_IterBlocksWide = w; }
|
||||
template <typename T, typename bucketT> void RendererCL<T, bucketT>::IterBlocksHigh(size_t h) noexcept { m_IterBlocksHigh = h; }
|
||||
|
||||
/// <summary>
|
||||
/// Read the histogram of the specified into the host side CPU buffer.
|
||||
@ -590,7 +595,7 @@ bool RendererCL<T, bucketT>::Shared() const { return m_Shared; }
|
||||
/// Clear the error report for this class as well as the OpenCLWrapper members of each device.
|
||||
/// </summary>
|
||||
template <typename T, typename bucketT>
|
||||
void RendererCL<T, bucketT>::ClearErrorReport()
|
||||
void RendererCL<T, bucketT>::ClearErrorReport() noexcept
|
||||
{
|
||||
EmberReport::ClearErrorReport();
|
||||
|
||||
@ -669,7 +674,7 @@ bool RendererCL<T, bucketT>::RandVec(vector<QTIsaac<ISAAC_SIZE, ISAAC_INT>>& ran
|
||||
/// </summary>
|
||||
/// <returns>True if an devices are from Nvidia, else false.</returns>
|
||||
template <typename T, typename bucketT>
|
||||
bool RendererCL<T, bucketT>::AnyNvidia() const
|
||||
bool RendererCL<T, bucketT>::AnyNvidia() const noexcept
|
||||
{
|
||||
for (auto& dev : m_Devices)
|
||||
if (dev->Nvidia())
|
||||
@ -701,7 +706,7 @@ bool RendererCL<T, bucketT>::Alloc(bool histOnly)
|
||||
static std::string loc = __FUNCTION__;
|
||||
auto& wrapper = m_Devices[0]->m_Wrapper;
|
||||
InitStateVec();
|
||||
m_IterCountPerKernel = size_t(m_SubBatchPercentPerThread * m_Ember.m_SubBatchSize);//This isn't the greatest place to put this, but it must be computed before the number of iters to do is computed in the base.
|
||||
m_IterCountPerKernel = size_t(double(m_SubBatchPercentPerThread) * m_Ember.m_SubBatchSize);//This isn't the greatest place to put this, but it must be computed before the number of iters to do is computed in the base.
|
||||
|
||||
if (b && !(b = wrapper.AddBuffer(m_DEFilterParamsBufferName, sizeof(m_DensityFilterCL)))) { ErrorStr(loc, "Failed to set DE filter parameters buffer", m_Devices[0].get()); }
|
||||
|
||||
@ -1305,11 +1310,11 @@ eRenderStatus RendererCL<T, bucketT>::RunDensityFilter()
|
||||
//that are far enough apart such that their filters do not overlap.
|
||||
//Do the latter.
|
||||
//Gap is in terms of blocks and specifies how many blocks must separate two blocks running at the same time.
|
||||
const auto gapW = static_cast<uint>(ceil(fw2 / blockSizeW));
|
||||
const auto gapW = static_cast<size_t>(ceil(fw2 / blockSizeW));
|
||||
const auto chunkSizeW = gapW + 1;//Chunk size is also in terms of blocks and is one block (the one running) plus the gap to the right of it.
|
||||
const auto gapH = static_cast<uint>(ceil(fw2 / blockSizeH));
|
||||
const auto gapH = static_cast<size_t>(ceil(fw2 / blockSizeH));
|
||||
const auto chunkSizeH = gapH + 1;//Chunk size is also in terms of blocks and is one block (the one running) plus the gap below it.
|
||||
double totalChunks = chunkSizeW * chunkSizeH;
|
||||
double totalChunks = double(chunkSizeW * chunkSizeH);
|
||||
|
||||
if (b && !(b = wrapper.AddAndWriteBuffer(m_DEFilterParamsBufferName, reinterpret_cast<void*>(&m_DensityFilterCL), sizeof(m_DensityFilterCL)))) { ErrorStr(loc, "Writing DE filter parameters buffer failed", m_Devices[0].get()); }
|
||||
|
||||
@ -1350,12 +1355,12 @@ eRenderStatus RendererCL<T, bucketT>::RunDensityFilter()
|
||||
gridH /= chunkSizeH;
|
||||
OpenCLWrapper::MakeEvenGridDims(blockSizeW, blockSizeH, gridW, gridH);
|
||||
|
||||
for (uint rowChunkPass = 0; b && !m_Abort && rowChunkPass < chunkSizeH; rowChunkPass++)//Number of vertical passes.
|
||||
for (size_t rowChunkPass = 0; b && !m_Abort && rowChunkPass < chunkSizeH; rowChunkPass++)//Number of vertical passes.
|
||||
{
|
||||
for (uint colChunkPass = 0; b && !m_Abort && colChunkPass < chunkSizeW; colChunkPass++)//Number of horizontal passes.
|
||||
for (size_t colChunkPass = 0; b && !m_Abort && colChunkPass < chunkSizeW; colChunkPass++)//Number of horizontal passes.
|
||||
{
|
||||
//t2.Tic();
|
||||
if (b && !(b = RunDensityFilterPrivate(kernelIndex, gridW, gridH, blockSizeW, blockSizeH, chunkSizeW, chunkSizeH, colChunkPass, rowChunkPass)))
|
||||
if (b && !(b = RunDensityFilterPrivate(kernelIndex, gridW, gridH, blockSizeW, blockSizeH, uint(chunkSizeW), uint(chunkSizeH), uint(colChunkPass), uint(rowChunkPass))))
|
||||
{
|
||||
ErrorStr(loc, "Running DE filter program for row chunk "s + std::to_string(rowChunkPass) + ", col chunk "s + std::to_string(colChunkPass) + " failed", m_Devices[0].get());
|
||||
}
|
||||
@ -1510,7 +1515,7 @@ bool RendererCL<T, bucketT>::ClearBuffer(size_t device, const string& bufferName
|
||||
{
|
||||
size_t blockW = m_Devices[device]->Nvidia() ? 32 : 16;//Max work group size is 256 on AMD, which means 16x16.
|
||||
size_t blockH = m_Devices[device]->Nvidia() ? 32 : 16;
|
||||
size_t gridW = width * elementSize;
|
||||
size_t gridW = size_t(width) * elementSize;
|
||||
size_t gridH = height;
|
||||
b = true;
|
||||
OpenCLWrapper::MakeEvenGridDims(blockW, blockH, gridW, gridH);
|
||||
|
@ -21,9 +21,9 @@ public:
|
||||
virtual ~RendererCLBase() { }
|
||||
virtual bool ReadFinal(v4F* pixels) { return false; }
|
||||
virtual bool ClearFinal() { return false; }
|
||||
virtual bool AnyNvidia() const { return false; }
|
||||
bool OptAffine() const { return m_OptAffine; }
|
||||
void OptAffine(bool optAffine) { m_OptAffine = optAffine; }
|
||||
virtual bool AnyNvidia() const noexcept { return false; }
|
||||
bool OptAffine() const noexcept { return m_OptAffine; }
|
||||
void OptAffine(bool optAffine) noexcept { m_OptAffine = optAffine; }
|
||||
|
||||
std::function<void(void)> m_CompileBegun;
|
||||
|
||||
@ -112,24 +112,28 @@ public:
|
||||
bool SetOutputTexture(GLuint outputTexID);
|
||||
|
||||
//Iters per kernel/block/grid.
|
||||
inline size_t IterCountPerKernel() const;
|
||||
inline size_t IterCountPerBlock() const;
|
||||
inline size_t IterCountPerGrid() const;
|
||||
inline size_t IterCountPerKernel() const noexcept;
|
||||
inline size_t IterCountPerBlock() const noexcept;
|
||||
inline size_t IterCountPerGrid() const noexcept;
|
||||
|
||||
//Kernels per block.
|
||||
inline size_t IterBlockKernelWidth() const;
|
||||
inline size_t IterBlockKernelHeight() const;
|
||||
inline size_t IterBlockKernelCount() const;
|
||||
inline size_t IterBlockKernelWidth() const noexcept;
|
||||
inline size_t IterBlockKernelHeight() const noexcept;
|
||||
inline size_t IterBlockKernelCount() const noexcept;
|
||||
|
||||
//Kernels per grid.
|
||||
inline size_t IterGridKernelWidth() const;
|
||||
inline size_t IterGridKernelHeight() const;
|
||||
inline size_t IterGridKernelCount() const;
|
||||
inline size_t IterGridKernelWidth() const noexcept;
|
||||
inline size_t IterGridKernelHeight() const noexcept;
|
||||
inline size_t IterGridKernelCount() const noexcept;
|
||||
|
||||
//Blocks per grid.
|
||||
inline size_t IterGridBlockWidth() const;
|
||||
inline size_t IterGridBlockHeight() const;
|
||||
inline size_t IterGridBlockCount() const;
|
||||
inline size_t IterGridBlockWidth() const noexcept;
|
||||
inline size_t IterGridBlockHeight() const noexcept;
|
||||
inline size_t IterGridBlockCount() const noexcept;
|
||||
|
||||
//Allow for changing the number of blocks in each dimension of the grid.
|
||||
void IterBlocksWide(size_t w) noexcept;
|
||||
void IterBlocksHigh(size_t h) noexcept;
|
||||
|
||||
bool ReadHist(size_t device);
|
||||
bool ReadAccum();
|
||||
@ -164,11 +168,11 @@ public:
|
||||
bool CreateSpatialFilter(bool& newAlloc) override;
|
||||
eRendererType RendererType() const override;
|
||||
bool Shared() const override;
|
||||
void ClearErrorReport() override;
|
||||
void ClearErrorReport() noexcept override;
|
||||
string ErrorReportString() override;
|
||||
vector<string> ErrorReport() override;
|
||||
bool RandVec(vector<QTIsaac<ISAAC_SIZE, ISAAC_INT>>& randVec) override;
|
||||
bool AnyNvidia() const override;
|
||||
bool AnyNvidia() const noexcept override;
|
||||
|
||||
#ifndef TEST_CL
|
||||
protected:
|
||||
|
@ -51,17 +51,17 @@ bool RendererClDevice::Init()
|
||||
/// <summary>
|
||||
/// OpenCL property accessors, getters only.
|
||||
/// </summary>
|
||||
bool RendererClDevice::Ok() const { return m_Init; }
|
||||
bool RendererClDevice::Shared() const { return m_Shared; }
|
||||
bool RendererClDevice::Nvidia() const { return m_NVidia; }
|
||||
size_t RendererClDevice::WarpSize() const { return m_WarpSize; }
|
||||
size_t RendererClDevice::PlatformIndex() const { return m_PlatformIndex; }
|
||||
size_t RendererClDevice::DeviceIndex() const { return m_DeviceIndex; }
|
||||
bool RendererClDevice::Ok() const noexcept { return m_Init; }
|
||||
bool RendererClDevice::Shared() const noexcept { return m_Shared; }
|
||||
bool RendererClDevice::Nvidia() const noexcept { return m_NVidia; }
|
||||
size_t RendererClDevice::WarpSize() const noexcept { return m_WarpSize; }
|
||||
size_t RendererClDevice::PlatformIndex() const noexcept { return m_PlatformIndex; }
|
||||
size_t RendererClDevice::DeviceIndex() const noexcept { return m_DeviceIndex; }
|
||||
|
||||
/// <summary>
|
||||
/// Clear the error report for this class as well as the wrapper.
|
||||
/// </summary>
|
||||
void RendererClDevice::ClearErrorReport()
|
||||
void RendererClDevice::ClearErrorReport() noexcept
|
||||
{
|
||||
EmberReport::ClearErrorReport();
|
||||
m_Wrapper.ClearErrorReport();
|
||||
|
@ -20,15 +20,15 @@ class EMBERCL_API RendererClDevice : public EmberReport
|
||||
public:
|
||||
RendererClDevice(size_t platform, size_t device, bool shared);
|
||||
bool Init();
|
||||
bool Ok() const;
|
||||
bool Shared() const;
|
||||
bool Nvidia() const;
|
||||
size_t WarpSize() const;
|
||||
size_t PlatformIndex() const;
|
||||
size_t DeviceIndex() const;
|
||||
bool Ok() const noexcept;
|
||||
bool Shared() const noexcept;
|
||||
bool Nvidia() const noexcept;
|
||||
size_t WarpSize() const noexcept;
|
||||
size_t PlatformIndex() const noexcept;
|
||||
size_t DeviceIndex() const noexcept;
|
||||
|
||||
//Public virtual functions overridden from base classes.
|
||||
void ClearErrorReport() override;
|
||||
void ClearErrorReport() noexcept override;
|
||||
string ErrorReportString() override;
|
||||
vector<string> ErrorReport() override;
|
||||
|
||||
|
@ -214,13 +214,16 @@ void FormatName(Ember<T>& result, ostringstream& os, streamsize padding)
|
||||
/// <param name="rgb">The RGB 8-bit buffer</param>
|
||||
/// <param name="width">The width of the image in pixels</param>
|
||||
/// <param name="height">The height of the image in pixels</param>
|
||||
static void Rgba32ToRgb8(v4F* rgba, byte* rgb, size_t width, size_t height)
|
||||
static void Rgba32ToRgb8(const v4F* rgba, unsigned char* rgb, size_t width, size_t height)
|
||||
{
|
||||
if (rgba != nullptr && rgb != nullptr)
|
||||
{
|
||||
for (size_t i = 0, j = 0; i < (width * height); i++)
|
||||
{
|
||||
rgb[j++] = static_cast<byte>(Clamp<float>(rgba[i].r * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = static_cast<byte>(Clamp<float>(rgba[i].g * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = static_cast<byte>(Clamp<float>(rgba[i].b * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = static_cast<unsigned char>(Clamp<float>(rgba[i].r * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = static_cast<unsigned char>(Clamp<float>(rgba[i].g * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = static_cast<unsigned char>(Clamp<float>(rgba[i].b * 255.0f, 0.0f, 255.0f));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -233,14 +236,17 @@ static void Rgba32ToRgb8(v4F* rgba, byte* rgb, size_t width, size_t height)
|
||||
/// <param name="width">The width of the image in pixels</param>
|
||||
/// <param name="height">The height of the image in pixels</param>
|
||||
/// <param name="doAlpha">True to use alpha transparency, false to assign the max alpha value to make each pixel fully visible</param>
|
||||
static void Rgba32ToRgba8(v4F* rgba, byte* rgb, size_t width, size_t height, bool doAlpha)
|
||||
static void Rgba32ToRgba8(const v4F* rgba, unsigned char* rgb, size_t width, size_t height, bool doAlpha)
|
||||
{
|
||||
if (rgba != nullptr && rgb != nullptr)
|
||||
{
|
||||
for (size_t i = 0, j = 0; i < (width * height); i++)
|
||||
{
|
||||
rgb[j++] = static_cast<byte>(Clamp<float>(rgba[i].r * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = static_cast<byte>(Clamp<float>(rgba[i].g * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = static_cast<byte>(Clamp<float>(rgba[i].b * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = doAlpha ? static_cast<byte>(Clamp<float>(rgba[i].a * 255.0f, 0.0f, 255.0f)) : 255;
|
||||
rgb[j++] = static_cast<unsigned char>(Clamp<float>(rgba[i].r * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = static_cast<unsigned char>(Clamp<float>(rgba[i].g * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = static_cast<unsigned char>(Clamp<float>(rgba[i].b * 255.0f, 0.0f, 255.0f));
|
||||
rgb[j++] = doAlpha ? static_cast<unsigned char>(Clamp<float>(rgba[i].a * 255.0f, 0.0f, 255.0f)) : 255;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -253,7 +259,9 @@ static void Rgba32ToRgba8(v4F* rgba, byte* rgb, size_t width, size_t height, boo
|
||||
/// <param name="width">The width of the image in pixels</param>
|
||||
/// <param name="height">The height of the image in pixels</param>
|
||||
/// <param name="doAlpha">True to use alpha transparency, false to assign the max alpha value to make each pixel fully visible</param>
|
||||
static void Rgba32ToRgba16(v4F* rgba, glm::uint16* rgb, size_t width, size_t height, bool doAlpha)
|
||||
static void Rgba32ToRgba16(const v4F* rgba, glm::uint16* rgb, size_t width, size_t height, bool doAlpha)
|
||||
{
|
||||
if (rgba != nullptr && rgb != nullptr)
|
||||
{
|
||||
for (size_t i = 0, j = 0; i < (width * height); i++)
|
||||
{
|
||||
@ -263,6 +271,7 @@ static void Rgba32ToRgba16(v4F* rgba, glm::uint16* rgb, size_t width, size_t hei
|
||||
rgb[j++] = doAlpha ? static_cast<glm::uint16>(Clamp<float>(rgba[i].a * 65535.0f, 0.0f, 65535.0f)) : glm::uint16{ 65535 };
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert an RGBA 32-bit float buffer to an EXR RGBA 16-bit float buffer.
|
||||
@ -274,7 +283,9 @@ static void Rgba32ToRgba16(v4F* rgba, glm::uint16* rgb, size_t width, size_t hei
|
||||
/// <param name="width">The width of the image in pixels</param>
|
||||
/// <param name="height">The height of the image in pixels</param>
|
||||
/// <param name="doAlpha">True to use alpha transparency, false to assign the max alpha value to make each pixel fully visible</param>
|
||||
static void Rgba32ToRgbaExr(v4F* rgba, Rgba* ilmfRgba, size_t width, size_t height, bool doAlpha)
|
||||
static void Rgba32ToRgbaExr(const v4F* rgba, Rgba* ilmfRgba, size_t width, size_t height, bool doAlpha)
|
||||
{
|
||||
if (rgba != nullptr && ilmfRgba != nullptr)
|
||||
{
|
||||
for (size_t i = 0; i < (width * height); i++)
|
||||
{
|
||||
@ -284,6 +295,7 @@ static void Rgba32ToRgbaExr(v4F* rgba, Rgba* ilmfRgba, size_t width, size_t heig
|
||||
ilmfRgba[i].a = doAlpha ? Clamp<float>(rgba[i].a * 1.0f, 0.0f, 1.0f) : 1.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert an RGBA 32-bit float buffer to an EXR RGBA 32-bit float buffer.
|
||||
@ -298,7 +310,9 @@ static void Rgba32ToRgbaExr(v4F* rgba, Rgba* ilmfRgba, size_t width, size_t heig
|
||||
/// <param name="width">The width of the image in pixels</param>
|
||||
/// <param name="height">The height of the image in pixels</param>
|
||||
/// <param name="doAlpha">True to use alpha transparency, false to assign the max alpha value to make each pixel fully visible</param>
|
||||
static void Rgba32ToRgba32Exr(v4F* rgba, float* r, float* g, float* b, float* a, size_t width, size_t height, bool doAlpha)
|
||||
static void Rgba32ToRgba32Exr(const v4F* rgba, float* r, float* g, float* b, float* a, size_t width, size_t height, bool doAlpha)
|
||||
{
|
||||
if (rgba != nullptr && r != nullptr && g != nullptr && b != nullptr && a != nullptr)
|
||||
{
|
||||
for (size_t i = 0; i < (width * height); i++)
|
||||
{
|
||||
@ -308,6 +322,7 @@ static void Rgba32ToRgba32Exr(v4F* rgba, float* r, float* g, float* b, float* a,
|
||||
a[i] = doAlpha ? Clamp<float>(rgba[i].a * 1.0f, 0.0f, 1.0f) : 1.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns a string with all illegal file path characters removed.
|
||||
@ -383,7 +398,7 @@ static string MakeAnimFilename(const string& path, const string& prefix, const s
|
||||
/// <param name="memAvailable">Amount of memory available on the system</param>
|
||||
/// <param name="useMem">The maximum amount of memory to use. Use max if 0.</param>
|
||||
/// <returns>The number of strips to use</returns>
|
||||
static uint CalcStrips(double memRequired, double memAvailable, double useMem)
|
||||
static uint CalcStrips(double memRequired, double memAvailable, double useMem) noexcept
|
||||
{
|
||||
if (useMem > 0)
|
||||
memAvailable = useMem;
|
||||
@ -404,7 +419,7 @@ static uint CalcStrips(double memRequired, double memAvailable, double useMem)
|
||||
/// <param name="denominator">The denominator</param>
|
||||
/// <returns>The next highest divisor if found, else 1.</returns>
|
||||
template <typename T>
|
||||
static T NextHighestEvenDiv(T numerator, T denominator)
|
||||
static T NextHighestEvenDiv(T numerator, T denominator) noexcept
|
||||
{
|
||||
T result = 1;
|
||||
T numDiv2 = numerator / 2;
|
||||
@ -432,7 +447,7 @@ static T NextHighestEvenDiv(T numerator, T denominator)
|
||||
/// <param name="denominator">The denominator</param>
|
||||
/// <returns>The next lowest divisor if found, else 1.</returns>
|
||||
template <typename T>
|
||||
static T NextLowestEvenDiv(T numerator, T denominator)
|
||||
static T NextLowestEvenDiv(T numerator, T denominator) noexcept
|
||||
{
|
||||
T result = 1;
|
||||
T numDiv2 = numerator / 2;
|
||||
|
@ -161,7 +161,7 @@ private:
|
||||
/// <summary>
|
||||
/// Default constructor. This should never be used, instead use the one that takes arguments.
|
||||
/// </summary>
|
||||
EmberOptionEntry()
|
||||
EmberOptionEntry() noexcept
|
||||
{
|
||||
m_Option.nId = 0;
|
||||
m_Option.pszArg = _T("--fillmein");
|
||||
@ -220,8 +220,8 @@ public:
|
||||
/// <summary>
|
||||
/// Functor accessors.
|
||||
/// </summary>
|
||||
inline const T& operator() (void) const { return m_Val; }
|
||||
inline void operator() (T t) { m_Val = t; }
|
||||
inline const T& operator() (void) const noexcept { return m_Val; }
|
||||
inline void operator() (T t) noexcept { m_Val = t; }
|
||||
|
||||
private:
|
||||
eOptionUse m_OptionUse = eOptionUse::OPT_USE_ALL;
|
||||
@ -241,7 +241,7 @@ struct NoDelimiters : std::ctype<char>
|
||||
/// <summary>
|
||||
/// Constructor that passes the table created in GetTable() to the base.
|
||||
/// </summary>
|
||||
NoDelimiters()
|
||||
NoDelimiters() noexcept
|
||||
: std::ctype<char>(GetTable())
|
||||
{
|
||||
}
|
||||
@ -250,7 +250,7 @@ struct NoDelimiters : std::ctype<char>
|
||||
/// Create and return a pointer to an empty table with no delimiters.
|
||||
/// </summary>
|
||||
/// <returns>A pointer to the empty delimiter table</returns>
|
||||
static std::ctype_base::mask const* GetTable()
|
||||
static std::ctype_base::mask const* GetTable() noexcept
|
||||
{
|
||||
typedef std::ctype<char> cctype;
|
||||
static cctype::mask rc[cctype::table_size];
|
||||
@ -330,7 +330,7 @@ public:
|
||||
/// </summary>
|
||||
EmberOptions()
|
||||
{
|
||||
const size_t size = (size_t)eOptionIDs::OPT_EXTRAS;
|
||||
constexpr size_t size = (size_t)eOptionIDs::OPT_EXTRAS;
|
||||
m_BoolArgs.reserve(size);
|
||||
m_IntArgs.reserve(size);
|
||||
m_UintArgs.reserve(size);
|
||||
@ -649,7 +649,7 @@ public:
|
||||
/// Return a const ref to m_Devices.
|
||||
/// </summary>
|
||||
/// <returns>A const ref to the vector of absolute device indices to be used</returns>
|
||||
const vector<size_t>& Devices()
|
||||
const vector<size_t>& Devices() noexcept
|
||||
{
|
||||
return m_Devices;
|
||||
}
|
||||
@ -662,7 +662,7 @@ public:
|
||||
vector<CSimpleOpt::SOption> GetSimpleOptions(eOptionUse optUsage = eOptionUse::OPT_USE_ALL)
|
||||
{
|
||||
vector<CSimpleOpt::SOption> entries;
|
||||
CSimpleOpt::SOption endOption = SO_END_OF_OPTIONS;
|
||||
CSimpleOpt::SOption const endOption = SO_END_OF_OPTIONS;
|
||||
entries.reserve(75);
|
||||
|
||||
for (auto entry : m_BoolArgs) if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) entries.push_back(entry->m_Option);
|
||||
@ -711,15 +711,15 @@ public:
|
||||
ostringstream os;
|
||||
os << std::boolalpha;
|
||||
|
||||
for (auto entry : m_BoolArgs) if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n";
|
||||
for (auto entry : m_BoolArgs) if (entry != nullptr) { if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n"; }
|
||||
|
||||
for (auto entry : m_IntArgs) if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n";
|
||||
for (auto entry : m_IntArgs) if (entry != nullptr) { if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n"; }
|
||||
|
||||
for (auto entry : m_UintArgs) if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n";
|
||||
for (auto entry : m_UintArgs) if (entry != nullptr) { if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n"; }
|
||||
|
||||
for (auto entry : m_DoubleArgs) if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n";
|
||||
for (auto entry : m_DoubleArgs) if (entry != nullptr) { if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n"; }
|
||||
|
||||
for (auto entry : m_StringArgs) if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n";
|
||||
for (auto entry : m_StringArgs) if (entry != nullptr) { if (static_cast<et>(entry->m_OptionUse) & static_cast<et>(optUsage)) os << entry->m_NameWithoutDashes << ": " << (*entry)() << "\n"; }
|
||||
|
||||
return os.str();
|
||||
}
|
||||
@ -768,7 +768,7 @@ public:
|
||||
/// </summary>
|
||||
/// <param name="errorCode">The code of the last parsing error</param>
|
||||
/// <returns>The last option parsing error text as a string</returns>
|
||||
string GetLastErrorText(int errorCode)
|
||||
string GetLastErrorText(int errorCode) noexcept
|
||||
{
|
||||
switch (errorCode)
|
||||
{
|
||||
|
@ -19,7 +19,7 @@ static std::recursive_mutex fileCs;
|
||||
/// <param name="url">Url of the author</param>
|
||||
/// <param name="nick">Nickname of the author</param>
|
||||
/// <returns>True if success, else false</returns>
|
||||
static bool WriteJpeg(const char* filename, byte* image, size_t width, size_t height, int quality, bool enableComments, const EmberImageComments& comments, const string& id, const string& url, const string& nick)
|
||||
static bool WriteJpeg(const char* filename, unsigned char* image, size_t width, size_t height, int quality, bool enableComments, const EmberImageComments& comments, const string& id, const string& url, const string& nick)
|
||||
{
|
||||
bool b = false;
|
||||
FILE* file = nullptr;
|
||||
@ -38,7 +38,7 @@ static bool WriteJpeg(const char* filename, byte* image, size_t width, size_t he
|
||||
|
||||
if (fileResult == 0)
|
||||
{
|
||||
size_t i;
|
||||
size_t i = 0;
|
||||
jpeg_error_mgr jerr;
|
||||
jpeg_compress_struct info;
|
||||
string nickString, urlString, idString;
|
||||
@ -73,14 +73,14 @@ static bool WriteJpeg(const char* filename, byte* image, size_t width, size_t he
|
||||
if (enableComments)
|
||||
{
|
||||
string s;
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const byte*>(verString.c_str()), static_cast<uint>(verString.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const unsigned char*>(verString.c_str()), static_cast<uint>(verString.size()));
|
||||
|
||||
if (nick != "")
|
||||
{
|
||||
os.str("");
|
||||
os << "nickname: " << nick;
|
||||
s = os.str();
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const byte*>(s.c_str()), static_cast<uint>(s.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const unsigned char*>(s.c_str()), static_cast<uint>(s.size()));
|
||||
}
|
||||
|
||||
if (url != "")
|
||||
@ -88,7 +88,7 @@ static bool WriteJpeg(const char* filename, byte* image, size_t width, size_t he
|
||||
os.str("");
|
||||
os << "url: " << url;
|
||||
s = os.str();
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const byte*>(s.c_str()), static_cast<uint>(s.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const unsigned char*>(s.c_str()), static_cast<uint>(s.size()));
|
||||
}
|
||||
|
||||
if (id != "")
|
||||
@ -96,13 +96,13 @@ static bool WriteJpeg(const char* filename, byte* image, size_t width, size_t he
|
||||
os.str("");
|
||||
os << "id: " << id;
|
||||
s = os.str();
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const byte*>(s.c_str()), static_cast<uint>(s.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const unsigned char*>(s.c_str()), static_cast<uint>(s.size()));
|
||||
}
|
||||
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const byte*>(bvString.c_str()), static_cast<uint>(bvString.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const byte*>(niString.c_str()), static_cast<uint>(niString.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const byte*>(rtString.c_str()), static_cast<uint>(rtString.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const byte*>(genomeString.c_str()), static_cast<uint>(genomeString.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const unsigned char*>(bvString.c_str()), static_cast<uint>(bvString.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const unsigned char*>(niString.c_str()), static_cast<uint>(niString.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const unsigned char*>(rtString.c_str()), static_cast<uint>(rtString.size()));
|
||||
jpeg_write_marker(&info, JPEG_COM, reinterpret_cast<const unsigned char*>(genomeString.c_str()), static_cast<uint>(genomeString.size()));
|
||||
}
|
||||
|
||||
for (i = 0; i < height; i++)
|
||||
@ -138,7 +138,7 @@ static bool WriteJpeg(const char* filename, byte* image, size_t width, size_t he
|
||||
/// <param name="url">Url of the author</param>
|
||||
/// <param name="nick">Nickname of the author</param>
|
||||
/// <returns>True if success, else false</returns>
|
||||
static bool WritePng(const char* filename, byte* image, size_t width, size_t height, size_t bytesPerChannel, bool enableComments, const EmberImageComments& comments, const string& id, const string& url, const string& nick)
|
||||
static bool WritePng(const char* filename, unsigned char* image, size_t width, size_t height, size_t bytesPerChannel, bool enableComments, const EmberImageComments& comments, const string& id, const string& url, const string& nick)
|
||||
{
|
||||
bool b = false;
|
||||
FILE* file = nullptr;
|
||||
@ -160,9 +160,9 @@ static bool WritePng(const char* filename, byte* image, size_t width, size_t hei
|
||||
png_structp png_ptr;
|
||||
png_infop info_ptr;
|
||||
png_text text[PNG_COMMENT_MAX];
|
||||
size_t i;
|
||||
glm::uint16 testbe = 1;
|
||||
vector<byte*> rows(height);
|
||||
size_t i = 0;
|
||||
constexpr glm::uint16 testbe = 1;
|
||||
vector<unsigned char*> rows(height);
|
||||
text[0].compression = PNG_TEXT_COMPRESSION_NONE;
|
||||
text[0].key = const_cast<png_charp>("ember_version");
|
||||
text[0].text = const_cast<png_charp>(EmberVersion());
|
||||
@ -241,10 +241,10 @@ static bool WritePng(const char* filename, byte* image, size_t width, size_t hei
|
||||
/// <param name="height">The height.</param>
|
||||
/// <param name="newSize">The size of the new buffer created</param>
|
||||
/// <returns>The converted buffer if successful, else NULL.</returns>
|
||||
static vector<byte> ConvertRGBToBMPBuffer(byte* buffer, size_t width, size_t height, size_t& newSize)
|
||||
static vector<unsigned char> ConvertRGBToBMPBuffer(unsigned char* buffer, size_t width, size_t height, size_t& newSize)
|
||||
{
|
||||
if (buffer == nullptr || width == 0 || height == 0)
|
||||
return vector<byte>();
|
||||
return vector<unsigned char>();
|
||||
|
||||
size_t padding = 0;
|
||||
const auto scanlinebytes = width * 3;
|
||||
@ -254,7 +254,7 @@ static vector<byte> ConvertRGBToBMPBuffer(byte* buffer, size_t width, size_t hei
|
||||
|
||||
const auto psw = scanlinebytes + padding;
|
||||
newSize = height * psw;
|
||||
vector<byte> newBuf(newSize);
|
||||
vector<unsigned char> newBuf(newSize);
|
||||
size_t bufpos = 0;
|
||||
size_t newpos = 0;
|
||||
|
||||
@ -286,7 +286,7 @@ static vector<byte> ConvertRGBToBMPBuffer(byte* buffer, size_t width, size_t hei
|
||||
/// <param name="height">Height of the image in pixels</param>
|
||||
/// <param name="paddedSize">Padded size, greater than or equal to total image size.</param>
|
||||
/// <returns>True if success, else false</returns>
|
||||
static bool SaveBmp(const char* filename, const byte* image, size_t width, size_t height, size_t paddedSize)
|
||||
static bool SaveBmp(const char* filename, const unsigned char* image, size_t width, size_t height, size_t paddedSize)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
BITMAPFILEHEADER bmfh;
|
||||
@ -362,7 +362,7 @@ static bool SaveBmp(const char* filename, const byte* image, size_t width, size_
|
||||
/// <param name="width">Width of the image in pixels</param>
|
||||
/// <param name="height">Height of the image in pixels</param>
|
||||
/// <returns>True if success, else false</returns>
|
||||
static bool WriteBmp(const char* filename, byte* image, size_t width, size_t height)
|
||||
static bool WriteBmp(const char* filename, unsigned char* image, size_t width, size_t height)
|
||||
{
|
||||
bool b = false;
|
||||
size_t newSize;
|
||||
|
@ -126,7 +126,8 @@
|
||||
@param SG_GLOB_NODOT
|
||||
Do not return the "." or ".." special directories.
|
||||
*/
|
||||
enum SG_Flags {
|
||||
enum SG_Flags
|
||||
{
|
||||
SG_GLOB_ERR = 1 << 0,
|
||||
SG_GLOB_MARK = 1 << 1,
|
||||
SG_GLOB_NOSORT = 1 << 2,
|
||||
@ -139,7 +140,8 @@ enum SG_Flags {
|
||||
};
|
||||
|
||||
/*! @brief Error return codes */
|
||||
enum SG_Error {
|
||||
enum SG_Error
|
||||
{
|
||||
SG_SUCCESS = 0,
|
||||
SG_ERR_NOMATCH = 1,
|
||||
SG_ERR_MEMORY = -1,
|
||||
@ -176,7 +178,7 @@ enum SG_Error {
|
||||
#endif
|
||||
#define sg_strcmp ::_mbscmp
|
||||
#define sg_strcasecmp ::_mbsicmp
|
||||
# define SOCHAR_T byte
|
||||
#define SOCHAR_T unsigned char
|
||||
#else
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
@ -213,42 +215,49 @@ enum SG_Error {
|
||||
class SimpleGlobUtil
|
||||
{
|
||||
public:
|
||||
static const char * strchr(const char *s, char c) {
|
||||
static const char* strchr(const char* s, char c) noexcept
|
||||
{
|
||||
return reinterpret_cast<const char*>(sg_strchr(reinterpret_cast<const SOCHAR_T*>(s), c));
|
||||
}
|
||||
static const wchar_t * strchr(const wchar_t *s, wchar_t c) {
|
||||
static const wchar_t* strchr(const wchar_t* s, wchar_t c) noexcept
|
||||
{
|
||||
return ::wcschr(s, c);
|
||||
}
|
||||
#if SG_HAVE_ICU
|
||||
static const UChar * strchr(const UChar *s, UChar c) {
|
||||
static const UChar* strchr(const UChar* s, UChar c)
|
||||
{
|
||||
return ::u_strchr(s, c);
|
||||
}
|
||||
#endif
|
||||
|
||||
static const char * strrchr(const char *s, char c) {
|
||||
static const char* strrchr(const char* s, char c) noexcept
|
||||
{
|
||||
return reinterpret_cast<const char*>(sg_strrchr(reinterpret_cast<const SOCHAR_T*>(s), c));
|
||||
}
|
||||
static const wchar_t * strrchr(const wchar_t *s, wchar_t c) {
|
||||
static const wchar_t* strrchr(const wchar_t* s, wchar_t c) noexcept
|
||||
{
|
||||
return ::wcsrchr(s, c);
|
||||
}
|
||||
#if SG_HAVE_ICU
|
||||
static const UChar * strrchr(const UChar *s, UChar c) {
|
||||
static const UChar* strrchr(const UChar* s, UChar c)
|
||||
{
|
||||
return ::u_strrchr(s, c);
|
||||
}
|
||||
#endif
|
||||
|
||||
// Note: char strlen returns number of bytes, not characters
|
||||
static size_t strlen(const char *s) { return ::strlen(s); }
|
||||
static size_t strlen(const wchar_t *s) { return ::wcslen(s); }
|
||||
static size_t strlen(const char* s) noexcept { return ::strlen(s); }
|
||||
static size_t strlen(const wchar_t* s) noexcept { return ::wcslen(s); }
|
||||
#if SG_HAVE_ICU
|
||||
static size_t strlen(const UChar* s) { return ::u_strlen(s); }
|
||||
#endif
|
||||
|
||||
static void strcpy_s(char *dst, size_t n, const char *src) {
|
||||
(void) n;
|
||||
sg_strcpy_s(reinterpret_cast<SOCHAR_T *>(dst), n, reinterpret_cast<const SOCHAR_T *>(src));
|
||||
static void strcpy_s(char* dst, size_t n, const char* src) noexcept
|
||||
{
|
||||
sg_strcpy_s(reinterpret_cast<SOCHAR_T*>(dst), 0, reinterpret_cast<const SOCHAR_T*>(src));
|
||||
}
|
||||
static void strcpy_s(wchar_t *dst, size_t n, const wchar_t *src) {
|
||||
static void strcpy_s(wchar_t* dst, size_t n, const wchar_t* src) noexcept
|
||||
{
|
||||
# if __STDC_WANT_SECURE_LIB__
|
||||
::wcscpy_s(dst, n, src);
|
||||
#else
|
||||
@ -257,39 +266,47 @@ public:
|
||||
#endif
|
||||
}
|
||||
#if SG_HAVE_ICU
|
||||
static void strcpy_s(UChar *dst, size_t n, const UChar *src) {
|
||||
static void strcpy_s(UChar* dst, size_t n, const UChar* src)
|
||||
{
|
||||
::u_strncpy(dst, src, n);
|
||||
}
|
||||
#endif
|
||||
|
||||
static int strcmp(const char *s1, const char *s2) {
|
||||
static int strcmp(const char* s1, const char* s2) noexcept
|
||||
{
|
||||
return sg_strcmp(reinterpret_cast<const SOCHAR_T*>(s1), reinterpret_cast<const SOCHAR_T*>(s2));
|
||||
}
|
||||
static int strcmp(const wchar_t *s1, const wchar_t *s2) {
|
||||
static int strcmp(const wchar_t* s1, const wchar_t* s2) noexcept
|
||||
{
|
||||
return ::wcscmp(s1, s2);
|
||||
}
|
||||
#if SG_HAVE_ICU
|
||||
static int strcmp(const UChar *s1, const UChar *s2) {
|
||||
static int strcmp(const UChar* s1, const UChar* s2)
|
||||
{
|
||||
return ::u_strcmp(s1, s2);
|
||||
}
|
||||
#endif
|
||||
|
||||
static int strcasecmp(const char *s1, const char *s2) {
|
||||
static int strcasecmp(const char* s1, const char* s2) noexcept
|
||||
{
|
||||
return sg_strcasecmp(reinterpret_cast<const SOCHAR_T*>(s1), reinterpret_cast<const SOCHAR_T*>(s2));
|
||||
}
|
||||
#if _WIN32
|
||||
static int strcasecmp(const wchar_t *s1, const wchar_t *s2) {
|
||||
static int strcasecmp(const wchar_t* s1, const wchar_t* s2) noexcept
|
||||
{
|
||||
return ::_wcsicmp(s1, s2);
|
||||
}
|
||||
#endif // _WIN32
|
||||
#if SG_HAVE_ICU
|
||||
static int strcasecmp(const UChar *s1, const UChar *s2) {
|
||||
static int strcasecmp(const UChar* s1, const UChar* s2)
|
||||
{
|
||||
return u_strcasecmp(s1, s2, 0);
|
||||
}
|
||||
#endif
|
||||
};
|
||||
|
||||
enum SG_FileType {
|
||||
enum SG_FileType
|
||||
{
|
||||
SG_FILETYPE_INVALID,
|
||||
SG_FILETYPE_FILE,
|
||||
SG_FILETYPE_DIR
|
||||
@ -309,67 +326,95 @@ struct SimpleGlobBase
|
||||
{
|
||||
SimpleGlobBase() : m_hFind(INVALID_HANDLE_VALUE) { }
|
||||
|
||||
int FindFirstFileS(const char * a_pszFileSpec, uint) {
|
||||
int FindFirstFileS(const char* a_pszFileSpec, uint)
|
||||
{
|
||||
m_hFind = FindFirstFileA(a_pszFileSpec, &m_oFindDataA);
|
||||
if (m_hFind != INVALID_HANDLE_VALUE) {
|
||||
|
||||
if (m_hFind != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
return SG_SUCCESS;
|
||||
}
|
||||
|
||||
DWORD dwErr = GetLastError();
|
||||
if (dwErr == ERROR_FILE_NOT_FOUND) {
|
||||
|
||||
if (dwErr == ERROR_FILE_NOT_FOUND)
|
||||
{
|
||||
return SG_ERR_NOMATCH;
|
||||
}
|
||||
|
||||
return SG_ERR_FAILURE;
|
||||
}
|
||||
int FindFirstFileS(const wchar_t * a_pszFileSpec, uint) {
|
||||
int FindFirstFileS(const wchar_t* a_pszFileSpec, uint)
|
||||
{
|
||||
m_hFind = FindFirstFileW(a_pszFileSpec, &m_oFindDataW);
|
||||
if (m_hFind != INVALID_HANDLE_VALUE) {
|
||||
|
||||
if (m_hFind != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
return SG_SUCCESS;
|
||||
}
|
||||
|
||||
DWORD dwErr = GetLastError();
|
||||
if (dwErr == ERROR_FILE_NOT_FOUND) {
|
||||
|
||||
if (dwErr == ERROR_FILE_NOT_FOUND)
|
||||
{
|
||||
return SG_ERR_NOMATCH;
|
||||
}
|
||||
|
||||
return SG_ERR_FAILURE;
|
||||
}
|
||||
|
||||
bool FindNextFileS(char) {
|
||||
bool FindNextFileS(char)
|
||||
{
|
||||
return FindNextFileA(m_hFind, &m_oFindDataA) != FALSE;
|
||||
}
|
||||
bool FindNextFileS(wchar_t) {
|
||||
bool FindNextFileS(wchar_t)
|
||||
{
|
||||
return FindNextFileW(m_hFind, &m_oFindDataW) != FALSE;
|
||||
}
|
||||
|
||||
void FindDone() {
|
||||
void FindDone()
|
||||
{
|
||||
FindClose(m_hFind);
|
||||
}
|
||||
|
||||
const char * GetFileNameS(char) const {
|
||||
const char* GetFileNameS(char) const
|
||||
{
|
||||
return m_oFindDataA.cFileName;
|
||||
}
|
||||
const wchar_t * GetFileNameS(wchar_t) const {
|
||||
const wchar_t* GetFileNameS(wchar_t) const
|
||||
{
|
||||
return m_oFindDataW.cFileName;
|
||||
}
|
||||
|
||||
bool IsDirS(char) const {
|
||||
bool IsDirS(char) const
|
||||
{
|
||||
return this->GetFileTypeS(m_oFindDataA.dwFileAttributes) == SG_FILETYPE_DIR;
|
||||
}
|
||||
bool IsDirS(wchar_t) const {
|
||||
bool IsDirS(wchar_t) const
|
||||
{
|
||||
return this->GetFileTypeS(m_oFindDataW.dwFileAttributes) == SG_FILETYPE_DIR;
|
||||
}
|
||||
|
||||
SG_FileType GetFileTypeS(const char * a_pszPath) {
|
||||
SG_FileType GetFileTypeS(const char* a_pszPath)
|
||||
{
|
||||
return this->GetFileTypeS(GetFileAttributesA(a_pszPath));
|
||||
}
|
||||
SG_FileType GetFileTypeS(const wchar_t * a_pszPath) {
|
||||
SG_FileType GetFileTypeS(const wchar_t* a_pszPath)
|
||||
{
|
||||
return this->GetFileTypeS(GetFileAttributesW(a_pszPath));
|
||||
}
|
||||
SG_FileType GetFileTypeS(DWORD a_dwAttribs) const {
|
||||
if (a_dwAttribs == INVALID_FILE_ATTRIBUTES) {
|
||||
SG_FileType GetFileTypeS(DWORD a_dwAttribs) const
|
||||
{
|
||||
if (a_dwAttribs == INVALID_FILE_ATTRIBUTES)
|
||||
{
|
||||
return SG_FILETYPE_INVALID;
|
||||
}
|
||||
if (a_dwAttribs & FILE_ATTRIBUTE_DIRECTORY) {
|
||||
|
||||
if (a_dwAttribs & FILE_ATTRIBUTE_DIRECTORY)
|
||||
{
|
||||
return SG_FILETYPE_DIR;
|
||||
}
|
||||
|
||||
return SG_FILETYPE_FILE;
|
||||
}
|
||||
|
||||
@ -387,116 +432,157 @@ private:
|
||||
template<class SOCHAR>
|
||||
struct SimpleGlobBase
|
||||
{
|
||||
SimpleGlobBase() {
|
||||
SimpleGlobBase()
|
||||
{
|
||||
memset(&m_glob, 0, sizeof(m_glob));
|
||||
m_uiCurr = size_t(-1);
|
||||
}
|
||||
|
||||
~SimpleGlobBase() {
|
||||
~SimpleGlobBase()
|
||||
{
|
||||
globfree(&m_glob);
|
||||
}
|
||||
|
||||
void FilePrep() {
|
||||
void FilePrep()
|
||||
{
|
||||
m_bIsDir = false;
|
||||
size_t len = strlen(m_glob.gl_pathv[m_uiCurr]);
|
||||
if (m_glob.gl_pathv[m_uiCurr][len-1] == '/') {
|
||||
|
||||
if (m_glob.gl_pathv[m_uiCurr][len - 1] == '/')
|
||||
{
|
||||
m_bIsDir = true;
|
||||
m_glob.gl_pathv[m_uiCurr][len - 1] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
int FindFirstFileS(const char * a_pszFileSpec, uint a_uiFlags) {
|
||||
int FindFirstFileS(const char* a_pszFileSpec, uint a_uiFlags)
|
||||
{
|
||||
int nFlags = GLOB_MARK | GLOB_NOSORT;
|
||||
|
||||
if (a_uiFlags & SG_GLOB_ERR) nFlags |= GLOB_ERR;
|
||||
|
||||
if (a_uiFlags & SG_GLOB_TILDE) nFlags |= GLOB_TILDE;
|
||||
|
||||
int rc = glob(a_pszFileSpec, nFlags, nullptr, &m_glob);
|
||||
|
||||
if (rc == GLOB_NOSPACE) return SG_ERR_MEMORY;
|
||||
|
||||
if (rc == GLOB_ABORTED) return SG_ERR_FAILURE;
|
||||
|
||||
if (rc == GLOB_NOMATCH) return SG_ERR_NOMATCH;
|
||||
|
||||
m_uiCurr = 0;
|
||||
FilePrep();
|
||||
return SG_SUCCESS;
|
||||
}
|
||||
|
||||
#if SG_HAVE_ICU
|
||||
int FindFirstFileS(const UChar * a_pszFileSpec, uint a_uiFlags) {
|
||||
int FindFirstFileS(const UChar* a_pszFileSpec, uint a_uiFlags)
|
||||
{
|
||||
char buf[PATH_MAX] = { 0 };
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
u_strToUTF8(buf, sizeof(buf), nullptr, a_pszFileSpec, -1, &status);
|
||||
|
||||
if (U_FAILURE(status)) return SG_ERR_FAILURE;
|
||||
|
||||
return this->FindFirstFileS(buf, a_uiFlags);
|
||||
}
|
||||
#endif
|
||||
|
||||
bool FindNextFileS(char) {
|
||||
bool FindNextFileS(char)
|
||||
{
|
||||
SG_ASSERT(m_uiCurr != (size_t) -1);
|
||||
if (++m_uiCurr >= m_glob.gl_pathc) {
|
||||
|
||||
if (++m_uiCurr >= m_glob.gl_pathc)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
FilePrep();
|
||||
return true;
|
||||
}
|
||||
|
||||
#if SG_HAVE_ICU
|
||||
bool FindNextFileS(UChar) {
|
||||
bool FindNextFileS(UChar)
|
||||
{
|
||||
return this->FindNextFileS((char)0);
|
||||
}
|
||||
#endif
|
||||
|
||||
void FindDone() {
|
||||
void FindDone()
|
||||
{
|
||||
globfree(&m_glob);
|
||||
memset(&m_glob, 0, sizeof(m_glob));
|
||||
m_uiCurr = size_t(-1);
|
||||
}
|
||||
|
||||
const char * GetFileNameS(char) const {
|
||||
const char* GetFileNameS(char) const
|
||||
{
|
||||
SG_ASSERT(m_uiCurr != size_t(-1));
|
||||
return m_glob.gl_pathv[m_uiCurr];
|
||||
}
|
||||
|
||||
#if SG_HAVE_ICU
|
||||
const UChar * GetFileNameS(UChar) const {
|
||||
const UChar* GetFileNameS(UChar) const
|
||||
{
|
||||
const char* pszFile = this->GetFileNameS((char)0);
|
||||
|
||||
if (!pszFile) return nullptr;
|
||||
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
memset(m_szBuf, 0, sizeof(m_szBuf));
|
||||
u_strFromUTF8(m_szBuf, PATH_MAX, nullptr, pszFile, -1, &status);
|
||||
|
||||
if (U_FAILURE(status)) return nullptr;
|
||||
|
||||
return m_szBuf;
|
||||
}
|
||||
#endif
|
||||
|
||||
bool IsDirS(char) const {
|
||||
bool IsDirS(char) const
|
||||
{
|
||||
SG_ASSERT(m_uiCurr != size_t(-1));
|
||||
return m_bIsDir;
|
||||
}
|
||||
|
||||
#if SG_HAVE_ICU
|
||||
bool IsDirS(UChar) const {
|
||||
bool IsDirS(UChar) const
|
||||
{
|
||||
return this->IsDirS((char)0);
|
||||
}
|
||||
#endif
|
||||
|
||||
SG_FileType GetFileTypeS(const char * a_pszPath) const {
|
||||
SG_FileType GetFileTypeS(const char* a_pszPath) const
|
||||
{
|
||||
struct stat sb;
|
||||
if (0 != stat(a_pszPath, &sb)) {
|
||||
|
||||
if (0 != stat(a_pszPath, &sb))
|
||||
{
|
||||
return SG_FILETYPE_INVALID;
|
||||
}
|
||||
if (S_ISDIR(sb.st_mode)) {
|
||||
|
||||
if (S_ISDIR(sb.st_mode))
|
||||
{
|
||||
return SG_FILETYPE_DIR;
|
||||
}
|
||||
if (S_ISREG(sb.st_mode)) {
|
||||
|
||||
if (S_ISREG(sb.st_mode))
|
||||
{
|
||||
return SG_FILETYPE_FILE;
|
||||
}
|
||||
|
||||
return SG_FILETYPE_INVALID;
|
||||
}
|
||||
|
||||
#if SG_HAVE_ICU
|
||||
SG_FileType GetFileTypeS(const UChar * a_pszPath) const {
|
||||
SG_FileType GetFileTypeS(const UChar* a_pszPath) const
|
||||
{
|
||||
char buf[PATH_MAX] = { 0 };
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
u_strToUTF8(buf, sizeof(buf), nullptr, a_pszPath, -1, &status);
|
||||
|
||||
if (U_FAILURE(status)) return SG_FILETYPE_INVALID;
|
||||
|
||||
return this->GetFileTypeS(buf);
|
||||
}
|
||||
#endif
|
||||
@ -586,13 +672,15 @@ public:
|
||||
inline int FileCount() const { return m_nArgsLen; }
|
||||
|
||||
/*! @brief Return the full argv array. */
|
||||
inline SOCHAR ** Files() {
|
||||
inline SOCHAR** Files()
|
||||
{
|
||||
SetArgvArrayType(POINTERS);
|
||||
return m_rgpArgs;
|
||||
}
|
||||
|
||||
/*! @brief Return the a single file. */
|
||||
inline SOCHAR * File(int n) {
|
||||
inline SOCHAR* File(int n)
|
||||
{
|
||||
SG_ASSERT(n >= 0 && n < m_nArgsLen);
|
||||
return Files()[n];
|
||||
}
|
||||
@ -650,7 +738,6 @@ CSimpleGlobTempl<SOCHAR>::CSimpleGlobTempl(
|
||||
m_nArgsSize = 0;
|
||||
m_pBuffer = nullptr;
|
||||
m_uiBufferSize = 0;
|
||||
|
||||
Init(a_uiFlags, a_nReservedSlots);
|
||||
}
|
||||
|
||||
@ -658,6 +745,7 @@ template<class SOCHAR>
|
||||
CSimpleGlobTempl<SOCHAR>::~CSimpleGlobTempl()
|
||||
{
|
||||
if (m_rgpArgs) free(m_rgpArgs);
|
||||
|
||||
if (m_pBuffer) free(m_pBuffer);
|
||||
}
|
||||
|
||||
@ -674,11 +762,15 @@ CSimpleGlobTempl<SOCHAR>::Init(
|
||||
m_nReservedSlots = a_nReservedSlots;
|
||||
m_uiBufferLen = 0;
|
||||
|
||||
if (m_nReservedSlots > 0) {
|
||||
if (!GrowArgvArray(m_nReservedSlots)) {
|
||||
if (m_nReservedSlots > 0)
|
||||
{
|
||||
if (!GrowArgvArray(m_nReservedSlots))
|
||||
{
|
||||
return SG_ERR_MEMORY;
|
||||
}
|
||||
for (int n = 0; n < m_nReservedSlots; ++n) {
|
||||
|
||||
for (int n = 0; n < m_nReservedSlots; ++n)
|
||||
{
|
||||
m_rgpArgs[n] = nullptr;
|
||||
}
|
||||
}
|
||||
@ -699,25 +791,33 @@ CSimpleGlobTempl<SOCHAR>::Add(
|
||||
SOCHAR szFileSpec[MAX_PATH];
|
||||
SimpleGlobUtil::strcpy_s(szFileSpec, MAX_PATH, a_pszFileSpec);
|
||||
const SOCHAR* pszPath = SimpleGlobUtil::strchr(szFileSpec, '/');
|
||||
while (pszPath) {
|
||||
|
||||
while (pszPath)
|
||||
{
|
||||
szFileSpec[pszPath - szFileSpec] = SG_PATH_CHAR;
|
||||
pszPath = SimpleGlobUtil::strchr(pszPath + 1, '/');
|
||||
}
|
||||
|
||||
a_pszFileSpec = szFileSpec;
|
||||
#endif
|
||||
|
||||
// if this doesn't contain wildcards then we can just add it directly
|
||||
m_szPathPrefix[0] = 0;
|
||||
|
||||
if (!SimpleGlobUtil::strchr(a_pszFileSpec, '*') &&
|
||||
!SimpleGlobUtil::strchr(a_pszFileSpec, '?'))
|
||||
{
|
||||
SG_FileType nType = this->GetFileTypeS(a_pszFileSpec);
|
||||
if (nType == SG_FILETYPE_INVALID) {
|
||||
if (m_uiFlags & SG_GLOB_NOCHECK) {
|
||||
|
||||
if (nType == SG_FILETYPE_INVALID)
|
||||
{
|
||||
if (m_uiFlags & SG_GLOB_NOCHECK)
|
||||
{
|
||||
return AppendName(a_pszFileSpec, false);
|
||||
}
|
||||
|
||||
return SG_ERR_NOMATCH;
|
||||
}
|
||||
|
||||
return AppendName(a_pszFileSpec, nType == SG_FILETYPE_DIR);
|
||||
}
|
||||
|
||||
@ -727,37 +827,50 @@ CSimpleGlobTempl<SOCHAR>::Add(
|
||||
// filename we get back.
|
||||
const SOCHAR* pszFilename =
|
||||
SimpleGlobUtil::strrchr(a_pszFileSpec, SG_PATH_CHAR);
|
||||
if (pszFilename) {
|
||||
|
||||
if (pszFilename)
|
||||
{
|
||||
SimpleGlobUtil::strcpy_s(m_szPathPrefix, MAX_PATH, a_pszFileSpec);
|
||||
m_szPathPrefix[pszFilename - a_pszFileSpec + 1] = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
// search for the first match on the file
|
||||
int rc = this->FindFirstFileS(a_pszFileSpec, m_uiFlags);
|
||||
if (rc != SG_SUCCESS) {
|
||||
if (rc == SG_ERR_NOMATCH && (m_uiFlags & SG_GLOB_NOCHECK)) {
|
||||
|
||||
if (rc != SG_SUCCESS)
|
||||
{
|
||||
if (rc == SG_ERR_NOMATCH && (m_uiFlags & SG_GLOB_NOCHECK))
|
||||
{
|
||||
int ok = AppendName(a_pszFileSpec, false);
|
||||
|
||||
if (ok != SG_SUCCESS) rc = ok;
|
||||
}
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
||||
// add it and find all subsequent matches
|
||||
int nError, nStartLen = m_nArgsLen;
|
||||
bool bSuccess;
|
||||
do {
|
||||
|
||||
do
|
||||
{
|
||||
nError = AppendName(this->GetFileNameS(SOCHAR(0)), this->IsDirS(SOCHAR(0)));
|
||||
bSuccess = this->FindNextFileS(SOCHAR(0));
|
||||
}
|
||||
while (nError == SG_SUCCESS && bSuccess);
|
||||
|
||||
SimpleGlobBase<SOCHAR>::FindDone();
|
||||
|
||||
// sort these files if required
|
||||
if (m_nArgsLen > nStartLen && !(m_uiFlags & SG_GLOB_NOSORT)) {
|
||||
if (m_uiFlags & SG_GLOB_FULLSORT) {
|
||||
if (m_nArgsLen > nStartLen && !(m_uiFlags & SG_GLOB_NOSORT))
|
||||
{
|
||||
if (m_uiFlags & SG_GLOB_FULLSORT)
|
||||
{
|
||||
nStartLen = m_nReservedSlots;
|
||||
}
|
||||
|
||||
SetArgvArrayType(POINTERS);
|
||||
qsort(
|
||||
m_rgpArgs + nStartLen,
|
||||
@ -776,12 +889,17 @@ CSimpleGlobTempl<SOCHAR>::Add(
|
||||
)
|
||||
{
|
||||
int nResult;
|
||||
for (int n = 0; n < a_nCount; ++n) {
|
||||
|
||||
for (int n = 0; n < a_nCount; ++n)
|
||||
{
|
||||
nResult = Add(a_rgpszFileSpec[n]);
|
||||
if (nResult != SG_SUCCESS) {
|
||||
|
||||
if (nResult != SG_SUCCESS)
|
||||
{
|
||||
return nResult;
|
||||
}
|
||||
}
|
||||
|
||||
return SG_SUCCESS;
|
||||
}
|
||||
|
||||
@ -796,35 +914,49 @@ CSimpleGlobTempl<SOCHAR>::AppendName(
|
||||
SetArgvArrayType(OFFSETS);
|
||||
|
||||
// check for special cases which cause us to ignore this entry
|
||||
if ((m_uiFlags & SG_GLOB_ONLYDIR) && !a_bIsDir) {
|
||||
if ((m_uiFlags & SG_GLOB_ONLYDIR) && !a_bIsDir)
|
||||
{
|
||||
return SG_SUCCESS;
|
||||
}
|
||||
if ((m_uiFlags & SG_GLOB_ONLYFILE) && a_bIsDir) {
|
||||
|
||||
if ((m_uiFlags & SG_GLOB_ONLYFILE) && a_bIsDir)
|
||||
{
|
||||
return SG_SUCCESS;
|
||||
}
|
||||
if ((m_uiFlags & SG_GLOB_NODOT) && a_bIsDir) {
|
||||
if (a_pszFileName[0] == '.') {
|
||||
if (a_pszFileName[1] == '\0') {
|
||||
|
||||
if ((m_uiFlags & SG_GLOB_NODOT) && a_bIsDir)
|
||||
{
|
||||
if (a_pszFileName[0] == '.')
|
||||
{
|
||||
if (a_pszFileName[1] == '\0')
|
||||
{
|
||||
return SG_SUCCESS;
|
||||
}
|
||||
if (a_pszFileName[1] == '.' && a_pszFileName[2] == '\0') {
|
||||
|
||||
if (a_pszFileName[1] == '.' && a_pszFileName[2] == '\0')
|
||||
{
|
||||
return SG_SUCCESS;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ensure that we have enough room in the argv array
|
||||
if (!GrowArgvArray(m_nArgsLen + 1)) {
|
||||
if (!GrowArgvArray(m_nArgsLen + 1))
|
||||
{
|
||||
return SG_ERR_MEMORY;
|
||||
}
|
||||
|
||||
// ensure that we have enough room in the string buffer (+1 for null)
|
||||
size_t uiPrefixLen = SimpleGlobUtil::strlen(m_szPathPrefix);
|
||||
size_t uiLen = uiPrefixLen + SimpleGlobUtil::strlen(a_pszFileName) + 1;
|
||||
if (a_bIsDir && (m_uiFlags & SG_GLOB_MARK) == SG_GLOB_MARK) {
|
||||
|
||||
if (a_bIsDir && (m_uiFlags & SG_GLOB_MARK) == SG_GLOB_MARK)
|
||||
{
|
||||
++uiLen; // need space for the backslash
|
||||
}
|
||||
if (!GrowStringBuffer(m_uiBufferLen + uiLen)) {
|
||||
|
||||
if (!GrowStringBuffer(m_uiBufferLen + uiLen))
|
||||
{
|
||||
return SG_ERR_MEMORY;
|
||||
}
|
||||
|
||||
@ -837,7 +969,8 @@ CSimpleGlobTempl<SOCHAR>::AppendName(
|
||||
m_uiBufferLen += uiLen;
|
||||
|
||||
// add the directory slash if desired
|
||||
if (a_bIsDir && (m_uiFlags & SG_GLOB_MARK) == SG_GLOB_MARK) {
|
||||
if (a_bIsDir && (m_uiFlags & SG_GLOB_MARK) == SG_GLOB_MARK)
|
||||
{
|
||||
const static SOCHAR szDirSlash[] = { SG_PATH_CHAR, 0 };
|
||||
SimpleGlobUtil::strcpy_s(m_pBuffer + m_uiBufferLen - 2,
|
||||
m_uiBufferSize - (m_uiBufferLen - 2), szDirSlash);
|
||||
@ -853,21 +986,29 @@ CSimpleGlobTempl<SOCHAR>::SetArgvArrayType(
|
||||
)
|
||||
{
|
||||
if (m_nArgArrayType == a_nNewType) return;
|
||||
if (a_nNewType == POINTERS) {
|
||||
|
||||
if (a_nNewType == POINTERS)
|
||||
{
|
||||
SG_ASSERT(m_nArgArrayType == OFFSETS);
|
||||
for (int n = 0; n < m_nArgsLen; ++n) {
|
||||
|
||||
for (int n = 0; n < m_nArgsLen; ++n)
|
||||
{
|
||||
m_rgpArgs[n] = (m_rgpArgs[n] == reinterpret_cast<SOCHAR*>(-1)) ?
|
||||
nullptr : m_pBuffer + size_t(m_rgpArgs[n]);
|
||||
}
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
SG_ASSERT(a_nNewType == OFFSETS);
|
||||
SG_ASSERT(m_nArgArrayType == POINTERS);
|
||||
for (int n = 0; n < m_nArgsLen; ++n) {
|
||||
|
||||
for (int n = 0; n < m_nArgsLen; ++n)
|
||||
{
|
||||
m_rgpArgs[n] = (m_rgpArgs[n] == nullptr) ?
|
||||
reinterpret_cast<SOCHAR*>(-1) : reinterpret_cast<SOCHAR*>(m_rgpArgs[n] - m_pBuffer);
|
||||
}
|
||||
}
|
||||
|
||||
m_nArgArrayType = a_nNewType;
|
||||
}
|
||||
|
||||
@ -877,18 +1018,25 @@ CSimpleGlobTempl<SOCHAR>::GrowArgvArray(
|
||||
int a_nNewLen
|
||||
)
|
||||
{
|
||||
if (a_nNewLen >= m_nArgsSize) {
|
||||
if (a_nNewLen >= m_nArgsSize)
|
||||
{
|
||||
static const int SG_ARGV_INITIAL_SIZE = 32;
|
||||
int nNewSize = (m_nArgsSize > 0) ?
|
||||
m_nArgsSize * 2 : SG_ARGV_INITIAL_SIZE;
|
||||
while (a_nNewLen >= nNewSize) {
|
||||
|
||||
while (a_nNewLen >= nNewSize)
|
||||
{
|
||||
nNewSize *= 2;
|
||||
}
|
||||
|
||||
void* pNewBuffer = realloc(m_rgpArgs, nNewSize * sizeof(SOCHAR*));
|
||||
|
||||
if (!pNewBuffer) return false;
|
||||
|
||||
m_nArgsSize = nNewSize;
|
||||
m_rgpArgs = reinterpret_cast<SOCHAR**>(pNewBuffer);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -898,18 +1046,25 @@ CSimpleGlobTempl<SOCHAR>::GrowStringBuffer(
|
||||
size_t a_uiMinSize
|
||||
)
|
||||
{
|
||||
if (a_uiMinSize >= m_uiBufferSize) {
|
||||
if (a_uiMinSize >= m_uiBufferSize)
|
||||
{
|
||||
static const int SG_BUFFER_INITIAL_SIZE = 1024;
|
||||
size_t uiNewSize = (m_uiBufferSize > 0) ?
|
||||
m_uiBufferSize * 2 : SG_BUFFER_INITIAL_SIZE;
|
||||
while (a_uiMinSize >= uiNewSize) {
|
||||
|
||||
while (a_uiMinSize >= uiNewSize)
|
||||
{
|
||||
uiNewSize *= 2;
|
||||
}
|
||||
|
||||
void* pNewBuffer = realloc(m_pBuffer, uiNewSize * sizeof(SOCHAR));
|
||||
|
||||
if (!pNewBuffer) return false;
|
||||
|
||||
m_uiBufferSize = uiNewSize;
|
||||
m_pBuffer = reinterpret_cast<SOCHAR*>(pNewBuffer);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -922,9 +1077,12 @@ CSimpleGlobTempl<SOCHAR>::fileSortCompare(
|
||||
{
|
||||
const SOCHAR* s1 = *(reinterpret_cast<const SOCHAR**>(a1));
|
||||
const SOCHAR* s2 = *(reinterpret_cast<const SOCHAR**>(a2));
|
||||
if (s1 && s2) {
|
||||
|
||||
if (s1 && s2)
|
||||
{
|
||||
return SimpleGlobUtil::strcasecmp(s1, s2);
|
||||
}
|
||||
|
||||
// nullptr sorts first
|
||||
return s1 == s2 ? 0 : (s1 ? 1 : -1);
|
||||
}
|
||||
|
@ -275,7 +275,8 @@ enum _ESOFlags
|
||||
relevant options use either SO_REQ_CMB or SO_OPT. SO_O_CLUMP requires
|
||||
that relevant options use only SO_NONE.
|
||||
*/
|
||||
typedef enum _ESOArgType {
|
||||
typedef enum _ESOArgType
|
||||
{
|
||||
/*! No argument. Just the option flags.
|
||||
e.g. -o --opt */
|
||||
SO_NONE,
|
||||
@ -323,7 +324,8 @@ class CSimpleOptTempl
|
||||
{
|
||||
public:
|
||||
/*! @brief Structure used to define all known options. */
|
||||
struct SOption {
|
||||
struct SOption
|
||||
{
|
||||
|
||||
//SOption()//Added for compatibility with fractal flames.
|
||||
//{
|
||||
@ -407,7 +409,8 @@ public:
|
||||
|
||||
@param a_rgOptions Valid option array
|
||||
*/
|
||||
inline void SetOptions(const SOption * a_rgOptions) {
|
||||
inline void SetOptions(const SOption* a_rgOptions)
|
||||
{
|
||||
m_rgOptions = a_rgOptions;
|
||||
}
|
||||
|
||||
@ -421,7 +424,8 @@ public:
|
||||
inline void SetFlags(int a_nFlags) { m_nFlags = a_nFlags; }
|
||||
|
||||
/*! @brief Query if a particular flag is set */
|
||||
inline bool HasFlag(int a_nFlag) const {
|
||||
inline bool HasFlag(int a_nFlag) const noexcept
|
||||
{
|
||||
return (m_nFlags & a_nFlag) == a_nFlag;
|
||||
}
|
||||
|
||||
@ -453,28 +457,28 @@ public:
|
||||
This function must always be called before processing the current
|
||||
option. This function is available only when Next() has returned true.
|
||||
*/
|
||||
inline ESOError LastError() const { return m_nLastError; }
|
||||
inline ESOError LastError() const noexcept { return m_nLastError; }
|
||||
|
||||
/*! @brief Return the nId value from the options array for the current
|
||||
option.
|
||||
|
||||
This function is available only when Next() has returned true.
|
||||
*/
|
||||
inline int OptionId() const { return m_nOptionId; }
|
||||
inline int OptionId() const noexcept { return m_nOptionId; }
|
||||
|
||||
/*! @brief Return the pszArg from the options array for the current
|
||||
option.
|
||||
|
||||
This function is available only when Next() has returned true.
|
||||
*/
|
||||
inline const SOCHAR * OptionText() const { return m_pszOptionText; }
|
||||
inline const SOCHAR* OptionText() const noexcept { return m_pszOptionText; }
|
||||
|
||||
/*! @brief Return the argument for the current option where one exists.
|
||||
|
||||
If there is no argument for the option, this will return nullptr.
|
||||
This function is available only when Next() has returned true.
|
||||
*/
|
||||
inline SOCHAR * OptionArg() const { return m_pszOptionArg; }
|
||||
inline SOCHAR* OptionArg() const noexcept { return m_pszOptionArg; }
|
||||
|
||||
/*! @brief Validate and return the desired number of arguments.
|
||||
|
||||
@ -502,7 +506,8 @@ public:
|
||||
@param n Index of the file to return. This must be between 0
|
||||
and FileCount() - 1;
|
||||
*/
|
||||
inline SOCHAR * File(int n) const {
|
||||
inline SOCHAR* File(int n) const
|
||||
{
|
||||
SO_ASSERT(n >= 0 && n < FileCount());
|
||||
return m_argv[m_nLastArg + n];
|
||||
}
|
||||
@ -521,16 +526,21 @@ private:
|
||||
int CalcMatch(const SOCHAR* a_pszSource, const SOCHAR* a_pszTest) const;
|
||||
|
||||
// Find the '=' character within a string.
|
||||
inline SOCHAR * FindEquals(SOCHAR *s) const {
|
||||
inline SOCHAR* FindEquals(SOCHAR* s) const noexcept
|
||||
{
|
||||
while (*s && *s != SOCHAR('=')) ++s;
|
||||
|
||||
return *s ? s : nullptr;
|
||||
}
|
||||
bool IsEqual(SOCHAR a_cLeft, SOCHAR a_cRight, int a_nArgType) const;
|
||||
|
||||
inline void Copy(SOCHAR ** ppDst, SOCHAR ** ppSrc, int nCount) const {
|
||||
inline void Copy(SOCHAR** ppDst, SOCHAR** ppSrc, int nCount) const
|
||||
{
|
||||
#ifdef SO_MAX_ARGS
|
||||
|
||||
// keep our promise of no CLIB usage
|
||||
while (nCount-- > 0) *ppDst++ = *ppSrc++;
|
||||
|
||||
#else
|
||||
memcpy(ppDst, ppSrc, nCount * sizeof(SOCHAR*));
|
||||
#endif
|
||||
@ -580,25 +590,33 @@ CSimpleOptTempl<SOCHAR>::Init(
|
||||
m_szShort[2] = SOCHAR('\0');
|
||||
m_nFlags = a_nFlags;
|
||||
m_pszClump = nullptr;
|
||||
|
||||
#ifdef SO_MAX_ARGS
|
||||
if (m_argc > SO_MAX_ARGS) {
|
||||
|
||||
if (m_argc > SO_MAX_ARGS)
|
||||
{
|
||||
m_nLastError = SO_ARG_INVALID_DATA;
|
||||
m_nLastArg = 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
#else
|
||||
if (m_rgShuffleBuf) {
|
||||
|
||||
if (m_rgShuffleBuf)
|
||||
{
|
||||
free(m_rgShuffleBuf);
|
||||
}
|
||||
if (m_argc > SO_STATICBUF) {
|
||||
|
||||
if (m_argc > SO_STATICBUF)
|
||||
{
|
||||
m_rgShuffleBuf = reinterpret_cast<SOCHAR**>(malloc(sizeof(SOCHAR*) * m_argc));
|
||||
if (!m_rgShuffleBuf) {
|
||||
|
||||
if (!m_rgShuffleBuf)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -607,52 +625,64 @@ bool
|
||||
CSimpleOptTempl<SOCHAR>::Next()
|
||||
{
|
||||
#ifdef SO_MAX_ARGS
|
||||
if (m_argc > SO_MAX_ARGS) {
|
||||
|
||||
if (m_argc > SO_MAX_ARGS)
|
||||
{
|
||||
SO_ASSERT(!"Too many args! Check the return value of Init()!");
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
// process a clumped option string if appropriate
|
||||
if (m_pszClump && *m_pszClump) {
|
||||
if (m_pszClump && *m_pszClump)
|
||||
{
|
||||
// silently discard invalid clumped option
|
||||
bool bIsValid = NextClumped();
|
||||
while (*m_pszClump && !bIsValid && HasFlag(SO_O_NOERR)) {
|
||||
|
||||
while (*m_pszClump && !bIsValid && HasFlag(SO_O_NOERR))
|
||||
{
|
||||
bIsValid = NextClumped();
|
||||
}
|
||||
|
||||
// return this option if valid or we are returning errors
|
||||
if (bIsValid || !HasFlag(SO_O_NOERR)) {
|
||||
if (bIsValid || !HasFlag(SO_O_NOERR))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
SO_ASSERT(!m_pszClump || !*m_pszClump);
|
||||
m_pszClump = nullptr;
|
||||
|
||||
// init for the next option
|
||||
m_nOptionIdx = m_nNextOption;
|
||||
m_nOptionId = -1;
|
||||
m_pszOptionText = nullptr;
|
||||
m_pszOptionArg = nullptr;
|
||||
m_nLastError = SO_SUCCESS;
|
||||
|
||||
// find the next option
|
||||
SOCHAR cFirst;
|
||||
int nTableIdx = -1;
|
||||
int nOptIdx = m_nOptionIdx;
|
||||
while (nTableIdx < 0 && nOptIdx < m_nLastArg) {
|
||||
|
||||
while (nTableIdx < 0 && nOptIdx < m_nLastArg)
|
||||
{
|
||||
SOCHAR* pszArg = m_argv[nOptIdx];
|
||||
m_pszOptionArg = nullptr;
|
||||
|
||||
// find this option in the options table
|
||||
cFirst = PrepareArg(pszArg);
|
||||
if (pszArg[0] == SOCHAR('-')) {
|
||||
|
||||
if (pszArg[0] == SOCHAR('-'))
|
||||
{
|
||||
// find any combined argument string and remove equals sign
|
||||
m_pszOptionArg = FindEquals(pszArg);
|
||||
if (m_pszOptionArg) {
|
||||
|
||||
if (m_pszOptionArg)
|
||||
{
|
||||
*m_pszOptionArg++ = SOCHAR('\0');
|
||||
}
|
||||
}
|
||||
|
||||
nTableIdx = LookupOption(pszArg);
|
||||
|
||||
// if we didn't find this option but if it is a short form
|
||||
@ -665,9 +695,11 @@ CSimpleOptTempl<SOCHAR>::Next()
|
||||
&& pszArg[2])
|
||||
{
|
||||
// test for a short-form with argument if appropriate
|
||||
if (HasFlag(SO_O_SHORTARG)) {
|
||||
if (HasFlag(SO_O_SHORTARG))
|
||||
{
|
||||
m_szShort[1] = pszArg[1];
|
||||
int nIdx = LookupOption(m_szShort);
|
||||
|
||||
if (nIdx >= 0
|
||||
&& (m_rgOptions[nIdx].nArgType == SO_REQ_CMB
|
||||
|| m_rgOptions[nIdx].nArgType == SO_OPT))
|
||||
@ -680,12 +712,16 @@ CSimpleOptTempl<SOCHAR>::Next()
|
||||
|
||||
// test for a clumped short-form option string and we didn't
|
||||
// match on the short-form argument above
|
||||
if (nTableIdx < 0 && HasFlag(SO_O_CLUMP)) {
|
||||
if (nTableIdx < 0 && HasFlag(SO_O_CLUMP))
|
||||
{
|
||||
m_pszClump = &pszArg[1];
|
||||
++m_nNextOption;
|
||||
if (nOptIdx > m_nOptionIdx) {
|
||||
|
||||
if (nOptIdx > m_nOptionIdx)
|
||||
{
|
||||
ShuffleArg(m_nOptionIdx, nOptIdx - m_nOptionIdx);
|
||||
}
|
||||
|
||||
return Next();
|
||||
}
|
||||
}
|
||||
@ -693,62 +729,80 @@ CSimpleOptTempl<SOCHAR>::Next()
|
||||
// The option wasn't found. If it starts with a switch character
|
||||
// and we are not suppressing errors for invalid options then it
|
||||
// is reported as an error, otherwise it is data.
|
||||
if (nTableIdx < 0) {
|
||||
if (!HasFlag(SO_O_NOERR) && pszArg[0] == SOCHAR('-')) {
|
||||
if (nTableIdx < 0)
|
||||
{
|
||||
if (!HasFlag(SO_O_NOERR) && pszArg[0] == SOCHAR('-'))
|
||||
{
|
||||
m_pszOptionText = pszArg;
|
||||
break;
|
||||
}
|
||||
|
||||
pszArg[0] = cFirst;
|
||||
++nOptIdx;
|
||||
if (m_pszOptionArg) {
|
||||
|
||||
if (m_pszOptionArg)
|
||||
{
|
||||
*(--m_pszOptionArg) = SOCHAR('=');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// end of options
|
||||
if (nOptIdx >= m_nLastArg) {
|
||||
if (nOptIdx > m_nOptionIdx) {
|
||||
if (nOptIdx >= m_nLastArg)
|
||||
{
|
||||
if (nOptIdx > m_nOptionIdx)
|
||||
{
|
||||
ShuffleArg(m_nOptionIdx, nOptIdx - m_nOptionIdx);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
++m_nNextOption;
|
||||
|
||||
++m_nNextOption;
|
||||
// get the option id
|
||||
ESOArgType nArgType = SO_NONE;
|
||||
if (nTableIdx < 0) {
|
||||
|
||||
if (nTableIdx < 0)
|
||||
{
|
||||
m_nLastError = ESOError(nTableIdx); // error code
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
m_nOptionId = m_rgOptions[nTableIdx].nId;
|
||||
m_pszOptionText = m_rgOptions[nTableIdx].pszArg;
|
||||
|
||||
// ensure that the arg type is valid
|
||||
nArgType = m_rgOptions[nTableIdx].nArgType;
|
||||
switch (nArgType) {
|
||||
|
||||
switch (nArgType)
|
||||
{
|
||||
case SO_NONE:
|
||||
if (m_pszOptionArg) {
|
||||
if (m_pszOptionArg)
|
||||
{
|
||||
m_nLastError = SO_ARG_INVALID;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case SO_REQ_SEP:
|
||||
if (m_pszOptionArg) {
|
||||
if (m_pszOptionArg)
|
||||
{
|
||||
// they wanted separate args, but we got a combined one,
|
||||
// unless we are pedantic, just accept it.
|
||||
if (HasFlag(SO_O_PEDANTIC)) {
|
||||
if (HasFlag(SO_O_PEDANTIC))
|
||||
{
|
||||
m_nLastError = SO_ARG_INVALID_TYPE;
|
||||
}
|
||||
}
|
||||
|
||||
// more processing after we shuffle
|
||||
break;
|
||||
|
||||
case SO_REQ_CMB:
|
||||
if (!m_pszOptionArg) {
|
||||
if (!m_pszOptionArg)
|
||||
{
|
||||
m_nLastError = SO_ARG_MISSING;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
case SO_OPT:
|
||||
@ -759,13 +813,15 @@ CSimpleOptTempl<SOCHAR>::Next()
|
||||
// nothing to do. Caller must now check for valid arguments
|
||||
// using GetMultiArg()
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// shuffle the files out of the way
|
||||
if (nOptIdx > m_nOptionIdx) {
|
||||
if (nOptIdx > m_nOptionIdx)
|
||||
{
|
||||
ShuffleArg(m_nOptionIdx, nOptIdx - m_nOptionIdx);
|
||||
}
|
||||
|
||||
@ -776,7 +832,9 @@ CSimpleOptTempl<SOCHAR>::Next()
|
||||
&& m_nLastError == SO_SUCCESS)
|
||||
{
|
||||
SOCHAR** ppArgs = MultiArg(1);
|
||||
if (ppArgs) {
|
||||
|
||||
if (ppArgs)
|
||||
{
|
||||
m_pszOptionArg = *ppArgs;
|
||||
}
|
||||
}
|
||||
@ -788,7 +846,8 @@ template<class SOCHAR>
|
||||
void
|
||||
CSimpleOptTempl<SOCHAR>::Stop()
|
||||
{
|
||||
if (m_nNextOption < m_nLastArg) {
|
||||
if (m_nNextOption < m_nLastArg)
|
||||
{
|
||||
ShuffleArg(m_nNextOption, m_nLastArg - m_nNextOption);
|
||||
}
|
||||
}
|
||||
@ -800,6 +859,7 @@ CSimpleOptTempl<SOCHAR>::PrepareArg(
|
||||
) const
|
||||
{
|
||||
#ifdef _WIN32
|
||||
|
||||
// On Windows we can accept the forward slash as a single character
|
||||
// option delimiter, but it cannot replace the '-' option used to
|
||||
// denote stdin. On Un*x paths may start with slash so it may not
|
||||
@ -812,6 +872,7 @@ CSimpleOptTempl<SOCHAR>::PrepareArg(
|
||||
a_pszString[0] = (SOCHAR)'-';
|
||||
return (SOCHAR)'/';
|
||||
}
|
||||
|
||||
#endif
|
||||
return a_pszString[0];
|
||||
}
|
||||
@ -826,15 +887,15 @@ CSimpleOptTempl<SOCHAR>::NextClumped()
|
||||
m_pszOptionText = nullptr;
|
||||
m_pszOptionArg = nullptr;
|
||||
m_nLastError = SO_SUCCESS;
|
||||
|
||||
// lookup this option, ensure that we are using exact matching
|
||||
int nSavedFlags = m_nFlags;
|
||||
const auto nSavedFlags = m_nFlags;
|
||||
m_nFlags = SO_O_EXACT;
|
||||
int nTableIdx = LookupOption(m_szShort);
|
||||
const auto nTableIdx = LookupOption(m_szShort);
|
||||
m_nFlags = nSavedFlags;
|
||||
|
||||
// unknown option
|
||||
if (nTableIdx < 0) {
|
||||
if (nTableIdx < 0)
|
||||
{
|
||||
m_pszOptionText = m_szShort; // invalid option
|
||||
m_nLastError = ESOError(nTableIdx); // error code
|
||||
return false;
|
||||
@ -843,15 +904,20 @@ CSimpleOptTempl<SOCHAR>::NextClumped()
|
||||
// valid option
|
||||
m_pszOptionText = m_rgOptions[nTableIdx].pszArg;
|
||||
ESOArgType nArgType = m_rgOptions[nTableIdx].nArgType;
|
||||
if (nArgType == SO_NONE) {
|
||||
|
||||
if (nArgType == SO_NONE)
|
||||
{
|
||||
m_nOptionId = m_rgOptions[nTableIdx].nId;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (nArgType == SO_REQ_CMB && *m_pszClump) {
|
||||
if (nArgType == SO_REQ_CMB && *m_pszClump)
|
||||
{
|
||||
m_nOptionId = m_rgOptions[nTableIdx].nId;
|
||||
m_pszOptionArg = m_pszClump;
|
||||
|
||||
while (*m_pszClump) ++m_pszClump; // must point to an empty string
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -878,16 +944,12 @@ CSimpleOptTempl<SOCHAR>::ShuffleArg(
|
||||
SOCHAR* staticBuf[SO_STATICBUF];
|
||||
SOCHAR** buf = m_rgShuffleBuf ? m_rgShuffleBuf : staticBuf;
|
||||
int nTail = m_argc - a_nStartIdx - a_nCount;
|
||||
|
||||
// make a copy of the elements to be moved
|
||||
Copy(buf, m_argv + a_nStartIdx, a_nCount);
|
||||
|
||||
// move the tail down
|
||||
Copy(m_argv + a_nStartIdx, m_argv + a_nStartIdx + a_nCount, nTail);
|
||||
|
||||
// append the moved elements to the tail
|
||||
Copy(m_argv + a_nStartIdx + nTail, buf, a_nCount);
|
||||
|
||||
// update the index of the last unshuffled arg
|
||||
m_nLastArg -= a_nCount;
|
||||
}
|
||||
@ -904,16 +966,20 @@ CSimpleOptTempl<SOCHAR>::LookupOption(
|
||||
int nBestMatchLen = 0; // matching characters of best match
|
||||
int nLastMatchLen = 0; // matching characters of last best match
|
||||
|
||||
for (int n = 0; m_rgOptions[n].nId >= 0; ++n) {
|
||||
for (int n = 0; m_rgOptions[n].nId >= 0; ++n)
|
||||
{
|
||||
// the option table must use hyphens as the option character,
|
||||
// the slash character is converted to a hyphen for testing.
|
||||
SO_ASSERT(m_rgOptions[n].pszArg[0] != (SOCHAR)'/');
|
||||
|
||||
int nMatchLen = CalcMatch(m_rgOptions[n].pszArg, a_pszOption);
|
||||
if (nMatchLen == -1) {
|
||||
|
||||
if (nMatchLen == -1)
|
||||
{
|
||||
return n;
|
||||
}
|
||||
if (nMatchLen > 0 && nMatchLen >= nBestMatchLen) {
|
||||
|
||||
if (nMatchLen > 0 && nMatchLen >= nBestMatchLen)
|
||||
{
|
||||
nLastMatchLen = nBestMatchLen;
|
||||
nBestMatchLen = nMatchLen;
|
||||
nBestMatch = n;
|
||||
@ -922,9 +988,11 @@ CSimpleOptTempl<SOCHAR>::LookupOption(
|
||||
|
||||
// only partial matches or no match gets to here, ensure that we
|
||||
// don't return a partial match unless it is a clear winner
|
||||
if (HasFlag(SO_O_EXACT) || nBestMatch == -1) {
|
||||
if (HasFlag(SO_O_EXACT) || nBestMatch == -1)
|
||||
{
|
||||
return SO_OPT_INVALID;
|
||||
}
|
||||
|
||||
return (nBestMatchLen > nLastMatchLen) ? nBestMatch : SO_OPT_MULTIPLE;
|
||||
}
|
||||
|
||||
@ -937,40 +1005,51 @@ CSimpleOptTempl<SOCHAR>::CalcMatch(
|
||||
const SOCHAR* a_pszTest
|
||||
) const
|
||||
{
|
||||
if (!a_pszSource || !a_pszTest) {
|
||||
if (!a_pszSource || !a_pszTest)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// determine the argument type
|
||||
int nArgType = SO_O_ICASE_LONG;
|
||||
if (a_pszSource[0] != '-') {
|
||||
|
||||
if (a_pszSource[0] != '-')
|
||||
{
|
||||
nArgType = SO_O_ICASE_WORD;
|
||||
}
|
||||
else if (a_pszSource[1] != '-' && !a_pszSource[2]) {
|
||||
else if (a_pszSource[1] != '-' && !a_pszSource[2])
|
||||
{
|
||||
nArgType = SO_O_ICASE_SHORT;
|
||||
}
|
||||
|
||||
// match and skip leading hyphens
|
||||
while (*a_pszSource == SOCHAR('-') && *a_pszSource == *a_pszTest) {
|
||||
while (*a_pszSource == SOCHAR('-') && *a_pszSource == *a_pszTest)
|
||||
{
|
||||
++a_pszSource;
|
||||
++a_pszTest;
|
||||
}
|
||||
if (*a_pszSource == SOCHAR('-') || *a_pszTest == SOCHAR('-')) {
|
||||
|
||||
if (*a_pszSource == SOCHAR('-') || *a_pszTest == SOCHAR('-'))
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// find matching number of characters in the strings
|
||||
int nLen = 0;
|
||||
while (*a_pszSource && IsEqual(*a_pszSource, *a_pszTest, nArgType)) {
|
||||
|
||||
while (*a_pszSource && IsEqual(*a_pszSource, *a_pszTest, nArgType))
|
||||
{
|
||||
++a_pszSource;
|
||||
++a_pszTest;
|
||||
++nLen;
|
||||
}
|
||||
|
||||
// if we have exhausted the source...
|
||||
if (!*a_pszSource) {
|
||||
if (!*a_pszSource)
|
||||
{
|
||||
// and the test strings, then it's a perfect match
|
||||
if (!*a_pszTest) {
|
||||
if (!*a_pszTest)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -981,7 +1060,8 @@ CSimpleOptTempl<SOCHAR>::CalcMatch(
|
||||
|
||||
// if we haven't exhausted the test string then it is not a match
|
||||
// i.e. "--mantle" will not best-fit match to "--mandate" at all.
|
||||
if (*a_pszTest) {
|
||||
if (*a_pszTest)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -998,10 +1078,13 @@ CSimpleOptTempl<SOCHAR>::IsEqual(
|
||||
) const
|
||||
{
|
||||
// if this matches then we are doing case-insensitive matching
|
||||
if (m_nFlags & a_nArgType) {
|
||||
if (m_nFlags & a_nArgType)
|
||||
{
|
||||
if (a_cLeft >= 'A' && a_cLeft <= 'Z') a_cLeft += 'a' - 'A';
|
||||
|
||||
if (a_cRight >= 'A' && a_cRight <= 'Z') a_cRight += 'a' - 'A';
|
||||
}
|
||||
|
||||
return a_cLeft == a_cRight;
|
||||
}
|
||||
|
||||
@ -1014,7 +1097,8 @@ CSimpleOptTempl<SOCHAR>::MultiArg(
|
||||
)
|
||||
{
|
||||
// ensure we have enough arguments
|
||||
if (m_nNextOption + a_nCount > m_nLastArg) {
|
||||
if (m_nNextOption + a_nCount > m_nLastArg)
|
||||
{
|
||||
m_nLastError = SO_ARG_MISSING;
|
||||
return nullptr;
|
||||
}
|
||||
@ -1024,14 +1108,19 @@ CSimpleOptTempl<SOCHAR>::MultiArg(
|
||||
|
||||
// Ensure that each of the following don't start with an switch character.
|
||||
// Only make this check if we are returning errors for unknown arguments.
|
||||
if (!HasFlag(SO_O_NOERR)) {
|
||||
for (int n = 0; n < a_nCount; ++n) {
|
||||
if (!HasFlag(SO_O_NOERR))
|
||||
{
|
||||
for (int n = 0; n < a_nCount; ++n)
|
||||
{
|
||||
SOCHAR ch = PrepareArg(rgpszArg[n]);
|
||||
if (rgpszArg[n][0] == SOCHAR('-')) {
|
||||
|
||||
if (rgpszArg[n][0] == SOCHAR('-'))
|
||||
{
|
||||
rgpszArg[n][0] = ch;
|
||||
m_nLastError = SO_ARG_INVALID_DATA;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
rgpszArg[n][0] = ch;
|
||||
}
|
||||
}
|
||||
|
@ -65,7 +65,9 @@ bool EmberRender(int argc, _TCHAR* argv[], EmberOptions& opt)
|
||||
if (opt.EmberCL() && renderer->RendererType() != eRendererType::OPENCL_RENDERER)//OpenCL init failed, so fall back to CPU.
|
||||
opt.EmberCL(false);
|
||||
|
||||
if (auto rendererCL = dynamic_cast<RendererCL<T, float>*>(renderer.get()))
|
||||
auto rendererCL = dynamic_cast<RendererCL<T, float>*>(renderer.get());
|
||||
|
||||
if (rendererCL)
|
||||
{
|
||||
rendererCL->OptAffine(true);//Optimize empty affines for final renderers, this is normally false for the interactive renderer.
|
||||
rendererCL->SubBatchPercentPerThread(float(opt.SBPctPerTh()));
|
||||
@ -267,6 +269,17 @@ bool EmberRender(int argc, _TCHAR* argv[], EmberOptions& opt)
|
||||
// resume = true;
|
||||
//}
|
||||
//while (success && renderer->ProcessState() != ACCUM_DONE);
|
||||
//for (auto gbw = 64; gbw <= 64; gbw <<= 1)
|
||||
{
|
||||
//for (auto gbh = 2; gbh <= 64; gbh <<= 1)
|
||||
{
|
||||
//if (rendererCL)
|
||||
//{
|
||||
// VerbosePrint("Running OpenCL grid blocks of " << gbw << "x" << gbh);
|
||||
// rendererCL->IterBlocksWide(gbw);
|
||||
// rendererCL->IterBlocksHigh(gbh);
|
||||
//}
|
||||
stats.Clear();
|
||||
StripsRender<T>(renderer.get(), ember, finalImage, 0, strips, opt.YAxisUp(),
|
||||
[&](size_t strip)//Pre strip.
|
||||
{
|
||||
@ -316,7 +329,7 @@ bool EmberRender(int argc, _TCHAR* argv[], EmberOptions& opt)
|
||||
const auto doPng16 = Find(opt.Format(), "png16");
|
||||
const auto doOnlyPng8 = doPng8 && !doPng16;
|
||||
const auto doOnlyExr16 = doExr16 && !doExr32;
|
||||
vector<byte> rgb8Image;
|
||||
vector<unsigned char> rgb8Image;
|
||||
vector<std::thread> writeFileThreads;
|
||||
writeFileThreads.reserve(6);
|
||||
|
||||
@ -362,7 +375,7 @@ bool EmberRender(int argc, _TCHAR* argv[], EmberOptions& opt)
|
||||
{
|
||||
const auto filename = MakeSingleFilename(inputPath, opt.Out(), finalEmber.m_Name, opt.Prefix(), opt.Suffix(), "png", padding, i, useName);
|
||||
VerbosePrint("Writing " + filename);
|
||||
vector<byte> rgba8Image(size * 4);
|
||||
vector<unsigned char> rgba8Image(size * 4);
|
||||
Rgba32ToRgba8(finalImagep, rgba8Image.data(), finalEmber.m_FinalRasW, finalEmber.m_FinalRasH, opt.Transparency());
|
||||
const auto writeSuccess = WritePng(filename.c_str(), rgba8Image.data(), finalEmber.m_FinalRasW, finalEmber.m_FinalRasH, 1, opt.EnableComments(), comments, opt.Id(), opt.Url(), opt.Nick());
|
||||
|
||||
@ -387,7 +400,7 @@ bool EmberRender(int argc, _TCHAR* argv[], EmberOptions& opt)
|
||||
VerbosePrint("Writing " + filename);
|
||||
vector<glm::uint16> rgba16Image(size * 4);
|
||||
Rgba32ToRgba16(finalImagep, rgba16Image.data(), finalEmber.m_FinalRasW, finalEmber.m_FinalRasH, opt.Transparency());
|
||||
const auto writeSuccess = WritePng(filename.c_str(), (byte*)rgba16Image.data(), finalEmber.m_FinalRasW, finalEmber.m_FinalRasH, 2, opt.EnableComments(), comments, opt.Id(), opt.Url(), opt.Nick());
|
||||
const auto writeSuccess = WritePng(filename.c_str(), (unsigned char*)rgba16Image.data(), finalEmber.m_FinalRasW, finalEmber.m_FinalRasH, 2, opt.EnableComments(), comments, opt.Id(), opt.Url(), opt.Nick());
|
||||
|
||||
if (!writeSuccess)
|
||||
cout << "Error writing " << filename << "\n";
|
||||
@ -451,9 +464,17 @@ bool EmberRender(int argc, _TCHAR* argv[], EmberOptions& opt)
|
||||
Join(writeFileThreads);
|
||||
});
|
||||
|
||||
//if (!rendererCL)
|
||||
// break;
|
||||
}
|
||||
|
||||
// if (!rendererCL)
|
||||
//break;
|
||||
}
|
||||
|
||||
if (opt.EmberCL() && opt.DumpKernel())
|
||||
{
|
||||
if (const auto rendererCL = dynamic_cast<RendererCL<T, float>*>(renderer.get()))
|
||||
if (rendererCL)
|
||||
{
|
||||
cout << "Iteration kernel:\n" <<
|
||||
rendererCL->IterKernel() << "\n\n" <<
|
||||
|
@ -81,18 +81,17 @@ void writeRgba1(const char filename[],
|
||||
cout << e.what() << endl;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
template <typename T>
|
||||
void SaveFinalImage(Renderer<T, T>& renderer, vector<byte>& pixels, char* suffix)
|
||||
{
|
||||
long newSize;
|
||||
ostringstream os;
|
||||
os << ".\\BasicFlame_" << sizeof(T) << "_" << suffix ".bmp";
|
||||
os << ".\\BasicFlame_" << sizeof(T) << "_" << suffix << ".bmp";
|
||||
BYTE* bgrBuf = ConvertRGBToBMPBuffer(pixels.data(), renderer.FinalRasW(), renderer.FinalRasH(), newSize);
|
||||
SaveBMP(ch, bgrBuf, renderer.FinalRasW(), renderer.FinalRasH(), newSize);
|
||||
delete [] bgrBuf;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
Ember<T> CreateBasicEmber(uint width, uint height, uint ss, T quality, T centerX, T centerY, T rotate)
|
||||
{
|
||||
@ -125,6 +124,7 @@ Ember<T> CreateBasicEmber(uint width, uint height, uint ss, T quality, T centerX
|
||||
//ember1.SetFinalXform(xform4);
|
||||
return ember1;
|
||||
}
|
||||
*/
|
||||
|
||||
string GetEmberCLKernelString(Ember<float>& ember, bool iter, bool log, bool de, uint ss, bool accum)
|
||||
{
|
||||
@ -762,12 +762,17 @@ bool TestVarRegPrePost()
|
||||
success = false;
|
||||
}
|
||||
|
||||
if (preVar)
|
||||
{
|
||||
if (!TestVarPrecalcEqual<float, float>(regVar, preVar))
|
||||
{
|
||||
cout << "Regular and pre variation precalc test failed for " << regVar->Name() << " and " << preVar->Name() << "." << endl;
|
||||
success = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (postVar)
|
||||
{
|
||||
if (!TestVarPrecalcEqual<float, float>(regVar, postVar))
|
||||
{
|
||||
cout << "Regular and post variation precalc test failed for " << regVar->Name() << " and " << postVar->Name() << "." << endl;
|
||||
@ -775,6 +780,7 @@ bool TestVarRegPrePost()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
cout << "Regular variation " << i << " was NULL." << endl;
|
||||
@ -2167,7 +2173,7 @@ void DistribTester()
|
||||
#ifdef _DEBUG
|
||||
|
||||
//Ensure distribution contains no out of bounds indices.
|
||||
if (byte(i) >= xformCount)
|
||||
if ((unsigned char)i >= xformCount)
|
||||
throw "Out of bounds xform index in selection distribution.";
|
||||
|
||||
#endif
|
||||
|
@ -15,7 +15,7 @@ class FractoriumAboutDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
FractoriumAboutDialog(QWidget* p = nullptr, Qt::WindowFlags f = 0);
|
||||
FractoriumAboutDialog(QWidget* p = nullptr, Qt::WindowFlags f = Qt::WindowType::Widget);
|
||||
|
||||
private:
|
||||
Ui::AboutDialog ui;
|
||||
|
@ -38,8 +38,8 @@ void CurvesGraphicsView::PointChanged(int curveIndex, int pointIndex, const QPoi
|
||||
{
|
||||
if (curveIndex == m_Index)
|
||||
{
|
||||
double x = point.x() / width();
|
||||
double y = (height() - point.y()) / height();
|
||||
const auto x = point.x() / width();
|
||||
const auto y = (height() - point.y()) / height();
|
||||
emit PointChangedSignal(curveIndex, pointIndex, QPointF(x, y));
|
||||
}
|
||||
}
|
||||
@ -54,7 +54,7 @@ QPointF CurvesGraphicsView::Get(int curveIndex, int pointIndex)
|
||||
{
|
||||
if (curveIndex < 4 && pointIndex < m_Points[curveIndex].size())
|
||||
{
|
||||
EllipseItem* item = m_Points[curveIndex][pointIndex];
|
||||
if (EllipseItem* item = m_Points[curveIndex][pointIndex])
|
||||
return QPointF(item->pos().x() / width(), (height() - item->pos().y()) / height());
|
||||
}
|
||||
|
||||
@ -99,7 +99,7 @@ void CurvesGraphicsView::Set(Curves<float>& curves)
|
||||
m_Scene.addItem(item);
|
||||
m_Points[index].push_back(item);
|
||||
item->setZValue(zval);
|
||||
QPointF point(curves.m_Points[index][i].x, curves.m_Points[index][i].y);
|
||||
const QPointF point(curves.m_Points[index][i].x, curves.m_Points[index][i].y);
|
||||
Set(index, i, point);
|
||||
}
|
||||
};
|
||||
@ -138,7 +138,7 @@ void CurvesGraphicsView::SetTop(CurveIndex curveIndex)
|
||||
|
||||
for (size_t i = 0; i < 4; i++)
|
||||
{
|
||||
bool b = (i == m_Index);
|
||||
const auto b = (i == m_Index);
|
||||
|
||||
for (auto& p : m_Points[i])
|
||||
p->SetCurrent(b);
|
||||
@ -153,9 +153,9 @@ void CurvesGraphicsView::paintEvent(QPaintEvent* e)
|
||||
{
|
||||
QGraphicsView::paintEvent(e);
|
||||
int i;
|
||||
QRectF rect = scene()->sceneRect();
|
||||
double w2 = width() / 2;
|
||||
double h2 = height() / 2;
|
||||
const QRectF rect = scene()->sceneRect();
|
||||
const double w2 = width() / 2;
|
||||
const double h2 = height() / 2;
|
||||
//Draw axis lines.
|
||||
m_XLine->setLine(QLineF(0, h2, width(), h2));
|
||||
m_YLine->setLine(QLineF(w2, 0, w2, height()));
|
||||
@ -196,8 +196,8 @@ void CurvesGraphicsView::paintEvent(QPaintEvent* e)
|
||||
|
||||
for (int j = 0; j < rect.width(); j++)
|
||||
{
|
||||
auto x = j;
|
||||
auto y = spline.Interpolate(x);
|
||||
const auto x = j;
|
||||
const auto y = spline.Interpolate(x);
|
||||
paths[i].lineTo(QPointF(x, y));
|
||||
}
|
||||
|
||||
@ -218,33 +218,39 @@ void CurvesGraphicsView::paintEvent(QPaintEvent* e)
|
||||
void CurvesGraphicsView::mousePressEvent(QMouseEvent* e)
|
||||
{
|
||||
QGraphicsView::mousePressEvent(e);
|
||||
auto thresh = devicePixelRatioF() * 4;
|
||||
|
||||
if (e != nullptr)
|
||||
return;
|
||||
|
||||
const auto thresh = devicePixelRatioF() * 4;
|
||||
auto findpoint = [&](int x, int y, double thresh) -> int
|
||||
{
|
||||
for (int i = 0; i < m_Points[m_Index].size(); i++)
|
||||
{
|
||||
auto item = m_Points[m_Index][i];
|
||||
auto xdist = std::abs(item->pos().x() - x);
|
||||
auto ydist = std::abs(item->pos().y() - y);
|
||||
auto threshAgain = thresh;
|
||||
if (auto item = m_Points[m_Index][i])
|
||||
{
|
||||
const auto xdist = std::abs(item->pos().x() - x);
|
||||
const auto ydist = std::abs(item->pos().y() - y);
|
||||
const auto threshAgain = thresh;
|
||||
|
||||
if (xdist < threshAgain && ydist < threshAgain)
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
};
|
||||
|
||||
if (e->button() == Qt::RightButton)
|
||||
{
|
||||
int i = findpoint(e->pos().x(), e->pos().y(), thresh);
|
||||
const auto i = findpoint(e->pos().x(), e->pos().y(), thresh);
|
||||
|
||||
if (i != -1)
|
||||
emit PointRemovedSignal(m_Index, i);
|
||||
}
|
||||
else if (findpoint(e->pos().x(), e->pos().y(), thresh * 2) == -1)
|
||||
{
|
||||
QRectF rect = scene()->sceneRect();
|
||||
const auto rect = scene()->sceneRect();
|
||||
auto points = m_Points[m_Index];
|
||||
|
||||
if (points.size() < 2)
|
||||
@ -261,14 +267,14 @@ void CurvesGraphicsView::mousePressEvent(QMouseEvent* e)
|
||||
for (int j = 0; j < rect.width(); j++)
|
||||
{
|
||||
auto y = spline.Interpolate(j);
|
||||
auto xdist = std::abs(j - e->pos().x());
|
||||
auto ydist = std::abs(y - e->pos().y());
|
||||
const auto xdist = std::abs(j - e->pos().x());
|
||||
const auto ydist = std::abs(y - e->pos().y());
|
||||
|
||||
if (xdist < thresh && ydist < thresh)
|
||||
{
|
||||
double x = e->pos().x() / (double)width();
|
||||
double y = (height() - e->pos().y()) / (double)height();
|
||||
emit PointAddedSignal(m_Index, QPointF(x, y));
|
||||
const auto x = e->pos().x() / (double)width();
|
||||
const auto y2 = (height() - e->pos().y()) / (double)height();
|
||||
emit PointAddedSignal(m_Index, QPointF(x, y2));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -39,7 +39,7 @@ public:
|
||||
void Set(int curveIndex, int pointIndex, const QPointF& point);
|
||||
void Set(Curves<float>& curves);
|
||||
void SetTop(CurveIndex curveIndex);
|
||||
size_t SelectedCurveIndex() const { return m_Index; }
|
||||
size_t SelectedCurveIndex() const noexcept { return m_Index; }
|
||||
|
||||
Q_SIGNALS:
|
||||
void PointChangedSignal(int curveIndex, int pointIndex, const QPointF& point);
|
||||
@ -47,8 +47,8 @@ Q_SIGNALS:
|
||||
void PointRemovedSignal(size_t curveIndex, int pointIndex);
|
||||
|
||||
protected:
|
||||
virtual void paintEvent(QPaintEvent* e) override;
|
||||
virtual void mousePressEvent(QMouseEvent* e) override;
|
||||
void paintEvent(QPaintEvent* e) override;
|
||||
void mousePressEvent(QMouseEvent* e) override;
|
||||
|
||||
size_t m_Index = 0;
|
||||
QPen m_APen;
|
||||
@ -110,8 +110,8 @@ public:
|
||||
/// <summary>
|
||||
/// Index properties, getters only.
|
||||
/// </summary>
|
||||
int CurveIndex() const { return m_CurveIndex; }
|
||||
int PointIndex() const { return m_PointIndex; }
|
||||
int CurveIndex() const noexcept { return m_CurveIndex; }
|
||||
int PointIndex() const noexcept { return m_PointIndex; }
|
||||
|
||||
protected:
|
||||
/// <summary>
|
||||
@ -121,11 +121,14 @@ protected:
|
||||
/// <param name="option">Drawing options used which will have the QStyle::State_Selected flag unset</param>
|
||||
/// <param name="widget">Unused and just passed to QGraphicsEllipseItem::paint()</param>
|
||||
void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget) override
|
||||
{
|
||||
if (option != nullptr && widget != nullptr)
|
||||
{
|
||||
QStyleOptionGraphicsItem myOption(*option);
|
||||
myOption.state &= ~QStyle::State_Selected;
|
||||
QGraphicsEllipseItem::paint(painter, &myOption, widget);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Overridden itemChange event to notify the parent control that it has moved.
|
||||
|
@ -350,7 +350,7 @@ void DoubleSpinBox::focusOutEvent(QFocusEvent* e)
|
||||
/// Must set the focus to make sure key down messages don't erroneously go to the GLWidget.
|
||||
/// </summary>
|
||||
/// <param name="e">The event</param>
|
||||
void DoubleSpinBox::enterEvent(QEvent* e)
|
||||
void DoubleSpinBox::enterEvent(QEnterEvent* e)
|
||||
{
|
||||
StopTimer();
|
||||
QDoubleSpinBox::enterEvent(e);
|
||||
@ -404,7 +404,7 @@ SpecialDoubleSpinBox::SpecialDoubleSpinBox(QWidget* p, int h, double step)
|
||||
/// So re-enable it here just to ensure whenever they focus this control, the menu works.
|
||||
/// </summary>
|
||||
/// <param name="e">The event</param>
|
||||
void SpecialDoubleSpinBox::enterEvent(QEvent* e)
|
||||
void SpecialDoubleSpinBox::enterEvent(QEnterEvent* e)
|
||||
{
|
||||
this->setContextMenuPolicy(Qt::ActionsContextMenu);
|
||||
DoubleSpinBox::enterEvent(e);
|
||||
|
@ -41,7 +41,7 @@ protected:
|
||||
virtual void keyPressEvent(QKeyEvent* event) override;
|
||||
virtual void focusInEvent(QFocusEvent* e) override;
|
||||
virtual void focusOutEvent(QFocusEvent* e) override;
|
||||
virtual void enterEvent(QEvent* e) override;
|
||||
virtual void enterEvent(QEnterEvent* e) override;
|
||||
virtual void leaveEvent(QEvent* e) override;
|
||||
|
||||
bool m_DoubleClick;
|
||||
@ -76,7 +76,7 @@ public:
|
||||
virtual ~SpecialDoubleSpinBox() { }
|
||||
|
||||
protected:
|
||||
virtual void enterEvent(QEvent* e) override;
|
||||
virtual void enterEvent(QEnterEvent* e) override;
|
||||
virtual void leaveEvent(QEvent* e) override;
|
||||
virtual bool eventFilter(QObject* o, QEvent* e) override;
|
||||
};
|
||||
|
@ -53,7 +53,7 @@ public:
|
||||
/// <param name="v">The vector containing the RGB pixels [0..255] which will make up the preview image</param>
|
||||
/// <param name="width">The width of the image in pixels</param>
|
||||
/// <param name="height">The height of the image in pixels</param>
|
||||
void SetImage(vector<byte>& v, uint width, uint height)
|
||||
void SetImage(vector<unsigned char>& v, uint width, uint height)
|
||||
{
|
||||
constexpr auto size = PREVIEW_SIZE;
|
||||
m_Image = QImage(width, height, QImage::Format_RGBA8888);
|
||||
@ -70,7 +70,7 @@ public:
|
||||
protected:
|
||||
QImage m_Image;
|
||||
QPixmap m_Pixmap;
|
||||
bool m_Rendered;
|
||||
bool m_Rendered = false;
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
|
@ -44,6 +44,10 @@ FractoriumFinalRenderDialog::FractoriumFinalRenderDialog(QWidget* p, Qt::WindowF
|
||||
SetupSpinner<SpinBox, int>(ui.FinalRenderSizeTable, this, row, -1, m_WidthSpin, spinHeight, 10, std::numeric_limits<int>::max(), 10, SIGNAL(valueChanged(int)), SLOT(OnWidthChanged(int)), true, 1920, 1920, 1920);
|
||||
SetupSpinner<DoubleSpinBox, double>(ui.FinalRenderSizeTable, this, row, -1, m_HeightScaleSpin, spinHeight, 0.001, 99.99, 0.1, SIGNAL(valueChanged(double)), SLOT(OnHeightScaleChanged(double)), true, 1.0, 1.0, 1.0);
|
||||
SetupSpinner<SpinBox, int>(ui.FinalRenderSizeTable, this, row, -1, m_HeightSpin, spinHeight, 10, std::numeric_limits<int>::max(), 10, SIGNAL(valueChanged(int)), SLOT(OnHeightChanged(int)), true, 1080, 1080, 1080);
|
||||
m_SubBatchPctSpin = (DoubleSpinBox*)ui.FinalRenderOpenCLSubBatchPctSpin;
|
||||
m_SubBatchPctSpin->DoubleClick(true);
|
||||
m_SubBatchPctSpin->DoubleClickZero(0.025);
|
||||
m_SubBatchPctSpin->DoubleClickNonZero(0.025);
|
||||
int spinsize = 120;
|
||||
m_WidthScaleSpin->setDecimals(4);
|
||||
m_HeightScaleSpin->setDecimals(4);
|
||||
@ -237,10 +241,12 @@ FractoriumFinalRenderDialog::FractoriumFinalRenderDialog(QWidget* p, Qt::WindowF
|
||||
OnOpenCLCheckBoxStateChanged(ui.FinalRenderOpenCLCheckBox->isChecked());
|
||||
OnDoAllCheckBoxStateChanged(ui.FinalRenderDoAllCheckBox->isChecked());
|
||||
OnDoSequenceCheckBoxStateChanged(ui.FinalRenderDoSequenceCheckBox->isChecked());
|
||||
QSize s = size();
|
||||
const auto desktopHeight = qApp->desktop()->availableGeometry().height();
|
||||
auto s = size();
|
||||
auto screen = QGuiApplication::screenAt(pos());
|
||||
auto geom = screen->availableGeometry();
|
||||
const auto desktopHeight = geom.height();
|
||||
s.setHeight(std::min(s.height(), int(double(desktopHeight * 0.90))));
|
||||
setGeometry(QStyle::alignedRect(Qt::LeftToRight, Qt::AlignCenter, s, qApp->desktop()->availableGeometry()));
|
||||
setGeometry(QStyle::alignedRect(Qt::LeftToRight, Qt::AlignCenter, s, geom));
|
||||
//Update these with new controls.
|
||||
auto w = SetTabOrder(this, ui.FinalRenderEarlyClipCheckBox, ui.FinalRenderYAxisUpCheckBox);
|
||||
w = SetTabOrder(this, w, ui.FinalRenderTransparencyCheckBox);
|
||||
|
@ -50,7 +50,7 @@ class FractoriumFinalRenderDialog : public QDialog
|
||||
#endif
|
||||
|
||||
public:
|
||||
FractoriumFinalRenderDialog(QWidget* p, Qt::WindowFlags f = 0);
|
||||
FractoriumFinalRenderDialog(QWidget* p, Qt::WindowFlags f = Qt::WindowType::Widget);
|
||||
~FractoriumFinalRenderDialog();
|
||||
void Show(bool fromSequence);
|
||||
bool EarlyClip();
|
||||
@ -137,6 +137,7 @@ private:
|
||||
DoubleSpinBox* m_WidthScaleSpin;
|
||||
SpinBox* m_WidthSpin;
|
||||
DoubleSpinBox* m_HeightScaleSpin;
|
||||
DoubleSpinBox* m_SubBatchPctSpin;
|
||||
SpinBox* m_HeightSpin;
|
||||
DoubleIntSpinnerWidget* m_WidthSpinnerWidget;
|
||||
DoubleIntSpinnerWidget* m_HeightSpinnerWidget;
|
||||
|
@ -419,7 +419,7 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QDoubleSpinBox" name="FinalRenderOpenCLSubBatchPctSpin">
|
||||
<widget class="DoubleSpinBox" name="FinalRenderOpenCLSubBatchPctSpin">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
@ -442,7 +442,7 @@
|
||||
<string><html><head/><body><p>The percentage of a sub batch to execute on each thread per kernel call when using OpenCL. Default: 0.025 (256 iters with a 10k sub batch size).</p><p>Increase this number for slightly faster render times.</p><p>Note that this can cause a crash and subsequent restart of the graphics driver if each kernel call takes too long. So reduce the value if you encounter such a problem.</p></body></html></string>
|
||||
</property>
|
||||
<property name="prefix">
|
||||
<string>OpenCL sub batch percent per thread </string>
|
||||
<string>OpenCL sub batch % per thread </string>
|
||||
</property>
|
||||
<property name="decimals">
|
||||
<number>3</number>
|
||||
|
@ -102,18 +102,16 @@ void FinalRenderEmberControllerBase::Output(const QString& s)
|
||||
template<typename T>
|
||||
bool FinalRenderEmberController<T>::RenderSingleEmber(Ember<T>& ember, bool fullRender, size_t& stripForProgress)
|
||||
{
|
||||
if (!m_Renderer.get()) {
|
||||
if (!m_Renderer.get())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
ember.m_TemporalSamples = 1;//No temporal sampling.
|
||||
|
||||
m_Renderer->SetEmber(ember, fullRender ? eProcessAction::FULL_RENDER : eProcessAction::KEEP_ITERATING, /* updatePointer */ true);
|
||||
|
||||
m_Renderer->PrepFinalAccumVector(m_FinalImage);//Must manually call this first because it could be erroneously made smaller due to strips if called inside Renderer::Run().
|
||||
m_Stats.Clear();
|
||||
m_RenderTimer.Tic();//Toc() is called in RenderComplete().
|
||||
|
||||
StripsRender<T>(m_Renderer.get(), ember, m_FinalImage, 0, m_GuiState.m_Strips, m_GuiState.m_YAxisUp,
|
||||
[&](size_t strip) { stripForProgress = strip; },//Pre strip.
|
||||
[&](size_t strip) { m_Stats += m_Renderer->Stats(); },//Post strip.
|
||||
@ -129,7 +127,6 @@ bool FinalRenderEmberController<T>::RenderSingleEmber(Ember<T>& ember, bool full
|
||||
RenderComplete(finalEmber);
|
||||
HandleFinishedProgress();
|
||||
});//Final strip.
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -143,7 +140,8 @@ bool FinalRenderEmberController<T>::RenderSingleEmber(Ember<T>& ember, bool full
|
||||
template<typename T>
|
||||
bool FinalRenderEmberController<T>::RenderSingleEmberFromSeries(std::atomic<size_t>* atomfTime, size_t index)
|
||||
{
|
||||
if (m_Renderers.size() <= index) {
|
||||
if (m_Renderers.size() <= index)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -156,6 +154,9 @@ bool FinalRenderEmberController<T>::RenderSingleEmberFromSeries(std::atomic<size
|
||||
Timing renderTimer;
|
||||
const auto renderer = m_Renderers[index].get();
|
||||
|
||||
if (renderer == nullptr)
|
||||
return false;
|
||||
|
||||
//Render each image, cancelling if m_Run ever gets set to false.
|
||||
//The conditions of this loop use atomics to synchronize when running on multiple GPUs.
|
||||
//The order is reversed from the usual loop: rather than compare and increment the counter,
|
||||
@ -291,7 +292,6 @@ FinalRenderEmberController<T>::FinalRenderEmberController(FractoriumFinalRenderD
|
||||
//even when using double precision, which most cards at the time of this writing already exceed.
|
||||
m_GuiState.m_Strips = 1;
|
||||
CopyCont(embers, m_EmberFile.m_Embers);
|
||||
|
||||
std::atomic<size_t> atomfTime(0);
|
||||
vector<std::thread> threadVec;
|
||||
threadVec.reserve(m_Renderers.size());
|
||||
@ -300,7 +300,7 @@ FinalRenderEmberController<T>::FinalRenderEmberController(FractoriumFinalRenderD
|
||||
{
|
||||
//All will share a pointer to the original vector to conserve memory with large files. Ok because the vec doesn't get modified.
|
||||
m_Renderers[r]->SetExternalEmbersPointer(&embers);
|
||||
threadVec.push_back(std::thread(&RenderSingleEmberFromSeries, this, &atomfTime, r));
|
||||
threadVec.push_back(std::thread(&FinalRenderEmberController<T>::RenderSingleEmberFromSeries, this, &atomfTime, r));
|
||||
}
|
||||
|
||||
Join(threadVec);
|
||||
@ -326,11 +326,9 @@ FinalRenderEmberController<T>::FinalRenderEmberController(FractoriumFinalRenderD
|
||||
else if (m_Renderer.get())//Render a single image.
|
||||
{
|
||||
Output(ComposePath(QString::fromStdString(m_Ember->m_Name)));
|
||||
|
||||
m_ImageCount = 1;
|
||||
m_Ember->m_TemporalSamples = 1;
|
||||
m_Fractorium->m_Controller->ParamsToEmber(*m_Ember, true);//Update color and filter params from the main window controls, which only affect the filter and/or final accumulation stage.
|
||||
|
||||
RenderSingleEmber(*m_Ember, /* fullRender= */ !isBump, currentStripForProgress);
|
||||
}
|
||||
else
|
||||
|
@ -121,8 +121,8 @@ public:
|
||||
bool BumpQualityRender(double d) override;
|
||||
bool CreateRenderer(eRendererType renderType, const vector<pair<size_t, size_t>>& devices, bool updatePreviews, bool shared = true) override;
|
||||
int ProgressFunc(Ember<T>& ember, void* foo, double fraction, int stage, double etaMs) override;
|
||||
size_t Index() const override { return m_Ember->m_Index; }
|
||||
uint SizeOfT() const override { return sizeof(T); }
|
||||
size_t Index() const noexcept override { return m_Ember->m_Index; }
|
||||
uint SizeOfT() const noexcept override { return sizeof(T); }
|
||||
|
||||
//Virtual functions overridden from FinalRenderEmberControllerBase.
|
||||
void SyncCurrentToGui() override;
|
||||
|
@ -34,7 +34,7 @@ Fractorium::Fractorium(QWidget* p)
|
||||
tabifyDockWidget(ui.XaosDockWidget, ui.PaletteDockWidget);
|
||||
tabifyDockWidget(ui.PaletteDockWidget, ui.InfoDockWidget);
|
||||
setTabPosition(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea, QTabWidget::TabPosition::North);
|
||||
setTabShape(QTabWidget::TabShape::Triangular);
|
||||
//setTabShape(QTabWidget::TabShape::Rounded);
|
||||
m_Docks.reserve(8);
|
||||
m_Docks.push_back(ui.LibraryDockWidget);
|
||||
m_Docks.push_back(ui.FlameDockWidget);
|
||||
@ -69,8 +69,9 @@ Fractorium::Fractorium(QWidget* p)
|
||||
m_VarDialog = new FractoriumVariationsDialog(this);
|
||||
m_AboutDialog = new FractoriumAboutDialog(this);
|
||||
//Put the about dialog in the screen center.
|
||||
const QRect screen = QApplication::desktop()->screenGeometry();
|
||||
m_AboutDialog->move(screen.center() - m_AboutDialog->rect().center());
|
||||
auto screen = QGuiApplication::screenAt(pos());
|
||||
auto geom = screen->availableGeometry();
|
||||
m_AboutDialog->move(geom.center() - m_AboutDialog->rect().center());
|
||||
connect(m_ColorDialog, SIGNAL(colorSelected(const QColor&)), this, SLOT(OnColorSelected(const QColor&)), Qt::QueuedConnection);
|
||||
m_XformComboColors[i++] = QColor(0XFF, 0X00, 0X00);
|
||||
m_XformComboColors[i++] = QColor(0XCC, 0XCC, 0X00);
|
||||
@ -261,8 +262,8 @@ QList<QUrl> Fractorium::Urls()
|
||||
void Fractorium::SetCoordinateStatus(int rasX, int rasY, float worldX, float worldY)
|
||||
{
|
||||
static QString coords;
|
||||
coords.sprintf("Window: %4d, %4d World: %2.2f, %2.2f", rasX, rasY, worldX, worldY);
|
||||
m_CoordinateStatusLabel->setText(coords);
|
||||
auto str = coords.asprintf("Window: %4d, %4d World: %2.2f, %2.2f", rasX, rasY, worldX, worldY);
|
||||
m_CoordinateStatusLabel->setText(str);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -824,7 +825,7 @@ void Fractorium::dragMoveEvent(QDragMoveEvent* e)
|
||||
void Fractorium::dropEvent(QDropEvent* e)
|
||||
{
|
||||
QStringList filenames;
|
||||
const auto mod = e->keyboardModifiers();
|
||||
const auto mod = e->modifiers();
|
||||
const auto append = mod.testFlag(Qt::ControlModifier) ? false : true;
|
||||
|
||||
if (e->mimeData()->hasUrls())
|
||||
|
@ -240,6 +240,8 @@ public slots:
|
||||
void OnPaletteModeComboCurrentIndexChanged(int index);
|
||||
void OnWidthChanged(int d);//Geometry.
|
||||
void OnHeightChanged(int d);
|
||||
void PresetWidthActionTriggered(bool b);
|
||||
void PresetHeightActionTriggered(bool b);
|
||||
void OnCenterXChanged(double d);
|
||||
void OnCenterYChanged(double d);
|
||||
void OnScaleChanged(double d);
|
||||
@ -367,7 +369,7 @@ public slots:
|
||||
void OnPaletteAdjust(int d);
|
||||
void OnPaletteCellClicked(int row, int col);
|
||||
void OnPaletteCellDoubleClicked(int row, int col);
|
||||
void OnPreviewPaletteMouseDragged(const QPointF& local, const QPoint& global);
|
||||
void OnPreviewPaletteMouseDragged(const QPointF& local, const QPointF& global);
|
||||
void OnPreviewPaletteMouseReleased();
|
||||
void OnPreviewPaletteCellDoubleClicked(int row, int col);
|
||||
void OnPreviewPaletteCellPressed(int row, int col);
|
||||
@ -443,6 +445,9 @@ private:
|
||||
void SyncSequenceSettings();
|
||||
|
||||
//Params.
|
||||
void AddSizePreset(QString name, int w, int h);
|
||||
void SetWidthWithAspect(int w, int h);
|
||||
void SetHeightWithAspect(int w, int h);
|
||||
|
||||
//Xforms.
|
||||
|
||||
@ -615,6 +620,7 @@ private:
|
||||
QColor m_VariationTreeColorNonZero, m_VariationTreeColorZero;
|
||||
QColor m_VariationTreeBgColorNonZero, m_VariationTreeBgColorZero;
|
||||
vector<QDockWidget*> m_Docks;
|
||||
std::unordered_map<QString, std::pair<int, int>> m_HeightPresets;
|
||||
|
||||
bool m_PreviousAffineState[4];
|
||||
int m_FontSize;
|
||||
@ -622,7 +628,7 @@ private:
|
||||
int m_PaletteSortMode;
|
||||
int m_PreviousPaletteRow;
|
||||
int m_BgRow;
|
||||
vector<byte> m_PreviewVec;
|
||||
vector<unsigned char> m_PreviewVec;
|
||||
shared_ptr<OpenCLInfo> m_Info;
|
||||
unique_ptr<FractoriumEmberControllerBase> m_Controller;
|
||||
Ui::FractoriumClass ui;
|
||||
|
@ -41,9 +41,6 @@
|
||||
<height>16</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="tabShape">
|
||||
<enum>QTabWidget::Rounded</enum>
|
||||
</property>
|
||||
<property name="dockOptions">
|
||||
<set>QMainWindow::AllowNestedDocks|QMainWindow::AllowTabbedDocks|QMainWindow::AnimatedDocks|QMainWindow::GroupedDragging</set>
|
||||
</property>
|
||||
@ -3596,9 +3593,6 @@
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="tabShape">
|
||||
<enum>QTabWidget::Triangular</enum>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>2</number>
|
||||
</property>
|
||||
@ -6455,9 +6449,6 @@
|
||||
<property name="autoFillBackground">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="tabShape">
|
||||
<enum>QTabWidget::Triangular</enum>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
|
@ -490,14 +490,20 @@ static QString FindFirstDefaultPalette()
|
||||
static QString BaseStyle()
|
||||
{
|
||||
return "/*---Base Style---\n"
|
||||
"This is needed to deal with the large tabs in the fusion theme which is the default on Linux, and optional on Windows.\n"
|
||||
"It's not needed for other themes."
|
||||
"This may be needed to deal with the large tabs.\n"
|
||||
"You should keep this at the top of whatever custom style you make to ensure the tabs aren't unusually large.*/\n"
|
||||
"/*\n"
|
||||
#ifndef _WIN32
|
||||
"QTabBar::tab { height: 4ex; }\n\n"
|
||||
"QTabBar::tab { height: 4ex; }\n"
|
||||
#else
|
||||
"QTabBar::tab { height: 4ex; }\n\n"
|
||||
"QTabBar::tab { height: 4ex; }\n"
|
||||
#endif
|
||||
"*/\n"
|
||||
"*\n"
|
||||
"{\n"
|
||||
"\tfont: 8.5pt \"MS Shell Dlg 2\";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"/*This is needed to give the labels on the status bar some padding.*/\n"
|
||||
"QStatusBar QLabel { padding-left: 2px; padding-right: 2px; }\n"
|
||||
"\n"
|
||||
@ -520,7 +526,6 @@ static QString BaseStyle()
|
||||
"\tpadding-right: 0px;\n"
|
||||
"\tpadding-top: 0px;\n"
|
||||
"\tpadding-bottom: 0px;\n"
|
||||
"\tfont: 8pt \"MS Shell Dlg 2\";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QHeaderView::section::horizontal:enabled\n"
|
||||
@ -532,7 +537,6 @@ static QString BaseStyle()
|
||||
"\tpadding-top: 0px;\n"
|
||||
"\tpadding-bottom: 0px;\n"
|
||||
"\tpadding-left: 3px;\n"
|
||||
"\tfont: 8pt \"MS Shell Dlg 2\";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QHeaderView::section::vertical:disabled\n"
|
||||
@ -545,7 +549,6 @@ static QString BaseStyle()
|
||||
"\tpadding-right: 0px;\n"
|
||||
"\tpadding-top: 0px;\n"
|
||||
"\tpadding-bottom: 0px;\n"
|
||||
"\tfont: 8pt \"MS Shell Dlg 2\";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"QHeaderView::section::horizontal:disabled\n"
|
||||
@ -557,7 +560,6 @@ static QString BaseStyle()
|
||||
"\tpadding-top: 0px;\n"
|
||||
"\tpadding-bottom: 0px;\n"
|
||||
"\tpadding-left: 3px;\n"
|
||||
"\tfont: 8pt \"MS Shell Dlg 2\";/*For some reason the font changes if you set any style. Set this to whatever font is the default on your system*/\n"
|
||||
"}\n"
|
||||
;
|
||||
}
|
||||
@ -572,6 +574,8 @@ static QList<T> GetAllParents(QWidget* widget)
|
||||
{
|
||||
QList<T> parents;
|
||||
|
||||
if (widget != nullptr)
|
||||
{
|
||||
while (const auto parent = qobject_cast<QWidget*>(widget->parent()))
|
||||
{
|
||||
if (const auto parentT = qobject_cast<T>(parent))
|
||||
@ -579,6 +583,7 @@ static QList<T> GetAllParents(QWidget* widget)
|
||||
|
||||
widget = parent;
|
||||
}
|
||||
}
|
||||
|
||||
return parents;
|
||||
}
|
||||
|
@ -78,16 +78,16 @@ public:
|
||||
virtual void ClearXform() { }
|
||||
virtual void DeleteXforms() { }
|
||||
virtual void AddFinalXform() { }
|
||||
virtual bool UseFinalXform() { return false; }
|
||||
virtual size_t XformCount() const { return 0; }
|
||||
virtual size_t TotalXformCount() const { return 0; }
|
||||
virtual bool UseFinalXform() const noexcept { return false; }
|
||||
virtual size_t XformCount() const noexcept { return 0; }
|
||||
virtual size_t TotalXformCount() const noexcept { return 0; }
|
||||
virtual QString Name() const { return ""; }
|
||||
virtual void Name(const string& s) { }
|
||||
virtual size_t FinalRasW() const { return 0; }
|
||||
virtual void FinalRasW(size_t w) { }
|
||||
virtual size_t FinalRasH() const { return 0; }
|
||||
virtual void FinalRasH(size_t h) { }
|
||||
virtual size_t Index() const { return 0; }
|
||||
virtual size_t FinalRasW() const noexcept { return 0; }
|
||||
virtual void FinalRasW(size_t w) noexcept { }
|
||||
virtual size_t FinalRasH() const noexcept { return 0; }
|
||||
virtual void FinalRasH(size_t h) noexcept { }
|
||||
virtual size_t Index() const noexcept { return 0; }
|
||||
virtual void AddSymmetry(int sym, QTIsaac<ISAAC_SIZE, ISAAC_INT>& rand) { }
|
||||
virtual void CalcNormalizedWeights() { }
|
||||
|
||||
@ -213,13 +213,13 @@ public:
|
||||
virtual void RandomXformsAffine(bool pre) { }
|
||||
virtual void FillBothAffines() { }
|
||||
virtual void SwapAffines() { }
|
||||
double LockedScale() { return m_LockedScale; }
|
||||
double LockedX() { return m_LockedX; }
|
||||
double LockedY() { return m_LockedY; }
|
||||
void LockedScale(double scale) { m_LockedScale = scale; }
|
||||
virtual void InitLockedScale() { }
|
||||
virtual double AffineScaleCurrentToLocked() { return 0; };
|
||||
virtual double AffineScaleLockedToCurrent() { return 0; };
|
||||
double LockedScale() const noexcept { return m_LockedScale; }
|
||||
double LockedX() const noexcept { return m_LockedX; }
|
||||
double LockedY() const noexcept { return m_LockedY; }
|
||||
void LockedScale(double scale) noexcept { m_LockedScale = scale; }
|
||||
virtual void InitLockedScale() noexcept { }
|
||||
virtual double AffineScaleCurrentToLocked() noexcept { return 0; };
|
||||
virtual double AffineScaleLockedToCurrent() noexcept { return 0; };
|
||||
|
||||
//Xforms Color.
|
||||
virtual void XformColorIndexChanged(double d, bool updateRender, bool updateSpinner, bool updateScroll, eXformUpdate update = eXformUpdate::UPDATE_SELECTED, size_t index = 0) { }
|
||||
@ -272,7 +272,7 @@ public:
|
||||
//Rendering/progress.
|
||||
virtual bool Render() { return false; }
|
||||
virtual bool CreateRenderer(eRendererType renderType, const vector<pair<size_t, size_t>>& devices, bool updatePreviews, bool shared = true) { return false; }
|
||||
virtual uint SizeOfT() const { return 0; }
|
||||
virtual uint SizeOfT() const noexcept { return 0; }
|
||||
virtual void ClearUndo() { }
|
||||
virtual void DeleteRenderer() { }
|
||||
virtual GLEmberControllerBase* GLController() { return nullptr; }
|
||||
@ -373,16 +373,16 @@ public:
|
||||
void ClearXform() override;
|
||||
void DeleteXforms() override;
|
||||
void AddFinalXform() override;
|
||||
bool UseFinalXform() override { return m_Ember.UseFinalXform(); }
|
||||
size_t XformCount() const override { return m_Ember.XformCount(); }
|
||||
size_t TotalXformCount() const override { return m_Ember.TotalXformCount(); }
|
||||
bool UseFinalXform() const noexcept override { return m_Ember.UseFinalXform(); }
|
||||
size_t XformCount() const noexcept override { return m_Ember.XformCount(); }
|
||||
size_t TotalXformCount() const noexcept override { return m_Ember.TotalXformCount(); }
|
||||
QString Name() const override { return QString::fromStdString(m_Ember.m_Name); }
|
||||
void Name(const string& s) override { m_Ember.m_Name = s; }
|
||||
size_t FinalRasW() const override { return m_Ember.m_FinalRasW; }
|
||||
void FinalRasW(size_t w) override { m_Ember.m_FinalRasW = w; }
|
||||
size_t FinalRasH() const override { return m_Ember.m_FinalRasH; }
|
||||
void FinalRasH(size_t h) override { m_Ember.m_FinalRasH = h; }
|
||||
size_t Index() const override { return m_Ember.m_Index; }
|
||||
size_t FinalRasW() const noexcept override { return m_Ember.m_FinalRasW; }
|
||||
void FinalRasW(size_t w) noexcept override { m_Ember.m_FinalRasW = w; }
|
||||
size_t FinalRasH() const noexcept override { return m_Ember.m_FinalRasH; }
|
||||
void FinalRasH(size_t h) noexcept override { m_Ember.m_FinalRasH = h; }
|
||||
size_t Index() const noexcept override { return m_Ember.m_Index; }
|
||||
void AddSymmetry(int sym, QTIsaac<ISAAC_SIZE, ISAAC_INT>& rand) override { m_Ember.AddSymmetry(sym, rand); }
|
||||
void CalcNormalizedWeights() override { m_Ember.CalcNormalizedWeights(m_NormalizedWeights); }
|
||||
void ConstrainDimensions(Ember<T>& ember);
|
||||
@ -515,9 +515,9 @@ public:
|
||||
void RandomXformsAffine(bool pre) override;
|
||||
void FillBothAffines() override;
|
||||
void SwapAffines() override;
|
||||
void InitLockedScale() override;
|
||||
double AffineScaleCurrentToLocked() override;
|
||||
double AffineScaleLockedToCurrent() override;
|
||||
void InitLockedScale() noexcept override;
|
||||
double AffineScaleCurrentToLocked() noexcept override;
|
||||
double AffineScaleLockedToCurrent() noexcept override;
|
||||
void FillAffineWithXform(Xform<T>* xform, bool pre);
|
||||
void ChangeLockedScale(T value);
|
||||
|
||||
@ -575,7 +575,7 @@ public:
|
||||
//Rendering/progress.
|
||||
bool Render() override;
|
||||
bool CreateRenderer(eRendererType renderType, const vector<pair<size_t, size_t>>& devices, bool updatePreviews, bool shared = true) override;
|
||||
uint SizeOfT() const override { return sizeof(T); }
|
||||
uint SizeOfT() const noexcept override { return sizeof(T); }
|
||||
int ProgressFunc(Ember<T>& ember, void* foo, double fraction, int stage, double etaMs) override;
|
||||
void ClearUndo() override;
|
||||
GLEmberControllerBase* GLController() override { return m_GLController.get(); }
|
||||
@ -681,7 +681,7 @@ public:
|
||||
protected:
|
||||
volatile bool m_PreviewRun = false;
|
||||
Ember<T> m_PreviewEmber;
|
||||
vector<byte> m_PreviewVec;
|
||||
vector<unsigned char> m_PreviewVec;
|
||||
vv4F m_PreviewFinalImage;
|
||||
EmberNs::Renderer<T, float> m_PreviewRenderer;
|
||||
|
||||
|
@ -139,8 +139,8 @@ void FractoriumEmberController<T>::FillSummary()
|
||||
colorIndexItem->setFlags(nondraggable | Qt::ItemNeverHasChildren);
|
||||
color = ColorIndexToQColor(xform->m_ColorX);
|
||||
color.setAlphaF(xform->m_Opacity);
|
||||
colorIndexItem->setBackgroundColor(1, color);
|
||||
colorIndexItem->setTextColor(1, VisibleColor(color));
|
||||
colorIndexItem->setBackground(1, color);
|
||||
colorIndexItem->setForeground(1, VisibleColor(color));
|
||||
auto colorSpeedItem = new QTreeWidgetItem(item1);
|
||||
colorSpeedItem->setText(0, "Color speed");
|
||||
colorSpeedItem->setText(1, QLocale::system().toString(xform->m_ColorSpeed, pc, p));
|
||||
@ -255,24 +255,24 @@ void Fractorium::UpdateHistogramBounds()
|
||||
|
||||
if (auto r = m_Controller->Renderer())
|
||||
{
|
||||
ul.sprintf("UL: %3.3f, %3.3f", r->LowerLeftX(), r->UpperRightY());//These bounds include gutter padding.
|
||||
ur.sprintf("UR: %3.3f, %3.3f", r->UpperRightX(), r->UpperRightY());
|
||||
lr.sprintf("LR: %3.3f, %3.3f", r->UpperRightX(), r->LowerLeftY());
|
||||
ll.sprintf("LL: %3.3f, %3.3f", r->LowerLeftX(), r->LowerLeftY());
|
||||
wh.sprintf("W x H: %4u x %4u", r->SuperRasW(), r->SuperRasH());
|
||||
g.sprintf("%u", static_cast<uint>(r->GutterWidth()));
|
||||
ui.InfoBoundsLabelUL->setText(ul);
|
||||
ui.InfoBoundsLabelUR->setText(ur);
|
||||
ui.InfoBoundsLabelLR->setText(lr);
|
||||
ui.InfoBoundsLabelLL->setText(ll);
|
||||
ui.InfoBoundsLabelWH->setText(wh);
|
||||
ui.InfoBoundsTable->item(0, 1)->setText(g);
|
||||
auto ulstr = ul.asprintf("UL: %3.3f, %3.3f", r->LowerLeftX(), r->UpperRightY());//These bounds include gutter padding.
|
||||
auto urstr = ur.asprintf("UR: %3.3f, %3.3f", r->UpperRightX(), r->UpperRightY());
|
||||
auto lrstr = lr.asprintf("LR: %3.3f, %3.3f", r->UpperRightX(), r->LowerLeftY());
|
||||
auto llstr = ll.asprintf("LL: %3.3f, %3.3f", r->LowerLeftX(), r->LowerLeftY());
|
||||
auto whstr = wh.asprintf("W x H: %4u x %4u", r->SuperRasW(), r->SuperRasH());
|
||||
auto gstr = g.asprintf("%u", static_cast<uint>(r->GutterWidth()));
|
||||
ui.InfoBoundsLabelUL->setText(ulstr);
|
||||
ui.InfoBoundsLabelUR->setText(urstr);
|
||||
ui.InfoBoundsLabelLR->setText(lrstr);
|
||||
ui.InfoBoundsLabelLL->setText(llstr);
|
||||
ui.InfoBoundsLabelWH->setText(whstr);
|
||||
ui.InfoBoundsTable->item(0, 1)->setText(gstr);
|
||||
|
||||
if (r->GetDensityFilter())
|
||||
{
|
||||
const auto deWidth = (r->GetDensityFilter()->FilterWidth() * 2) + 1;
|
||||
de.sprintf("%d x %d", deWidth, deWidth);
|
||||
ui.InfoBoundsTable->item(1, 1)->setText(de);
|
||||
auto destr = de.asprintf("%d x %d", deWidth, deWidth);
|
||||
ui.InfoBoundsTable->item(1, 1)->setText(destr);
|
||||
}
|
||||
else
|
||||
ui.InfoBoundsTable->item(1, 1)->setText("N/A");
|
||||
|
@ -183,7 +183,7 @@ void FractoriumEmberController<T>::FillLibraryTree(int selectIndex)
|
||||
{
|
||||
StopAllPreviewRenderers();
|
||||
const uint size = PREVIEW_SIZE;
|
||||
vector<byte> empy_preview(size * size * 4);
|
||||
vector<unsigned char> empy_preview(size * size * 4);
|
||||
const auto tree = m_Fractorium->ui.LibraryTree;
|
||||
tree->clear();
|
||||
auto fileItem = new QTreeWidgetItem(tree);
|
||||
@ -222,7 +222,7 @@ template <typename T>
|
||||
void FractoriumEmberController<T>::UpdateLibraryTree()
|
||||
{
|
||||
const uint size = PREVIEW_SIZE;
|
||||
vector<byte> empy_preview(size * size * 4);
|
||||
vector<unsigned char> empy_preview(size * size * 4);
|
||||
const auto tree = m_Fractorium->ui.LibraryTree;
|
||||
|
||||
if (auto top = tree->topLevelItem(0))
|
||||
@ -440,7 +440,7 @@ void FractoriumEmberController<T>::RenderPreviews(QTreeWidget* tree, TreePreview
|
||||
if (const auto top = tree->topLevelItem(tree->topLevelItemCount() - 1))
|
||||
{
|
||||
const auto childCount = top->childCount();
|
||||
vector<byte> emptyPreview(PREVIEW_SIZE * PREVIEW_SIZE * 4);
|
||||
vector<unsigned char> emptyPreview(PREVIEW_SIZE * PREVIEW_SIZE * 4);
|
||||
|
||||
for (int i = 0; i < childCount; i++)
|
||||
if (auto treeItem = dynamic_cast<EmberTreeWidgetItemBase*>(top->child(i)))
|
||||
@ -488,7 +488,7 @@ void FractoriumEmberController<T>::AddAnimationItem()
|
||||
emberItem->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
|
||||
emberItem->setToolTip(0, "Animated Frame");
|
||||
const uint size = PREVIEW_SIZE;
|
||||
vector<byte> empy_preview(size * size * 4);
|
||||
vector<unsigned char> empy_preview(size * size * 4);
|
||||
emberItem->SetImage(empy_preview, size, size);
|
||||
}
|
||||
|
||||
@ -502,7 +502,7 @@ void FractoriumEmberController<T>::FillSequenceTree()
|
||||
{
|
||||
StopAllPreviewRenderers();
|
||||
const uint size = PREVIEW_SIZE;
|
||||
vector<byte> empy_preview(size * size * 4);
|
||||
vector<unsigned char> empy_preview(size * size * 4);
|
||||
const auto tree = m_Fractorium->ui.SequenceTree;
|
||||
tree->clear();
|
||||
// Add extra TreeWidget for animation at index 0
|
||||
|
@ -256,8 +256,8 @@ void FractoriumEmberController<T>::CreateReferenceFile()
|
||||
ember.m_Palette = temppal;
|
||||
m_EmberFile.m_Embers.push_back(ember);
|
||||
};
|
||||
|
||||
size_t i;
|
||||
|
||||
for (i = 0; i < count; i++)
|
||||
{
|
||||
addsquaresfunc(i, regVars[i]);
|
||||
@ -685,8 +685,9 @@ void FractoriumEmberController<T>::PasteXmlAppend()
|
||||
string s, errors;
|
||||
XmlToEmber<T> parser;
|
||||
vector<Ember<T>> embers;
|
||||
auto codec = QTextCodec::codecForName("UTF-8");
|
||||
auto b = codec->fromUnicode(QApplication::clipboard()->text());
|
||||
auto b = QApplication::clipboard()->text().toUtf8();
|
||||
//auto codec = QTextCodec::codecForName("UTF-8");
|
||||
//auto b = codec->fromUnicode(QApplication::clipboard()->text());
|
||||
s.reserve(b.size());
|
||||
|
||||
for (auto i = 0; i < b.size(); i++)
|
||||
@ -742,8 +743,9 @@ void FractoriumEmberController<T>::PasteXmlOver()
|
||||
XmlToEmber<T> parser;
|
||||
list<Ember<T>> embers;
|
||||
auto backupEmber = *m_EmberFile.m_Embers.begin();
|
||||
auto codec = QTextCodec::codecForName("UTF-8");
|
||||
auto b = codec->fromUnicode(QApplication::clipboard()->text());
|
||||
auto b = QApplication::clipboard()->text().toUtf8();
|
||||
//auto codec = QTextCodec::codecForName("UTF-8");
|
||||
//auto b = codec->fromUnicode(QApplication::clipboard()->text());
|
||||
s.reserve(b.size());
|
||||
|
||||
for (auto i = 0; i < b.size(); i++)
|
||||
|
@ -10,10 +10,10 @@ void Fractorium::InitPaletteUI()
|
||||
int spinHeight = 20, row = 0;
|
||||
auto paletteTable = ui.PaletteListTable;
|
||||
auto palettePreviewTable = ui.PalettePreviewTable;
|
||||
connect(ui.PaletteFilenameCombo, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(OnPaletteFilenameComboChanged(const QString&)), Qt::QueuedConnection);
|
||||
connect(ui.PaletteFilenameCombo, SIGNAL(currentTextChanged(const QString&)), this, SLOT(OnPaletteFilenameComboChanged(const QString&)), Qt::QueuedConnection);
|
||||
connect(paletteTable, SIGNAL(cellClicked(int, int)), this, SLOT(OnPaletteCellClicked(int, int)), Qt::QueuedConnection);
|
||||
connect(paletteTable, SIGNAL(cellDoubleClicked(int, int)), this, SLOT(OnPaletteCellDoubleClicked(int, int)), Qt::QueuedConnection);
|
||||
connect(palettePreviewTable, SIGNAL(MouseDragged(const QPointF&, const QPoint&)), this, SLOT(OnPreviewPaletteMouseDragged(const QPointF&, const QPoint&)), Qt::QueuedConnection);
|
||||
connect(palettePreviewTable, SIGNAL(MouseDragged(const QPointF&, const QPointF&)), this, SLOT(OnPreviewPaletteMouseDragged(const QPointF&, const QPointF&)), Qt::QueuedConnection);
|
||||
connect(palettePreviewTable, SIGNAL(MouseReleased()), this, SLOT(OnPreviewPaletteMouseReleased()), Qt::QueuedConnection);
|
||||
connect(palettePreviewTable, SIGNAL(cellDoubleClicked(int, int)), this, SLOT(OnPreviewPaletteCellDoubleClicked(int, int)), Qt::QueuedConnection);
|
||||
connect(palettePreviewTable, SIGNAL(cellPressed(int, int)), this, SLOT(OnPreviewPaletteCellPressed(int, int)), Qt::QueuedConnection);
|
||||
@ -144,7 +144,7 @@ void FractoriumEmberController<T>::ApplyPaletteToEmber()
|
||||
const uint freq = m_Fractorium->m_PaletteFrequencySpin->value();
|
||||
const auto sat = m_Fractorium->m_PaletteSaturationSpin->value() / 100.0;
|
||||
const auto brightness = m_Fractorium->m_PaletteBrightnessSpin->value() / 255.0;
|
||||
const auto contrast = m_Fractorium->m_PaletteContrastSpin->value() > 0 ? m_Fractorium->m_PaletteContrastSpin->value() * 2.0 : m_Fractorium->m_PaletteContrastSpin->value() / 100.0;
|
||||
const auto contrast = double(m_Fractorium->m_PaletteContrastSpin->value() > 0 ? m_Fractorium->m_PaletteContrastSpin->value() * 2.0 : m_Fractorium->m_PaletteContrastSpin->value()) / 100.0;
|
||||
const auto hue = m_Fractorium->m_PaletteHueSpin->value() / 360.0;
|
||||
//Use the temp palette as the base and apply the adjustments gotten from the GUI and save the result in the ember palette.
|
||||
m_TempPalette.MakeAdjustedPalette(m_Ember.m_Palette, m_Fractorium->m_PreviewPaletteRotation, hue, sat, brightness, contrast, blur, freq);
|
||||
@ -167,7 +167,7 @@ void FractoriumEmberController<T>::UpdateAdjustedPaletteGUI(Palette<float>& pale
|
||||
if (previewPaletteItem)//This can be null if the palette file was moved or corrupted.
|
||||
{
|
||||
//Use the adjusted palette to fill the preview palette control so the user can see the effects of applying the adjustements.
|
||||
vector<byte> v = palette.MakeRgbPaletteBlock(PALETTE_CELL_HEIGHT);//Make the palette repeat for PALETTE_CELL_HEIGHT rows.
|
||||
vector<unsigned char> v = palette.MakeRgbPaletteBlock(PALETTE_CELL_HEIGHT);//Make the palette repeat for PALETTE_CELL_HEIGHT rows.
|
||||
m_FinalPaletteImage = QImage(int(palette.Size()), PALETTE_CELL_HEIGHT, QImage::Format_RGB888);//Create a QImage out of it.
|
||||
memcpy(m_FinalPaletteImage.scanLine(0), v.data(), v.size() * sizeof(v[0]));//Memcpy the data in.
|
||||
QPixmap pixmap(QPixmap::fromImage(m_FinalPaletteImage));//Create a QPixmap out of the QImage.
|
||||
@ -269,7 +269,7 @@ void Fractorium::OnPaletteCellClicked(int row, int col)
|
||||
/// </summary>
|
||||
/// <param name="local">The local mouse coordinates relative to the palette preview table</param>
|
||||
/// <param name="global">The global mouse coordinates</param>
|
||||
void Fractorium::OnPreviewPaletteMouseDragged(const QPointF& local, const QPoint& global)
|
||||
void Fractorium::OnPreviewPaletteMouseDragged(const QPointF& local, const QPointF& global)
|
||||
{
|
||||
if (m_PreviewPaletteMouseDown)
|
||||
{
|
||||
|
@ -87,7 +87,7 @@ void Fractorium::InitParamsUI()
|
||||
table = ui.FilterTable;
|
||||
SetupSpinner<DoubleSpinBox, double>(table, this, row, 1, m_SpatialFilterWidthSpin, spinHeight, 0, 2, 0.1, SIGNAL(valueChanged(double)), SLOT(OnSpatialFilterWidthChanged(double)), true, 1.0, 1.0, 0);
|
||||
comboVals = SpatialFilterCreator<float>::FilterTypes();
|
||||
SetupCombo(table, this, row, 1, m_SpatialFilterTypeCombo, comboVals, SIGNAL(currentIndexChanged(const QString&)), SLOT(OnSpatialFilterTypeComboCurrentIndexChanged(const QString&)));
|
||||
SetupCombo(table, this, row, 1, m_SpatialFilterTypeCombo, comboVals, SIGNAL(currentTextChanged(const QString&)), SLOT(OnSpatialFilterTypeComboCurrentIndexChanged(const QString&)));
|
||||
m_SpatialFilterTypeCombo->SetCurrentIndexStealth(0);
|
||||
SetupSpinner<DoubleSpinBox, double>(table, this, row, 1, m_DEFilterMinRadiusSpin, spinHeight, 0, 25, 1, SIGNAL(valueChanged(double)), SLOT(OnDEFilterMinRadiusWidthChanged(double)), true, 0, 0, 0);
|
||||
SetupSpinner<DoubleSpinBox, double>(table, this, row, 1, m_DEFilterMaxRadiusSpin, spinHeight, 0, 25, 1, SIGNAL(valueChanged(double)), SLOT(OnDEFilterMaxRadiusWidthChanged(double)), true, 0.0, 9.0, 0);
|
||||
@ -122,10 +122,63 @@ void Fractorium::InitParamsUI()
|
||||
m_AffineInterpTypeCombo->SetCurrentIndexStealth(static_cast<int>(eAffineInterp::AFFINE_INTERP_LOG));
|
||||
SetupSpinner<DoubleSpinBox, double>(table, this, row, 1, m_TemporalFilterWidthSpin, spinHeight, 1, 10, 1, SIGNAL(valueChanged(double)), SLOT(OnTemporalFilterWidthChanged(double)), true, 1, 1, 1);
|
||||
comboVals = TemporalFilterCreator<float>::FilterTypes();
|
||||
SetupCombo( table, this, row, 1, m_TemporalFilterTypeCombo, comboVals, SIGNAL(currentIndexChanged(const QString&)), SLOT(OnTemporalFilterTypeComboCurrentIndexChanged(const QString&)));
|
||||
SetupCombo( table, this, row, 1, m_TemporalFilterTypeCombo, comboVals, SIGNAL(currentTextChanged(const QString&)), SLOT(OnTemporalFilterTypeComboCurrentIndexChanged(const QString&)));
|
||||
m_TemporalFilterTypeCombo->SetCurrentIndexStealth(static_cast<int>(eTemporalFilterType::BOX_TEMPORAL_FILTER));
|
||||
table->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents);
|
||||
SetupSpinner<DoubleSpinBox, double>(table, this, row, 1, m_TemporalFilterExpSpin, spinHeight, 0, 5, 0.1, SIGNAL(valueChanged(double)), SLOT(OnExpChanged(double)), true, 1, 1, 0);
|
||||
//
|
||||
AddSizePreset("HD", 1920, 1080);
|
||||
AddSizePreset("QHD", 2560, 1440);
|
||||
AddSizePreset("4K UHD", 3840, 2160);
|
||||
AddSizePreset("4K DCP", 4096, 2160);
|
||||
AddSizePreset("5K", 5120, 2880);
|
||||
AddSizePreset("6K", 6144, 3456);
|
||||
AddSizePreset("8K UHD", 7680, 4320);
|
||||
AddSizePreset("8K", 8192, 4608);
|
||||
AddSizePreset("12K", 12288, 6912);
|
||||
m_WidthSpin->setContextMenuPolicy(Qt::ActionsContextMenu);
|
||||
m_HeightSpin->setContextMenuPolicy(Qt::ActionsContextMenu);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Add a new size preset.
|
||||
/// </summary>
|
||||
/// <param name="name">The name of the preset</param>
|
||||
/// <param name="w">The width of the preset</param>
|
||||
/// <param name="h">The height of the preset</param>
|
||||
void Fractorium::AddSizePreset(QString name, int w, int h)
|
||||
{
|
||||
auto widthAction = new QAction(name, m_WidthSpin);
|
||||
connect(widthAction, SIGNAL(triggered(bool)), this, SLOT(PresetWidthActionTriggered(bool)), Qt::QueuedConnection);
|
||||
m_WidthSpin->addAction(widthAction);
|
||||
auto heightAction = new QAction(name, m_HeightSpin);
|
||||
connect(heightAction, SIGNAL(triggered(bool)), this, SLOT(PresetHeightActionTriggered(bool)), Qt::QueuedConnection);
|
||||
m_HeightSpin->addAction(heightAction);
|
||||
m_HeightPresets[name] = std::pair<int, int>(w, h);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Assign a new width and height, and scale by the width.
|
||||
/// </summary>
|
||||
/// <param name="w">The width to assign</param>
|
||||
/// <param name="h">The height to assign</param>
|
||||
void Fractorium::SetWidthWithAspect(int w, int h)
|
||||
{
|
||||
m_Controller->ResizeAndScale(w, h, eScaleType::SCALE_WIDTH);
|
||||
m_WidthSpin->SetValueStealth(w);
|
||||
m_HeightSpin->SetValueStealth(h);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Assign a new width and height, and scale by the height.
|
||||
/// </summary>
|
||||
/// <param name="w">The width to assign</param>
|
||||
/// <param name="h">The height to assign</param>
|
||||
void Fractorium::SetHeightWithAspect(int w, int h)
|
||||
{
|
||||
m_Controller->ResizeAndScale(w, h, eScaleType::SCALE_HEIGHT);
|
||||
m_WidthSpin->SetValueStealth(w);
|
||||
m_HeightSpin->SetValueStealth(h);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -260,8 +313,8 @@ void FractoriumEmberController<T>::BackgroundChanged(const QColor& color)
|
||||
const auto r = ToString(color.red());
|
||||
const auto g = ToString(color.green());
|
||||
const auto b = ToString(color.blue());
|
||||
colorTable->item(itemRow, 1)->setBackgroundColor(color);
|
||||
colorTable->item(itemRow, 1)->setTextColor(VisibleColor(color));
|
||||
colorTable->item(itemRow, 1)->setBackground(color);
|
||||
colorTable->item(itemRow, 1)->setForeground(VisibleColor(color));
|
||||
colorTable->item(itemRow, 1)->setText("rgb(" + r + ", " + g + ", " + b + ")");
|
||||
UpdateAll([&](Ember<T>& ember, bool isMain)
|
||||
{
|
||||
@ -325,6 +378,48 @@ template <typename T> void FractoriumEmberController<T>::HeightChanged(uint i)
|
||||
|
||||
void Fractorium::OnHeightChanged(int i) { m_Controller->HeightChanged(i); }
|
||||
|
||||
/// <summary>
|
||||
/// Change the width and height to the value specified in the preset, and scale relative to the original width.
|
||||
/// Called when the popup menu is clicked in the width spinner.
|
||||
/// Resets the rendering process.
|
||||
/// </summary>
|
||||
/// <param name="b">Ignored</param>
|
||||
void Fractorium::PresetWidthActionTriggered(bool b)
|
||||
{
|
||||
const auto act = qobject_cast<QAction*>(sender());
|
||||
|
||||
if (act)
|
||||
{
|
||||
auto it = m_HeightPresets.find(act->text());
|
||||
|
||||
if (it != m_HeightPresets.end())
|
||||
{
|
||||
SetWidthWithAspect(it->second.first, it->second.second);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Change the width and height to the value specified in the preset, and scale relative to the original height.
|
||||
/// Called when the popup menu is clicked in the height spinner.
|
||||
/// Resets the rendering process.
|
||||
/// </summary>
|
||||
/// <param name="b">Ignored</param>
|
||||
void Fractorium::PresetHeightActionTriggered(bool b)
|
||||
{
|
||||
const auto act = qobject_cast<QAction*>(sender());
|
||||
|
||||
if (act)
|
||||
{
|
||||
auto it = m_HeightPresets.find(act->text());
|
||||
|
||||
if (it != m_HeightPresets.end())
|
||||
{
|
||||
SetHeightWithAspect(it->second.first, it->second.second);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Set the width and height of the ember in pixels to the passed in values.
|
||||
/// Called when either the width or height spinners are double clicked.
|
||||
@ -822,7 +917,7 @@ void FractoriumEmberController<T>::FillParamTablesAndPalette()
|
||||
m_Fractorium->m_HighlightSpin->SetValueStealth(m_Ember.m_HighlightPower);
|
||||
m_Fractorium->m_K2Spin->SetValueStealth(m_Ember.m_K2);
|
||||
m_Fractorium->m_ColorDialog->setCurrentColor(QColor(m_Ember.m_Background.r * 255, m_Ember.m_Background.g * 255, m_Ember.m_Background.b * 255));
|
||||
m_Fractorium->ui.ColorTable->item(m_Fractorium->m_BgRow, 1)->setBackgroundColor(m_Fractorium->m_ColorDialog->currentColor());
|
||||
m_Fractorium->ui.ColorTable->item(m_Fractorium->m_BgRow, 1)->setBackground(m_Fractorium->m_ColorDialog->currentColor());
|
||||
BackgroundChanged(m_Fractorium->m_ColorDialog->currentColor());
|
||||
m_Fractorium->m_PaletteModeCombo->SetCurrentIndexStealth(static_cast<int>(m_Ember.m_PaletteMode));
|
||||
m_Fractorium->m_WidthSpin->SetValueStealth(m_Ember.m_FinalRasW);//Geometry.
|
||||
@ -897,10 +992,10 @@ void FractoriumEmberController<T>::ParamsToEmberPrivate(Ember<U>& ember, bool im
|
||||
ember.m_TemporalFilterWidth = m_Fractorium->m_TemporalFilterWidthSpin->value();
|
||||
ember.m_TemporalFilterType = static_cast<eTemporalFilterType>(m_Fractorium->m_TemporalFilterTypeCombo->currentIndex());
|
||||
ember.m_TemporalFilterExp = m_Fractorium->m_TemporalFilterExpSpin->value();
|
||||
auto const color = m_Fractorium->ui.ColorTable->item(5, 1)->backgroundColor();
|
||||
ember.m_Background.r = color.red() / 255.0;
|
||||
ember.m_Background.g = color.green() / 255.0;
|
||||
ember.m_Background.b = color.blue() / 255.0;
|
||||
const auto color = m_Fractorium->ui.ColorTable->item(5, 1)->background();
|
||||
ember.m_Background.r = color.color().red() / 255.0;
|
||||
ember.m_Background.g = color.color().green() / 255.0;
|
||||
ember.m_Background.b = color.color().blue() / 255.0;
|
||||
ember.m_PaletteMode = static_cast<ePaletteMode>(m_Fractorium->m_PaletteModeCombo->currentIndex());
|
||||
ember.m_FinalRasW = m_Fractorium->m_WidthSpin->value();//Geometry.
|
||||
ember.m_FinalRasH = m_Fractorium->m_HeightSpin->value();
|
||||
|
@ -39,7 +39,6 @@
|
||||
#include <QComboBox>
|
||||
#include <QConicalGradient>
|
||||
#include <QDebug>
|
||||
#include <QDesktopWidget>
|
||||
#include <QDial>
|
||||
#include <QDoubleSpinBox>
|
||||
#include <QEvent>
|
||||
@ -71,7 +70,8 @@
|
||||
#include <QModelIndex>
|
||||
#include <QMouseEvent>
|
||||
#include <QOpenGLFunctions>
|
||||
#include <QOpenGLWidget>
|
||||
#include <QtOpenGLWidgets/QOpenGLWidget>
|
||||
#include <QOpenGLShaderProgram>
|
||||
#include <QPainter>
|
||||
#include <QPainterPath>
|
||||
#include <QPaintEvent>
|
||||
|
@ -145,7 +145,7 @@ void FractoriumEmberControllerBase::SaveCurrentRender(const QString& filename, c
|
||||
|
||||
if (suffix.endsWith("bmp", Qt::CaseInsensitive) || suffix.endsWith("jpg", Qt::CaseInsensitive))
|
||||
{
|
||||
vector<byte> rgb8Image(size * 3);
|
||||
vector<unsigned char> rgb8Image(size * 3);
|
||||
Rgba32ToRgb8(data, rgb8Image.data(), width, height);
|
||||
|
||||
if (suffix.endsWith("bmp", Qt::CaseInsensitive))
|
||||
@ -157,7 +157,7 @@ void FractoriumEmberControllerBase::SaveCurrentRender(const QString& filename, c
|
||||
{
|
||||
if (!png16Bit)
|
||||
{
|
||||
vector<byte> rgba8Image(size * 4);
|
||||
vector<unsigned char> rgba8Image(size * 4);
|
||||
Rgba32ToRgba8(data, rgba8Image.data(), width, height, transparency);
|
||||
ret = WritePng(s.c_str(), rgba8Image.data(), width, height, 1, true, comments, id, url, nick);
|
||||
}
|
||||
@ -165,7 +165,7 @@ void FractoriumEmberControllerBase::SaveCurrentRender(const QString& filename, c
|
||||
{
|
||||
vector<glm::uint16> rgba16Image(size * 4);
|
||||
Rgba32ToRgba16(data, rgba16Image.data(), width, height, transparency);
|
||||
ret = WritePng(s.c_str(), (byte*)rgba16Image.data(), width, height, 2, true, comments, id, url, nick);
|
||||
ret = WritePng(s.c_str(), (unsigned char*)rgba16Image.data(), width, height, 2, true, comments, id, url, nick);
|
||||
}
|
||||
}
|
||||
else if (suffix.endsWith("exr", Qt::CaseInsensitive))
|
||||
@ -432,7 +432,8 @@ bool FractoriumEmberController<T>::Render()
|
||||
const auto stats = m_Renderer->Stats();
|
||||
auto iters = ToString<qulonglong>(stats.m_Iters);
|
||||
auto scaledQuality = ToString(static_cast<qulonglong>(m_Renderer->ScaledQuality()));
|
||||
auto renderTime = m_RenderElapsedTimer.Format(m_RenderElapsedTimer.Toc());
|
||||
//auto renderTime = m_RenderElapsedTimer.Format(m_RenderElapsedTimer.Toc());
|
||||
auto renderTime = m_RenderElapsedTimer.Format(stats.m_RenderMs);
|
||||
m_Fractorium->m_ProgressBar->setValue(100);
|
||||
|
||||
//Only certain stats can be reported with OpenCL.
|
||||
|
@ -706,11 +706,11 @@ void FractoriumEmberController<T>::UpdateXformName(int index)
|
||||
m_Fractorium->ui.CurrentXformCombo->setItemText(index, name);
|
||||
const auto view = m_Fractorium->ui.CurrentXformCombo->view();
|
||||
const auto fontMetrics1 = view->fontMetrics();
|
||||
const auto ww = fontMetrics1.width("WW") * 3;
|
||||
const auto ww = fontMetrics1.horizontalAdvance("WW") * 3;
|
||||
auto textWidth = m_Fractorium->ui.CurrentXformCombo->width();
|
||||
|
||||
for (int i = 0; i < m_Fractorium->ui.CurrentXformCombo->count(); ++i)
|
||||
textWidth = std::max(fontMetrics1.width(m_Fractorium->ui.CurrentXformCombo->itemText(i)) + ww, textWidth);
|
||||
textWidth = std::max(fontMetrics1.horizontalAdvance(m_Fractorium->ui.CurrentXformCombo->itemText(i)) + ww, textWidth);
|
||||
|
||||
view->setMinimumWidth(textWidth);
|
||||
view->setMaximumWidth(textWidth);
|
||||
|
@ -161,7 +161,7 @@ void Fractorium::InitXformsAffineUI()
|
||||
/// Set the scale used for drawing the affines to a default value.
|
||||
/// </summary>
|
||||
template <typename T>
|
||||
void FractoriumEmberController<T>::InitLockedScale()
|
||||
void FractoriumEmberController<T>::InitLockedScale() noexcept
|
||||
{
|
||||
m_LockedScale = (T)std::min<size_t>(m_Ember.m_FinalRasW, m_Ember.m_FinalRasH) / 4.0;
|
||||
m_LockedX = m_Ember.m_CenterX;
|
||||
@ -187,7 +187,7 @@ void FractoriumEmberController<T>::ChangeLockedScale(T value)
|
||||
/// </summary>
|
||||
/// <returns>The scale value</returns>
|
||||
template <typename T>
|
||||
double FractoriumEmberController<T>::AffineScaleCurrentToLocked()
|
||||
double FractoriumEmberController<T>::AffineScaleCurrentToLocked() noexcept
|
||||
{
|
||||
return LockedScale() / m_Ember.m_PixelsPerUnit;
|
||||
}
|
||||
@ -197,7 +197,7 @@ double FractoriumEmberController<T>::AffineScaleCurrentToLocked()
|
||||
/// </summary>
|
||||
/// <returns>The scale value</returns>
|
||||
template <typename T>
|
||||
double FractoriumEmberController<T>::AffineScaleLockedToCurrent()
|
||||
double FractoriumEmberController<T>::AffineScaleLockedToCurrent() noexcept
|
||||
{
|
||||
return m_Ember.m_PixelsPerUnit / LockedScale();
|
||||
}
|
||||
|
@ -74,7 +74,7 @@ void FractoriumEmberController<T>::XformColorIndexChanged(double d, bool updateR
|
||||
}
|
||||
|
||||
if (updateGUI)
|
||||
m_Fractorium->ui.XformColorIndexTable->item(0, 0)->setBackgroundColor(ColorIndexToQColor(d));//Grab the current color from the index and assign it to the first cell of the first table.
|
||||
m_Fractorium->ui.XformColorIndexTable->item(0, 0)->setBackground(ColorIndexToQColor(d));//Grab the current color from the index and assign it to the first cell of the first table.
|
||||
}
|
||||
|
||||
void Fractorium::OnXformColorIndexChanged(double d) { OnXformColorIndexChanged(d, true, false, true, eXformUpdate::UPDATE_SELECTED, std::numeric_limits<size_t>::max()); }
|
||||
|
@ -268,8 +268,8 @@ void FractoriumEmberController<T>::VariationSpinBoxValueChanged(double d)//Would
|
||||
if (xformVar)
|
||||
xform->DeleteVariationById(var->VariationId());
|
||||
|
||||
widgetItem->setTextColor(0, m_Fractorium->m_VariationTreeColorZero);
|
||||
widgetItem->setBackgroundColor(0, m_Fractorium->m_VariationTreeBgColorZero);
|
||||
widgetItem->setForeground(0, m_Fractorium->m_VariationTreeColorZero);
|
||||
widgetItem->setBackground(0, m_Fractorium->m_VariationTreeBgColorZero);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -284,8 +284,8 @@ void FractoriumEmberController<T>::VariationSpinBoxValueChanged(double d)//Would
|
||||
const auto newVar = var->Copy();//Create a new one with default values.
|
||||
newVar->m_Weight = d;
|
||||
xform->AddVariation(newVar);
|
||||
widgetItem->setTextColor(0, m_Fractorium->m_VariationTreeColorNonZero);
|
||||
widgetItem->setBackgroundColor(0, m_Fractorium->m_VariationTreeBgColorNonZero);
|
||||
widgetItem->setForeground(0, m_Fractorium->m_VariationTreeColorNonZero);
|
||||
widgetItem->setBackground(0, m_Fractorium->m_VariationTreeBgColorNonZero);
|
||||
|
||||
//If they've added a new parametric variation, then grab the values currently in the spinners
|
||||
//for the child parameters and assign them to the newly added variation.
|
||||
@ -353,8 +353,8 @@ void FractoriumEmberController<T>::FillVariationTreeWithXform(Xform<T>* xform)
|
||||
item->setHidden(false);
|
||||
|
||||
spinBox->SetValueStealth(var ? var->m_Weight : 0);//If the variation was present, set the spin box to its weight, else zero.
|
||||
item->setTextColor(0, var ? m_Fractorium->m_VariationTreeColorNonZero : m_Fractorium->m_VariationTreeColorZero);
|
||||
item->setBackgroundColor(0, var ? m_Fractorium->m_VariationTreeBgColorNonZero : m_Fractorium->m_VariationTreeBgColorZero);
|
||||
item->setForeground(0, var ? m_Fractorium->m_VariationTreeColorNonZero : m_Fractorium->m_VariationTreeColorZero);
|
||||
item->setBackground(0, var ? m_Fractorium->m_VariationTreeBgColorNonZero : m_Fractorium->m_VariationTreeBgColorZero);
|
||||
|
||||
for (int j = 0; j < item->childCount(); j++)//Iterate through all of the children, which will be the params if it was a parametric variation.
|
||||
{
|
||||
|
@ -375,12 +375,12 @@ void GLWidget::SetMainWindow(Fractorium* f) { m_Fractorium = f; }
|
||||
/// Getters for OpenGL state.
|
||||
/// </summary>
|
||||
|
||||
bool GLWidget::Init() { return m_Init; }
|
||||
bool GLWidget::Drawing() { return m_Drawing; }
|
||||
GLint GLWidget::MaxTexSize() { return m_MaxTexSize; }
|
||||
GLuint GLWidget::OutputTexID() { return m_OutputTexID; }
|
||||
GLint GLWidget::TexWidth() { return m_TexWidth; }
|
||||
GLint GLWidget::TexHeight() { return m_TexHeight; }
|
||||
bool GLWidget::Init() const { return m_Init; }
|
||||
bool GLWidget::Drawing() const { return m_Drawing; }
|
||||
GLint GLWidget::MaxTexSize() const { return m_MaxTexSize; }
|
||||
GLuint GLWidget::OutputTexID() const { return m_OutputTexID; }
|
||||
GLint GLWidget::TexWidth() const { return m_TexWidth; }
|
||||
GLint GLWidget::TexHeight() const { return m_TexHeight; }
|
||||
|
||||
/// <summary>
|
||||
/// Initialize OpenGL, called once at startup after the main window constructor finishes.
|
||||
@ -803,7 +803,7 @@ void GLWidget::keyPressEvent(QKeyEvent* e)
|
||||
/// <param name="e">The event</param>
|
||||
bool GLEmberControllerBase::KeyRelease_(QKeyEvent* e)
|
||||
{
|
||||
if (e->key() == Qt::Key_Control)
|
||||
if (e != nullptr && e->key() == Qt::Key_Control)
|
||||
{
|
||||
ClearControl();
|
||||
return true;
|
||||
@ -817,12 +817,15 @@ bool GLEmberControllerBase::KeyRelease_(QKeyEvent* e)
|
||||
/// </summary>
|
||||
/// <param name="e">The event</param>
|
||||
void GLWidget::keyReleaseEvent(QKeyEvent* e)
|
||||
{
|
||||
if (e)
|
||||
{
|
||||
if (!GLController() || !GLController()->KeyRelease_(e))
|
||||
QOpenGLWidget::keyReleaseEvent(e);
|
||||
|
||||
update();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Determine if the mouse click was over an affine circle
|
||||
@ -834,7 +837,12 @@ void GLWidget::keyReleaseEvent(QKeyEvent* e)
|
||||
template <typename T>
|
||||
void GLEmberController<T>::MousePress(QMouseEvent* e)
|
||||
{
|
||||
v3T mouseFlipped(e->x() * m_GL->devicePixelRatioF(), m_Viewport[3] - e->y() * m_GL->devicePixelRatioF(), 0);//Must flip y because in OpenGL, 0,0 is bottom left, but in windows, it's top left.
|
||||
if (!e)
|
||||
return;
|
||||
|
||||
const auto x = e->position().x();
|
||||
const auto y = e->position().y();
|
||||
v3T const mouseFlipped(x * m_GL->devicePixelRatioF(), m_Viewport[3] - y * m_GL->devicePixelRatioF(), 0);//Must flip y because in OpenGL, 0,0 is bottom left, but in windows, it's top left.
|
||||
const auto ember = m_FractoriumEmberController->CurrentEmber();
|
||||
const auto renderer = m_FractoriumEmberController->Renderer();
|
||||
|
||||
@ -842,7 +850,7 @@ void GLEmberController<T>::MousePress(QMouseEvent* e)
|
||||
if (!renderer)
|
||||
return;
|
||||
|
||||
m_MouseDownPos = glm::ivec2(e->x() * m_GL->devicePixelRatioF(), e->y() * m_GL->devicePixelRatioF());//Capture the raster coordinates of where the mouse was clicked.
|
||||
m_MouseDownPos = glm::ivec2(x * m_GL->devicePixelRatioF(), y * m_GL->devicePixelRatioF());//Capture the raster coordinates of where the mouse was clicked.
|
||||
m_MouseWorldPos = WindowToWorld(mouseFlipped, false);//Capture the world cartesian coordinates of where the mouse is.
|
||||
m_BoundsDown.w = renderer->LowerLeftX(false);//Need to capture these because they'll be changing if scaling.
|
||||
m_BoundsDown.x = renderer->LowerLeftY(false);
|
||||
@ -926,6 +934,8 @@ void GLEmberController<T>::MousePress(QMouseEvent* e)
|
||||
/// </summary>
|
||||
/// <param name="e">The event</param>
|
||||
void GLWidget::mousePressEvent(QMouseEvent* e)
|
||||
{
|
||||
if (e)
|
||||
{
|
||||
setFocus();//Must do this so that this window gets keyboard events.
|
||||
|
||||
@ -934,6 +944,7 @@ void GLWidget::mousePressEvent(QMouseEvent* e)
|
||||
|
||||
QOpenGLWidget::mousePressEvent(e);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Reset the selection and dragging state, but re-calculate the
|
||||
@ -943,7 +954,11 @@ void GLWidget::mousePressEvent(QMouseEvent* e)
|
||||
template <typename T>
|
||||
void GLEmberController<T>::MouseRelease(QMouseEvent* e)
|
||||
{
|
||||
v3T mouseFlipped(e->x() * m_GL->devicePixelRatioF(), m_Viewport[3] - e->y() * m_GL->devicePixelRatioF(), 0);//Must flip y because in OpenGL, 0,0 is bottom left, but in windows, it's top left.
|
||||
if (e)
|
||||
{
|
||||
const auto x = e->position().x();
|
||||
const auto y = e->position().y();
|
||||
v3T const mouseFlipped(x * m_GL->devicePixelRatioF(), m_Viewport[3] - y * m_GL->devicePixelRatioF(), 0);//Must flip y because in OpenGL, 0,0 is bottom left, but in windows, it's top left.
|
||||
m_MouseWorldPos = WindowToWorld(mouseFlipped, false);
|
||||
|
||||
if (m_DragState == eDragState::DragDragging && (e->button() & Qt::LeftButton))
|
||||
@ -956,6 +971,7 @@ void GLEmberController<T>::MouseRelease(QMouseEvent* e)
|
||||
m_DragModifier = 0;
|
||||
m_GL->update();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Call controller MouseRelease().
|
||||
@ -979,9 +995,11 @@ void GLWidget::mouseReleaseEvent(QMouseEvent* e)
|
||||
template <typename T>
|
||||
void GLEmberController<T>::MouseMove(QMouseEvent* e)
|
||||
{
|
||||
bool draw = true;
|
||||
const glm::ivec2 mouse(e->x() * m_GL->devicePixelRatioF(), e->y() * m_GL->devicePixelRatioF());
|
||||
const v3T mouseFlipped(e->x() * m_GL->devicePixelRatioF(), m_Viewport[3] - e->y() * m_GL->devicePixelRatioF(), 0);//Must flip y because in OpenGL, 0,0 is bottom left, but in windows, it's top left.
|
||||
const auto draw = true;
|
||||
const auto x = e->position().x();
|
||||
const auto y = e->position().y();
|
||||
const glm::ivec2 mouse(x * m_GL->devicePixelRatioF(), y * m_GL->devicePixelRatioF());
|
||||
const v3T mouseFlipped(x * m_GL->devicePixelRatioF(), m_Viewport[3] - y * m_GL->devicePixelRatioF(), 0);//Must flip y because in OpenGL, 0,0 is bottom left, but in windows, it's top left.
|
||||
const auto ember = m_FractoriumEmberController->CurrentEmber();
|
||||
|
||||
//First check to see if the mouse actually moved.
|
||||
@ -993,7 +1011,7 @@ void GLEmberController<T>::MouseMove(QMouseEvent* e)
|
||||
|
||||
//Update status bar on main window, regardless of whether anything is being dragged.
|
||||
if (m_Fractorium->m_Controller->RenderTimerRunning())
|
||||
m_Fractorium->SetCoordinateStatus(e->x() * m_GL->devicePixelRatioF(), e->y() * m_GL->devicePixelRatioF(), m_MouseWorldPos.x, m_MouseWorldPos.y);
|
||||
m_Fractorium->SetCoordinateStatus(x * m_GL->devicePixelRatioF(), y * m_GL->devicePixelRatioF(), m_MouseWorldPos.x, m_MouseWorldPos.y);
|
||||
|
||||
if (m_SelectedXform && m_DragState == eDragState::DragDragging)//Dragging and affine.
|
||||
{
|
||||
@ -1017,7 +1035,7 @@ void GLEmberController<T>::MouseMove(QMouseEvent* e)
|
||||
const QPointF br(m_MouseWorldPos.x, m_MouseWorldPos.y);
|
||||
const QRectF qrf(tl, br);
|
||||
const T scale = m_FractoriumEmberController->AffineScaleCurrentToLocked();
|
||||
int i = 0;
|
||||
const auto i = 0;
|
||||
m_FractoriumEmberController->UpdateXform([&](Xform<T>* xform, size_t xfindex, size_t selIndex)
|
||||
{
|
||||
if (m_Fractorium->DrawAllPre() || xform == m_SelectedXform)//Draw all pre affine if specified.
|
||||
@ -1154,12 +1172,15 @@ void GLEmberController<T>::Wheel(QWheelEvent* e)
|
||||
/// </summary>
|
||||
/// <param name="e">The event</param>
|
||||
void GLWidget::wheelEvent(QWheelEvent* e)
|
||||
{
|
||||
if (e)
|
||||
{
|
||||
if (auto controller = GLController())
|
||||
{
|
||||
controller->Wheel(e);
|
||||
e->accept();//Prevents it from being sent to the main scroll bars. Scrolling should only affect the scale parameter and affine display zooming.
|
||||
}
|
||||
}
|
||||
|
||||
//Do not call QOpenGLWidget::wheelEvent(e) because this should only affect the scale and not the position of the scroll bars.
|
||||
}
|
||||
@ -1235,10 +1256,10 @@ bool GLWidget::Allocate(bool force)
|
||||
{
|
||||
bool alloc = false;
|
||||
//auto scaledW = std::ceil(width() * devicePixelRatioF());
|
||||
auto w = m_Fractorium->m_Controller->FinalRasW();
|
||||
auto h = m_Fractorium->m_Controller->FinalRasH();
|
||||
bool doResize = force || m_TexWidth != w || m_TexHeight != h;
|
||||
bool doIt = doResize || m_OutputTexID == 0;
|
||||
const auto w = m_Fractorium->m_Controller->FinalRasW();
|
||||
const auto h = m_Fractorium->m_Controller->FinalRasH();
|
||||
bool const doResize = force || m_TexWidth != w || m_TexHeight != h;
|
||||
bool const doIt = doResize || m_OutputTexID == 0;
|
||||
#ifndef USE_GLSL
|
||||
|
||||
if (doIt)
|
||||
@ -1335,7 +1356,7 @@ void GLWidget::SetViewport()
|
||||
{
|
||||
if (m_Init && (m_ViewWidth != m_TexWidth || m_ViewHeight != m_TexHeight))
|
||||
{
|
||||
this->glViewport(0, 0, static_cast<GLint>(m_TexWidth), static_cast<GLint>(m_TexHeight));
|
||||
this->glViewport(0, 0, GLint{ m_TexWidth }, GLint{ m_TexHeight });
|
||||
#ifdef USE_GLSL
|
||||
m_Viewport = glm::ivec4(0, 0, m_TexWidth, m_TexHeight);
|
||||
#endif
|
||||
|
@ -51,22 +51,22 @@ public:
|
||||
void InitGL();
|
||||
void DrawQuad();
|
||||
void SetMainWindow(Fractorium* f);
|
||||
bool Init();
|
||||
bool Drawing();
|
||||
GLint MaxTexSize();
|
||||
GLuint OutputTexID();
|
||||
GLint TexWidth();
|
||||
GLint TexHeight();
|
||||
bool Init() const;
|
||||
bool Drawing() const;
|
||||
GLint MaxTexSize() const;
|
||||
GLuint OutputTexID() const;
|
||||
GLint TexWidth() const;
|
||||
GLint TexHeight() const;
|
||||
|
||||
protected:
|
||||
virtual void initializeGL() override;
|
||||
virtual void paintGL() override;
|
||||
virtual void keyPressEvent(QKeyEvent* e) override;
|
||||
virtual void keyReleaseEvent(QKeyEvent* e) override;
|
||||
virtual void mousePressEvent(QMouseEvent* e) override;
|
||||
virtual void mouseReleaseEvent(QMouseEvent* e) override;
|
||||
virtual void mouseMoveEvent(QMouseEvent* e) override;
|
||||
virtual void wheelEvent(QWheelEvent* e) override;
|
||||
void initializeGL() override;
|
||||
void paintGL() override;
|
||||
void keyPressEvent(QKeyEvent* e) override;
|
||||
void keyReleaseEvent(QKeyEvent* e) override;
|
||||
void mousePressEvent(QMouseEvent* e) override;
|
||||
void mouseReleaseEvent(QMouseEvent* e) override;
|
||||
void mouseMoveEvent(QMouseEvent* e) override;
|
||||
void wheelEvent(QWheelEvent* e) override;
|
||||
|
||||
void DrawPointOrLine(const QVector4D& col, const GLfloat* vertices, int size, int drawType, bool dashed = false, GLfloat pointSize = 1.0f);
|
||||
void DrawPointOrLine(const QVector4D& col, const std::vector<float>& vertices, int drawType, bool dashed = false, GLfloat pointSize = 1.0f);
|
||||
|
@ -17,7 +17,7 @@ void LibraryTreeWidget::SetMainWindow(Fractorium* f)
|
||||
/// <param name="de">Pointer to the QDropEvent object</param>
|
||||
void LibraryTreeWidget::dropEvent(QDropEvent* de)
|
||||
{
|
||||
const auto droppedIndex = indexAt(de->pos());
|
||||
const auto droppedIndex = indexAt(de->position().toPoint());
|
||||
const auto items = selectionModel()->selectedRows();
|
||||
|
||||
if (!droppedIndex.isValid())//Don't process drop because it's outside of the droppable area.
|
||||
@ -113,7 +113,7 @@ void InfoTreeWidget::SetMainWindow(Fractorium* f)
|
||||
/// <param name="dme">Pointer to the drag move event</param>
|
||||
void InfoTreeWidget::dragMoveEvent(QDragMoveEvent* dme)
|
||||
{
|
||||
QModelIndex index = indexAt(dme->pos());
|
||||
QModelIndex const index = indexAt(dme->position().toPoint());
|
||||
|
||||
if (!index.isValid())//Don't process drop because it's outside of the droppable area.
|
||||
{
|
||||
@ -125,26 +125,26 @@ void InfoTreeWidget::dragMoveEvent(QDragMoveEvent* dme)
|
||||
|
||||
if (dragItems.size())
|
||||
{
|
||||
auto drag0 = dragItems[0];
|
||||
|
||||
if (auto drag0 = dragItems[0])
|
||||
{
|
||||
if (auto itemat = itemFromIndex(index))
|
||||
{
|
||||
auto dragpre = drag0->text(0).startsWith("pre_", Qt::CaseInsensitive);
|
||||
auto droppre = itemat->text(0).startsWith("pre_", Qt::CaseInsensitive);
|
||||
auto dragpost = drag0->text(0).startsWith("post_", Qt::CaseInsensitive);
|
||||
auto droppost = itemat->text(0).startsWith("post_", Qt::CaseInsensitive);
|
||||
const auto dragpre = drag0->text(0).startsWith("pre_", Qt::CaseInsensitive);
|
||||
const auto droppre = itemat->text(0).startsWith("pre_", Qt::CaseInsensitive);
|
||||
const auto dragpost = drag0->text(0).startsWith("post_", Qt::CaseInsensitive);
|
||||
const auto droppost = itemat->text(0).startsWith("post_", Qt::CaseInsensitive);
|
||||
|
||||
if (auto par = itemat->parent())
|
||||
if (const auto par = itemat->parent())
|
||||
{
|
||||
if (drag0->parent() == par &&
|
||||
(par->text(0).startsWith("xform ", Qt::CaseInsensitive) ||
|
||||
par->text(0).startsWith("final", Qt::CaseInsensitive)))
|
||||
{
|
||||
if (auto vitemat = dynamic_cast<VariationTreeWidgetItem*>(itemat))
|
||||
if (auto vitemat = dynamic_cast<const VariationTreeWidgetItem*>(itemat))
|
||||
{
|
||||
bool dopre = dragpre && droppre;
|
||||
bool dopost = dragpost && droppost;
|
||||
bool doreg = !dragpre && !droppre && !dragpost && !droppost;
|
||||
bool const dopre = dragpre && droppre;
|
||||
bool const dopost = dragpost && droppost;
|
||||
bool const doreg = !dragpre && !droppre && !dragpost && !droppost;
|
||||
|
||||
if (dopre || doreg || dopost)
|
||||
{
|
||||
@ -156,6 +156,7 @@ void InfoTreeWidget::dragMoveEvent(QDragMoveEvent* dme)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dme->ignore();
|
||||
}
|
||||
@ -168,7 +169,7 @@ void InfoTreeWidget::dragMoveEvent(QDragMoveEvent* dme)
|
||||
/// <param name="de">Pointer to the QDropEvent object</param>
|
||||
void InfoTreeWidget::dropEvent(QDropEvent* de)
|
||||
{
|
||||
QModelIndex droppedIndex = indexAt(de->pos());
|
||||
QModelIndex const droppedIndex = indexAt(de->position().toPoint());
|
||||
auto items = selectionModel()->selectedRows();
|
||||
|
||||
if (!droppedIndex.isValid())//Don't process drop because it's outside of the droppable area.
|
||||
@ -183,13 +184,14 @@ void InfoTreeWidget::dropEvent(QDropEvent* de)
|
||||
if (dragItems.size())
|
||||
{
|
||||
auto drag0 = dragItems[0];
|
||||
auto itemat = itemFromIndex(droppedIndex);
|
||||
|
||||
if (auto itemat = itemFromIndex(droppedIndex))
|
||||
{
|
||||
if (auto par = itemat->parent())
|
||||
{
|
||||
if (auto vdropitem = dynamic_cast<VariationTreeWidgetItem*>(itemat))
|
||||
if (auto vdropitem = dynamic_cast<const VariationTreeWidgetItem*>(itemat))
|
||||
{
|
||||
if (auto vdragitem = dynamic_cast<VariationTreeWidgetItem*>(drag0))
|
||||
if (auto vdragitem = dynamic_cast<const VariationTreeWidgetItem*>(drag0))
|
||||
{
|
||||
QTreeWidget::dropEvent(de);//This internally changes the order of the items.
|
||||
m_Fractorium->ReorderVariations(par);
|
||||
@ -198,6 +200,7 @@ void InfoTreeWidget::dropEvent(QDropEvent* de)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
de->ignore();
|
||||
}
|
||||
|
@ -26,7 +26,6 @@ void ExportUserData()
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
int rv = -1;
|
||||
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
|
||||
QApplication a(argc, argv);
|
||||
#ifdef TEST_CL
|
||||
QMessageBox::critical(QApplication::desktop(), "Error", "Fractorium cannot be run in test mode, undefine TEST_CL first.");
|
||||
|
@ -24,7 +24,7 @@ class FractoriumOptionsDialog : public QDialog
|
||||
friend Fractorium;
|
||||
|
||||
public:
|
||||
FractoriumOptionsDialog(QWidget* p = nullptr, Qt::WindowFlags f = 0);
|
||||
FractoriumOptionsDialog(QWidget* p = nullptr, Qt::WindowFlags f = Qt::WindowType::Widget);
|
||||
bool EarlyClip();
|
||||
bool YAxisUp();
|
||||
bool Transparency();
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user