More Linux work. This has Render, Animate and Genome building and running on Linux.

This commit is contained in:
mfeemster 2014-12-05 18:30:46 -08:00
parent 4777ab52bc
commit a15f6d6b32
44 changed files with 2614 additions and 1021 deletions

View File

@ -8,18 +8,19 @@
<Option virtualFolders="Headers/Filters/;/Headers/Xml/;" />
<Build>
<Target title="Debug x64">
<Option platforms="Unix;" />
<Option output="Ember" prefix_auto="1" extension_auto="1" />
<Option type="3" />
<Option compiler="gcc" />
<Option createDefFile="1" />
<Option createStaticLib="1" />
<Compiler>
<Add option="-g" />
<Add option="-D_M_X64" />
<Add option="-D_USRDLL" />
<Add option="-D_DEBUG" />
<Add option="-D_CONSOLE" />
<Add option="-DBUILDING_EMBER" />
</Compiler>
<Linker>
<Add option="-s" />
</Linker>
</Target>
<Target title="ReleaseNvidia Win32">
<Option output="Ember" prefix_auto="1" extension_auto="1" />
@ -50,9 +51,12 @@
<Option createDefFile="1" />
<Option createStaticLib="1" />
<Compiler>
<Add option="-fomit-frame-pointer" />
<Add option="-O2" />
<Add option="-D_M_X64" />
<Add option="-D_USRDLL" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add option="-DBUILDING_EMBER" />
</Compiler>
<Linker>
<Add option="-s" />
@ -75,6 +79,7 @@
</Build>
<Compiler>
<Add option="-march=k8" />
<Add option="-fomit-frame-pointer" />
<Add option="-Wnon-virtual-dtor" />
<Add option="-Wshadow" />
<Add option="-Winit-self" />
@ -89,12 +94,10 @@
<Add option="-pedantic" />
<Add option="-Wzero-as-null-pointer-constant" />
<Add option="-std=c++11" />
<Add option="-Wfatal-errors" />
<Add option="-Wall" />
<Add option="-fpermissive" />
<Add option="-fPIC" />
<Add option="-D_M_X64" />
<Add option="-D_USRDLL" />
<Add option="-DBUILDING_EMBER" />
<Add directory="/usr/include/libxml2" />
</Compiler>
<Linker>

View File

@ -1,9 +1,9 @@
# depslib dependency file v1.0
1413384022 source:/home/heretic/Dev/fractorium/Source/Ember/Affine2D.cpp
1417821052 source:/home/heretic/Dev/fractorium/Source/Ember/Affine2D.cpp
"EmberPch.h"
"Affine2D.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/EmberPch.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/EmberPch.h
<SDKDDKVer.h>
<windows.h>
<libgen.h>
@ -160,22 +160,22 @@
<libxml/parser.h>
<libxml/encoding.h>
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Affine2D.h
1417810095 /home/heretic/Dev/fractorium/Source/Ember/Affine2D.h
"Utils.h"
1413385950 /home/heretic/Dev/fractorium/Source/Ember/Utils.h
1417776440 /home/heretic/Dev/fractorium/Source/Ember/Utils.h
"Isaac.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Isaac.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Isaac.h
"EmberDefines.h"
1413385406 /home/heretic/Dev/fractorium/Source/Ember/EmberDefines.h
1417811373 /home/heretic/Dev/fractorium/Source/Ember/EmberDefines.h
"EmberPch.h"
1413384022 source:/home/heretic/Dev/fractorium/Source/Ember/DllMain.cpp
1417760119 source:/home/heretic/Dev/fractorium/Source/Ember/DllMain.cpp
"EmberPch.h"
1413384022 source:/home/heretic/Dev/fractorium/Source/Ember/Ember.cpp
1417813888 source:/home/heretic/Dev/fractorium/Source/Ember/Ember.cpp
"EmberPch.h"
"EmberDefines.h"
"Isaac.h"
@ -205,17 +205,17 @@
"Timing.h"
"SheepTools.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Ember.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Ember.h
"Xform.h"
"PaletteList.h"
"SpatialFilter.h"
"TemporalFilter.h"
1413384023 /home/heretic/Dev/fractorium/Source/Ember/Xform.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Xform.h
"VariationList.h"
"Interpolate.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/VariationList.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/VariationList.h
"Variations01.h"
"Variations02.h"
"Variations03.h"
@ -223,70 +223,70 @@
"Variations05.h"
"VariationsDC.h"
1413384023 /home/heretic/Dev/fractorium/Source/Ember/Variations01.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations01.h
"Variation.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Variation.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variation.h
"Point.h"
"Isaac.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Point.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Point.h
"EmberDefines.h"
"Affine2D.h"
"Timing.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Timing.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Timing.h
"EmberDefines.h"
1413384023 /home/heretic/Dev/fractorium/Source/Ember/Variations02.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations02.h
"Variation.h"
1413384023 /home/heretic/Dev/fractorium/Source/Ember/Variations03.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations03.h
"Variation.h"
1413384023 /home/heretic/Dev/fractorium/Source/Ember/Variations04.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations04.h
"Variation.h"
1413384023 /home/heretic/Dev/fractorium/Source/Ember/Variations05.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations05.h
"Variation.h"
1413384023 /home/heretic/Dev/fractorium/Source/Ember/VariationsDC.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/VariationsDC.h
"Variation.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Interpolate.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Interpolate.h
"Ember.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/PaletteList.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/PaletteList.h
"Palette.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Palette.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Palette.h
"Utils.h"
"Isaac.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/SpatialFilter.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/SpatialFilter.h
"EmberDefines.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/TemporalFilter.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/TemporalFilter.h
"EmberDefines.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Iterator.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Iterator.h
"Ember.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/EmberToXml.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/EmberToXml.h
"Utils.h"
"PaletteList.h"
"VariationList.h"
"Ember.h"
1413385813 /home/heretic/Dev/fractorium/Source/Ember/XmlToEmber.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/XmlToEmber.h
"Utils.h"
"PaletteList.h"
"VariationList.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/DensityFilter.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/DensityFilter.h
"SpatialFilter.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/Renderer.h
1417810944 /home/heretic/Dev/fractorium/Source/Ember/Renderer.h
"RendererBase.h"
"Iterator.h"
"SpatialFilter.h"
@ -295,20 +295,28 @@
"CarToRas.h"
"EmberToXml.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/RendererBase.h
1417770762 /home/heretic/Dev/fractorium/Source/Ember/RendererBase.h
"Utils.h"
"Ember.h"
"DensityFilter.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/CarToRas.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/CarToRas.h
"Point.h"
1413384022 /home/heretic/Dev/fractorium/Source/Ember/SheepTools.h
1417760119 /home/heretic/Dev/fractorium/Source/Ember/SheepTools.h
"EmberDefines.h"
"Isaac.h"
"VariationList.h"
"Renderer.h"
1413384022 source:/home/heretic/Dev/fractorium/Source/Ember/EmberPch.cpp
1417760119 source:/home/heretic/Dev/fractorium/Source/Ember/EmberPch.cpp
"EmberPch.h"
1417813874 source:/home/heretic/Dev/fractorium/Source/Ember/Renderer.cpp
"EmberPch.h"
"Renderer.h"
1417760119 source:/home/heretic/Dev/fractorium/Source/Ember/RendererBase.cpp
"EmberPch.h"
"RendererBase.h"

View File

@ -1,14 +1,9 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_layout_file>
<ActiveTarget name="Release x64" />
<File name="../../Source/Ember/Ember.cpp" open="0" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/Ember.cpp" open="1" top="0" tabpos="15" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/Ember/VariationsDC.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="6270" topLine="202" />
<Cursor1 position="13691" topLine="374" />
</Cursor>
</File>
<File name="../../Source/Ember/Variations05.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
@ -16,24 +11,9 @@
<Cursor1 position="37378" topLine="1097" />
</Cursor>
</File>
<File name="../../Source/Ember/EmberToXml.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/SheepTools.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="20943" topLine="583" />
</Cursor>
</File>
<File name="../../Source/Ember/TemporalFilter.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="9058" topLine="269" />
</Cursor>
</File>
<File name="../../Source/Ember/Affine2D.h" open="0" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1969" topLine="12" />
</Cursor>
</File>
<File name="../../Source/Ember/VariationList.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="14159" topLine="419" />
<Cursor1 position="26633" topLine="913" />
</Cursor>
</File>
<File name="../../Source/Ember/Timing.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
@ -41,69 +21,49 @@
<Cursor1 position="1699" topLine="12" />
</Cursor>
</File>
<File name="../../Source/Ember/EmberDefines.h" open="1" top="1" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/Variations01.h" open="1" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="2838" topLine="47" />
<Cursor1 position="3674" topLine="128" />
</Cursor>
</File>
<File name="../../Source/Ember/DllMain.cpp" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/Iterator.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
<Cursor1 position="2509" topLine="39" />
</Cursor>
</File>
<File name="../../Source/Ember/Variations04.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/EmberPch.h" open="1" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="98407" topLine="3204" />
<Cursor1 position="314" topLine="0" />
</Cursor>
</File>
<File name="../../Source/Ember/XmlToEmber.h" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/SpatialFilter.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="16510" topLine="323" />
<Cursor1 position="22861" topLine="816" />
</Cursor>
</File>
<File name="../../Source/Ember/Interpolate.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/Variations03.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="18225" topLine="507" />
</Cursor>
</File>
<File name="../../Source/Ember/Palette.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="8808" topLine="105" />
</Cursor>
</File>
<File name="../../Source/Ember/SheepTools.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="26633" topLine="913" />
</Cursor>
</File>
<File name="../../Source/Ember/Affine2D.cpp" open="0" top="0" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/Ember/Utils.h" open="1" top="0" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="22496" topLine="746" />
</Cursor>
</File>
<File name="../../Source/Ember/Isaac.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="8062" topLine="258" />
<Cursor1 position="62259" topLine="1950" />
</Cursor>
</File>
<File name="../../Source/Ember/Ember.h" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="19820" topLine="664" />
<Cursor1 position="35507" topLine="1125" />
</Cursor>
</File>
<File name="../../Source/Ember/Variations01.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/TemporalFilter.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="136093" topLine="4660" />
<Cursor1 position="9058" topLine="269" />
</Cursor>
</File>
<File name="../../Source/Ember/Renderer.h" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/EmberToXml.h" open="1" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="16331" topLine="326" />
<Cursor1 position="20943" topLine="583" />
</Cursor>
</File>
<File name="../../Source/Ember/Renderer.h" open="1" top="0" tabpos="16" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="9387" topLine="165" />
</Cursor>
</File>
<File name="../../Source/Ember/Point.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
@ -113,27 +73,7 @@
</File>
<File name="../../Source/Ember/Xform.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="32608" topLine="1024" />
</Cursor>
</File>
<File name="../../Source/Ember/EmberPch.cpp" open="0" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/Ember/SpatialFilter.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="22861" topLine="816" />
</Cursor>
</File>
<File name="../../Source/Ember/CarToRas.h" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="2973" topLine="67" />
</Cursor>
</File>
<File name="../../Source/Ember/EmberPch.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="953" topLine="25" />
<Cursor1 position="38604" topLine="1219" />
</Cursor>
</File>
<File name="../../Source/Ember/PaletteList.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
@ -141,24 +81,74 @@
<Cursor1 position="1381" topLine="37" />
</Cursor>
</File>
<File name="../../Source/Ember/XmlToEmber.h" open="1" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="28302" topLine="621" />
</Cursor>
</File>
<File name="../../Source/Ember/Interpolate.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="18225" topLine="507" />
</Cursor>
</File>
<File name="../../Source/Ember/Variations04.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="98407" topLine="3204" />
</Cursor>
</File>
<File name="../../Source/Ember/Palette.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="8808" topLine="105" />
</Cursor>
</File>
<File name="../../Source/Ember/Affine2D.cpp" open="1" top="0" tabpos="14" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="10791" topLine="336" />
</Cursor>
</File>
<File name="../../Source/Ember/Variation.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="42788" topLine="1649" />
<Cursor1 position="46958" topLine="1599" />
</Cursor>
</File>
<File name="../../Source/Ember/Iterator.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/CarToRas.h" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="2509" topLine="39" />
<Cursor1 position="2973" topLine="67" />
</Cursor>
</File>
<File name="../../Source/Ember/Variations03.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/RendererBase.h" open="1" top="0" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="62259" topLine="1950" />
<Cursor1 position="6837" topLine="184" />
</Cursor>
</File>
<File name="../../Source/Ember/Renderer.cpp" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/Ember/VariationList.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="13576" topLine="347" />
<Cursor1 position="14159" topLine="419" />
</Cursor>
</File>
<File name="../../Source/Ember/Utils.h" open="1" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="24688" topLine="817" />
</Cursor>
</File>
<File name="../../Source/Ember/Renderer.cpp" open="1" top="0" tabpos="18" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="64477" topLine="1566" />
</Cursor>
</File>
<File name="../../Source/Ember/DllMain.cpp" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/Ember/VariationsDC.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="22857" topLine="672" />
</Cursor>
</File>
<File name="../../Source/Ember/EmberPch.cpp" open="0" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/Ember/Variations02.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
@ -166,4 +156,19 @@
<Cursor1 position="116327" topLine="3912" />
</Cursor>
</File>
<File name="../../Source/Ember/EmberDefines.h" open="1" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="2273" topLine="59" />
</Cursor>
</File>
<File name="../../Source/Ember/Affine2D.h" open="1" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="2877" topLine="92" />
</Cursor>
</File>
<File name="../../Source/Ember/Isaac.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="8062" topLine="258" />
</Cursor>
</File>
</CodeBlocks_layout_file>

View File

@ -8,162 +8,95 @@
<Build>
<Target title="Debug x64">
<Option output="EmberAnimate" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-g" />
<Add option="-D_M_X64" />
<Add option="-D_DEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86_64" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
</Target>
<Target title="ReleaseNvidia Win32">
<Option output="EmberAnimate" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
<Option use_console_runner="0" />
</Target>
<Target title="ReleaseNvidia x64">
<Option output="EmberAnimate" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
<Option use_console_runner="0" />
</Target>
<Target title="Release x64">
<Option output="EmberAnimate" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-O2" />
<Add option="-D_M_X64" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86_64" />
<Add directory="$(CUDA_PATH)lib/Linux" />
<Add option="-s" />
</Linker>
</Target>
<Target title="Release Win32">
<Option output="EmberAnimate" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
<Option use_console_runner="0" />
</Target>
<Target title="Debug Win32">
<Option output="EmberAnimate" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-D_DEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
<Option use_console_runner="0" />
</Target>
</Build>
<Compiler>
<Add option="-march=k8" />
<Add option="-fomit-frame-pointer" />
<Add option="-Wnon-virtual-dtor" />
<Add option="-Wshadow" />
<Add option="-Winit-self" />
<Add option="-Wredundant-decls" />
<Add option="-Wcast-align" />
<Add option="-Wunreachable-code" />
<Add option="-Wswitch-enum" />
<Add option="-Wswitch-default" />
<Add option="-Wmain" />
<Add option="-Wzero-as-null-pointer-constant" />
<Add option="-std=c++11" />
<Add option="-Wfatal-errors" />
<Add option="-Wall" />
<Add option="-fpermissive" />
<Add option="-fPIC" />
<Add directory="/usr/include/libxml2" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../Source/EmberCommon" />
</Compiler>
<Linker>
<Add library="tbb" />
<Add library="libxml2" />
<Add library="jpeg" />
<Add library="libpng" />
<Add library="Ember" />
<Add library="EmberCL" />
<Add library="OpenCL" />
<Add directory="./" />
</Linker>
<ExtraCommands>
<Add after="cp --update ../../Data/flam3-palettes.xml ./flam3-palettes.xml" />
<Mode after="always" />
</ExtraCommands>
<Unit filename="../../Source/EmberAnimate/EmberAnimate.cpp" />
<Unit filename="../../Source/EmberAnimate/EmberAnimate.h" />
<Unit filename="../../Source/EmberAnimate/EmberAnimate.rc" />
<Unit filename="../../Source/EmberAnimate/resource.h" />
<Unit filename="../../Source/EmberCommon/EmberCommon.h" />
<Unit filename="../../Source/EmberCommon/EmberCommonPch.cpp" />
@ -173,7 +106,6 @@
<Unit filename="../../Source/EmberCommon/SimpleGlob.h" />
<Unit filename="../../Source/EmberCommon/SimpleOpt.h" />
<Unit filename="../../Source/Fractorium/Icons/Fractorium.ico" />
<Unit filename="ReadMe.txt" />
<Extensions>
<code_completion />
<debugger />

View File

@ -0,0 +1,392 @@
# depslib dependency file v1.0
1417760119 source:/home/heretic/Dev/fractorium/Source/EmberCommon/EmberCommonPch.cpp
"EmberCommonPch.h"
1417812217 /home/heretic/Dev/fractorium/Source/EmberCommon/EmberCommonPch.h
<SDKDDKVer.h>
<windows.h>
<winsock.h>
<BaseTsd.h>
<crtdbg.h>
<tchar.h>
<arpa/inet.h>
<iostream>
<iomanip>
<ostream>
<sstream>
<setjmp.h>
<stdio.h>
<stdlib.h>
<string.h>
"jconfig.h"
"jpeglib.h"
"png.h"
"Ember.h"
"Variation.h"
"EmberToXml.h"
"XmlToEmber.h"
"PaletteList.h"
"Iterator.h"
"Renderer.h"
"RendererCL.h"
"SheepTools.h"
"SimpleGlob.h"
"SimpleOpt.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Ember.h
"Xform.h"
"PaletteList.h"
"SpatialFilter.h"
"TemporalFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Xform.h
"VariationList.h"
"Interpolate.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/VariationList.h
"Variations01.h"
"Variations02.h"
"Variations03.h"
"Variations04.h"
"Variations05.h"
"VariationsDC.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations01.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variation.h
"Point.h"
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Point.h
"EmberDefines.h"
"Affine2D.h"
"Timing.h"
1417811373 /home/heretic/Dev/fractorium/Source/Ember/EmberDefines.h
"EmberPch.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/EmberPch.h
<SDKDDKVer.h>
<windows.h>
<libgen.h>
<unistd.h>
<algorithm>
<chrono>
<complex>
<cstdint>
<fstream>
<functional>
<inttypes.h>
<iostream>
<iomanip>
<limits>
<malloc.h>
<math.h>
<memory>
<numeric>
<ostream>
<sstream>
<sys/types.h>
<sys/stat.h>
<thread>
<time.h>
<vector>
"libxml/parser.h"
"libxml2/libxml/parser.h"
"tbb/task_group.h"
"tbb/parallel_for.h"
"tbb/task_scheduler_init.h"
"glm/glm.hpp"
"glm/gtc/matrix_transform.hpp"
"glm/gtc/type_ptr.hpp"
"glm/gtx/string_cast.hpp"
1402664682 /usr/include/libxml2/libxml/parser.h
<stdarg.h>
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/dict.h>
<libxml/hash.h>
<libxml/valid.h>
<libxml/entities.h>
<libxml/xmlerror.h>
<libxml/xmlstring.h>
<libxml/encoding.h>
<libxml/xmlIO.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/xmlversion.h
<libxml/xmlexports.h>
<ansidecl.h>
1402664682 /usr/include/libxml2/libxml/xmlexports.h
1402664682 /usr/include/libxml2/libxml/tree.h
<stdio.h>
<limits.h>
<libxml/xmlversion.h>
<libxml/xmlstring.h>
<libxml/xmlregexp.h>
<libxml/xmlmemory.h>
1402664682 /usr/include/libxml2/libxml/xmlstring.h
<stdarg.h>
<libxml/xmlversion.h>
1402664682 /usr/include/libxml2/libxml/xmlregexp.h
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/dict.h>
1402664682 /usr/include/libxml2/libxml/dict.h
<limits.h>
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/xmlmemory.h
<stdio.h>
<libxml/xmlversion.h>
<libxml/threads.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/threads.h
<libxml/xmlversion.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/globals.h
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xmlerror.h>
<libxml/SAX.h>
<libxml/SAX2.h>
<libxml/xmlmemory.h>
<libxml/threads.h>
1402664682 /usr/include/libxml2/libxml/xmlerror.h
<libxml/parser.h>
1402664682 /usr/include/libxml2/libxml/SAX.h
<stdio.h>
<stdlib.h>
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xlink.h>
1402664682 /usr/include/libxml2/libxml/xlink.h
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/SAX2.h
<stdio.h>
<stdlib.h>
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xlink.h>
1402664682 /usr/include/libxml2/libxml/hash.h
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/dict.h>
1402664682 /usr/include/libxml2/libxml/valid.h
<libxml/xmlversion.h>
<libxml/xmlerror.h>
<libxml/tree.h>
<libxml/list.h>
<libxml/xmlautomata.h>
<libxml/xmlregexp.h>
1402664682 /usr/include/libxml2/libxml/list.h
<libxml/xmlversion.h>
1402664682 /usr/include/libxml2/libxml/xmlautomata.h
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/xmlregexp.h>
1402664682 /usr/include/libxml2/libxml/entities.h
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/encoding.h
<libxml/xmlversion.h>
<iconv.h>
<unicode/ucnv.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/xmlIO.h
<stdio.h>
<libxml/xmlversion.h>
<libxml/globals.h>
<libxml/tree.h>
<libxml/parser.h>
<libxml/encoding.h>
1417810095 /home/heretic/Dev/fractorium/Source/Ember/Affine2D.h
"Utils.h"
1417776440 /home/heretic/Dev/fractorium/Source/Ember/Utils.h
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Isaac.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Timing.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations02.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations03.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations04.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations05.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/VariationsDC.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Interpolate.h
"Ember.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/PaletteList.h
"Palette.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Palette.h
"Utils.h"
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/SpatialFilter.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/TemporalFilter.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/EmberToXml.h
"Utils.h"
"PaletteList.h"
"VariationList.h"
"Ember.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/XmlToEmber.h
"Utils.h"
"PaletteList.h"
"VariationList.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Iterator.h
"Ember.h"
1417810944 /home/heretic/Dev/fractorium/Source/Ember/Renderer.h
"RendererBase.h"
"Iterator.h"
"SpatialFilter.h"
"TemporalFilter.h"
"Interpolate.h"
"CarToRas.h"
"EmberToXml.h"
1417770762 /home/heretic/Dev/fractorium/Source/Ember/RendererBase.h
"Utils.h"
"Ember.h"
"DensityFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/DensityFilter.h
"SpatialFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/CarToRas.h
"Point.h"
1417828769 /home/heretic/Dev/fractorium/Source/EmberCL/RendererCL.h
"EmberCLPch.h"
"OpenCLWrapper.h"
"IterOpenCLKernelCreator.h"
"DEOpenCLKernelCreator.h"
"FinalAccumOpenCLKernelCreator.h"
1417766202 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLPch.h
"Timing.h"
"Renderer.h"
<windows.h>
<SDKDDKVer.h>
"GL/glx.h"
<utility>
<CL/cl.hpp>
<algorithm>
<cstdio>
<cstdlib>
<fstream>
<iostream>
<string>
<iterator>
<time.h>
1417770248 /home/heretic/Dev/fractorium/Source/EmberCL/OpenCLWrapper.h
"EmberCLPch.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/IterOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417764380 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLStructs.h
"EmberCLPch.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLFunctions.h
"EmberCLPch.h"
"EmberCLStructs.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/DEOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/FinalAccumOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/SheepTools.h
"EmberDefines.h"
"Isaac.h"
"VariationList.h"
"Renderer.h"
1417816836 /home/heretic/Dev/fractorium/Source/EmberCommon/SimpleGlob.h
<mbstring.h>
<sys/types.h>
<sys/stat.h>
<glob.h>
<limits.h>
<stdlib.h>
<string.h>
<wchar.h>
<crtdbg.h>
<assert.h>
1417817700 /home/heretic/Dev/fractorium/Source/EmberCommon/SimpleOpt.h
<stdlib.h>
<string.h>
<crtdbg.h>
<assert.h>
1417821813 source:/home/heretic/Dev/fractorium/Source/EmberAnimate/EmberAnimate.cpp
"EmberCommonPch.h"
"EmberAnimate.h"
"JpegUtils.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberAnimate/EmberAnimate.h
"EmberOptions.h"
1417774919 /home/heretic/Dev/fractorium/Source/EmberCommon/EmberOptions.h
"EmberCommon.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberCommon/EmberCommon.h
"EmberCommonPch.h"
1417775759 /home/heretic/Dev/fractorium/Source/EmberCommon/JpegUtils.h
"EmberCommonPch.h"

View File

@ -1,11 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_layout_file>
<ActiveTarget name="Release x64" />
<File name="../../Source/EmberCommon/EmberCommon.h" open="1" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/EmberAnimate/EmberAnimate.cpp" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="9928" topLine="290" />

View File

@ -13,12 +13,12 @@
<Option createDefFile="1" />
<Option createStaticLib="1" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-D_DEBUG" />
<Add option="-D_WINDOWS" />
<Add option="-g" />
<Add option="-D_M_X64" />
<Add option="-D_USRDLL" />
<Add option="-D_DEBUG" />
<Add option="-D_CONSOLE" />
<Add option="-DBUILDING_EMBERCL" />
<Add option="-DAMD_OS_WIN" />
<Add directory="../../Source/Ember/" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
@ -27,8 +27,6 @@
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Opengl32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86_64" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
@ -40,12 +38,6 @@
<Option createDefFile="1" />
<Option createStaticLib="1" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_WINDOWS" />
<Add option="-D_USRDLL" />
<Add option="-DBUILDING_EMBERCL" />
<Add option="-DAMD_OS_WIN" />
<Add directory="../../Source/Ember/" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
@ -54,8 +46,6 @@
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Opengl32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
@ -67,12 +57,6 @@
<Option createDefFile="1" />
<Option createStaticLib="1" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_WINDOWS" />
<Add option="-D_USRDLL" />
<Add option="-DBUILDING_EMBERCL" />
<Add option="-DAMD_OS_WIN" />
<Add directory="../../Source/Ember/" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
@ -80,8 +64,6 @@
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Opengl32.lib" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
</Target>
@ -92,12 +74,12 @@
<Option createDefFile="1" />
<Option createStaticLib="1" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_WINDOWS" />
<Add option="-O2" />
<Add option="-D_M_X64" />
<Add option="-D_USRDLL" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add option="-DBUILDING_EMBERCL" />
<Add option="-DAMD_OS_WIN" />
<Add directory="../../Source/Ember/" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
@ -106,8 +88,7 @@
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Opengl32.lib" />
<Add option="-s" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86_64" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
@ -119,12 +100,6 @@
<Option createDefFile="1" />
<Option createStaticLib="1" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_WINDOWS" />
<Add option="-D_USRDLL" />
<Add option="-DBUILDING_EMBERCL" />
<Add option="-DAMD_OS_WIN" />
<Add directory="../../Source/Ember/" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
@ -133,8 +108,6 @@
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Opengl32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
@ -146,12 +119,6 @@
<Option createDefFile="1" />
<Option createStaticLib="1" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-D_DEBUG" />
<Add option="-D_WINDOWS" />
<Add option="-D_USRDLL" />
<Add option="-DBUILDING_EMBERCL" />
<Add option="-DAMD_OS_WIN" />
<Add directory="../../Source/Ember/" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
@ -160,13 +127,34 @@
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Opengl32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
</Target>
</Build>
<Compiler>
<Add option="-march=k8" />
<Add option="-fomit-frame-pointer" />
<Add option="-Wnon-virtual-dtor" />
<Add option="-Wshadow" />
<Add option="-Winit-self" />
<Add option="-Wredundant-decls" />
<Add option="-Wcast-align" />
<Add option="-Wunreachable-code" />
<Add option="-Wswitch-enum" />
<Add option="-Wswitch-default" />
<Add option="-Wmain" />
<Add option="-Wzero-as-null-pointer-constant" />
<Add option="-std=c++11" />
<Add option="-Wall" />
<Add option="-fpermissive" />
<Add option="-fPIC" />
<Add directory="/usr/include/libxml2" />
</Compiler>
<Linker>
<Add library="GL" />
<Add library="OpenCL" />
</Linker>
<Unit filename="../../Source/EmberCL/DEOpenCLKernelCreator.cpp" />
<Unit filename="../../Source/EmberCL/DEOpenCLKernelCreator.h" />
<Unit filename="../../Source/EmberCL/DllMain.cpp" />

335
Builds/CB/EmberCL.depend Normal file
View File

@ -0,0 +1,335 @@
# depslib dependency file v1.0
1417814313 source:/home/heretic/Dev/fractorium/Source/EmberCL/DEOpenCLKernelCreator.cpp
"EmberCLPch.h"
"DEOpenCLKernelCreator.h"
1417766202 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLPch.h
"Timing.h"
"Renderer.h"
<windows.h>
<SDKDDKVer.h>
"GL/glx.h"
<utility>
<CL/cl.hpp>
<algorithm>
<cstdio>
<cstdlib>
<fstream>
<iostream>
<string>
<iterator>
<time.h>
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Timing.h
"EmberDefines.h"
1417811373 /home/heretic/Dev/fractorium/Source/Ember//EmberDefines.h
"EmberPch.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//EmberPch.h
<SDKDDKVer.h>
<windows.h>
<libgen.h>
<unistd.h>
<algorithm>
<chrono>
<complex>
<cstdint>
<fstream>
<functional>
<inttypes.h>
<iostream>
<iomanip>
<limits>
<malloc.h>
<math.h>
<memory>
<numeric>
<ostream>
<sstream>
<sys/types.h>
<sys/stat.h>
<thread>
<time.h>
<vector>
"libxml/parser.h"
"libxml2/libxml/parser.h"
"tbb/task_group.h"
"tbb/parallel_for.h"
"tbb/task_scheduler_init.h"
"glm/glm.hpp"
"glm/gtc/matrix_transform.hpp"
"glm/gtc/type_ptr.hpp"
"glm/gtx/string_cast.hpp"
1402664682 /usr/include/libxml2/libxml/parser.h
<stdarg.h>
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/dict.h>
<libxml/hash.h>
<libxml/valid.h>
<libxml/entities.h>
<libxml/xmlerror.h>
<libxml/xmlstring.h>
<libxml/encoding.h>
<libxml/xmlIO.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/xmlversion.h
<libxml/xmlexports.h>
<ansidecl.h>
1402664682 /usr/include/libxml2/libxml/xmlexports.h
1402664682 /usr/include/libxml2/libxml/tree.h
<stdio.h>
<limits.h>
<libxml/xmlversion.h>
<libxml/xmlstring.h>
<libxml/xmlregexp.h>
<libxml/xmlmemory.h>
1402664682 /usr/include/libxml2/libxml/xmlstring.h
<stdarg.h>
<libxml/xmlversion.h>
1402664682 /usr/include/libxml2/libxml/xmlregexp.h
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/dict.h>
1402664682 /usr/include/libxml2/libxml/dict.h
<limits.h>
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/xmlmemory.h
<stdio.h>
<libxml/xmlversion.h>
<libxml/threads.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/threads.h
<libxml/xmlversion.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/globals.h
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xmlerror.h>
<libxml/SAX.h>
<libxml/SAX2.h>
<libxml/xmlmemory.h>
<libxml/threads.h>
1402664682 /usr/include/libxml2/libxml/xmlerror.h
<libxml/parser.h>
1402664682 /usr/include/libxml2/libxml/SAX.h
<stdio.h>
<stdlib.h>
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xlink.h>
1402664682 /usr/include/libxml2/libxml/xlink.h
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/SAX2.h
<stdio.h>
<stdlib.h>
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xlink.h>
1402664682 /usr/include/libxml2/libxml/hash.h
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/dict.h>
1402664682 /usr/include/libxml2/libxml/valid.h
<libxml/xmlversion.h>
<libxml/xmlerror.h>
<libxml/tree.h>
<libxml/list.h>
<libxml/xmlautomata.h>
<libxml/xmlregexp.h>
1402664682 /usr/include/libxml2/libxml/list.h
<libxml/xmlversion.h>
1402664682 /usr/include/libxml2/libxml/xmlautomata.h
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/xmlregexp.h>
1402664682 /usr/include/libxml2/libxml/entities.h
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/encoding.h
<libxml/xmlversion.h>
<iconv.h>
<unicode/ucnv.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/xmlIO.h
<stdio.h>
<libxml/xmlversion.h>
<libxml/globals.h>
<libxml/tree.h>
<libxml/parser.h>
<libxml/encoding.h>
1417810944 /home/heretic/Dev/fractorium/Source/Ember//Renderer.h
"RendererBase.h"
"Iterator.h"
"SpatialFilter.h"
"TemporalFilter.h"
"Interpolate.h"
"CarToRas.h"
"EmberToXml.h"
1417770762 /home/heretic/Dev/fractorium/Source/Ember//RendererBase.h
"Utils.h"
"Ember.h"
"DensityFilter.h"
1417776440 /home/heretic/Dev/fractorium/Source/Ember//Utils.h
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Isaac.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Ember.h
"Xform.h"
"PaletteList.h"
"SpatialFilter.h"
"TemporalFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Xform.h
"VariationList.h"
"Interpolate.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//VariationList.h
"Variations01.h"
"Variations02.h"
"Variations03.h"
"Variations04.h"
"Variations05.h"
"VariationsDC.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Variations01.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Variation.h
"Point.h"
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Point.h
"EmberDefines.h"
"Affine2D.h"
"Timing.h"
1417810095 /home/heretic/Dev/fractorium/Source/Ember//Affine2D.h
"Utils.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Variations02.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Variations03.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Variations04.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Variations05.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//VariationsDC.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Interpolate.h
"Ember.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//PaletteList.h
"Palette.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Palette.h
"Utils.h"
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//SpatialFilter.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//TemporalFilter.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//DensityFilter.h
"SpatialFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//Iterator.h
"Ember.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//CarToRas.h
"Point.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember//EmberToXml.h
"Utils.h"
"PaletteList.h"
"VariationList.h"
"Ember.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/DEOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417764380 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLStructs.h
"EmberCLPch.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLFunctions.h
"EmberCLPch.h"
"EmberCLStructs.h"
1417760119 source:/home/heretic/Dev/fractorium/Source/EmberCL/DllMain.cpp
"EmberCLPch.h"
1417814313 source:/home/heretic/Dev/fractorium/Source/EmberCL/FinalAccumOpenCLKernelCreator.cpp
"EmberCLPch.h"
"FinalAccumOpenCLKernelCreator.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/FinalAccumOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417814434 source:/home/heretic/Dev/fractorium/Source/EmberCL/IterOpenCLKernelCreator.cpp
"EmberCLPch.h"
"IterOpenCLKernelCreator.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/IterOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417814434 source:/home/heretic/Dev/fractorium/Source/EmberCL/OpenCLWrapper.cpp
"EmberCLPch.h"
"OpenCLWrapper.h"
1417770248 /home/heretic/Dev/fractorium/Source/EmberCL/OpenCLWrapper.h
"EmberCLPch.h"
1417829447 source:/home/heretic/Dev/fractorium/Source/EmberCL/RendererCL.cpp
"EmberCLPch.h"
"RendererCL.h"
1417828769 /home/heretic/Dev/fractorium/Source/EmberCL/RendererCL.h
"EmberCLPch.h"
"OpenCLWrapper.h"
"IterOpenCLKernelCreator.h"
"DEOpenCLKernelCreator.h"
"FinalAccumOpenCLKernelCreator.h"

View File

@ -1,4 +1,74 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_layout_file>
<ActiveTarget name="Release x64" />
<File name="../../Source/EmberCL/FinalAccumOpenCLKernelCreator.h" open="1" top="0" tabpos="17" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="3552" topLine="53" />
</Cursor>
</File>
<File name="../../Source/EmberCL/DEOpenCLKernelCreator.h" open="1" top="0" tabpos="14" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="2563" topLine="52" />
</Cursor>
</File>
<File name="../../Source/EmberCL/EmberCLFunctions.h" open="1" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="10375" topLine="385" />
</Cursor>
</File>
<File name="../../Source/EmberCL/OpenCLWrapper.cpp" open="1" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="46085" topLine="1300" />
</Cursor>
</File>
<File name="../../Source/EmberCL/DllMain.cpp" open="1" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/EmberCL/EmberCLStructs.h" open="1" top="0" tabpos="16" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="8762" topLine="265" />
</Cursor>
</File>
<File name="../../Source/EmberCL/RendererCL.cpp" open="1" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="57657" topLine="1443" />
</Cursor>
</File>
<File name="../../Source/EmberCL/DEOpenCLKernelCreator.cpp" open="1" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="40101" topLine="851" />
</Cursor>
</File>
<File name="../../Source/EmberCL/OpenCLWrapper.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="5054" topLine="127" />
</Cursor>
</File>
<File name="../../Source/EmberCL/RendererCL.h" open="1" top="0" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="7648" topLine="173" />
</Cursor>
</File>
<File name="../../Source/EmberCL/FinalAccumOpenCLKernelCreator.cpp" open="1" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="23124" topLine="488" />
</Cursor>
</File>
<File name="../../Source/EmberCL/IterOpenCLKernelCreator.cpp" open="1" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="28977" topLine="810" />
</Cursor>
</File>
<File name="../../Source/EmberCL/IterOpenCLKernelCreator.h" open="1" top="0" tabpos="15" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="1445" topLine="29" />
</Cursor>
</File>
<File name="../../Source/EmberCL/EmberCLPch.h" open="1" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="794" topLine="13" />
</Cursor>
</File>
</CodeBlocks_layout_file>

View File

@ -8,159 +8,93 @@
<Build>
<Target title="Debug x64">
<Option output="EmberGenome" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-g" />
<Add option="-D_M_X64" />
<Add option="-D_DEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86_64" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
</Target>
<Target title="ReleaseNvidia Win32">
<Option output="EmberGenome" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
<Option use_console_runner="0" />
</Target>
<Target title="ReleaseNvidia x64">
<Option output="EmberGenome" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
<Option use_console_runner="0" />
</Target>
<Target title="Release x64">
<Option output="EmberGenome" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-O2" />
<Add option="-D_M_X64" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86_64" />
<Add directory="$(CUDA_PATH)lib/Linux" />
<Add option="-s" />
</Linker>
</Target>
<Target title="Release Win32">
<Option output="EmberGenome" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
<Option use_console_runner="0" />
</Target>
<Target title="Debug Win32">
<Option output="EmberGenome" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-D_DEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
<Option use_console_runner="0" />
</Target>
</Build>
<Compiler>
<Add option="-march=k8" />
<Add option="-fomit-frame-pointer" />
<Add option="-Wnon-virtual-dtor" />
<Add option="-Wshadow" />
<Add option="-Winit-self" />
<Add option="-Wredundant-decls" />
<Add option="-Wcast-align" />
<Add option="-Wunreachable-code" />
<Add option="-Wswitch-enum" />
<Add option="-Wswitch-default" />
<Add option="-Wmain" />
<Add option="-Wzero-as-null-pointer-constant" />
<Add option="-std=c++11" />
<Add option="-Wfatal-errors" />
<Add option="-Wall" />
<Add option="-fpermissive" />
<Add option="-fPIC" />
<Add directory="/usr/include/libxml2" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../Source/EmberCommon" />
</Compiler>
<Linker>
<Add library="libxml2" />
<Add library="tbb" />
<Add library="OpenCL" />
<Add library="jpeg" />
<Add library="libpng" />
<Add library="Ember" />
<Add library="EmberCL" />
<Add directory="./" />
</Linker>
<ExtraCommands>
<Add after="cp --update ../../Data/flam3-palettes.xml ./flam3-palettes.xml" />
<Mode after="always" />
</ExtraCommands>
<Unit filename="../../Source/EmberCommon/EmberCommon.h" />
<Unit filename="../../Source/EmberCommon/EmberCommonPch.cpp" />
<Unit filename="../../Source/EmberCommon/EmberCommonPch.h" />
@ -170,10 +104,8 @@
<Unit filename="../../Source/EmberCommon/SimpleOpt.h" />
<Unit filename="../../Source/EmberGenome/EmberGenome.cpp" />
<Unit filename="../../Source/EmberGenome/EmberGenome.h" />
<Unit filename="../../Source/EmberGenome/EmberGenome.rc" />
<Unit filename="../../Source/EmberGenome/resource.h" />
<Unit filename="../../Source/Fractorium/Icons/Fractorium.ico" />
<Unit filename="ReadMe.txt" />
<Extensions>
<code_completion />
<debugger />

View File

@ -0,0 +1,392 @@
# depslib dependency file v1.0
1417760119 source:/home/heretic/Dev/fractorium/Source/EmberCommon/EmberCommonPch.cpp
"EmberCommonPch.h"
1417812217 /home/heretic/Dev/fractorium/Source/EmberCommon/EmberCommonPch.h
<SDKDDKVer.h>
<windows.h>
<winsock.h>
<BaseTsd.h>
<crtdbg.h>
<tchar.h>
<arpa/inet.h>
<iostream>
<iomanip>
<ostream>
<sstream>
<setjmp.h>
<stdio.h>
<stdlib.h>
<string.h>
"jconfig.h"
"jpeglib.h"
"png.h"
"Ember.h"
"Variation.h"
"EmberToXml.h"
"XmlToEmber.h"
"PaletteList.h"
"Iterator.h"
"Renderer.h"
"RendererCL.h"
"SheepTools.h"
"SimpleGlob.h"
"SimpleOpt.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Ember.h
"Xform.h"
"PaletteList.h"
"SpatialFilter.h"
"TemporalFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Xform.h
"VariationList.h"
"Interpolate.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/VariationList.h
"Variations01.h"
"Variations02.h"
"Variations03.h"
"Variations04.h"
"Variations05.h"
"VariationsDC.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations01.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variation.h
"Point.h"
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Point.h
"EmberDefines.h"
"Affine2D.h"
"Timing.h"
1417811373 /home/heretic/Dev/fractorium/Source/Ember/EmberDefines.h
"EmberPch.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/EmberPch.h
<SDKDDKVer.h>
<windows.h>
<libgen.h>
<unistd.h>
<algorithm>
<chrono>
<complex>
<cstdint>
<fstream>
<functional>
<inttypes.h>
<iostream>
<iomanip>
<limits>
<malloc.h>
<math.h>
<memory>
<numeric>
<ostream>
<sstream>
<sys/types.h>
<sys/stat.h>
<thread>
<time.h>
<vector>
"libxml/parser.h"
"libxml2/libxml/parser.h"
"tbb/task_group.h"
"tbb/parallel_for.h"
"tbb/task_scheduler_init.h"
"glm/glm.hpp"
"glm/gtc/matrix_transform.hpp"
"glm/gtc/type_ptr.hpp"
"glm/gtx/string_cast.hpp"
1402664682 /usr/include/libxml2/libxml/parser.h
<stdarg.h>
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/dict.h>
<libxml/hash.h>
<libxml/valid.h>
<libxml/entities.h>
<libxml/xmlerror.h>
<libxml/xmlstring.h>
<libxml/encoding.h>
<libxml/xmlIO.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/xmlversion.h
<libxml/xmlexports.h>
<ansidecl.h>
1402664682 /usr/include/libxml2/libxml/xmlexports.h
1402664682 /usr/include/libxml2/libxml/tree.h
<stdio.h>
<limits.h>
<libxml/xmlversion.h>
<libxml/xmlstring.h>
<libxml/xmlregexp.h>
<libxml/xmlmemory.h>
1402664682 /usr/include/libxml2/libxml/xmlstring.h
<stdarg.h>
<libxml/xmlversion.h>
1402664682 /usr/include/libxml2/libxml/xmlregexp.h
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/dict.h>
1402664682 /usr/include/libxml2/libxml/dict.h
<limits.h>
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/xmlmemory.h
<stdio.h>
<libxml/xmlversion.h>
<libxml/threads.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/threads.h
<libxml/xmlversion.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/globals.h
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xmlerror.h>
<libxml/SAX.h>
<libxml/SAX2.h>
<libxml/xmlmemory.h>
<libxml/threads.h>
1402664682 /usr/include/libxml2/libxml/xmlerror.h
<libxml/parser.h>
1402664682 /usr/include/libxml2/libxml/SAX.h
<stdio.h>
<stdlib.h>
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xlink.h>
1402664682 /usr/include/libxml2/libxml/xlink.h
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/SAX2.h
<stdio.h>
<stdlib.h>
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xlink.h>
1402664682 /usr/include/libxml2/libxml/hash.h
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/dict.h>
1402664682 /usr/include/libxml2/libxml/valid.h
<libxml/xmlversion.h>
<libxml/xmlerror.h>
<libxml/tree.h>
<libxml/list.h>
<libxml/xmlautomata.h>
<libxml/xmlregexp.h>
1402664682 /usr/include/libxml2/libxml/list.h
<libxml/xmlversion.h>
1402664682 /usr/include/libxml2/libxml/xmlautomata.h
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/xmlregexp.h>
1402664682 /usr/include/libxml2/libxml/entities.h
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/encoding.h
<libxml/xmlversion.h>
<iconv.h>
<unicode/ucnv.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/xmlIO.h
<stdio.h>
<libxml/xmlversion.h>
<libxml/globals.h>
<libxml/tree.h>
<libxml/parser.h>
<libxml/encoding.h>
1417810095 /home/heretic/Dev/fractorium/Source/Ember/Affine2D.h
"Utils.h"
1417776440 /home/heretic/Dev/fractorium/Source/Ember/Utils.h
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Isaac.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Timing.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations02.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations03.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations04.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations05.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/VariationsDC.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Interpolate.h
"Ember.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/PaletteList.h
"Palette.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Palette.h
"Utils.h"
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/SpatialFilter.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/TemporalFilter.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/EmberToXml.h
"Utils.h"
"PaletteList.h"
"VariationList.h"
"Ember.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/XmlToEmber.h
"Utils.h"
"PaletteList.h"
"VariationList.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Iterator.h
"Ember.h"
1417810944 /home/heretic/Dev/fractorium/Source/Ember/Renderer.h
"RendererBase.h"
"Iterator.h"
"SpatialFilter.h"
"TemporalFilter.h"
"Interpolate.h"
"CarToRas.h"
"EmberToXml.h"
1417770762 /home/heretic/Dev/fractorium/Source/Ember/RendererBase.h
"Utils.h"
"Ember.h"
"DensityFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/DensityFilter.h
"SpatialFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/CarToRas.h
"Point.h"
1417828769 /home/heretic/Dev/fractorium/Source/EmberCL/RendererCL.h
"EmberCLPch.h"
"OpenCLWrapper.h"
"IterOpenCLKernelCreator.h"
"DEOpenCLKernelCreator.h"
"FinalAccumOpenCLKernelCreator.h"
1417766202 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLPch.h
"Timing.h"
"Renderer.h"
<windows.h>
<SDKDDKVer.h>
"GL/glx.h"
<utility>
<CL/cl.hpp>
<algorithm>
<cstdio>
<cstdlib>
<fstream>
<iostream>
<string>
<iterator>
<time.h>
1417770248 /home/heretic/Dev/fractorium/Source/EmberCL/OpenCLWrapper.h
"EmberCLPch.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/IterOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417764380 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLStructs.h
"EmberCLPch.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLFunctions.h
"EmberCLPch.h"
"EmberCLStructs.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/DEOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/FinalAccumOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/SheepTools.h
"EmberDefines.h"
"Isaac.h"
"VariationList.h"
"Renderer.h"
1417816836 /home/heretic/Dev/fractorium/Source/EmberCommon/SimpleGlob.h
<mbstring.h>
<sys/types.h>
<sys/stat.h>
<glob.h>
<limits.h>
<stdlib.h>
<string.h>
<wchar.h>
<crtdbg.h>
<assert.h>
1417817700 /home/heretic/Dev/fractorium/Source/EmberCommon/SimpleOpt.h
<stdlib.h>
<string.h>
<crtdbg.h>
<assert.h>
1417823420 source:/home/heretic/Dev/fractorium/Source/EmberGenome/EmberGenome.cpp
"EmberCommonPch.h"
"EmberGenome.h"
"JpegUtils.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberGenome/EmberGenome.h
"EmberOptions.h"
1417774919 /home/heretic/Dev/fractorium/Source/EmberCommon/EmberOptions.h
"EmberCommon.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberCommon/EmberCommon.h
"EmberCommonPch.h"
1417775759 /home/heretic/Dev/fractorium/Source/EmberCommon/JpegUtils.h
"EmberCommonPch.h"

View File

@ -1,17 +1,39 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_layout_file>
<ActiveTarget name="Release x64" />
<File name="../../Source/EmberCommon/EmberCommon.h" open="1" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/EmberCommon/EmberCommon.h" open="1" top="0" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/EmberCommon/EmberOptions.h" open="1" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/EmberCommon/JpegUtils.h" open="1" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/EmberCommon/SimpleGlob.h" open="1" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/EmberCommon/SimpleOpt.h" open="1" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
<Folding>
<Collapse line="17" />
</Folding>
</File>
<File name="../../Source/EmberCommon/EmberCommonPch.cpp" open="1" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
<File name="../../Source/EmberCommon/EmberCommonPch.h" open="1" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="0" />
</Cursor>
</File>
</CodeBlocks_layout_file>

View File

@ -8,10 +8,12 @@
<Build>
<Target title="Debug x64">
<Option output="EmberRender" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-g" />
<Add option="-D_M_X64" />
<Add option="-D_DEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
@ -25,21 +27,13 @@
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86_64" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
</Target>
<Target title="ReleaseNvidia Win32">
<Option output="EmberRender" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
@ -51,21 +45,13 @@
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
</Target>
<Target title="ReleaseNvidia x64">
<Option output="EmberRender" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
@ -76,46 +62,28 @@
<Add directory="../../../libxml2/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
</Target>
<Target title="Release x64">
<Option output="EmberRender" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-O2" />
<Add option="-D_M_X64" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../../glm" />
<Add directory="../../../tbb/include" />
<Add directory="../../../libjpeg" />
<Add directory="../../../libpng" />
<Add directory="../../../libxml2/include" />
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86_64" />
<Add directory="$(CUDA_PATH)lib/Linux" />
<Add option="-s" />
</Linker>
</Target>
<Target title="Release Win32">
<Option output="EmberRender" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-DNDEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
@ -127,21 +95,13 @@
<Add directory="$(AMDAPPSDKROOT)/include" />
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
</Target>
<Target title="Debug Win32">
<Option output="EmberRender" prefix_auto="1" extension_auto="1" />
<Option type="0" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-DWIN32" />
<Add option="-D_DEBUG" />
<Add option="-D_CONSOLE" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCommon" />
<Add directory="../../Source/EmberCL" />
@ -154,14 +114,47 @@
<Add directory="$(CUDA_PATH)include" />
</Compiler>
<Linker>
<Add library="opencl.lib" />
<Add library="Ws2_32.lib" />
<Add directory="$(AMDAPPSDKROOT)/lib/x86" />
<Add directory="$(CUDA_PATH)lib/Linux" />
</Linker>
</Target>
</Build>
<Unit filename="../../EmberRender/EmberRender.rc" />
<Compiler>
<Add option="-march=k8" />
<Add option="-fomit-frame-pointer" />
<Add option="-Wnon-virtual-dtor" />
<Add option="-Wshadow" />
<Add option="-Winit-self" />
<Add option="-Wredundant-decls" />
<Add option="-Wcast-align" />
<Add option="-Wunreachable-code" />
<Add option="-Wswitch-enum" />
<Add option="-Wswitch-default" />
<Add option="-Wmain" />
<Add option="-Wzero-as-null-pointer-constant" />
<Add option="-std=c++11" />
<Add option="-Wfatal-errors" />
<Add option="-Wall" />
<Add option="-fpermissive" />
<Add option="-fPIC" />
<Add directory="/usr/include/libxml2" />
<Add directory="../../Source/Ember" />
<Add directory="../../Source/EmberCL" />
<Add directory="../../Source/EmberCommon" />
</Compiler>
<Linker>
<Add library="jpeg" />
<Add library="libpng" />
<Add library="Ember" />
<Add library="EmberCL" />
<Add library="libxml2" />
<Add library="OpenCL" />
<Add library="tbb" />
<Add directory="./" />
</Linker>
<ExtraCommands>
<Add after="cp --update ../../Data/flam3-palettes.xml ./flam3-palettes.xml" />
<Mode after="always" />
</ExtraCommands>
<Unit filename="../../Fractorium/Icons/Fractorium.ico" />
<Unit filename="../../Source/EmberCommon/EmberCommon.h" />
<Unit filename="../../Source/EmberCommon/EmberCommonPch.cpp" />
@ -173,7 +166,6 @@
<Unit filename="../../Source/EmberRender/EmberRender.cpp" />
<Unit filename="../../Source/EmberRender/EmberRender.h" />
<Unit filename="../../Source/EmberRender/resource.h" />
<Unit filename="ReadMe.txt" />
<Extensions>
<code_completion />
<debugger />

View File

@ -0,0 +1,392 @@
# depslib dependency file v1.0
1417760119 source:/home/heretic/Dev/fractorium/Source/EmberCommon/EmberCommonPch.cpp
"EmberCommonPch.h"
1417812217 /home/heretic/Dev/fractorium/Source/EmberCommon/EmberCommonPch.h
<SDKDDKVer.h>
<windows.h>
<winsock.h>
<BaseTsd.h>
<crtdbg.h>
<tchar.h>
<arpa/inet.h>
<iostream>
<iomanip>
<ostream>
<sstream>
<setjmp.h>
<stdio.h>
<stdlib.h>
<string.h>
"jconfig.h"
"jpeglib.h"
"png.h"
"Ember.h"
"Variation.h"
"EmberToXml.h"
"XmlToEmber.h"
"PaletteList.h"
"Iterator.h"
"Renderer.h"
"RendererCL.h"
"SheepTools.h"
"SimpleGlob.h"
"SimpleOpt.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Ember.h
"Xform.h"
"PaletteList.h"
"SpatialFilter.h"
"TemporalFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Xform.h
"VariationList.h"
"Interpolate.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/VariationList.h
"Variations01.h"
"Variations02.h"
"Variations03.h"
"Variations04.h"
"Variations05.h"
"VariationsDC.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations01.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variation.h
"Point.h"
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Point.h
"EmberDefines.h"
"Affine2D.h"
"Timing.h"
1417811373 /home/heretic/Dev/fractorium/Source/Ember/EmberDefines.h
"EmberPch.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/EmberPch.h
<SDKDDKVer.h>
<windows.h>
<libgen.h>
<unistd.h>
<algorithm>
<chrono>
<complex>
<cstdint>
<fstream>
<functional>
<inttypes.h>
<iostream>
<iomanip>
<limits>
<malloc.h>
<math.h>
<memory>
<numeric>
<ostream>
<sstream>
<sys/types.h>
<sys/stat.h>
<thread>
<time.h>
<vector>
"libxml/parser.h"
"libxml2/libxml/parser.h"
"tbb/task_group.h"
"tbb/parallel_for.h"
"tbb/task_scheduler_init.h"
"glm/glm.hpp"
"glm/gtc/matrix_transform.hpp"
"glm/gtc/type_ptr.hpp"
"glm/gtx/string_cast.hpp"
1402664682 /usr/include/libxml2/libxml/parser.h
<stdarg.h>
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/dict.h>
<libxml/hash.h>
<libxml/valid.h>
<libxml/entities.h>
<libxml/xmlerror.h>
<libxml/xmlstring.h>
<libxml/encoding.h>
<libxml/xmlIO.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/xmlversion.h
<libxml/xmlexports.h>
<ansidecl.h>
1402664682 /usr/include/libxml2/libxml/xmlexports.h
1402664682 /usr/include/libxml2/libxml/tree.h
<stdio.h>
<limits.h>
<libxml/xmlversion.h>
<libxml/xmlstring.h>
<libxml/xmlregexp.h>
<libxml/xmlmemory.h>
1402664682 /usr/include/libxml2/libxml/xmlstring.h
<stdarg.h>
<libxml/xmlversion.h>
1402664682 /usr/include/libxml2/libxml/xmlregexp.h
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/dict.h>
1402664682 /usr/include/libxml2/libxml/dict.h
<limits.h>
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/xmlmemory.h
<stdio.h>
<libxml/xmlversion.h>
<libxml/threads.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/threads.h
<libxml/xmlversion.h>
<libxml/globals.h>
1402664682 /usr/include/libxml2/libxml/globals.h
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xmlerror.h>
<libxml/SAX.h>
<libxml/SAX2.h>
<libxml/xmlmemory.h>
<libxml/threads.h>
1402664682 /usr/include/libxml2/libxml/xmlerror.h
<libxml/parser.h>
1402664682 /usr/include/libxml2/libxml/SAX.h
<stdio.h>
<stdlib.h>
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xlink.h>
1402664682 /usr/include/libxml2/libxml/xlink.h
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/SAX2.h
<stdio.h>
<stdlib.h>
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/xlink.h>
1402664682 /usr/include/libxml2/libxml/hash.h
<libxml/xmlversion.h>
<libxml/parser.h>
<libxml/dict.h>
1402664682 /usr/include/libxml2/libxml/valid.h
<libxml/xmlversion.h>
<libxml/xmlerror.h>
<libxml/tree.h>
<libxml/list.h>
<libxml/xmlautomata.h>
<libxml/xmlregexp.h>
1402664682 /usr/include/libxml2/libxml/list.h
<libxml/xmlversion.h>
1402664682 /usr/include/libxml2/libxml/xmlautomata.h
<libxml/xmlversion.h>
<libxml/tree.h>
<libxml/xmlregexp.h>
1402664682 /usr/include/libxml2/libxml/entities.h
<libxml/xmlversion.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/encoding.h
<libxml/xmlversion.h>
<iconv.h>
<unicode/ucnv.h>
<libxml/tree.h>
1402664682 /usr/include/libxml2/libxml/xmlIO.h
<stdio.h>
<libxml/xmlversion.h>
<libxml/globals.h>
<libxml/tree.h>
<libxml/parser.h>
<libxml/encoding.h>
1417810095 /home/heretic/Dev/fractorium/Source/Ember/Affine2D.h
"Utils.h"
1417776440 /home/heretic/Dev/fractorium/Source/Ember/Utils.h
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Isaac.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Timing.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations02.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations03.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations04.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Variations05.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/VariationsDC.h
"Variation.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Interpolate.h
"Ember.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/PaletteList.h
"Palette.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Palette.h
"Utils.h"
"Isaac.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/SpatialFilter.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/TemporalFilter.h
"EmberDefines.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/EmberToXml.h
"Utils.h"
"PaletteList.h"
"VariationList.h"
"Ember.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/XmlToEmber.h
"Utils.h"
"PaletteList.h"
"VariationList.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/Iterator.h
"Ember.h"
1417810944 /home/heretic/Dev/fractorium/Source/Ember/Renderer.h
"RendererBase.h"
"Iterator.h"
"SpatialFilter.h"
"TemporalFilter.h"
"Interpolate.h"
"CarToRas.h"
"EmberToXml.h"
1417770762 /home/heretic/Dev/fractorium/Source/Ember/RendererBase.h
"Utils.h"
"Ember.h"
"DensityFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/DensityFilter.h
"SpatialFilter.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/CarToRas.h
"Point.h"
1417828769 /home/heretic/Dev/fractorium/Source/EmberCL/RendererCL.h
"EmberCLPch.h"
"OpenCLWrapper.h"
"IterOpenCLKernelCreator.h"
"DEOpenCLKernelCreator.h"
"FinalAccumOpenCLKernelCreator.h"
1417766202 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLPch.h
"Timing.h"
"Renderer.h"
<windows.h>
<SDKDDKVer.h>
"GL/glx.h"
<utility>
<CL/cl.hpp>
<algorithm>
<cstdio>
<cstdlib>
<fstream>
<iostream>
<string>
<iterator>
<time.h>
1417770248 /home/heretic/Dev/fractorium/Source/EmberCL/OpenCLWrapper.h
"EmberCLPch.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/IterOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417764380 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLStructs.h
"EmberCLPch.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberCL/EmberCLFunctions.h
"EmberCLPch.h"
"EmberCLStructs.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/DEOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417816098 /home/heretic/Dev/fractorium/Source/EmberCL/FinalAccumOpenCLKernelCreator.h
"EmberCLPch.h"
"EmberCLStructs.h"
"EmberCLFunctions.h"
1417760119 /home/heretic/Dev/fractorium/Source/Ember/SheepTools.h
"EmberDefines.h"
"Isaac.h"
"VariationList.h"
"Renderer.h"
1417816836 /home/heretic/Dev/fractorium/Source/EmberCommon/SimpleGlob.h
<mbstring.h>
<sys/types.h>
<sys/stat.h>
<glob.h>
<limits.h>
<stdlib.h>
<string.h>
<wchar.h>
<crtdbg.h>
<assert.h>
1417817700 /home/heretic/Dev/fractorium/Source/EmberCommon/SimpleOpt.h
<stdlib.h>
<string.h>
<crtdbg.h>
<assert.h>
1417826935 source:/home/heretic/Dev/fractorium/Source/EmberRender/EmberRender.cpp
"EmberCommonPch.h"
"EmberRender.h"
"JpegUtils.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberRender/EmberRender.h
"EmberOptions.h"
1417774919 /home/heretic/Dev/fractorium/Source/EmberCommon/EmberOptions.h
"EmberCommon.h"
1417760119 /home/heretic/Dev/fractorium/Source/EmberCommon/EmberCommon.h
"EmberCommonPch.h"
1417775759 /home/heretic/Dev/fractorium/Source/EmberCommon/JpegUtils.h
"EmberCommonPch.h"

View File

@ -1,14 +1,34 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_layout_file>
<ActiveTarget name="Release x64" />
<File name="../../Source/EmberCommon/EmberCommon.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/EmberCommon/EmberCommonPch.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="0" topLine="108" />
<Cursor1 position="546" topLine="0" />
</Cursor>
</File>
<File name="../../Source/EmberRender/EmberRender.cpp" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<File name="../../Source/EmberCommon/SimpleOpt.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="526" topLine="0" />
<Cursor1 position="23911" topLine="734" />
</Cursor>
</File>
<File name="../../Source/EmberCommon/SimpleGlob.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="28795" topLine="894" />
</Cursor>
</File>
<File name="../../Source/EmberRender/EmberRender.cpp" open="1" top="1" tabpos="1" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="11058" topLine="309" />
</Cursor>
</File>
<File name="../../Source/EmberCommon/EmberOptions.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="32737" topLine="469" />
</Cursor>
</File>
<File name="../../Source/EmberCommon/JpegUtils.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor>
<Cursor1 position="10816" topLine="287" />
</Cursor>
</File>
</CodeBlocks_layout_file>

View File

@ -1,10 +1,13 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_workspace_file>
<Workspace title="Workspace">
<Project filename="./Ember.cbp" />
<Project filename="./EmberCL.cbp" />
<Project filename="./EmberGenome.cbp" />
<Project filename="./EmberAnimate.cbp" />
<Project filename="./EmberRender.cbp" />
<Project filename="Ember.cbp" />
<Project filename="EmberCL.cbp" />
<Project filename="EmberGenome.cbp" />
<Project filename="EmberAnimate.cbp" />
<Project filename="EmberRender.cbp">
<Depends filename="Ember.cbp" />
<Depends filename="EmberCL.cbp" />
</Project>
</Workspace>
</CodeBlocks_workspace_file>

View File

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_workspace_layout_file>
<ActiveProject path="EmberCL.cbp" />
<ActiveProject path="EmberRender.cbp" />
</CodeBlocks_workspace_layout_file>

View File

@ -357,4 +357,13 @@ void Affine2D<T>::CalcRSAC(const v2T& from, const v2T& to, T& a, T& c)
a = (from.y * to.y + from.x * to.x) / lsq;
c = (from.x * to.y - from.y * to.x) / lsq;
}
//This class had to be implemented in a cpp file because the compiler was breaking.
//So the explicit instantiation must be declared here rather than in Ember.cpp where
//all of the other classes are done.
template EMBER_API class Affine2D<float>;
#ifdef DO_DOUBLE
template EMBER_API class Affine2D<double>;
#endif
}

View File

@ -117,9 +117,9 @@ public:
//This class had to be implemented in a cpp file because the compiler was breaking.
//So the explicit instantiation must be declared here rather than in Ember.cpp where
//all of the other classes are done.
template EMBER_API class Affine2D<float>;
//template EMBER_API class Affine2D<float>;
#ifdef DO_DOUBLE
template EMBER_API class Affine2D<double>;
#endif
//#ifdef DO_DOUBLE
// template EMBER_API class Affine2D<double>;
//#endif
}

View File

@ -20,22 +20,28 @@
#define _stricmp strcmp
#define sscanf_s sscanf
#define sprintf_s snprintf
#define snprintf_s snprintf
typedef int errno_t;
#endif
#define RESTRICT __restrict//This might make things faster, unsure if it really does though.
//#define RESTRICT
namespace EmberNs
{
//Wrap the sincos function for Macs and PC.
#if defined(__APPLE__) || defined(_MSC_VER)
#define sincos(x, s, c) *(s)=sin(x); *(c)=cos(x);
#else
extern void sincos(double x, double *s, double *c);
extern void sincos(float x, float *s, float *c);
//extern void sincos(double x, double *s, double *c);
//extern void sincos(float x, float *s, float *c);
static void sincos(float x, float* s, float* c)
{
*s = sin(x);
*c = cos(x);
}
#endif
namespace EmberNs
{
#define EMBER_VERSION "0.4.1.6"
#define EPS6 T(1e-6)
#define EPS std::numeric_limits<T>::epsilon()//Apoplugin.h uses -20, but it's more mathematically correct to do it this way.

View File

@ -1588,4 +1588,13 @@ void Renderer<T, bucketT>::GammaCorrection(glm::detail::tvec4<bucketT, glm::defa
correctedChannels[3] = numeric_limits<accumT>::max();//Final accum, 4 channels, but not using transparency. 255 for 8 bpc, 65535 for 16 bpc.
}
}
//This class had to be implemented in a cpp file because the compiler was breaking.
//So the explicit instantiation must be declared here rather than in Ember.cpp where
//all of the other classes are done.
template EMBER_API class Renderer<float, float>;
#ifdef DO_DOUBLE
template EMBER_API class Renderer<double, double>;
#endif
}

View File

@ -45,6 +45,7 @@ namespace EmberNs
template <typename T, typename bucketT>
class EMBER_API Renderer : public RendererBase
{
//using EmberReport::m_ErrorReport;
public:
Renderer();
virtual ~Renderer();
@ -189,9 +190,9 @@ protected:
//This class had to be implemented in a cpp file because the compiler was breaking.
//So the explicit instantiation must be declared here rather than in Ember.cpp where
//all of the other classes are done.
template EMBER_API class Renderer<float, float>;
//template EMBER_API class Renderer<float, float>;
#ifdef DO_DOUBLE
template EMBER_API class Renderer<double, double>;
#endif
//#ifdef DO_DOUBLE
// template EMBER_API class Renderer<double, double>;
//#endif
}

View File

@ -91,6 +91,7 @@ enum eRendererType { CPU_RENDERER, OPENCL_RENDERER };
/// </summary>
class EMBER_API RendererBase : public EmberReport
{
//using EmberReport::m_ErrorReport;
public:
RendererBase();
virtual ~RendererBase() { }
@ -210,8 +211,8 @@ protected:
size_t m_ThreadsToUse;
size_t m_VibGamCount;
size_t m_LastTemporalSample;
double m_LastIterPercent;
size_t m_LastIter;
double m_LastIterPercent;
eProcessAction m_ProcessAction;
eProcessState m_ProcessState;
eInteractiveFilter m_InteractiveFilter;

View File

@ -132,20 +132,20 @@ public:
/// Add a vector of strings to report.
/// </summary>
/// <param name="vec">The vector of strings to add</param>
virtual void AddToReport(vector<string>& vec) { m_ErrorReport.insert(m_ErrorReport.end(), vec.begin(), vec.end()); }
virtual void AddToReport(const vector<string>& vec) { m_ErrorReport.insert(m_ErrorReport.end(), vec.begin(), vec.end()); }
/// <summary>
/// Static function to dump a vector of strings passed in.
/// </summary>
/// <param name="errorReport">The vector of strings to dump</param>
static void StaticDumpErrorReport(vector<string>& errorReport) { cout << StaticErrorReportString(errorReport); }
static void StaticDumpErrorReport(const vector<string>& errorReport) { cout << StaticErrorReportString(errorReport); }
/// <summary>
/// Static function to return the entire error report passed in as a single string.
/// </summary>
/// <param name="errorReport">The vector of strings to concatenate</param>
/// <returns>A string containing all strings in the vector passed in separated by newlines</returns>
static string StaticErrorReportString(vector<string>& errorReport)
static string StaticErrorReportString(const vector<string>& errorReport)
{
stringstream ss;

View File

@ -78,7 +78,7 @@ bool EmberAnimate(EmberOptions& opt)
cout << "Using " << opt.ThreadCount() << " manually specified threads." << endl;
}
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : NULL);
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : nullptr);
}
else
{
@ -94,7 +94,7 @@ bool EmberAnimate(EmberOptions& opt)
cout << "Cannot specify threads with OpenCL, using 1 thread." << endl;
opt.ThreadCount(1);
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : NULL);
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : nullptr);
if (opt.BitsPerChannel() != 8)
{
@ -257,7 +257,7 @@ bool EmberAnimate(EmberOptions& opt)
renderer->Transparency(opt.Transparency());
renderer->NumChannels(channels);
renderer->BytesPerChannel(opt.BitsPerChannel() / 8);
renderer->Callback(opt.DoProgress() ? progress.get() : NULL);
renderer->Callback(opt.DoProgress() ? progress.get() : nullptr);
//Begin run.
for (ftime = opt.FirstFrame(); ftime <= opt.LastFrame(); ftime += opt.Dtime())
@ -309,7 +309,7 @@ bool EmberAnimate(EmberOptions& opt)
VerbosePrint("Bad values: " << stats.m_Badvals);
VerbosePrint("Render time: " + t.Format(stats.m_RenderMs));
VerbosePrint("Pure iter time: " + t.Format(stats.m_IterMs));
VerbosePrint("Iters/sec: " << unsigned __int64(stats.m_Iters / (stats.m_IterMs / 1000.0)) << endl);
VerbosePrint("Iters/sec: " << size_t(stats.m_Iters / (stats.m_IterMs / 1000.0)) << endl);
VerbosePrint("Writing " + filename);
if ((opt.Format() == "jpg" || opt.Format() == "bmp") && renderer->NumChannels() == 4)
@ -350,15 +350,19 @@ bool EmberAnimate(EmberOptions& opt)
/// <returns>0 if successful, else 1.</returns>
int _tmain(int argc, _TCHAR* argv[])
{
bool b, d = true;
bool b = false;
EmberOptions opt;
//Required for large allocs, else GPU memory usage will be severely limited to small sizes.
//This must be done in the application and not in the EmberCL DLL.
#ifdef WIN32
_putenv_s("GPU_MAX_ALLOC_PERCENT", "100");
#else
putenv((char*)"GPU_MAX_ALLOC_PERCENT=100");
#endif
if (opt.Populate(argc, argv, OPT_USE_ANIMATE))
return 0;
if (!opt.Populate(argc, argv, OPT_USE_ANIMATE))
{
#ifdef DO_DOUBLE
if (opt.Bits() == 64)
@ -376,6 +380,7 @@ int _tmain(int argc, _TCHAR* argv[])
cout << "Bits 32/int histogram no longer supported. Using bits == 33 (float)." << endl;
b = EmberAnimate<float, float>(opt);
}
}
return b ? 0 : 1;
}

View File

@ -876,4 +876,10 @@ string DEOpenCLKernelCreator<T>::CreateGaussianDEKernelNoLocalCache(size_t ss)
return os.str();
}
template EMBERCL_API class DEOpenCLKernelCreator<float>;
#ifdef DO_DOUBLE
template EMBERCL_API class DEOpenCLKernelCreator<double>;
#endif
}

View File

@ -77,9 +77,9 @@ private:
bool m_NVidia;
};
template EMBERCL_API class DEOpenCLKernelCreator<float>;
#ifdef DO_DOUBLE
template EMBERCL_API class DEOpenCLKernelCreator<double>;
#endif
//template EMBERCL_API class DEOpenCLKernelCreator<float>;
//
//#ifdef DO_DOUBLE
// template EMBERCL_API class DEOpenCLKernelCreator<double>;
//#endif
}

View File

@ -8,9 +8,14 @@
#define WIN32_LEAN_AND_MEAN//Exclude rarely-used stuff from Windows headers.
#define _USE_MATH_DEFINES
#include "Timing.h"
#include "Renderer.h"
#ifdef _WIN32
#include <windows.h>
#include <SDKDDKVer.h>
#else
#include "GL/glx.h"
#endif
#include <utility>
@ -25,13 +30,14 @@
#include <iterator>
#include <time.h>
#include "Timing.h"
#include "Renderer.h"
#if defined(BUILDING_EMBERCL)
#define EMBERCL_API __declspec(dllexport)
#ifdef _WIN32
#if defined(BUILDING_EMBERCL)
#define EMBERCL_API __declspec(dllexport)
#else
#define EMBERCL_API __declspec(dllimport)
#endif
#else
#define EMBERCL_API __declspec(dllimport)
#define EMBERCL_API
#endif
using namespace std;

View File

@ -13,7 +13,13 @@
namespace EmberCLns
{
#define ALIGN __declspec(align(16))//These two must always match.
//These two must always match.
#ifdef WIN32
#define ALIGN __declspec(align(16))
#else
#define ALIGN __attribute__ ((aligned (16)))
#endif
#define ALIGN_CL "((aligned (16)))"//The extra parens are necessary.
/// <summary>

View File

@ -513,4 +513,10 @@ string FinalAccumOpenCLKernelCreator<T>::CreateGammaCorrectionKernelString(bool
return os.str();
}
template EMBERCL_API class FinalAccumOpenCLKernelCreator<float>;
#ifdef DO_DOUBLE
template EMBERCL_API class FinalAccumOpenCLKernelCreator<double>;
#endif
}

View File

@ -79,9 +79,9 @@ private:
string m_FinalAccumLateClipWithoutAlphaCalcWithAlphaAccumEntryPoint;
};
template EMBERCL_API class FinalAccumOpenCLKernelCreator<float>;
#ifdef DO_DOUBLE
template EMBERCL_API class FinalAccumOpenCLKernelCreator<double>;
#endif
//template EMBERCL_API class FinalAccumOpenCLKernelCreator<float>;
//
//#ifdef DO_DOUBLE
// template EMBERCL_API class FinalAccumOpenCLKernelCreator<double>;
//#endif
}

View File

@ -60,7 +60,7 @@ string IterOpenCLKernelCreator<T>::CreateIterKernelString(Ember<T>& ember, strin
for (i = 0; i < totalXformCount; i++)
{
Xform<T>* xform = ember.GetTotalXform(i);
size_t totalVarCount = xform->TotalVariationCount();
//size_t totalVarCount = xform->TotalVariationCount();
bool needPrecalcSumSquares = false;
bool needPrecalcSqrtSumSquares = false;
bool needPrecalcAngles = false;
@ -622,7 +622,7 @@ void IterOpenCLKernelCreator<T>::ParVarIndexDefines(Ember<T>& ember, pair<string
for (i = 0; i < xformCount; i++)
{
if (xform = ember.GetTotalXform(i))
if ((xform = ember.GetTotalXform(i)))
{
size_t varCount = xform->TotalVariationCount();
@ -834,4 +834,10 @@ string IterOpenCLKernelCreator<T>::CreateProjectionString(Ember<T>& ember)
return os.str();
}
template EMBERCL_API class IterOpenCLKernelCreator<float>;
#ifdef DO_DOUBLE
template EMBERCL_API class IterOpenCLKernelCreator<double>;
#endif
}

View File

@ -41,12 +41,12 @@ private:
string m_ZeroizeEntryPoint;
bool m_NVidia;
};
template EMBERCL_API class IterOpenCLKernelCreator<float>;
#ifdef DO_DOUBLE
template EMBERCL_API class IterOpenCLKernelCreator<double>;
#endif
//
//template EMBERCL_API class IterOpenCLKernelCreator<float>;
//
//#ifdef DO_DOUBLE
// template EMBERCL_API class IterOpenCLKernelCreator<double>;
//#endif
//
//template EMBERCL_API string IterOpenCLKernelCreator::CreateIterKernelString<float>(Ember<float>& ember, string& parVarDefines, bool lockAccum, bool doAccum);

View File

@ -90,7 +90,7 @@ bool OpenCLWrapper::Init(unsigned int platform, unsigned int device, bool shared
/// <param name="program">The program source</param>
/// <param name="entryPoint">The name of the entry point kernel function in the program</param>
/// <returns>True if success, else false.</returns>
bool OpenCLWrapper::AddProgram(std::string name, std::string& program, std::string& entryPoint, bool doublePrecision)
bool OpenCLWrapper::AddProgram(const string& name, const string& program, const string& entryPoint, bool doublePrecision)
{
Spk spk;
@ -142,7 +142,7 @@ bool OpenCLWrapper::AddBuffer(const string& name, size_t size, cl_mem_flags flag
if (bufferIndex == -1)//If the buffer didn't exist, create and add.
{
cl::Buffer buff(m_Context, flags, size, NULL, &err);
cl::Buffer buff(m_Context, flags, size, nullptr, &err);
if (!CheckCL(err, "cl::Buffer()"))
return false;
@ -153,9 +153,9 @@ bool OpenCLWrapper::AddBuffer(const string& name, size_t size, cl_mem_flags flag
}
else if (GetBufferSize(bufferIndex) != size)//If it did exist, only create and add if the sizes were different.
{
m_Buffers[bufferIndex] = NamedBuffer(cl::Buffer(m_Context, flags, 0, NULL, &err), "emptybuffer");//First clear out the original so the two don't exist in memory at once.
m_Buffers[bufferIndex] = NamedBuffer(cl::Buffer(m_Context, flags, 0, nullptr, &err), "emptybuffer");//First clear out the original so the two don't exist in memory at once.
cl::Buffer buff(m_Context, flags, size, NULL, &err);//Create the new buffer.
cl::Buffer buff(m_Context, flags, size, nullptr, &err);//Create the new buffer.
if (!CheckCL(err, "cl::Buffer()"))
return false;
@ -220,7 +220,7 @@ bool OpenCLWrapper::WriteBuffer(unsigned int bufferIndex, void* data, size_t siz
if (m_Init && (bufferIndex < m_Buffers.size()) && (GetBufferSize(bufferIndex) == size))
{
cl::Event e;
cl_int err = m_Queue.enqueueWriteBuffer(m_Buffers[bufferIndex].m_Buffer, CL_TRUE, 0, size, data, NULL, &e);
cl_int err = m_Queue.enqueueWriteBuffer(m_Buffers[bufferIndex].m_Buffer, CL_TRUE, 0, size, data, nullptr, &e);
e.wait();
m_Queue.finish();
@ -258,7 +258,7 @@ bool OpenCLWrapper::ReadBuffer(unsigned int bufferIndex, void* data, size_t size
if (m_Init && (bufferIndex < m_Buffers.size()) && (GetBufferSize(bufferIndex) == size))
{
cl::Event e;
cl_int err = m_Queue.enqueueReadBuffer(m_Buffers[bufferIndex].m_Buffer, CL_TRUE, 0, size, data, NULL, &e);
cl_int err = m_Queue.enqueueReadBuffer(m_Buffers[bufferIndex].m_Buffer, CL_TRUE, 0, size, data, nullptr, &e);
e.wait();
m_Queue.finish();
@ -291,7 +291,7 @@ int OpenCLWrapper::FindBufferIndex(const string& name)
/// <returns>The size of the buffer if found, else 0.</returns>
unsigned int OpenCLWrapper::GetBufferSize(const string& name)
{
unsigned int bufferIndex = FindBufferIndex(name);
int bufferIndex = FindBufferIndex(name);
return bufferIndex != -1 ? GetBufferSize(bufferIndex) : 0;
}
@ -304,7 +304,7 @@ unsigned int OpenCLWrapper::GetBufferSize(const string& name)
unsigned int OpenCLWrapper::GetBufferSize(unsigned int bufferIndex)
{
if (m_Init && bufferIndex < m_Buffers.size())
return (unsigned int)m_Buffers[bufferIndex].m_Buffer.getInfo<CL_MEM_SIZE>();
return (unsigned int)m_Buffers[bufferIndex].m_Buffer.getInfo<CL_MEM_SIZE>(nullptr);
return 0;
}
@ -452,7 +452,7 @@ bool OpenCLWrapper::WriteImage2D(unsigned int index, bool shared, ::size_t width
if (EnqueueAcquireGLObjects(imageGL))
{
err = m_Queue.enqueueWriteImage(imageGL, CL_TRUE, origin, region, row_pitch, 0, data, NULL, &e);
err = m_Queue.enqueueWriteImage(imageGL, CL_TRUE, origin, region, row_pitch, 0, data, nullptr, &e);
e.wait();
m_Queue.finish();
@ -462,7 +462,7 @@ bool OpenCLWrapper::WriteImage2D(unsigned int index, bool shared, ::size_t width
}
else if (!shared && index < m_Images.size())
{
err = m_Queue.enqueueWriteImage(m_Images[index].m_Image, CL_TRUE, origin, region, row_pitch, 0, data, NULL, &e);
err = m_Queue.enqueueWriteImage(m_Images[index].m_Image, CL_TRUE, origin, region, row_pitch, 0, data, nullptr, &e);
e.wait();
m_Queue.finish();
return CheckCL(err, "cl::enqueueWriteImage()");
@ -597,14 +597,14 @@ unsigned int OpenCLWrapper::GetImageSize(unsigned int imageIndex, bool shared)
IMAGEGL2D image = m_GLImages[imageIndex].m_Image;
if (EnqueueAcquireGLObjects(&images))
size = image.getImageInfo<CL_IMAGE_WIDTH>() * image.getImageInfo<CL_IMAGE_HEIGHT>() * image.getImageInfo<CL_IMAGE_ELEMENT_SIZE>();//Should pitch be checked here?
size = image.getImageInfo<CL_IMAGE_WIDTH>(nullptr) * image.getImageInfo<CL_IMAGE_HEIGHT>(nullptr) * image.getImageInfo<CL_IMAGE_ELEMENT_SIZE>(nullptr);//Should pitch be checked here?
EnqueueReleaseGLObjects(&images);
}
else if (!shared && imageIndex < m_Images.size())
{
cl::Image2D image = m_Images[imageIndex].m_Image;
size = image.getImageInfo<CL_IMAGE_WIDTH>() * image.getImageInfo<CL_IMAGE_HEIGHT>() * image.getImageInfo<CL_IMAGE_ELEMENT_SIZE>();//Should pitch be checked here?
size = image.getImageInfo<CL_IMAGE_WIDTH>(nullptr) * image.getImageInfo<CL_IMAGE_HEIGHT>(nullptr) * image.getImageInfo<CL_IMAGE_ELEMENT_SIZE>(nullptr);//Should pitch be checked here?
}
}
@ -623,13 +623,13 @@ unsigned int OpenCLWrapper::GetImageSize(unsigned int imageIndex, bool shared)
/// <returns>True if all parameters matched, else false.</returns>
bool OpenCLWrapper::CompareImageParams(cl::Image& image, cl_mem_flags flags, const cl::ImageFormat& format, ::size_t width, ::size_t height, ::size_t row_pitch)
{
cl_image_format tempFormat = image.getImageInfo<CL_IMAGE_FORMAT>();
cl_image_format tempFormat = image.getImageInfo<CL_IMAGE_FORMAT>(nullptr);
return (/*image.getImageInfo<CL_MEM_FLAGS>() == flags &&*/
tempFormat.image_channel_data_type == format.image_channel_data_type &&
tempFormat.image_channel_order == format.image_channel_order &&
image.getImageInfo<CL_IMAGE_WIDTH>() == width &&
image.getImageInfo<CL_IMAGE_HEIGHT>() == height/* &&
image.getImageInfo<CL_IMAGE_WIDTH>(nullptr) == width &&
image.getImageInfo<CL_IMAGE_HEIGHT>(nullptr) == height/* &&
image.getImageInfo<CL_IMAGE_ROW_PITCH>() == row_pitch*/);//Pitch will be (width * bytes per pixel) + padding.
}
@ -840,7 +840,7 @@ bool OpenCLWrapper::CreateSampler(cl::Sampler& sampler, cl_bool normalizedCoords
/// <param name="argIndex">Index of the argument</param>
/// <param name="name">The name of the buffer</param>
/// <returns>True if success, else false.</returns>
bool OpenCLWrapper::SetBufferArg(unsigned int kernelIndex, unsigned int argIndex, string name)
bool OpenCLWrapper::SetBufferArg(unsigned int kernelIndex, unsigned int argIndex, const string& name)
{
int bufferIndex = OpenCLWrapper::FindBufferIndex(name);
@ -872,7 +872,7 @@ bool OpenCLWrapper::SetBufferArg(unsigned int kernelIndex, unsigned int argIndex
/// <param name="shared">True if shared with an OpenGL texture, else false</param>
/// <param name="name">The name of the 2D image</param>
/// <returns>True if success, else false.</returns>
bool OpenCLWrapper::SetImageArg(unsigned int kernelIndex, unsigned int argIndex, bool shared, string name)
bool OpenCLWrapper::SetImageArg(unsigned int kernelIndex, unsigned int argIndex, bool shared, const string& name)
{
if (m_Init)
{
@ -948,7 +948,7 @@ bool OpenCLWrapper::RunKernel(unsigned int kernelIndex, unsigned int totalGridWi
cl::NullRange,
cl::NDRange(totalGridWidth, totalGridHeight, totalGridDepth),
cl::NDRange(blockWidth, blockHeight, blockDepth),
NULL,
nullptr,
&e);
e.wait();
@ -984,7 +984,7 @@ T OpenCLWrapper::GetInfo(size_t platform, size_t device, cl_device_info name)
string OpenCLWrapper::PlatformName(size_t platform)
{
if (platform < m_Platforms.size())
return m_Platforms[platform].getInfo<CL_PLATFORM_VENDOR>() + " " + m_Platforms[platform].getInfo<CL_PLATFORM_NAME>() + " " + m_Platforms[platform].getInfo<CL_PLATFORM_VERSION>();
return m_Platforms[platform].getInfo<CL_PLATFORM_VENDOR>(nullptr) + " " + m_Platforms[platform].getInfo<CL_PLATFORM_NAME>(nullptr) + " " + m_Platforms[platform].getInfo<CL_PLATFORM_VERSION>(nullptr);
else
return "";
}
@ -1018,7 +1018,7 @@ string OpenCLWrapper::DeviceName(size_t platform, size_t device)
if (platform < m_Platforms.size() && platform < m_Devices.size())
if (device < m_Devices[platform].size())
s = m_Devices[platform][device].getInfo<CL_DEVICE_VENDOR>() + " " + m_Devices[platform][device].getInfo<CL_DEVICE_NAME>();// + " " + m_Devices[platform][device].getInfo<CL_DEVICE_VERSION>();
s = m_Devices[platform][device].getInfo<CL_DEVICE_VENDOR>(nullptr) + " " + m_Devices[platform][device].getInfo<CL_DEVICE_NAME>(nullptr);// + " " + m_Devices[platform][device].getInfo<CL_DEVICE_VERSION>();
return s;
}
@ -1165,7 +1165,7 @@ bool OpenCLWrapper::CreateContext(bool shared)
0
};
m_Context = cl::Context(CL_DEVICE_TYPE_GPU, props, NULL, NULL, &err);//May need to tinker with this on Mac.
m_Context = cl::Context(CL_DEVICE_TYPE_GPU, props, nullptr, nullptr, &err);//May need to tinker with this on Mac.
#else
#if defined WIN32
cl_context_properties props[] =
@ -1176,17 +1176,17 @@ bool OpenCLWrapper::CreateContext(bool shared)
0
};
m_Context = cl::Context(CL_DEVICE_TYPE_GPU, props, NULL, NULL, &err);
m_Context = cl::Context(CL_DEVICE_TYPE_GPU, props, nullptr, nullptr, &err);
#else
cl_context_properties props[] =
{
CL_GL_CONTEXT_KHR, (cl_context_properties)glXGetCurrentContext(),
CL_GLX_DISPLAY_KHR, (cl_context_properties)glXGetCurrentDisplay(),
CL_CONTEXT_PLATFORM, (cl_context_properties)(m_Platforms[m_Platform])(),
CL_CONTEXT_PLATFORM, (cl_context_properties)(m_Platforms[m_PlatformIndex])(),
0
};
m_Context = cl::Context(CL_DEVICE_TYPE_GPU, props, NULL, NULL, &err);
m_Context = cl::Context(CL_DEVICE_TYPE_GPU, props, nullptr, nullptr, &err);
#endif
#endif
}
@ -1199,7 +1199,7 @@ bool OpenCLWrapper::CreateContext(bool shared)
0
};
m_Context = cl::Context(CL_DEVICE_TYPE_ALL, props, NULL, NULL, &err);
m_Context = cl::Context(CL_DEVICE_TYPE_ALL, props, nullptr, nullptr, &err);
}
return CheckCL(err, "cl::Context()");
@ -1213,7 +1213,7 @@ bool OpenCLWrapper::CreateContext(bool shared)
/// <param name="entryPoint">The name of the entry point kernel function in the program</param>
/// <param name="spk">The Spk object to store the resulting compiled program in</param>
/// <returns>True if success, else false.</returns>
bool OpenCLWrapper::CreateSPK(std::string& name, std::string& program, std::string& entryPoint, Spk& spk, bool doublePrecision)
bool OpenCLWrapper::CreateSPK(const string& name, const string& program, const string& entryPoint, Spk& spk, bool doublePrecision)
{
if (m_Init)
{

View File

@ -37,7 +37,7 @@ public:
{
}
NamedBuffer(cl::Buffer& buff, string name)
NamedBuffer(const cl::Buffer& buff, const string& name)
{
m_Buffer = buff;
m_Name = name;
@ -57,7 +57,7 @@ public:
{
}
NamedImage2D(cl::Image2D& image, string name)
NamedImage2D(const cl::Image2D& image, const string& name)
{
m_Image = image;
m_Name = name;
@ -78,7 +78,7 @@ public:
{
}
NamedImage2DGL(IMAGEGL2D& image, string name)
NamedImage2DGL(const IMAGEGL2D& image, const string& name)
{
m_Image = image;
m_Name = name;
@ -107,7 +107,7 @@ public:
bool Init(unsigned int platform, unsigned int device, bool shared = false);
//Programs.
bool AddProgram(std::string name, std::string& program, std::string& entryPoint, bool doublePrecision);
bool AddProgram(const string& name, const string& program, const string& entryPoint, bool doublePrecision);
void ClearPrograms();
//Buffers.
@ -143,9 +143,9 @@ public:
bool CreateSampler(cl::Sampler& sampler, cl_bool normalizedCoords, cl_addressing_mode addressingMode, cl_filter_mode filterMode);
//Arguments.
bool SetBufferArg(unsigned int kernelIndex, unsigned int argIndex, string name);
bool SetBufferArg(unsigned int kernelIndex, unsigned int argIndex, const string& name);
bool SetBufferArg(unsigned int kernelIndex, unsigned int argIndex, unsigned int bufferIndex);
bool SetImageArg(unsigned int kernelIndex, unsigned int argIndex, bool shared, string name);
bool SetImageArg(unsigned int kernelIndex, unsigned int argIndex, bool shared, const string& name);
bool SetImageArg(unsigned int kernelIndex, unsigned int argIndex, bool shared, unsigned int imageIndex);
/// <summary>
@ -195,7 +195,7 @@ public:
private:
bool CreateContext(bool shared);
bool CreateSPK(std::string& name, std::string& program, std::string& entryPoint, Spk& spk, bool doublePrecision);
bool CreateSPK(const string& name, const string& program, const string& entryPoint, Spk& spk, bool doublePrecision);
bool CheckCL(cl_int err, const char* name);
std::string ErrorToStringCL(cl_int err);

View File

@ -312,7 +312,7 @@ bool RendererCL<T>::ClearFinal()
vector<unsigned char> v;
unsigned int index = m_Wrapper.FindImageIndex(m_FinalImageName, m_Wrapper.Shared());
if (PrepFinalAccumVector(v))
if (this->PrepFinalAccumVector(v))
{
bool b = m_Wrapper.WriteImage2D(index, m_Wrapper.Shared(), FinalRasW(), FinalRasH(), 0, v.data());
@ -527,9 +527,11 @@ bool RendererCL<T>::RandVec(vector<QTIsaac<ISAAC_SIZE, ISAAC_INT>>& randVec)
template <typename T>
void RendererCL<T>::MakeDmap(T colorScalar)
{
m_Ember.m_Palette.MakeDmap<float>(m_Dmap, colorScalar);
//m_Ember.m_Palette.MakeDmap<float>(m_DmapCL, colorScalar);
m_Ember.m_Palette.MakeDmap(m_DmapCL, colorScalar);
}
/// <summary>
/// Allocate all buffers required for running as well as the final
/// 2D image.
@ -561,9 +563,10 @@ bool RendererCL<T>::Alloc()
if (b && !(b = m_Wrapper.AddBuffer(m_AccumBufferName, accumLength))) { m_ErrorReport.push_back(loc); }//Accum buffer.
if (b && !(b = m_Wrapper.AddBuffer(m_PointsBufferName, IterGridKernelCount() * sizeof(PointCL<T>)))) { m_ErrorReport.push_back(loc); }//Points between iter calls.
LeaveResize();
if (b && !(b = SetOutputTexture(m_OutputTexID))) { m_ErrorReport.push_back(loc); }
LeaveResize();
return b;
}
@ -788,7 +791,7 @@ bool RendererCL<T>::RunIter(size_t iterCount, size_t temporalSample, size_t& ite
if (b && !(b = m_Wrapper.AddAndWriteBuffer(m_DistBufferName, (void*)XformDistributions(), XformDistributionsSize()))) { m_ErrorReport.push_back(loc); }//Will be resized for xaos.
if (b && !(b = m_Wrapper.WriteBuffer (m_CarToRasBufferName, (void*)&m_CarToRasCL, sizeof(m_CarToRasCL)))) { m_ErrorReport.push_back(loc); }
if (b && !(b = m_Wrapper.AddAndWriteImage("Palette", CL_MEM_READ_ONLY, m_PaletteFormat, m_Dmap.m_Entries.size(), 1, 0, m_Dmap.m_Entries.data()))) { m_ErrorReport.push_back(loc); }
if (b && !(b = m_Wrapper.AddAndWriteImage("Palette", CL_MEM_READ_ONLY, m_PaletteFormat, m_DmapCL.m_Entries.size(), 1, 0, m_DmapCL.m_Entries.data()))) { m_ErrorReport.push_back(loc); }
//If animating, treat each temporal sample as a newly started render for fusing purposes.
if (temporalSample > 0)
@ -1350,7 +1353,7 @@ SpatialFilterCL<T> RendererCL<T>::ConvertSpatialFilter()
Color<T> background;
SpatialFilterCL<T> filterCL;
PrepFinalAccumVals(background, g, linRange, vibrancy);
this->PrepFinalAccumVals(background, g, linRange, vibrancy);
filterCL.m_SuperRasW = (unsigned int)SuperRasW();
filterCL.m_SuperRasH = (unsigned int)SuperRasH();
@ -1467,4 +1470,10 @@ void RendererCL<T>::FillSeeds()
m_Seeds[i].y = m_Rand[0].Rand();
}
}
template EMBERCL_API class RendererCL<float>;
#ifdef DO_DOUBLE
template EMBERCL_API class RendererCL<double>;
#endif
}

View File

@ -18,6 +18,7 @@ namespace EmberCLns
class EMBERCL_API RendererCLBase
{
public:
virtual ~RendererCLBase() { }
virtual bool ReadFinal(unsigned char* pixels) = 0;
virtual bool ClearFinal() = 0;
};
@ -33,8 +34,25 @@ public:
/// and uses both for the base.
/// </summary>
template <typename T>
class EMBERCL_API RendererCL : public RendererCLBase, public Renderer<T, T>
class EMBERCL_API RendererCL : public Renderer<T, T>, public RendererCLBase
{
using EmberNs::Renderer<T, T>::RendererBase::EmberReport::m_ErrorReport;
using EmberNs::Renderer<T, T>::RendererBase::m_ProgressParameter;
using EmberNs::Renderer<T, T>::RendererBase::m_YAxisUp;
using EmberNs::Renderer<T, T>::RendererBase::m_LockAccum;
using EmberNs::Renderer<T, T>::RendererBase::m_Abort;
using EmberNs::Renderer<T, T>::RendererBase::m_NumChannels;
using EmberNs::Renderer<T, T>::RendererBase::m_LastIter;
using EmberNs::Renderer<T, T>::RendererBase::m_LastIterPercent;
using EmberNs::Renderer<T, T>::RendererBase::m_Stats;
using EmberNs::Renderer<T, T>::RendererBase::m_Callback;
using EmberNs::Renderer<T, T>::RendererBase::m_Rand;
using EmberNs::Renderer<T, T>::RendererBase::m_RenderTimer;
using EmberNs::Renderer<T, T>::RendererBase::m_IterTimer;
using EmberNs::Renderer<T, T>::RendererBase::m_ProgressTimer;
using EmberNs::Renderer<T, T>::m_RotMat;
using EmberNs::Renderer<T, T>::m_Ember;
public:
RendererCL(unsigned int platform = 0, unsigned int device = 0, bool shared = false, GLuint outputTexID = 0);
~RendererCL();
@ -168,7 +186,7 @@ private:
EmberCL<T> m_EmberCL;
vector<XformCL<T>> m_XformsCL;
vector<glm::highp_uvec2> m_Seeds;
Palette<float> m_Dmap;//Used instead of the base class' m_Dmap because OpenCL only supports float textures.
Palette<float> m_DmapCL;//Used instead of the base class' m_Dmap because OpenCL only supports float textures.
CarToRasCL<T> m_CarToRasCL;
DensityFilterCL<T> m_DensityFilterCL;
SpatialFilterCL<T> m_SpatialFilterCL;
@ -179,9 +197,9 @@ private:
Ember<T> m_LastBuiltEmber;
};
template EMBERCL_API class RendererCL<float>;
#ifdef DO_DOUBLE
template EMBERCL_API class RendererCL<double>;
#endif
//template EMBERCL_API class RendererCL<float>;
//
//#ifdef DO_DOUBLE
// template EMBERCL_API class RendererCL<double>;
//#endif
}

View File

@ -12,13 +12,18 @@
#include <SDKDDKVer.h>
#include <windows.h>
#include <winsock.h>//For htons().
#include <BaseTsd.h>
#include <crtdbg.h>
#include <tchar.h>
#define snprintf _snprintf
#else
#include <arpa/inet.h>
#define _TCHAR char
#define _tmain main
#define _T
#define fprintf_s fprintf
#endif
#include <BaseTsd.h>
#include <crtdbg.h>
#include <iostream>
#include <iomanip>
#include <ostream>
@ -27,11 +32,12 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <tchar.h>
#include "jconfig.h"
#include "jpeglib.h"
#define PNG_SKIP_SETJMP_CHECK 1
#include "png.h"
//#include "pnginfo.h"

View File

@ -6,7 +6,7 @@
/// EmberOptionEntry and EmberOptions classes.
/// </summary>
static char* DescriptionString = "Ember - Fractal flames C++ port and enhancement with OpenCL GPU support";
static const char* DescriptionString = "Ember - Fractal flames C++ port and enhancement with OpenCL GPU support";
/// <summary>
/// Enum for specifying which command line programs an option is meant to be used with.
@ -493,6 +493,10 @@ public:
PARSESTRINGOPTION(OPT_USE_VARS, UseVars);
PARSESTRINGOPTION(OPT_DONT_USE_VARS, DontUseVars);
PARSESTRINGOPTION(OPT_EXTRAS, Extras);
default:
{
break;//Do nothing.
}
}
}
else

View File

@ -21,7 +21,7 @@ static bool WritePpm(const char* filename, unsigned char* image, size_t width, s
if (fopen_s(&file, filename, "wb") == 0)
{
fprintf_s(file, "P6\n");
fprintf_s(file, "%d %d\n255\n", width, height);
fprintf_s(file, "%lu %lu\n255\n", width, height);
b = (size == fwrite(image, 1, size, file));
fclose(file);
@ -61,7 +61,7 @@ static bool WriteJpeg(const char* filename, unsigned char* image, size_t width,
//Create the mandatory comment strings.
snprintf_s(genomeString, 65536, "flam3_genome: %s", comments.m_Genome.c_str());
snprintf_s(bvString, 64, "flam3_error_rate: %s", comments.m_Badvals.c_str());
snprintf_s(niString, 64, "flam3_samples: %s", comments.m_NumIters);
snprintf_s(niString, 64, "flam3_samples: %s", comments.m_NumIters.c_str());
snprintf_s(rtString, 64, "flam3_time: %s", comments.m_Runtime.c_str());
snprintf_s(verString, 64, "flam3_version: %s", EmberVersion());
@ -150,41 +150,41 @@ static bool WritePng(const char* filename, unsigned char* image, size_t width, s
vector<unsigned char*> rows(height);
text[0].compression = PNG_TEXT_COMPRESSION_NONE;
text[0].key = "flam3_version";
text[0].key = (png_charp)"flam3_version";
text[0].text = (png_charp)EmberVersion();
text[1].compression = PNG_TEXT_COMPRESSION_NONE;
text[1].key = "flam3_nickname";
text[1].key = (png_charp)"flam3_nickname";
text[1].text = (png_charp)nick.c_str();
text[2].compression = PNG_TEXT_COMPRESSION_NONE;
text[2].key = "flam3_url";
text[2].key = (png_charp)"flam3_url";
text[2].text = (png_charp)url.c_str();
text[3].compression = PNG_TEXT_COMPRESSION_NONE;
text[3].key = "flam3_id";
text[3].key = (png_charp)"flam3_id";
text[3].text = (png_charp)id.c_str();
text[4].compression = PNG_TEXT_COMPRESSION_NONE;
text[4].key = "flam3_error_rate";
text[4].key = (png_charp)"flam3_error_rate";
text[4].text = (png_charp)comments.m_Badvals.c_str();
text[5].compression = PNG_TEXT_COMPRESSION_NONE;
text[5].key = "flam3_samples";
text[5].key = (png_charp)"flam3_samples";
text[5].text = (png_charp)comments.m_NumIters.c_str();
text[6].compression = PNG_TEXT_COMPRESSION_NONE;
text[6].key = "flam3_time";
text[6].key = (png_charp)"flam3_time";
text[6].text = (png_charp)comments.m_Runtime.c_str();
text[7].compression = PNG_TEXT_COMPRESSION_zTXt;
text[7].key = "flam3_genome";
text[7].key = (png_charp)"flam3_genome";
text[7].text = (png_charp)comments.m_Genome.c_str();
for (i = 0; i < height; i++)
rows[i] = (unsigned char*)image + i * width * 4 * bytesPerChannel;
png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);
png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, nullptr, nullptr, nullptr);
info_ptr = png_create_info_struct(png_ptr);
if (setjmp(png_jmpbuf(png_ptr)))
@ -232,10 +232,10 @@ static bool WritePng(const char* filename, unsigned char* image, size_t width, s
/// <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 BYTE* ConvertRGBToBMPBuffer(BYTE* buffer, size_t width, size_t height, size_t& newSize)
static unsigned char* ConvertRGBToBMPBuffer(unsigned char* buffer, size_t width, size_t height, size_t& newSize)
{
if (NULL == buffer || width == 0 || height == 0)
return NULL;
if (buffer == nullptr || width == 0 || height == 0)
return nullptr;
size_t padding = 0;
size_t scanlinebytes = width * 3;
@ -245,7 +245,7 @@ static BYTE* ConvertRGBToBMPBuffer(BYTE* buffer, size_t width, size_t height, si
size_t psw = scanlinebytes + padding;
newSize = height * psw;
BYTE* newBuf = new BYTE[newSize];
unsigned char* newBuf = new unsigned char[newSize];
if (newBuf)
{
@ -274,7 +274,7 @@ static BYTE* ConvertRGBToBMPBuffer(BYTE* buffer, size_t width, size_t height, si
return newBuf;
}
return NULL;
return nullptr;
}
/// <summary>
@ -286,8 +286,9 @@ static BYTE* ConvertRGBToBMPBuffer(BYTE* buffer, size_t width, size_t height, si
/// <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, BYTE* image, size_t width, size_t height, size_t paddedSize)
static bool SaveBmp(const char* filename, unsigned char* image, size_t width, size_t height, size_t paddedSize)
{
#ifdef WIN32
BITMAPFILEHEADER bmfh;
BITMAPINFOHEADER info;
DWORD bwritten;
@ -338,6 +339,7 @@ static bool SaveBmp(const char* filename, BYTE* image, size_t width, size_t heig
}
CloseHandle(file);
#endif
return true;
}
@ -353,7 +355,7 @@ static bool WriteBmp(const char* filename, unsigned char* image, size_t width, s
{
bool b = false;
size_t newSize;
unique_ptr<BYTE> bgrBuf(ConvertRGBToBMPBuffer(image, width, height, newSize));
unique_ptr<unsigned char> bgrBuf(ConvertRGBToBMPBuffer(image, width, height, newSize));
if (bgrBuf.get())
b = SaveBmp(filename, bgrBuf.get(), width, height, newSize);

View File

@ -409,7 +409,7 @@ struct SimpleGlobBase
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, NULL, &m_glob);
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;
@ -422,7 +422,7 @@ struct SimpleGlobBase
int FindFirstFileS(const UChar * a_pszFileSpec, unsigned int a_uiFlags) {
char buf[PATH_MAX] = { 0 };
UErrorCode status = U_ZERO_ERROR;
u_strToUTF8(buf, sizeof(buf), NULL, a_pszFileSpec, -1, &status);
u_strToUTF8(buf, sizeof(buf), nullptr, a_pszFileSpec, -1, &status);
if (U_FAILURE(status)) return SG_ERR_FAILURE;
return this->FindFirstFileS(buf, a_uiFlags);
}
@ -457,11 +457,11 @@ struct SimpleGlobBase
#if SG_HAVE_ICU
const UChar * GetFileNameS(UChar) const {
const char * pszFile = this->GetFileNameS((char)0);
if (!pszFile) return NULL;
if (!pszFile) return nullptr;
UErrorCode status = U_ZERO_ERROR;
memset(m_szBuf, 0, sizeof(m_szBuf));
u_strFromUTF8(m_szBuf, PATH_MAX, NULL, pszFile, -1, &status);
if (U_FAILURE(status)) return NULL;
u_strFromUTF8(m_szBuf, PATH_MAX, nullptr, pszFile, -1, &status);
if (U_FAILURE(status)) return nullptr;
return m_szBuf;
}
#endif
@ -495,7 +495,7 @@ struct SimpleGlobBase
SG_FileType GetFileTypeS(const UChar * a_pszPath) const {
char buf[PATH_MAX] = { 0 };
UErrorCode status = U_ZERO_ERROR;
u_strToUTF8(buf, sizeof(buf), NULL, a_pszPath, -1, &status);
u_strToUTF8(buf, sizeof(buf), nullptr, a_pszPath, -1, &status);
if (U_FAILURE(status)) return SG_FILETYPE_INVALID;
return this->GetFileTypeS(buf);
}
@ -620,7 +620,7 @@ private:
/*! @brief Grow the string buffer to the required size. */
bool GrowStringBuffer(size_t a_uiMinSize);
/*! @brief Compare two (possible NULL) strings */
/*! @brief Compare two (possible nullptr) strings */
static int fileSortCompare(const void *a1, const void *a2);
private:
@ -646,9 +646,9 @@ CSimpleGlobTempl<SOCHAR>::CSimpleGlobTempl(
int a_nReservedSlots
)
{
m_rgpArgs = NULL;
m_rgpArgs = nullptr;
m_nArgsSize = 0;
m_pBuffer = NULL;
m_pBuffer = nullptr;
m_uiBufferSize = 0;
Init(a_uiFlags, a_nReservedSlots);
@ -679,7 +679,7 @@ CSimpleGlobTempl<SOCHAR>::Init(
return SG_ERR_MEMORY;
}
for (int n = 0; n < m_nReservedSlots; ++n) {
m_rgpArgs[n] = NULL;
m_rgpArgs[n] = nullptr;
}
}
@ -857,14 +857,14 @@ CSimpleGlobTempl<SOCHAR>::SetArgvArrayType(
SG_ASSERT(m_nArgArrayType == OFFSETS);
for (int n = 0; n < m_nArgsLen; ++n) {
m_rgpArgs[n] = (m_rgpArgs[n] == (SOCHAR*)-1) ?
NULL : m_pBuffer + (size_t) m_rgpArgs[n];
nullptr : m_pBuffer + (size_t) m_rgpArgs[n];
}
}
else {
SG_ASSERT(a_nNewType == OFFSETS);
SG_ASSERT(m_nArgArrayType == POINTERS);
for (int n = 0; n < m_nArgsLen; ++n) {
m_rgpArgs[n] = (m_rgpArgs[n] == NULL) ?
m_rgpArgs[n] = (m_rgpArgs[n] == nullptr) ?
(SOCHAR*) -1 : (SOCHAR*) (m_rgpArgs[n] - m_pBuffer);
}
}
@ -925,7 +925,7 @@ CSimpleGlobTempl<SOCHAR>::fileSortCompare(
if (s1 && s2) {
return SimpleGlobUtil::strcasecmp(s1, s2);
}
// NULL sorts first
// nullptr sorts first
return s1 == s2 ? 0 : (s1 ? 1 : -1);
}

View File

@ -299,7 +299,7 @@ typedef enum _ESOArgType {
} ESOArgType;
//! this option definition must be the last entry in the table
#define SO_END_OF_OPTIONS { -1, NULL, SO_NONE }
#define SO_END_OF_OPTIONS { -1, nullptr, SO_NONE }
#ifdef _DEBUG
# ifdef _MSC_VER
@ -328,7 +328,7 @@ public:
//SOption()//Added for compatibility with fractal flames.
//{
// nId = 0;
// pszArg = NULL;
// pszArg = nullptr;
// nArgType = SO_NONE;
//}
@ -353,9 +353,9 @@ public:
/*! @brief Initialize the class. Init() must be called later. */
CSimpleOptTempl()
: m_rgShuffleBuf(NULL)
: m_rgShuffleBuf(nullptr)
{
Init(0, NULL, NULL, 0);
Init(0, nullptr, nullptr, 0);
}
/*! @brief Initialize the class in preparation for use. */
@ -365,7 +365,7 @@ public:
const SOption * a_rgOptions,
int a_nFlags = 0
)
: m_rgShuffleBuf(NULL)
: m_rgShuffleBuf(nullptr)
{
Init(argc, argv, a_rgOptions, a_nFlags);
}
@ -471,7 +471,7 @@ public:
/*! @brief Return the argument for the current option where one exists.
If there is no argument for the option, this will return NULL.
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; }
@ -483,7 +483,7 @@ public:
each time returning the desired number of arguments. Previously
returned argument pointers are remain valid.
If an error occurs during processing, NULL will be returned and
If an error occurs during processing, nullptr will be returned and
the error will be available via LastError().
@param n Number of arguments to return.
@ -523,7 +523,7 @@ private:
// Find the '=' character within a string.
inline SOCHAR * FindEquals(SOCHAR *s) const {
while (*s && *s != (SOCHAR)'=') ++s;
return *s ? s : NULL;
return *s ? s : nullptr;
}
bool IsEqual(SOCHAR a_cLeft, SOCHAR a_cRight, int a_nArgType) const;
@ -573,13 +573,13 @@ CSimpleOptTempl<SOCHAR>::Init(
m_nLastError = SO_SUCCESS;
m_nOptionIdx = 0;
m_nOptionId = -1;
m_pszOptionText = NULL;
m_pszOptionArg = NULL;
m_pszOptionText = nullptr;
m_pszOptionArg = nullptr;
m_nNextOption = (a_nFlags & SO_O_USEALL) ? 0 : 1;
m_szShort[0] = (SOCHAR)'-';
m_szShort[2] = (SOCHAR)'\0';
m_nFlags = a_nFlags;
m_pszClump = NULL;
m_pszClump = nullptr;
#ifdef SO_MAX_ARGS
if (m_argc > SO_MAX_ARGS) {
@ -627,13 +627,13 @@ CSimpleOptTempl<SOCHAR>::Next()
}
}
SO_ASSERT(!m_pszClump || !*m_pszClump);
m_pszClump = NULL;
m_pszClump = nullptr;
// init for the next option
m_nOptionIdx = m_nNextOption;
m_nOptionId = -1;
m_pszOptionText = NULL;
m_pszOptionArg = NULL;
m_pszOptionText = nullptr;
m_pszOptionArg = nullptr;
m_nLastError = SO_SUCCESS;
// find the next option
@ -642,7 +642,7 @@ CSimpleOptTempl<SOCHAR>::Next()
int nOptIdx = m_nOptionIdx;
while (nTableIdx < 0 && nOptIdx < m_nLastArg) {
SOCHAR * pszArg = m_argv[nOptIdx];
m_pszOptionArg = NULL;
m_pszOptionArg = nullptr;
// find this option in the options table
cFirst = PrepareArg(pszArg);
@ -759,6 +759,8 @@ CSimpleOptTempl<SOCHAR>::Next()
// nothing to do. Caller must now check for valid arguments
// using GetMultiArg()
break;
default:
break;
}
}
@ -821,8 +823,8 @@ CSimpleOptTempl<SOCHAR>::NextClumped()
// prepare for the next clumped option
m_szShort[1] = *m_pszClump++;
m_nOptionId = -1;
m_pszOptionText = NULL;
m_pszOptionArg = NULL;
m_pszOptionText = nullptr;
m_pszOptionArg = nullptr;
m_nLastError = SO_SUCCESS;
// lookup this option, ensure that we are using exact matching
@ -1014,7 +1016,7 @@ CSimpleOptTempl<SOCHAR>::MultiArg(
// ensure we have enough arguments
if (m_nNextOption + a_nCount > m_nLastArg) {
m_nLastError = SO_ARG_MISSING;
return NULL;
return nullptr;
}
// our argument array
@ -1028,7 +1030,7 @@ CSimpleOptTempl<SOCHAR>::MultiArg(
if (rgpszArg[n][0] == (SOCHAR)'-') {
rgpszArg[n][0] = ch;
m_nLastError = SO_ARG_INVALID_DATA;
return NULL;
return nullptr;
}
rgpszArg[n][0] = ch;
}

View File

@ -71,7 +71,7 @@ bool EmberGenome(EmberOptions& opt)
eMutateMode mutMeth;
Ember<T> orig, save, selp0, selp1, parent0, parent1;
Ember<T> result, result1, result2, result3, interpolated;
Ember<T>* aselp0, *aselp1, *pTemplate = NULL;
Ember<T>* aselp0, *aselp1, *pTemplate = nullptr;
XmlToEmber<T> parser;
EmberToXml<T> emberToXml;
VariationList<T> varList;
@ -99,7 +99,7 @@ bool EmberGenome(EmberOptions& opt)
if (!opt.EmberCL())
{
if (opt.ThreadCount() != 0)
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : NULL);
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : nullptr);
}
else
{
@ -534,7 +534,7 @@ bool EmberGenome(EmberOptions& opt)
selp0 = embers[rand.Rand() % embers.size()];
save = selp0;
aselp0 = &selp0;
aselp1 = NULL;
aselp1 = nullptr;
os << tools.TruncateVariations(save, 5);
save.m_Edits = emberToXml.CreateNewEditdoc(aselp0, aselp1, os.str(), opt.Nick(), opt.Url(), opt.Id(), opt.Comment(), opt.SheepGen(), opt.SheepId());
}
@ -552,7 +552,7 @@ bool EmberGenome(EmberOptions& opt)
selp0 = embers[rand.Rand() % embers.size()];
orig = selp0;
aselp0 = &selp0;
aselp1 = NULL;
aselp1 = nullptr;
if (opt.Method() == "")
mutMeth = MUTATE_NOT_SPECIFIED;
@ -628,8 +628,8 @@ bool EmberGenome(EmberOptions& opt)
os << "random";
randomMode = true;
tools.Random(orig, vars, opt.Symmetry(), 0);
aselp0 = NULL;
aselp1 = NULL;
aselp0 = nullptr;
aselp1 = nullptr;
}
//Adjust bounding box half the time.
@ -756,15 +756,19 @@ bool EmberGenome(EmberOptions& opt)
/// <returns>0 if successful, else 1.</returns>
int _tmain(int argc, _TCHAR* argv[])
{
bool b, d = true;
bool b = false;
EmberOptions opt;
//Required for large allocs, else GPU memory usage will be severely limited to small sizes.
//This must be done in the application and not in the EmberCL DLL.
#ifdef WIN32
_putenv_s("GPU_MAX_ALLOC_PERCENT", "100");
#else
putenv((char*)"GPU_MAX_ALLOC_PERCENT=100");
#endif
if (opt.Populate(argc, argv, OPT_USE_GENOME))
return 0;
if (!opt.Populate(argc, argv, OPT_USE_GENOME))
{
#ifdef DO_DOUBLE
if (opt.Bits() == 64)
@ -782,6 +786,7 @@ int _tmain(int argc, _TCHAR* argv[])
cout << "Bits 32/int histogram no longer supported. Using bits == 33 (float)." << endl;
b = EmberGenome<float, float>(opt);
}
}
return b ? 0 : 1;
}

View File

@ -76,7 +76,7 @@ bool EmberRender(EmberOptions& opt)
cout << "Using " << opt.ThreadCount() << " manually specified threads." << endl;
}
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : NULL);
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : nullptr);
}
else
{
@ -92,7 +92,7 @@ bool EmberRender(EmberOptions& opt)
cout << "Cannot specify threads with OpenCL, using 1 thread." << endl;
opt.ThreadCount(1);
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : NULL);
renderer->ThreadCount(opt.ThreadCount(), opt.IsaacSeed() != "" ? opt.IsaacSeed().c_str() : nullptr);
if (opt.BitsPerChannel() != 8)
{
@ -151,7 +151,7 @@ bool EmberRender(EmberOptions& opt)
renderer->Transparency(opt.Transparency());
renderer->NumChannels(channels);
renderer->BytesPerChannel(opt.BitsPerChannel() / 8);
renderer->Callback(opt.DoProgress() ? progress.get() : NULL);
renderer->Callback(opt.DoProgress() ? progress.get() : nullptr);
for (i = 0; i < embers.size(); i++)
{
@ -274,7 +274,7 @@ bool EmberRender(EmberOptions& opt)
VerbosePrint("Bad values: " << stats.m_Badvals);
VerbosePrint("Render time: " + t.Format(stats.m_RenderMs));
VerbosePrint("Pure iter time: " + t.Format(stats.m_IterMs));
VerbosePrint("Iters/sec: " << unsigned __int64(stats.m_Iters / (stats.m_IterMs / 1000.0)) << endl);
VerbosePrint("Iters/sec: " << size_t(stats.m_Iters / (stats.m_IterMs / 1000.0)) << endl);
VerbosePrint("Writing " + filename);
if ((opt.Format() == "jpg" || opt.Format() == "bmp") && renderer->NumChannels() == 4)
@ -323,15 +323,19 @@ bool EmberRender(EmberOptions& opt)
/// <returns>0 if successful, else 1.</returns>
int _tmain(int argc, _TCHAR* argv[])
{
bool b, d = true;
bool b = false;
EmberOptions opt;
//Required for large allocs, else GPU memory usage will be severely limited to small sizes.
//This must be done in the application and not in the EmberCL DLL.
#ifdef WIN32
_putenv_s("GPU_MAX_ALLOC_PERCENT", "100");
#else
putenv((char*)"GPU_MAX_ALLOC_PERCENT=100");
#endif
if (opt.Populate(argc, argv, OPT_USE_RENDER))
return 0;
if (!opt.Populate(argc, argv, OPT_USE_RENDER))
{
#ifdef DO_DOUBLE
if (opt.Bits() == 64)
@ -349,6 +353,7 @@ int _tmain(int argc, _TCHAR* argv[])
cout << "Bits 32/int histogram no longer supported. Using bits == 33 (float)." << endl;
b = EmberRender<float, float>(opt);
}
}
return b ? 0 : 1;
}