From bf8833347d3fd1342277f0de16c7bc04dead2c74 Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Sat, 12 Nov 2022 17:00:51 +0100 Subject: [PATCH 01/10] Added Intel Arc A770 LE benchmarks in Readme --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ebecde28..0cc1c581 100644 --- a/README.md +++ b/README.md @@ -188,6 +188,7 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP | AMD Radeon RX Vega 64 | 13.35 | 8 | 484 | 1875 (59%) | 2878 (46%) | 3227 (51%) | | AMD Radeon RX 580 4GB | 6.50 | 4 | 256 | 946 (57%) | 1848 (56%) | 1577 (47%) | | AMD Radeon HD 7850 | 1.84 | 2 | 154 | 112 (11%) | 120 ( 6%) | 635 (32%) | +| Intel Arc A770 LE | 19.66 | 16 | 560 | 2741 (75%) | 4591 (63%) | 4626 (64%) | | Nvidia GeForce RTX 3090 Ti | 40.00 | 24 | 1008 | 5717 (87%) | 10956 (84%) | 10400 (79%) | | Nvidia GeForce RTX 3090 | 39.05 | 24 | 936 | 5418 (89%) | 10732 (88%) | 10215 (84%) | | Nvidia GeForce RTX 3080 Ti | 37.17 | 12 | 912 | 5202 (87%) | 9832 (87%) | 9347 (79%) | From d9d8300fb8d29aaf06c96d2b3b551d1e490ad8d5 Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Sun, 13 Nov 2022 20:18:03 +0100 Subject: [PATCH 02/10] Added Nvidia RTX 4090 benchmarks in Readme --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0cc1c581..f1cf823e 100644 --- a/README.md +++ b/README.md @@ -189,6 +189,7 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP | AMD Radeon RX 580 4GB | 6.50 | 4 | 256 | 946 (57%) | 1848 (56%) | 1577 (47%) | | AMD Radeon HD 7850 | 1.84 | 2 | 154 | 112 (11%) | 120 ( 6%) | 635 (32%) | | Intel Arc A770 LE | 19.66 | 16 | 560 | 2741 (75%) | 4591 (63%) | 4626 (64%) | +| Nvidia GeForce RTX 4090 | 82.58 | 24 | 1008 | 6040 (92%) | 11762 (90%) | 12212 (93%) | | Nvidia GeForce RTX 3090 Ti | 40.00 | 24 | 1008 | 5717 (87%) | 10956 (84%) | 10400 (79%) | | Nvidia GeForce RTX 3090 | 39.05 | 24 | 936 | 5418 (89%) | 10732 (88%) | 10215 (84%) | | Nvidia GeForce RTX 3080 Ti | 37.17 | 12 | 912 | 5202 (87%) | 9832 (87%) | 9347 (79%) | From b11f21214a9ca7af9de9d72bf65f0b016f71b2b1 Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Mon, 14 Nov 2022 07:14:48 +0100 Subject: [PATCH 03/10] Updated Nvidia RTX 4090 benchmarks in Readme (stock speeds now, original values were with memory overclock) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f1cf823e..fc6b03fb 100644 --- a/README.md +++ b/README.md @@ -189,7 +189,7 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP | AMD Radeon RX 580 4GB | 6.50 | 4 | 256 | 946 (57%) | 1848 (56%) | 1577 (47%) | | AMD Radeon HD 7850 | 1.84 | 2 | 154 | 112 (11%) | 120 ( 6%) | 635 (32%) | | Intel Arc A770 LE | 19.66 | 16 | 560 | 2741 (75%) | 4591 (63%) | 4626 (64%) | -| Nvidia GeForce RTX 4090 | 82.58 | 24 | 1008 | 6040 (92%) | 11762 (90%) | 12212 (93%) | +| Nvidia GeForce RTX 4090 | 82.58 | 24 | 1008 | 5624 (85%) | 11091 (85%) | 11496 (88%) | | Nvidia GeForce RTX 3090 Ti | 40.00 | 24 | 1008 | 5717 (87%) | 10956 (84%) | 10400 (79%) | | Nvidia GeForce RTX 3090 | 39.05 | 24 | 936 | 5418 (89%) | 10732 (88%) | 10215 (84%) | | Nvidia GeForce RTX 3080 Ti | 37.17 | 12 | 912 | 5202 (87%) | 9832 (87%) | 9347 (79%) | From b50a636b96b6e31cf87fe67138fb93f7ffb308dd Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Tue, 15 Nov 2022 15:53:28 +0100 Subject: [PATCH 04/10] Added Nvidia H100 PCIe 80GB benchmarks in Readme --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fc6b03fb..12033560 100644 --- a/README.md +++ b/README.md @@ -173,6 +173,7 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP | :---------------------------- | -----------------: | ----------: | -----------: | ---------------------: | ----------------------: | ----------------------: | | AMD Instinct MI250 (1 GCD) | 45.26 | 64 | 1638 | 5638 (53%) | 9030 (42%) | 8506 (40%) | | AMD Radeon VII | 13.83 | 16 | 1024 | 4898 (73%) | 7778 (58%) | 5256 (40%) | +| Nvidia H100 PCIe 80GB | 51.01 | 80 | 2000 | 11128 (85%) | 20624 (79%) | 13862 (53%) | | Nvidia A100 SXM4 80GB | 19.49 | 80 | 2039 | 10228 (77%) | 18448 (70%) | 11197 (42%) | | Nvidia A100 SXM4 40GB | 19.49 | 40 | 1555 | 8522 (84%) | 16013 (79%) | 11251 (56%) | | Nvidia A100 PCIe 40GB | 19.49 | 40 | 1555 | 8526 (84%) | 16035 (79%) | 11088 (55%) | From 57f0e132f93749def8a6e849a3f208324edd648f Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Tue, 15 Nov 2022 19:00:33 +0100 Subject: [PATCH 05/10] Added 2x AMD EPYC 9654 benchmarks in Readme --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 12033560..76ef0efa 100644 --- a/README.md +++ b/README.md @@ -232,6 +232,7 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP | Intel HD Graphics 5500 | 0.35 | 3 | 26 | 75 (45%) | 192 (58%) | 108 (32%) | | Intel HD Graphics 4600 | 0.38 | 2 | 26 | 105 (63%) | 115 (35%) | 34 (10%) | | Samsung ARM Mali-G72 MP18 | 0.24 | 4 | 29 | 14 ( 7%) | 17 ( 5%) | 12 ( 3%) | +| 2x AMD EPYC 9654 | 14.75 | 1536 | 922 | 1381 (23%) | 1814 (15%) | 1801 (15%) | | Intel Xeon Phi 7210 | 5.32 | 192 | 102 | 415 (62%) | 193 (15%) | 223 (17%) | | 4x Intel Xeon E5-4620 v4 | 2.69 | 512 | 273 | 460 (26%) | 275 ( 8%) | 239 ( 7%) | | 2x Intel Xeon E5-2630 v4 | 1.41 | 64 | 137 | 264 (30%) | 146 ( 8%) | 129 ( 7%) | From d5c76ab80b3554905f52a856f9737c654740046f Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Thu, 17 Nov 2022 10:07:18 +0100 Subject: [PATCH 06/10] Fixed typo in Readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 76ef0efa..ee4ab870 100644 --- a/README.md +++ b/README.md @@ -232,7 +232,7 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP | Intel HD Graphics 5500 | 0.35 | 3 | 26 | 75 (45%) | 192 (58%) | 108 (32%) | | Intel HD Graphics 4600 | 0.38 | 2 | 26 | 105 (63%) | 115 (35%) | 34 (10%) | | Samsung ARM Mali-G72 MP18 | 0.24 | 4 | 29 | 14 ( 7%) | 17 ( 5%) | 12 ( 3%) | -| 2x AMD EPYC 9654 | 14.75 | 1536 | 922 | 1381 (23%) | 1814 (15%) | 1801 (15%) | +| 2x AMD EPYC 9654 | 29.49 | 1536 | 922 | 1381 (23%) | 1814 (15%) | 1801 (15%) | | Intel Xeon Phi 7210 | 5.32 | 192 | 102 | 415 (62%) | 193 (15%) | 223 (17%) | | 4x Intel Xeon E5-4620 v4 | 2.69 | 512 | 273 | 460 (26%) | 275 ( 8%) | 239 ( 7%) | | 2x Intel Xeon E5-2630 v4 | 1.41 | 64 | 137 | 264 (30%) | 146 ( 8%) | 129 ( 7%) | From 27eb5ef3484fc75b7263c255a51245adac8f38f8 Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Fri, 18 Nov 2022 17:02:50 +0100 Subject: [PATCH 07/10] Added Quadro RTX 6000 benchmarks to Readme, fixed wrong TFLOPs/s estimate for Quadro RTX 6000 in OpenCL-Wrapper --- README.md | 1 + src/opencl.hpp | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index ee4ab870..d564fb72 100644 --- a/README.md +++ b/README.md @@ -200,6 +200,7 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP | Nvidia GeForce RTX 3060 | 13.17 | 12 | 360 | 2108 (90%) | 4070 (87%) | 3566 (76%) | | Nvidia GeForce RTX 3060M | 10.94 | 6 | 336 | 2019 (92%) | 4012 (92%) | 3572 (82%) | | Nvidia GeForce RTX 3050M | 7.13 | 4 | 192 | 1180 (94%) | 2339 (94%) | 2016 (81%) | +| Nvidia Quadro RTX 6000 | 16.31 | 24 | 672 | 3307 (75%) | 6836 (78%) | 6879 (79%) | | Nvidia Quadro RTX 8000 Pass. | 14.93 | 48 | 624 | 2591 (64%) | 5408 (67%) | 5607 (69%) | | Nvidia GeForce RTX 2080 Ti | 13.45 | 11 | 616 | 3194 (79%) | 6700 (84%) | 6853 (86%) | | Nvidia GeForce RTX 2080 Sup. | 11.34 | 8 | 496 | 2434 (75%) | 5284 (82%) | 5087 (79%) | diff --git a/src/opencl.hpp b/src/opencl.hpp index 79ba9677..29185c0d 100644 --- a/src/opencl.hpp +++ b/src/opencl.hpp @@ -47,10 +47,10 @@ struct Device_Info { is_cpu = cl_device.getInfo()==CL_DEVICE_TYPE_CPU; is_gpu = cl_device.getInfo()==CL_DEVICE_TYPE_GPU; const uint ipc = is_gpu?2u:32u; // IPC (instructions per cycle) is 2 for GPUs and 32 for most modern CPUs - const bool nvidia_192_cores_per_cu = contains_any(to_lower(name), {" 6", " 7", "ro k", "la k"}) || (clock_frequency<1000u&&contains(to_lower(name), "titan")); // identify Kepler GPUs - const bool nvidia_64_cores_per_cu = contains_any(to_lower(name), {"p100", "v100", "a100", "a30", " 16", " 20", "titan v", "titan rtx", "ro t", "la t", "ro rtx"}) && !contains(to_lower(name), "rtx a"); // identify P100, Volta, Turing, A100, A30 + const bool nvidia_192_cores_per_cu = contains_any(to_lower(name), {"gt 6", "gt 7", "gtx 6", "gtx 7", "quadro k", "tesla k"}) || (clock_frequency<1000u&&contains(to_lower(name), "titan")); // identify Kepler GPUs + const bool nvidia_64_cores_per_cu = contains_any(to_lower(name), {"p100", "v100", "a100", "a30", " 16", " 20", "titan v", "titan rtx", "quadro t", "tesla t", "quadro rtx"}) && !contains(to_lower(name), "rtx a"); // identify P100, Volta, Turing, A100, A30 const bool amd_128_cores_per_dualcu = contains(to_lower(name), "gfx10"); // identify RDNA/RDNA2 GPUs where dual CUs are reported - const float nvidia = (float)(contains(to_lower(vendor), "nvidia"))*(nvidia_192_cores_per_cu?192.0f:(nvidia_64_cores_per_cu?64.0f:128.0f)); // Nvidia GPUs have 192 cores/CU (Kepler), 128 cores/CU (Maxwell, Pascal, Ampere, Hopper, Ada) or 64 cores/CU (P100, Volta, Turing, A100, A30) + const float nvidia = (float)(contains(to_lower(vendor), "nvidia"))*(nvidia_64_cores_per_cu?64.0f:nvidia_192_cores_per_cu?192.0f:128.0f); // Nvidia GPUs have 192 cores/CU (Kepler), 128 cores/CU (Maxwell, Pascal, Ampere, Hopper, Ada) or 64 cores/CU (P100, Volta, Turing, A100, A30) const float amd = (float)(contains_any(to_lower(vendor), {"amd", "advanced"}))*(is_gpu?(amd_128_cores_per_dualcu?128.0f:64.0f):0.5f); // AMD GPUs have 64 cores/CU (GCN, CDNA) or 128 cores/dualCU (RDNA, RDNA2), AMD CPUs (with SMT) have 1/2 core/CU const float intel = (float)(contains(to_lower(vendor), "intel"))*(is_gpu?8.0f:0.5f); // Intel integrated GPUs usually have 8 cores/CU, Intel CPUs (with HT) have 1/2 core/CU const float apple = (float)(contains(to_lower(vendor), "apple"))*(128.0f); // Apple ARM GPUs usually have 128 cores/CU From a7100dfb4f03d647b6a6a536b5bbf84d6275319a Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Mon, 21 Nov 2022 19:48:09 +0100 Subject: [PATCH 08/10] Added more hardware benchmarks in Readme --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index d564fb72..3ace1a39 100644 --- a/README.md +++ b/README.md @@ -190,6 +190,7 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP | AMD Radeon RX 580 4GB | 6.50 | 4 | 256 | 946 (57%) | 1848 (56%) | 1577 (47%) | | AMD Radeon HD 7850 | 1.84 | 2 | 154 | 112 (11%) | 120 ( 6%) | 635 (32%) | | Intel Arc A770 LE | 19.66 | 16 | 560 | 2741 (75%) | 4591 (63%) | 4626 (64%) | +| Intel Arc A750 LE | 17.20 | 8 | 512 | 2625 (78%) | 4184 (63%) | 4238 (64%) | | Nvidia GeForce RTX 4090 | 82.58 | 24 | 1008 | 5624 (85%) | 11091 (85%) | 11496 (88%) | | Nvidia GeForce RTX 3090 Ti | 40.00 | 24 | 1008 | 5717 (87%) | 10956 (84%) | 10400 (79%) | | Nvidia GeForce RTX 3090 | 39.05 | 24 | 936 | 5418 (89%) | 10732 (88%) | 10215 (84%) | @@ -197,6 +198,7 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP | Nvidia GeForce RTX 3080 | 29.77 | 10 | 760 | 4230 (85%) | 8118 (82%) | 7714 (78%) | | Nvidia GeForce RTX 3070 | 20.31 | 8 | 448 | 2578 (88%) | 5096 (88%) | 5060 (87%) | | Nvidia GeForce RTX 3060 Ti | 16.49 | 8 | 448 | 2644 (90%) | 5129 (88%) | 4718 (81%) | +| Nvidia RTX A5000M | 16.59 | 16 | 448 | 2228 (76%) | 4461 (77%) | 3662 (63%) | | Nvidia GeForce RTX 3060 | 13.17 | 12 | 360 | 2108 (90%) | 4070 (87%) | 3566 (76%) | | Nvidia GeForce RTX 3060M | 10.94 | 6 | 336 | 2019 (92%) | 4012 (92%) | 3572 (82%) | | Nvidia GeForce RTX 3050M | 7.13 | 4 | 192 | 1180 (94%) | 2339 (94%) | 2016 (81%) | From 8c05d544478fb7777c15edcf9cca9952cfd2ced0 Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Tue, 22 Nov 2022 07:26:25 +0100 Subject: [PATCH 09/10] OpenCL-Wrapper update: More secure checks for FP64 and FP16 support (bug workaround with Intel Arc GPUs) --- src/opencl.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/opencl.hpp b/src/opencl.hpp index 29185c0d..a0bff159 100644 --- a/src/opencl.hpp +++ b/src/opencl.hpp @@ -37,9 +37,9 @@ struct Device_Info { max_constant_buffer = (uint)(cl_device.getInfo()/1024ull); // maximum constant buffer size in KB compute_units = (uint)cl_device.getInfo(); // compute units (CUs) can contain multiple cores depending on the microarchitecture clock_frequency = (uint)cl_device.getInfo(); // in MHz - is_fp64_capable = (uint)cl_device.getInfo(); + is_fp64_capable = (uint)cl_device.getInfo()*(uint)contains(cl_device.getInfo(), "cl_khr_fp64"); is_fp32_capable = (uint)cl_device.getInfo(); - is_fp16_capable = (uint)cl_device.getInfo(); + is_fp16_capable = (uint)cl_device.getInfo()*(uint)contains(cl_device.getInfo(), "cl_khr_fp16"); is_int64_capable = (uint)cl_device.getInfo(); is_int32_capable = (uint)cl_device.getInfo(); is_int16_capable = (uint)cl_device.getInfo(); From bde25ea0491c1280afd79f934fae96a553f67d4f Mon Sep 17 00:00:00 2001 From: Moritz Lehmann Date: Wed, 14 Dec 2022 13:54:46 +0100 Subject: [PATCH 10/10] Added interactive graphics mode on Linux with X11, re-wrote C++ graphics library to minimize API dependencies, colors are now signed int consistently, fixed streamline visualization in 2D --- .gitattributes | 1 + README.md | 8 +- make.sh | 11 +- src/X11/include/X11/X.h | 717 ++++++ src/X11/include/X11/Xfuncproto.h | 221 ++ src/X11/include/X11/Xlib.h | 4015 ++++++++++++++++++++++++++++++ src/X11/include/X11/Xosdefs.h | 116 + src/X11/lib/libX11.so | Bin 0 -> 1293928 bytes src/defines.hpp | 15 +- src/graphics.cpp | 1250 ++++------ src/graphics.hpp | 343 ++- src/info.cpp | 6 +- src/kernel.cpp | 139 +- src/lbm.cpp | 50 +- src/lbm.hpp | 6 +- src/main.cpp | 28 +- src/setup.cpp | 2 +- 17 files changed, 6045 insertions(+), 883 deletions(-) create mode 100644 src/X11/include/X11/X.h create mode 100644 src/X11/include/X11/Xfuncproto.h create mode 100644 src/X11/include/X11/Xlib.h create mode 100644 src/X11/include/X11/Xosdefs.h create mode 100644 src/X11/lib/libX11.so diff --git a/.gitattributes b/.gitattributes index 64fe8bac..703035e0 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,4 +1,5 @@ src/OpenCL/** linguist-vendored +src/X11/** linguist-vendored src/lodepng.* linguist-vendored src/kernel.cpp linguist-language=OpenCL src/setup.cpp linguist-documentation \ No newline at end of file diff --git a/README.md b/README.md index 3ace1a39..5d5eceb4 100644 --- a/README.md +++ b/README.md @@ -94,7 +94,7 @@ Q = Σαβ Παβαβ ΠαβP key to start/pause the simulation. +3. When done with the setup, hit compile+run on Windows in Visual Studio Community or execute `./make.sh` on Linux; this will automatically select the fastest installed GPU. Alternatively, you can add the device ID as the first command-line argument, for example `./make.sh 2` to compile+run on device 2, or `bin/FluidX3D.exe 2` to run the executable on device 2. Compile time for the entire code is about 10 seconds. If you use `INTERACTIVE_GRAPHICS` on Linux, change to the "compile on Linux with X11" command in `make.sh`. +4. With `INTERACTIVE_GRAPHICS`/`INTERACTIVE_GRAPHICS_ASCII` enabled, press the P key to start/pause the simulation. Toggle rendering modes with the keyboard: - 1: flags (and force vectors on solid boundary nodes if the extension is used) @@ -337,6 +337,8 @@ In consequence, the arithmetic intensity of this implementation is 2.13 (FP32/FP ## External Code/Libraries/Images used in FluidX3D - [OpenCL-Headers](https://github.com/KhronosGroup/OpenCL-Headers) for GPU parallelization ([Khronos Group](https://www.khronos.org/opencl/)) +- [Win32 API](https://learn.microsoft.com/en-us/windows/win32/api/winbase/) for interactive graphics in Windows ([Microsoft](https://www.microsoft.com/)) +- [X11/Xlib](https://www.x.org/releases/current/doc/libX11/libX11/libX11.html) for interactive graphics in Linux ([The Open Group](https://www.x.org/releases/current/doc/libX11/libX11/libX11.html)) - [marching-cubes tables](http://paulbourke.net/geometry/polygonise/) for isosurface generation on GPU ([Paul Bourke](http://paulbourke.net/geometry/)) - [`src/lodepng.cpp`](https://github.com/lvandeve/lodepng/blob/master/lodepng.cpp) and [`src/lodepng.hpp`](https://github.com/lvandeve/lodepng/blob/master/lodepng.h) for `.png` encoding and decoding ([Lode Vandevenne](https://lodev.org/)) - [SimplexNoise](https://weber.itn.liu.se/~stegu/simplexnoise/SimplexNoise.java) class in [`src/utilities.hpp`](https://github.com/ProjectPhysX/FluidX3D/blob/master/src/utilities.hpp) for generating continuous noise in 2D/3D/4D space ([Stefan Gustavson](https://github.com/stegu)) diff --git a/make.sh b/make.sh index 6b264b50..b5d93558 100644 --- a/make.sh +++ b/make.sh @@ -1,7 +1,12 @@ # command line argument $1: device ID; if empty, FluidX3D will automatically choose the fastest available device + mkdir -p bin # create directory for executable rm -f ./bin/FluidX3D.exe # prevent execution of old version if compiling fails -g++ ./src/*.cpp -o ./bin/FluidX3D.exe -std=c++17 -pthread -I./src/OpenCL/include -L./src/OpenCL/lib -lOpenCL # compile on Linux -#g++ ./src/*.cpp -o ./bin/FluidX3D.exe -std=c++17 -pthread -I./src/OpenCL/include -framework OpenCL # compile on macOS -#g++ ./src/*.cpp -o ./bin/FluidX3D.exe -std=c++17 -pthread -I./src/OpenCL/include -L/system/vendor/lib64 -lOpenCL # compile on Android + +#g++ ./src/*.cpp -o ./bin/FluidX3D.exe -std=c++17 -pthread -I./src/OpenCL/include -L./src/OpenCL/lib -lOpenCL -I./src/X11/include -L./src/X11/lib -lX11 # compile on Linux with X11 + +g++ ./src/*.cpp -o ./bin/FluidX3D.exe -std=c++17 -pthread -I./src/OpenCL/include -L./src/OpenCL/lib -lOpenCL # compile on Linux (without X11) +#g++ ./src/*.cpp -o ./bin/FluidX3D.exe -std=c++17 -pthread -I./src/OpenCL/include -framework OpenCL # compile on macOS (without X11) +#g++ ./src/*.cpp -o ./bin/FluidX3D.exe -std=c++17 -pthread -I./src/OpenCL/include -L/system/vendor/lib64 -lOpenCL # compile on Android (without X11) + ./bin/FluidX3D.exe $1 # run FluidX3D diff --git a/src/X11/include/X11/X.h b/src/X11/include/X11/X.h new file mode 100644 index 00000000..4df7d22e --- /dev/null +++ b/src/X11/include/X11/X.h @@ -0,0 +1,717 @@ +/* Definitions for the X window system likely to be used by applications */ + +#ifndef X_H +#define X_H + +/*********************************************************** + +Copyright 1987, 1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. + + All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission. + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ + +#define X_PROTOCOL 11 /* current protocol version */ +#define X_PROTOCOL_REVISION 0 /* current minor version */ + +/* Resources */ + +/* + * _XSERVER64 must ONLY be defined when compiling X server sources on + * systems where unsigned long is not 32 bits, must NOT be used in + * client or library code. + */ +#ifndef _XSERVER64 +# ifndef _XTYPEDEF_XID +# define _XTYPEDEF_XID +typedef unsigned long XID; +# endif +# ifndef _XTYPEDEF_MASK +# define _XTYPEDEF_MASK +typedef unsigned long Mask; +# endif +# ifndef _XTYPEDEF_ATOM +# define _XTYPEDEF_ATOM +typedef unsigned long Atom; /* Also in Xdefs.h */ +# endif +typedef unsigned long VisualID; +typedef unsigned long Time; +#else +# include +# ifndef _XTYPEDEF_XID +# define _XTYPEDEF_XID +typedef CARD32 XID; +# endif +# ifndef _XTYPEDEF_MASK +# define _XTYPEDEF_MASK +typedef CARD32 Mask; +# endif +# ifndef _XTYPEDEF_ATOM +# define _XTYPEDEF_ATOM +typedef CARD32 Atom; +# endif +typedef CARD32 VisualID; +typedef CARD32 Time; +#endif + +typedef XID Window; +typedef XID Drawable; +#ifndef _XTYPEDEF_FONT +# define _XTYPEDEF_FONT +typedef XID Font; +#endif +typedef XID Pixmap; +typedef XID Cursor; +typedef XID Colormap; +typedef XID GContext; +typedef XID KeySym; + +typedef unsigned char KeyCode; + +/***************************************************************** + * RESERVED RESOURCE AND CONSTANT DEFINITIONS + *****************************************************************/ + +#ifndef None +#define None 0L /* universal null resource or null atom */ +#endif + +#define ParentRelative 1L /* background pixmap in CreateWindow + and ChangeWindowAttributes */ + +#define CopyFromParent 0L /* border pixmap in CreateWindow + and ChangeWindowAttributes + special VisualID and special window + class passed to CreateWindow */ + +#define PointerWindow 0L /* destination window in SendEvent */ +#define InputFocus 1L /* destination window in SendEvent */ + +#define PointerRoot 1L /* focus window in SetInputFocus */ + +#define AnyPropertyType 0L /* special Atom, passed to GetProperty */ + +#define AnyKey 0L /* special Key Code, passed to GrabKey */ + +#define AnyButton 0L /* special Button Code, passed to GrabButton */ + +#define AllTemporary 0L /* special Resource ID passed to KillClient */ + +#define CurrentTime 0L /* special Time */ + +#define NoSymbol 0L /* special KeySym */ + +/***************************************************************** + * EVENT DEFINITIONS + *****************************************************************/ + +/* Input Event Masks. Used as event-mask window attribute and as arguments + to Grab requests. Not to be confused with event names. */ + +#define NoEventMask 0L +#define KeyPressMask (1L<<0) +#define KeyReleaseMask (1L<<1) +#define ButtonPressMask (1L<<2) +#define ButtonReleaseMask (1L<<3) +#define EnterWindowMask (1L<<4) +#define LeaveWindowMask (1L<<5) +#define PointerMotionMask (1L<<6) +#define PointerMotionHintMask (1L<<7) +#define Button1MotionMask (1L<<8) +#define Button2MotionMask (1L<<9) +#define Button3MotionMask (1L<<10) +#define Button4MotionMask (1L<<11) +#define Button5MotionMask (1L<<12) +#define ButtonMotionMask (1L<<13) +#define KeymapStateMask (1L<<14) +#define ExposureMask (1L<<15) +#define VisibilityChangeMask (1L<<16) +#define StructureNotifyMask (1L<<17) +#define ResizeRedirectMask (1L<<18) +#define SubstructureNotifyMask (1L<<19) +#define SubstructureRedirectMask (1L<<20) +#define FocusChangeMask (1L<<21) +#define PropertyChangeMask (1L<<22) +#define ColormapChangeMask (1L<<23) +#define OwnerGrabButtonMask (1L<<24) + +/* Event names. Used in "type" field in XEvent structures. Not to be +confused with event masks above. They start from 2 because 0 and 1 +are reserved in the protocol for errors and replies. */ + +#define KeyPress 2 +#define KeyRelease 3 +#define ButtonPress 4 +#define ButtonRelease 5 +#define MotionNotify 6 +#define EnterNotify 7 +#define LeaveNotify 8 +#define FocusIn 9 +#define FocusOut 10 +#define KeymapNotify 11 +#define Expose 12 +#define GraphicsExpose 13 +#define NoExpose 14 +#define VisibilityNotify 15 +#define CreateNotify 16 +#define DestroyNotify 17 +#define UnmapNotify 18 +#define MapNotify 19 +#define MapRequest 20 +#define ReparentNotify 21 +#define ConfigureNotify 22 +#define ConfigureRequest 23 +#define GravityNotify 24 +#define ResizeRequest 25 +#define CirculateNotify 26 +#define CirculateRequest 27 +#define PropertyNotify 28 +#define SelectionClear 29 +#define SelectionRequest 30 +#define SelectionNotify 31 +#define ColormapNotify 32 +#define ClientMessage 33 +#define MappingNotify 34 +#define GenericEvent 35 +#define LASTEvent 36 /* must be bigger than any event # */ + + +/* Key masks. Used as modifiers to GrabButton and GrabKey, results of QueryPointer, + state in various key-, mouse-, and button-related events. */ + +#define ShiftMask (1<<0) +#define LockMask (1<<1) +#define ControlMask (1<<2) +#define Mod1Mask (1<<3) +#define Mod2Mask (1<<4) +#define Mod3Mask (1<<5) +#define Mod4Mask (1<<6) +#define Mod5Mask (1<<7) + +/* modifier names. Used to build a SetModifierMapping request or + to read a GetModifierMapping request. These correspond to the + masks defined above. */ +#define ShiftMapIndex 0 +#define LockMapIndex 1 +#define ControlMapIndex 2 +#define Mod1MapIndex 3 +#define Mod2MapIndex 4 +#define Mod3MapIndex 5 +#define Mod4MapIndex 6 +#define Mod5MapIndex 7 + + +/* button masks. Used in same manner as Key masks above. Not to be confused + with button names below. */ + +#define Button1Mask (1<<8) +#define Button2Mask (1<<9) +#define Button3Mask (1<<10) +#define Button4Mask (1<<11) +#define Button5Mask (1<<12) + +#define AnyModifier (1<<15) /* used in GrabButton, GrabKey */ + + +/* button names. Used as arguments to GrabButton and as detail in ButtonPress + and ButtonRelease events. Not to be confused with button masks above. + Note that 0 is already defined above as "AnyButton". */ + +#define Button1 1 +#define Button2 2 +#define Button3 3 +#define Button4 4 +#define Button5 5 + +/* Notify modes */ + +#define NotifyNormal 0 +#define NotifyGrab 1 +#define NotifyUngrab 2 +#define NotifyWhileGrabbed 3 + +#define NotifyHint 1 /* for MotionNotify events */ + +/* Notify detail */ + +#define NotifyAncestor 0 +#define NotifyVirtual 1 +#define NotifyInferior 2 +#define NotifyNonlinear 3 +#define NotifyNonlinearVirtual 4 +#define NotifyPointer 5 +#define NotifyPointerRoot 6 +#define NotifyDetailNone 7 + +/* Visibility notify */ + +#define VisibilityUnobscured 0 +#define VisibilityPartiallyObscured 1 +#define VisibilityFullyObscured 2 + +/* Circulation request */ + +#define PlaceOnTop 0 +#define PlaceOnBottom 1 + +/* protocol families */ + +#define FamilyInternet 0 /* IPv4 */ +#define FamilyDECnet 1 +#define FamilyChaos 2 +#define FamilyInternet6 6 /* IPv6 */ + +/* authentication families not tied to a specific protocol */ +#define FamilyServerInterpreted 5 + +/* Property notification */ + +#define PropertyNewValue 0 +#define PropertyDelete 1 + +/* Color Map notification */ + +#define ColormapUninstalled 0 +#define ColormapInstalled 1 + +/* GrabPointer, GrabButton, GrabKeyboard, GrabKey Modes */ + +#define GrabModeSync 0 +#define GrabModeAsync 1 + +/* GrabPointer, GrabKeyboard reply status */ + +#define GrabSuccess 0 +#define AlreadyGrabbed 1 +#define GrabInvalidTime 2 +#define GrabNotViewable 3 +#define GrabFrozen 4 + +/* AllowEvents modes */ + +#define AsyncPointer 0 +#define SyncPointer 1 +#define ReplayPointer 2 +#define AsyncKeyboard 3 +#define SyncKeyboard 4 +#define ReplayKeyboard 5 +#define AsyncBoth 6 +#define SyncBoth 7 + +/* Used in SetInputFocus, GetInputFocus */ + +#define RevertToNone (int)None +#define RevertToPointerRoot (int)PointerRoot +#define RevertToParent 2 + +/***************************************************************** + * ERROR CODES + *****************************************************************/ + +#define Success 0 /* everything's okay */ +#define BadRequest 1 /* bad request code */ +#define BadValue 2 /* int parameter out of range */ +#define BadWindow 3 /* parameter not a Window */ +#define BadPixmap 4 /* parameter not a Pixmap */ +#define BadAtom 5 /* parameter not an Atom */ +#define BadCursor 6 /* parameter not a Cursor */ +#define BadFont 7 /* parameter not a Font */ +#define BadMatch 8 /* parameter mismatch */ +#define BadDrawable 9 /* parameter not a Pixmap or Window */ +#define BadAccess 10 /* depending on context: + - key/button already grabbed + - attempt to free an illegal + cmap entry + - attempt to store into a read-only + color map entry. + - attempt to modify the access control + list from other than the local host. + */ +#define BadAlloc 11 /* insufficient resources */ +#define BadColor 12 /* no such colormap */ +#define BadGC 13 /* parameter not a GC */ +#define BadIDChoice 14 /* choice not in range or already used */ +#define BadName 15 /* font or color name doesn't exist */ +#define BadLength 16 /* Request length incorrect */ +#define BadImplementation 17 /* server is defective */ + +#define FirstExtensionError 128 +#define LastExtensionError 255 + +/***************************************************************** + * WINDOW DEFINITIONS + *****************************************************************/ + +/* Window classes used by CreateWindow */ +/* Note that CopyFromParent is already defined as 0 above */ + +#define InputOutput 1 +#define InputOnly 2 + +/* Window attributes for CreateWindow and ChangeWindowAttributes */ + +#define CWBackPixmap (1L<<0) +#define CWBackPixel (1L<<1) +#define CWBorderPixmap (1L<<2) +#define CWBorderPixel (1L<<3) +#define CWBitGravity (1L<<4) +#define CWWinGravity (1L<<5) +#define CWBackingStore (1L<<6) +#define CWBackingPlanes (1L<<7) +#define CWBackingPixel (1L<<8) +#define CWOverrideRedirect (1L<<9) +#define CWSaveUnder (1L<<10) +#define CWEventMask (1L<<11) +#define CWDontPropagate (1L<<12) +#define CWColormap (1L<<13) +#define CWCursor (1L<<14) + +/* ConfigureWindow structure */ + +#define CWX (1<<0) +#define CWY (1<<1) +#define CWWidth (1<<2) +#define CWHeight (1<<3) +#define CWBorderWidth (1<<4) +#define CWSibling (1<<5) +#define CWStackMode (1<<6) + + +/* Bit Gravity */ + +#define ForgetGravity 0 +#define NorthWestGravity 1 +#define NorthGravity 2 +#define NorthEastGravity 3 +#define WestGravity 4 +#define CenterGravity 5 +#define EastGravity 6 +#define SouthWestGravity 7 +#define SouthGravity 8 +#define SouthEastGravity 9 +#define StaticGravity 10 + +/* Window gravity + bit gravity above */ + +#define UnmapGravity 0 + +/* Used in CreateWindow for backing-store hint */ + +#define NotUseful 0 +#define WhenMapped 1 +#define Always 2 + +/* Used in GetWindowAttributes reply */ + +#define IsUnmapped 0 +#define IsUnviewable 1 +#define IsViewable 2 + +/* Used in ChangeSaveSet */ + +#define SetModeInsert 0 +#define SetModeDelete 1 + +/* Used in ChangeCloseDownMode */ + +#define DestroyAll 0 +#define RetainPermanent 1 +#define RetainTemporary 2 + +/* Window stacking method (in configureWindow) */ + +#define Above 0 +#define Below 1 +#define TopIf 2 +#define BottomIf 3 +#define Opposite 4 + +/* Circulation direction */ + +#define RaiseLowest 0 +#define LowerHighest 1 + +/* Property modes */ + +#define PropModeReplace 0 +#define PropModePrepend 1 +#define PropModeAppend 2 + +/***************************************************************** + * GRAPHICS DEFINITIONS + *****************************************************************/ + +/* graphics functions, as in GC.alu */ + +#define GXclear 0x0 /* 0 */ +#define GXand 0x1 /* src AND dst */ +#define GXandReverse 0x2 /* src AND NOT dst */ +#define GXcopy 0x3 /* src */ +#define GXandInverted 0x4 /* NOT src AND dst */ +#define GXnoop 0x5 /* dst */ +#define GXxor 0x6 /* src XOR dst */ +#define GXor 0x7 /* src OR dst */ +#define GXnor 0x8 /* NOT src AND NOT dst */ +#define GXequiv 0x9 /* NOT src XOR dst */ +#define GXinvert 0xa /* NOT dst */ +#define GXorReverse 0xb /* src OR NOT dst */ +#define GXcopyInverted 0xc /* NOT src */ +#define GXorInverted 0xd /* NOT src OR dst */ +#define GXnand 0xe /* NOT src OR NOT dst */ +#define GXset 0xf /* 1 */ + +/* LineStyle */ + +#define LineSolid 0 +#define LineOnOffDash 1 +#define LineDoubleDash 2 + +/* capStyle */ + +#define CapNotLast 0 +#define CapButt 1 +#define CapRound 2 +#define CapProjecting 3 + +/* joinStyle */ + +#define JoinMiter 0 +#define JoinRound 1 +#define JoinBevel 2 + +/* fillStyle */ + +#define FillSolid 0 +#define FillTiled 1 +#define FillStippled 2 +#define FillOpaqueStippled 3 + +/* fillRule */ + +#define EvenOddRule 0 +#define WindingRule 1 + +/* subwindow mode */ + +#define ClipByChildren 0 +#define IncludeInferiors 1 + +/* SetClipRectangles ordering */ + +#define Unsorted 0 +#define YSorted 1 +#define YXSorted 2 +#define YXBanded 3 + +/* CoordinateMode for drawing routines */ + +#define CoordModeOrigin 0 /* relative to the origin */ +#define CoordModePrevious 1 /* relative to previous point */ + +/* Polygon shapes */ + +#define Complex 0 /* paths may intersect */ +#define Nonconvex 1 /* no paths intersect, but not convex */ +#define Convex 2 /* wholly convex */ + +/* Arc modes for PolyFillArc */ + +#define ArcChord 0 /* join endpoints of arc */ +#define ArcPieSlice 1 /* join endpoints to center of arc */ + +/* GC components: masks used in CreateGC, CopyGC, ChangeGC, OR'ed into + GC.stateChanges */ + +#define GCFunction (1L<<0) +#define GCPlaneMask (1L<<1) +#define GCForeground (1L<<2) +#define GCBackground (1L<<3) +#define GCLineWidth (1L<<4) +#define GCLineStyle (1L<<5) +#define GCCapStyle (1L<<6) +#define GCJoinStyle (1L<<7) +#define GCFillStyle (1L<<8) +#define GCFillRule (1L<<9) +#define GCTile (1L<<10) +#define GCStipple (1L<<11) +#define GCTileStipXOrigin (1L<<12) +#define GCTileStipYOrigin (1L<<13) +#define GCFont (1L<<14) +#define GCSubwindowMode (1L<<15) +#define GCGraphicsExposures (1L<<16) +#define GCClipXOrigin (1L<<17) +#define GCClipYOrigin (1L<<18) +#define GCClipMask (1L<<19) +#define GCDashOffset (1L<<20) +#define GCDashList (1L<<21) +#define GCArcMode (1L<<22) + +#define GCLastBit 22 +/***************************************************************** + * FONTS + *****************************************************************/ + +/* used in QueryFont -- draw direction */ + +#define FontLeftToRight 0 +#define FontRightToLeft 1 + +#define FontChange 255 + +/***************************************************************** + * IMAGING + *****************************************************************/ + +/* ImageFormat -- PutImage, GetImage */ + +#define XYBitmap 0 /* depth 1, XYFormat */ +#define XYPixmap 1 /* depth == drawable depth */ +#define ZPixmap 2 /* depth == drawable depth */ + +/***************************************************************** + * COLOR MAP STUFF + *****************************************************************/ + +/* For CreateColormap */ + +#define AllocNone 0 /* create map with no entries */ +#define AllocAll 1 /* allocate entire map writeable */ + + +/* Flags used in StoreNamedColor, StoreColors */ + +#define DoRed (1<<0) +#define DoGreen (1<<1) +#define DoBlue (1<<2) + +/***************************************************************** + * CURSOR STUFF + *****************************************************************/ + +/* QueryBestSize Class */ + +#define CursorShape 0 /* largest size that can be displayed */ +#define TileShape 1 /* size tiled fastest */ +#define StippleShape 2 /* size stippled fastest */ + +/***************************************************************** + * KEYBOARD/POINTER STUFF + *****************************************************************/ + +#define AutoRepeatModeOff 0 +#define AutoRepeatModeOn 1 +#define AutoRepeatModeDefault 2 + +#define LedModeOff 0 +#define LedModeOn 1 + +/* masks for ChangeKeyboardControl */ + +#define KBKeyClickPercent (1L<<0) +#define KBBellPercent (1L<<1) +#define KBBellPitch (1L<<2) +#define KBBellDuration (1L<<3) +#define KBLed (1L<<4) +#define KBLedMode (1L<<5) +#define KBKey (1L<<6) +#define KBAutoRepeatMode (1L<<7) + +#define MappingSuccess 0 +#define MappingBusy 1 +#define MappingFailed 2 + +#define MappingModifier 0 +#define MappingKeyboard 1 +#define MappingPointer 2 + +/***************************************************************** + * SCREEN SAVER STUFF + *****************************************************************/ + +#define DontPreferBlanking 0 +#define PreferBlanking 1 +#define DefaultBlanking 2 + +#define DisableScreenSaver 0 +#define DisableScreenInterval 0 + +#define DontAllowExposures 0 +#define AllowExposures 1 +#define DefaultExposures 2 + +/* for ForceScreenSaver */ + +#define ScreenSaverReset 0 +#define ScreenSaverActive 1 + +/***************************************************************** + * HOSTS AND CONNECTIONS + *****************************************************************/ + +/* for ChangeHosts */ + +#define HostInsert 0 +#define HostDelete 1 + +/* for ChangeAccessControl */ + +#define EnableAccess 1 +#define DisableAccess 0 + +/* Display classes used in opening the connection + * Note that the statically allocated ones are even numbered and the + * dynamically changeable ones are odd numbered */ + +#define StaticGray 0 +#define GrayScale 1 +#define StaticColor 2 +#define PseudoColor 3 +#define TrueColor 4 +#define DirectColor 5 + + +/* Byte order used in imageByteOrder and bitmapBitOrder */ + +#define LSBFirst 0 +#define MSBFirst 1 + +#endif /* X_H */ diff --git a/src/X11/include/X11/Xfuncproto.h b/src/X11/include/X11/Xfuncproto.h new file mode 100644 index 00000000..89bc96fd --- /dev/null +++ b/src/X11/include/X11/Xfuncproto.h @@ -0,0 +1,221 @@ +/* + * +Copyright 1989, 1991, 1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + */ + +/* Definitions to make function prototypes manageable */ + +#ifndef _XFUNCPROTO_H_ +#define _XFUNCPROTO_H_ + +#ifndef NeedFunctionPrototypes +#define NeedFunctionPrototypes 1 +#endif /* NeedFunctionPrototypes */ + +#ifndef NeedVarargsPrototypes +#define NeedVarargsPrototypes 1 +#endif /* NeedVarargsPrototypes */ + +#if NeedFunctionPrototypes + +#ifndef NeedNestedPrototypes +#define NeedNestedPrototypes 1 +#endif /* NeedNestedPrototypes */ + +#ifndef _Xconst +#define _Xconst const +#endif /* _Xconst */ + +/* Function prototype configuration (see configure for more info) */ +#if !defined(NARROWPROTO) && \ + (defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)) +#define NARROWPROTO +#endif +#ifndef FUNCPROTO +#define FUNCPROTO 15 +#endif + +#ifndef NeedWidePrototypes +#ifdef NARROWPROTO +#define NeedWidePrototypes 0 +#else +#define NeedWidePrototypes 1 /* default to make interropt. easier */ +#endif +#endif /* NeedWidePrototypes */ + +#endif /* NeedFunctionPrototypes */ + +#ifndef _XFUNCPROTOBEGIN +#if defined(__cplusplus) || defined(c_plusplus) /* for C++ V2.0 */ +#define _XFUNCPROTOBEGIN extern "C" { /* do not leave open across includes */ +#define _XFUNCPROTOEND } +#else +#define _XFUNCPROTOBEGIN +#define _XFUNCPROTOEND +#endif +#endif /* _XFUNCPROTOBEGIN */ + +/* http://clang.llvm.org/docs/LanguageExtensions.html#has-attribute */ +#ifndef __has_attribute +# define __has_attribute(x) 0 /* Compatibility with non-clang compilers. */ +#endif +#ifndef __has_feature +# define __has_feature(x) 0 /* Compatibility with non-clang compilers. */ +#endif +#ifndef __has_extension +# define __has_extension(x) 0 /* Compatibility with non-clang compilers. */ +#endif + +/* Added in X11R6.9, so available in any version of modular xproto */ +#if __has_attribute(__sentinel__) || (defined(__GNUC__) && (__GNUC__ >= 4)) +# define _X_SENTINEL(x) __attribute__ ((__sentinel__(x))) +#else +# define _X_SENTINEL(x) +#endif /* GNUC >= 4 */ + +/* Added in X11R6.9, so available in any version of modular xproto */ +#if (__has_attribute(visibility) || (defined(__GNUC__) && (__GNUC__ >= 4))) \ + && !defined(__CYGWIN__) && !defined(__MINGW32__) +# define _X_EXPORT __attribute__((visibility("default"))) +# define _X_HIDDEN __attribute__((visibility("hidden"))) +# define _X_INTERNAL __attribute__((visibility("internal"))) +#elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x550) +# define _X_EXPORT __global +# define _X_HIDDEN __hidden +# define _X_INTERNAL __hidden +#else /* not gcc >= 4 and not Sun Studio >= 8 */ +# define _X_EXPORT +# define _X_HIDDEN +# define _X_INTERNAL +#endif /* GNUC >= 4 */ + +/* Branch prediction hints for individual conditionals */ +/* requires xproto >= 7.0.9 */ +#if defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 303) +# define _X_LIKELY(x) __builtin_expect(!!(x), 1) +# define _X_UNLIKELY(x) __builtin_expect(!!(x), 0) +#else /* not gcc >= 3.3 */ +# define _X_LIKELY(x) (x) +# define _X_UNLIKELY(x) (x) +#endif + +/* Bulk branch prediction hints via marking error path functions as "cold" */ +/* requires xproto >= 7.0.25 */ +#if __has_attribute(__cold__) || \ + (defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 403)) /* 4.3+ */ +# define _X_COLD __attribute__((__cold__)) +#else +# define _X_COLD /* nothing */ +#endif + +/* Added in X11R6.9, so available in any version of modular xproto */ +#if __has_attribute(deprecated) \ + || (defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 301)) \ + || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5130)) +# define _X_DEPRECATED __attribute__((deprecated)) +#else /* not gcc >= 3.1 */ +# define _X_DEPRECATED +#endif + +/* requires xproto >= 7.0.30 */ +#if __has_extension(attribute_deprecated_with_message) || \ + (defined(__GNUC__) && ((__GNUC__ >= 5) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 5)))) +# define _X_DEPRECATED_MSG(_msg) __attribute__((deprecated(_msg))) +#else +# define _X_DEPRECATED_MSG(_msg) _X_DEPRECATED +#endif + +/* requires xproto >= 7.0.17 */ +#if __has_attribute(noreturn) \ + || (defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 205)) \ + || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) +# define _X_NORETURN __attribute((noreturn)) +#else +# define _X_NORETURN +#endif /* GNUC */ + +/* Added in X11R6.9, so available in any version of modular xproto */ +#if __has_attribute(__format__) \ + || defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 203) +# define _X_ATTRIBUTE_PRINTF(x,y) __attribute__((__format__(__printf__,x,y))) +#else /* not gcc >= 2.3 */ +# define _X_ATTRIBUTE_PRINTF(x,y) +#endif + +/* requires xproto >= 7.0.22 - since this uses either gcc or C99 variable + argument macros, must be only used inside #ifdef _X_NONNULL guards, as + many legacy X clients are compiled in C89 mode still. */ +#if __has_attribute(nonnull) \ + && defined(__STDC_VERSION__) && (__STDC_VERSION__ - 0 >= 199901L) /* C99 */ +#define _X_NONNULL(...) __attribute__((nonnull(__VA_ARGS__))) +#elif __has_attribute(nonnull) \ + || defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 303) +#define _X_NONNULL(args...) __attribute__((nonnull(args))) +#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ - 0 >= 199901L) /* C99 */ +#define _X_NONNULL(...) /* */ +#endif + +/* requires xproto >= 7.0.22 */ +#if __has_attribute(__unused__) \ + || defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 205) +#define _X_UNUSED __attribute__((__unused__)) +#else +#define _X_UNUSED /* */ +#endif + +/* C99 keyword "inline" or equivalent extensions in pre-C99 compilers */ +/* requires xproto >= 7.0.9 + (introduced in 7.0.8 but didn't support all compilers until 7.0.9) */ +#if defined(inline) /* assume autoconf set it correctly */ || \ + (defined(__STDC_VERSION__) && (__STDC_VERSION__ - 0 >= 199901L)) /* C99 */ || \ + (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x550)) +# define _X_INLINE inline +#elif defined(__GNUC__) && !defined(__STRICT_ANSI__) /* gcc w/C89+extensions */ +# define _X_INLINE __inline__ +#else +# define _X_INLINE +#endif + +/* C99 keyword "restrict" or equivalent extensions in pre-C99 compilers */ +/* requires xproto >= 7.0.21 */ +#ifndef _X_RESTRICT_KYWD +# if defined(restrict) /* assume autoconf set it correctly */ || \ + (defined(__STDC_VERSION__) && (__STDC_VERSION__ - 0 >= 199901L) /* C99 */ \ + && !defined(__cplusplus)) /* Workaround g++ issue on Solaris */ +# define _X_RESTRICT_KYWD restrict +# elif defined(__GNUC__) && !defined(__STRICT_ANSI__) /* gcc w/C89+extensions */ +# define _X_RESTRICT_KYWD __restrict__ +# else +# define _X_RESTRICT_KYWD +# endif +#endif + +/* requires xproto >= 7.0.30 */ +#if __has_attribute(no_sanitize_thread) +# define _X_NOTSAN __attribute__((no_sanitize_thread)) +#else +# define _X_NOTSAN +#endif + +#endif /* _XFUNCPROTO_H_ */ diff --git a/src/X11/include/X11/Xlib.h b/src/X11/include/X11/Xlib.h new file mode 100644 index 00000000..84403f79 --- /dev/null +++ b/src/X11/include/X11/Xlib.h @@ -0,0 +1,4015 @@ +/* + +Copyright 1985, 1986, 1987, 1991, 1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ + + +/* + * Xlib.h - Header definition and support file for the C subroutine + * interface library (Xlib) to the X Window System Protocol (V11). + * Structures and symbols starting with "_" are private to the library. + */ +#ifndef _X11_XLIB_H_ +#define _X11_XLIB_H_ + +#define XlibSpecificationRelease 6 + +#include + +#if defined(__SCO__) || defined(__UNIXWARE__) +#include +#endif + +#include + +/* applications should not depend on these two headers being included! */ +#include +#include + +#ifndef X_WCHAR +#include +#else +#ifdef __UNIXOS2__ +#include +#else +/* replace this with #include or typedef appropriate for your system */ +typedef unsigned long wchar_t; +#endif +#endif + + +extern int +_Xmblen( + char *str, + int len + ); + +/* API mentioning "UTF8" or "utf8" is an XFree86 extension, introduced in + November 2000. Its presence is indicated through the following macro. */ +#define X_HAVE_UTF8_STRING 1 + +/* The Xlib structs are full of implicit padding to properly align members. + We can't clean that up without breaking ABI, so tell clang not to bother + complaining about it. */ +#ifdef __clang__ +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wpadded" +#endif + +typedef char *XPointer; + +#define Bool int +#define Status int +#define True 1 +#define False 0 + +#define QueuedAlready 0 +#define QueuedAfterReading 1 +#define QueuedAfterFlush 2 + +#define ConnectionNumber(dpy) (((_XPrivDisplay)(dpy))->fd) +#define RootWindow(dpy, scr) (ScreenOfDisplay(dpy,scr)->root) +#define DefaultScreen(dpy) (((_XPrivDisplay)(dpy))->default_screen) +#define DefaultRootWindow(dpy) (ScreenOfDisplay(dpy,DefaultScreen(dpy))->root) +#define DefaultVisual(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_visual) +#define DefaultGC(dpy, scr) (ScreenOfDisplay(dpy,scr)->default_gc) +#define BlackPixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->black_pixel) +#define WhitePixel(dpy, scr) (ScreenOfDisplay(dpy,scr)->white_pixel) +#define AllPlanes ((unsigned long)~0L) +#define QLength(dpy) (((_XPrivDisplay)(dpy))->qlen) +#define DisplayWidth(dpy, scr) (ScreenOfDisplay(dpy,scr)->width) +#define DisplayHeight(dpy, scr) (ScreenOfDisplay(dpy,scr)->height) +#define DisplayWidthMM(dpy, scr)(ScreenOfDisplay(dpy,scr)->mwidth) +#define DisplayHeightMM(dpy, scr)(ScreenOfDisplay(dpy,scr)->mheight) +#define DisplayPlanes(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_depth) +#define DisplayCells(dpy, scr) (DefaultVisual(dpy,scr)->map_entries) +#define ScreenCount(dpy) (((_XPrivDisplay)(dpy))->nscreens) +#define ServerVendor(dpy) (((_XPrivDisplay)(dpy))->vendor) +#define ProtocolVersion(dpy) (((_XPrivDisplay)(dpy))->proto_major_version) +#define ProtocolRevision(dpy) (((_XPrivDisplay)(dpy))->proto_minor_version) +#define VendorRelease(dpy) (((_XPrivDisplay)(dpy))->release) +#define DisplayString(dpy) (((_XPrivDisplay)(dpy))->display_name) +#define DefaultDepth(dpy, scr) (ScreenOfDisplay(dpy,scr)->root_depth) +#define DefaultColormap(dpy, scr)(ScreenOfDisplay(dpy,scr)->cmap) +#define BitmapUnit(dpy) (((_XPrivDisplay)(dpy))->bitmap_unit) +#define BitmapBitOrder(dpy) (((_XPrivDisplay)(dpy))->bitmap_bit_order) +#define BitmapPad(dpy) (((_XPrivDisplay)(dpy))->bitmap_pad) +#define ImageByteOrder(dpy) (((_XPrivDisplay)(dpy))->byte_order) +#define NextRequest(dpy) (((_XPrivDisplay)(dpy))->request + 1) +#define LastKnownRequestProcessed(dpy) (((_XPrivDisplay)(dpy))->last_request_read) + +/* macros for screen oriented applications (toolkit) */ +#define ScreenOfDisplay(dpy, scr)(&((_XPrivDisplay)(dpy))->screens[scr]) +#define DefaultScreenOfDisplay(dpy) ScreenOfDisplay(dpy,DefaultScreen(dpy)) +#define DisplayOfScreen(s) ((s)->display) +#define RootWindowOfScreen(s) ((s)->root) +#define BlackPixelOfScreen(s) ((s)->black_pixel) +#define WhitePixelOfScreen(s) ((s)->white_pixel) +#define DefaultColormapOfScreen(s)((s)->cmap) +#define DefaultDepthOfScreen(s) ((s)->root_depth) +#define DefaultGCOfScreen(s) ((s)->default_gc) +#define DefaultVisualOfScreen(s)((s)->root_visual) +#define WidthOfScreen(s) ((s)->width) +#define HeightOfScreen(s) ((s)->height) +#define WidthMMOfScreen(s) ((s)->mwidth) +#define HeightMMOfScreen(s) ((s)->mheight) +#define PlanesOfScreen(s) ((s)->root_depth) +#define CellsOfScreen(s) (DefaultVisualOfScreen((s))->map_entries) +#define MinCmapsOfScreen(s) ((s)->min_maps) +#define MaxCmapsOfScreen(s) ((s)->max_maps) +#define DoesSaveUnders(s) ((s)->save_unders) +#define DoesBackingStore(s) ((s)->backing_store) +#define EventMaskOfScreen(s) ((s)->root_input_mask) + +/* + * Extensions need a way to hang private data on some structures. + */ +typedef struct _XExtData { + int number; /* number returned by XRegisterExtension */ + struct _XExtData *next; /* next item on list of data for structure */ + int (*free_private)( /* called to free private storage */ + struct _XExtData *extension + ); + XPointer private_data; /* data private to this extension. */ +} XExtData; + +/* + * This file contains structures used by the extension mechanism. + */ +typedef struct { /* public to extension, cannot be changed */ + int extension; /* extension number */ + int major_opcode; /* major op-code assigned by server */ + int first_event; /* first event number for the extension */ + int first_error; /* first error number for the extension */ +} XExtCodes; + +/* + * Data structure for retrieving info about pixmap formats. + */ + +typedef struct { + int depth; + int bits_per_pixel; + int scanline_pad; +} XPixmapFormatValues; + + +/* + * Data structure for setting graphics context. + */ +typedef struct { + int function; /* logical operation */ + unsigned long plane_mask;/* plane mask */ + unsigned long foreground;/* foreground pixel */ + unsigned long background;/* background pixel */ + int line_width; /* line width */ + int line_style; /* LineSolid, LineOnOffDash, LineDoubleDash */ + int cap_style; /* CapNotLast, CapButt, + CapRound, CapProjecting */ + int join_style; /* JoinMiter, JoinRound, JoinBevel */ + int fill_style; /* FillSolid, FillTiled, + FillStippled, FillOpaeueStippled */ + int fill_rule; /* EvenOddRule, WindingRule */ + int arc_mode; /* ArcChord, ArcPieSlice */ + Pixmap tile; /* tile pixmap for tiling operations */ + Pixmap stipple; /* stipple 1 plane pixmap for stipping */ + int ts_x_origin; /* offset for tile or stipple operations */ + int ts_y_origin; + Font font; /* default text font for text operations */ + int subwindow_mode; /* ClipByChildren, IncludeInferiors */ + Bool graphics_exposures;/* boolean, should exposures be generated */ + int clip_x_origin; /* origin for clipping */ + int clip_y_origin; + Pixmap clip_mask; /* bitmap clipping; other calls for rects */ + int dash_offset; /* patterned/dashed line information */ + char dashes; +} XGCValues; + +/* + * Graphics context. The contents of this structure are implementation + * dependent. A GC should be treated as opaque by application code. + */ + +typedef struct _XGC +#ifdef XLIB_ILLEGAL_ACCESS +{ + XExtData *ext_data; /* hook for extension to hang data */ + GContext gid; /* protocol ID for graphics context */ + /* there is more to this structure, but it is private to Xlib */ +} +#endif +*GC; + +/* + * Visual structure; contains information about colormapping possible. + */ +typedef struct { + XExtData *ext_data; /* hook for extension to hang data */ + VisualID visualid; /* visual id of this visual */ +#if defined(__cplusplus) || defined(c_plusplus) + int c_class; /* C++ class of screen (monochrome, etc.) */ +#else + int class; /* class of screen (monochrome, etc.) */ +#endif + unsigned long red_mask, green_mask, blue_mask; /* mask values */ + int bits_per_rgb; /* log base 2 of distinct color values */ + int map_entries; /* color map entries */ +} Visual; + +/* + * Depth structure; contains information for each possible depth. + */ +typedef struct { + int depth; /* this depth (Z) of the depth */ + int nvisuals; /* number of Visual types at this depth */ + Visual *visuals; /* list of visuals possible at this depth */ +} Depth; + +/* + * Information about the screen. The contents of this structure are + * implementation dependent. A Screen should be treated as opaque + * by application code. + */ + +struct _XDisplay; /* Forward declare before use for C++ */ + +typedef struct { + XExtData *ext_data; /* hook for extension to hang data */ + struct _XDisplay *display;/* back pointer to display structure */ + Window root; /* Root window id. */ + int width, height; /* width and height of screen */ + int mwidth, mheight; /* width and height of in millimeters */ + int ndepths; /* number of depths possible */ + Depth *depths; /* list of allowable depths on the screen */ + int root_depth; /* bits per pixel */ + Visual *root_visual; /* root visual */ + GC default_gc; /* GC for the root root visual */ + Colormap cmap; /* default color map */ + unsigned long white_pixel; + unsigned long black_pixel; /* White and Black pixel values */ + int max_maps, min_maps; /* max and min color maps */ + int backing_store; /* Never, WhenMapped, Always */ + Bool save_unders; + long root_input_mask; /* initial root input mask */ +} Screen; + +/* + * Format structure; describes ZFormat data the screen will understand. + */ +typedef struct { + XExtData *ext_data; /* hook for extension to hang data */ + int depth; /* depth of this image format */ + int bits_per_pixel; /* bits/pixel at this depth */ + int scanline_pad; /* scanline must padded to this multiple */ +} ScreenFormat; + +/* + * Data structure for setting window attributes. + */ +typedef struct { + Pixmap background_pixmap; /* background or None or ParentRelative */ + unsigned long background_pixel; /* background pixel */ + Pixmap border_pixmap; /* border of the window */ + unsigned long border_pixel; /* border pixel value */ + int bit_gravity; /* one of bit gravity values */ + int win_gravity; /* one of the window gravity values */ + int backing_store; /* NotUseful, WhenMapped, Always */ + unsigned long backing_planes;/* planes to be preseved if possible */ + unsigned long backing_pixel;/* value to use in restoring planes */ + Bool save_under; /* should bits under be saved? (popups) */ + long event_mask; /* set of events that should be saved */ + long do_not_propagate_mask; /* set of events that should not propagate */ + Bool override_redirect; /* boolean value for override-redirect */ + Colormap colormap; /* color map to be associated with window */ + Cursor cursor; /* cursor to be displayed (or None) */ +} XSetWindowAttributes; + +typedef struct { + int x, y; /* location of window */ + int width, height; /* width and height of window */ + int border_width; /* border width of window */ + int depth; /* depth of window */ + Visual *visual; /* the associated visual structure */ + Window root; /* root of screen containing window */ +#if defined(__cplusplus) || defined(c_plusplus) + int c_class; /* C++ InputOutput, InputOnly*/ +#else + int class; /* InputOutput, InputOnly*/ +#endif + int bit_gravity; /* one of bit gravity values */ + int win_gravity; /* one of the window gravity values */ + int backing_store; /* NotUseful, WhenMapped, Always */ + unsigned long backing_planes;/* planes to be preserved if possible */ + unsigned long backing_pixel;/* value to be used when restoring planes */ + Bool save_under; /* boolean, should bits under be saved? */ + Colormap colormap; /* color map to be associated with window */ + Bool map_installed; /* boolean, is color map currently installed*/ + int map_state; /* IsUnmapped, IsUnviewable, IsViewable */ + long all_event_masks; /* set of events all people have interest in*/ + long your_event_mask; /* my event mask */ + long do_not_propagate_mask; /* set of events that should not propagate */ + Bool override_redirect; /* boolean value for override-redirect */ + Screen *screen; /* back pointer to correct screen */ +} XWindowAttributes; + +/* + * Data structure for host setting; getting routines. + * + */ + +typedef struct { + int family; /* for example FamilyInternet */ + int length; /* length of address, in bytes */ + char *address; /* pointer to where to find the bytes */ +} XHostAddress; + +/* + * Data structure for ServerFamilyInterpreted addresses in host routines + */ +typedef struct { + int typelength; /* length of type string, in bytes */ + int valuelength; /* length of value string, in bytes */ + char *type; /* pointer to where to find the type string */ + char *value; /* pointer to where to find the address */ +} XServerInterpretedAddress; + +/* + * Data structure for "image" data, used by image manipulation routines. + */ +typedef struct _XImage { + int width, height; /* size of image */ + int xoffset; /* number of pixels offset in X direction */ + int format; /* XYBitmap, XYPixmap, ZPixmap */ + char *data; /* pointer to image data */ + int byte_order; /* data byte order, LSBFirst, MSBFirst */ + int bitmap_unit; /* quant. of scanline 8, 16, 32 */ + int bitmap_bit_order; /* LSBFirst, MSBFirst */ + int bitmap_pad; /* 8, 16, 32 either XY or ZPixmap */ + int depth; /* depth of image */ + int bytes_per_line; /* accelarator to next line */ + int bits_per_pixel; /* bits per pixel (ZPixmap) */ + unsigned long red_mask; /* bits in z arrangment */ + unsigned long green_mask; + unsigned long blue_mask; + XPointer obdata; /* hook for the object routines to hang on */ + struct funcs { /* image manipulation routines */ + struct _XImage *(*create_image)( + struct _XDisplay* /* display */, + Visual* /* visual */, + unsigned int /* depth */, + int /* format */, + int /* offset */, + char* /* data */, + unsigned int /* width */, + unsigned int /* height */, + int /* bitmap_pad */, + int /* bytes_per_line */); + int (*destroy_image) (struct _XImage *); + unsigned long (*get_pixel) (struct _XImage *, int, int); + int (*put_pixel) (struct _XImage *, int, int, unsigned long); + struct _XImage *(*sub_image)(struct _XImage *, int, int, unsigned int, unsigned int); + int (*add_pixel) (struct _XImage *, long); + } f; +} XImage; + +/* + * Data structure for XReconfigureWindow + */ +typedef struct { + int x, y; + int width, height; + int border_width; + Window sibling; + int stack_mode; +} XWindowChanges; + +/* + * Data structure used by color operations + */ +typedef struct { + unsigned long pixel; + unsigned short red, green, blue; + char flags; /* do_red, do_green, do_blue */ + char pad; +} XColor; + +/* + * Data structures for graphics operations. On most machines, these are + * congruent with the wire protocol structures, so reformatting the data + * can be avoided on these architectures. + */ +typedef struct { + short x1, y1, x2, y2; +} XSegment; + +typedef struct { + short x, y; +} XPoint; + +typedef struct { + short x, y; + unsigned short width, height; +} XRectangle; + +typedef struct { + short x, y; + unsigned short width, height; + short angle1, angle2; +} XArc; + + +/* Data structure for XChangeKeyboardControl */ + +typedef struct { + int key_click_percent; + int bell_percent; + int bell_pitch; + int bell_duration; + int led; + int led_mode; + int key; + int auto_repeat_mode; /* On, Off, Default */ +} XKeyboardControl; + +/* Data structure for XGetKeyboardControl */ + +typedef struct { + int key_click_percent; + int bell_percent; + unsigned int bell_pitch, bell_duration; + unsigned long led_mask; + int global_auto_repeat; + char auto_repeats[32]; +} XKeyboardState; + +/* Data structure for XGetMotionEvents. */ + +typedef struct { + Time time; + short x, y; +} XTimeCoord; + +/* Data structure for X{Set,Get}ModifierMapping */ + +typedef struct { + int max_keypermod; /* The server's max # of keys per modifier */ + KeyCode *modifiermap; /* An 8 by max_keypermod array of modifiers */ +} XModifierKeymap; + + +/* + * Display datatype maintaining display specific data. + * The contents of this structure are implementation dependent. + * A Display should be treated as opaque by application code. + */ +#ifndef XLIB_ILLEGAL_ACCESS +typedef struct _XDisplay Display; +#endif + +struct _XPrivate; /* Forward declare before use for C++ */ +struct _XrmHashBucketRec; + +typedef struct +#ifdef XLIB_ILLEGAL_ACCESS +_XDisplay +#endif +{ + XExtData *ext_data; /* hook for extension to hang data */ + struct _XPrivate *private1; + int fd; /* Network socket. */ + int private2; + int proto_major_version;/* major version of server's X protocol */ + int proto_minor_version;/* minor version of servers X protocol */ + char *vendor; /* vendor of the server hardware */ + XID private3; + XID private4; + XID private5; + int private6; + XID (*resource_alloc)( /* allocator function */ + struct _XDisplay* + ); + int byte_order; /* screen byte order, LSBFirst, MSBFirst */ + int bitmap_unit; /* padding and data requirements */ + int bitmap_pad; /* padding requirements on bitmaps */ + int bitmap_bit_order; /* LeastSignificant or MostSignificant */ + int nformats; /* number of pixmap formats in list */ + ScreenFormat *pixmap_format; /* pixmap format list */ + int private8; + int release; /* release of the server */ + struct _XPrivate *private9, *private10; + int qlen; /* Length of input event queue */ + unsigned long last_request_read; /* seq number of last event read */ + unsigned long request; /* sequence number of last request. */ + XPointer private11; + XPointer private12; + XPointer private13; + XPointer private14; + unsigned max_request_size; /* maximum number 32 bit words in request*/ + struct _XrmHashBucketRec *db; + int (*private15)( + struct _XDisplay* + ); + char *display_name; /* "host:display" string used on this connect*/ + int default_screen; /* default screen for operations */ + int nscreens; /* number of screens on this server*/ + Screen *screens; /* pointer to list of screens */ + unsigned long motion_buffer; /* size of motion buffer */ + unsigned long private16; + int min_keycode; /* minimum defined keycode */ + int max_keycode; /* maximum defined keycode */ + XPointer private17; + XPointer private18; + int private19; + char *xdefaults; /* contents of defaults from server */ + /* there is more to this structure, but it is private to Xlib */ +} +#ifdef XLIB_ILLEGAL_ACCESS +Display, +#endif +*_XPrivDisplay; + +#undef _XEVENT_ +#ifndef _XEVENT_ +/* + * Definitions of specific events. + */ +typedef struct { + int type; /* of event */ + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; /* "event" window it is reported relative to */ + Window root; /* root window that the event occurred on */ + Window subwindow; /* child window */ + Time time; /* milliseconds */ + int x, y; /* pointer x, y coordinates in event window */ + int x_root, y_root; /* coordinates relative to root */ + unsigned int state; /* key or button mask */ + unsigned int keycode; /* detail */ + Bool same_screen; /* same screen flag */ +} XKeyEvent; +typedef XKeyEvent XKeyPressedEvent; +typedef XKeyEvent XKeyReleasedEvent; + +typedef struct { + int type; /* of event */ + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; /* "event" window it is reported relative to */ + Window root; /* root window that the event occurred on */ + Window subwindow; /* child window */ + Time time; /* milliseconds */ + int x, y; /* pointer x, y coordinates in event window */ + int x_root, y_root; /* coordinates relative to root */ + unsigned int state; /* key or button mask */ + unsigned int button; /* detail */ + Bool same_screen; /* same screen flag */ +} XButtonEvent; +typedef XButtonEvent XButtonPressedEvent; +typedef XButtonEvent XButtonReleasedEvent; + +typedef struct { + int type; /* of event */ + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; /* "event" window reported relative to */ + Window root; /* root window that the event occurred on */ + Window subwindow; /* child window */ + Time time; /* milliseconds */ + int x, y; /* pointer x, y coordinates in event window */ + int x_root, y_root; /* coordinates relative to root */ + unsigned int state; /* key or button mask */ + char is_hint; /* detail */ + Bool same_screen; /* same screen flag */ +} XMotionEvent; +typedef XMotionEvent XPointerMovedEvent; + +typedef struct { + int type; /* of event */ + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; /* "event" window reported relative to */ + Window root; /* root window that the event occurred on */ + Window subwindow; /* child window */ + Time time; /* milliseconds */ + int x, y; /* pointer x, y coordinates in event window */ + int x_root, y_root; /* coordinates relative to root */ + int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */ + int detail; + /* + * NotifyAncestor, NotifyVirtual, NotifyInferior, + * NotifyNonlinear,NotifyNonlinearVirtual + */ + Bool same_screen; /* same screen flag */ + Bool focus; /* boolean focus */ + unsigned int state; /* key or button mask */ +} XCrossingEvent; +typedef XCrossingEvent XEnterWindowEvent; +typedef XCrossingEvent XLeaveWindowEvent; + +typedef struct { + int type; /* FocusIn or FocusOut */ + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; /* window of event */ + int mode; /* NotifyNormal, NotifyWhileGrabbed, + NotifyGrab, NotifyUngrab */ + int detail; + /* + * NotifyAncestor, NotifyVirtual, NotifyInferior, + * NotifyNonlinear,NotifyNonlinearVirtual, NotifyPointer, + * NotifyPointerRoot, NotifyDetailNone + */ +} XFocusChangeEvent; +typedef XFocusChangeEvent XFocusInEvent; +typedef XFocusChangeEvent XFocusOutEvent; + +/* generated on EnterWindow and FocusIn when KeyMapState selected */ +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; + char key_vector[32]; +} XKeymapEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; + int x, y; + int width, height; + int count; /* if non-zero, at least this many more */ +} XExposeEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Drawable drawable; + int x, y; + int width, height; + int count; /* if non-zero, at least this many more */ + int major_code; /* core is CopyArea or CopyPlane */ + int minor_code; /* not defined in the core */ +} XGraphicsExposeEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Drawable drawable; + int major_code; /* core is CopyArea or CopyPlane */ + int minor_code; /* not defined in the core */ +} XNoExposeEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; + int state; /* Visibility state */ +} XVisibilityEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window parent; /* parent of the window */ + Window window; /* window id of window created */ + int x, y; /* window location */ + int width, height; /* size of window */ + int border_width; /* border width */ + Bool override_redirect; /* creation should be overridden */ +} XCreateWindowEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window event; + Window window; +} XDestroyWindowEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window event; + Window window; + Bool from_configure; +} XUnmapEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window event; + Window window; + Bool override_redirect; /* boolean, is override set... */ +} XMapEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window parent; + Window window; +} XMapRequestEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window event; + Window window; + Window parent; + int x, y; + Bool override_redirect; +} XReparentEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window event; + Window window; + int x, y; + int width, height; + int border_width; + Window above; + Bool override_redirect; +} XConfigureEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window event; + Window window; + int x, y; +} XGravityEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; + int width, height; +} XResizeRequestEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window parent; + Window window; + int x, y; + int width, height; + int border_width; + Window above; + int detail; /* Above, Below, TopIf, BottomIf, Opposite */ + unsigned long value_mask; +} XConfigureRequestEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window event; + Window window; + int place; /* PlaceOnTop, PlaceOnBottom */ +} XCirculateEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window parent; + Window window; + int place; /* PlaceOnTop, PlaceOnBottom */ +} XCirculateRequestEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; + Atom atom; + Time time; + int state; /* NewValue, Deleted */ +} XPropertyEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; + Atom selection; + Time time; +} XSelectionClearEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window owner; + Window requestor; + Atom selection; + Atom target; + Atom property; + Time time; +} XSelectionRequestEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window requestor; + Atom selection; + Atom target; + Atom property; /* ATOM or None */ + Time time; +} XSelectionEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; + Colormap colormap; /* COLORMAP or None */ +#if defined(__cplusplus) || defined(c_plusplus) + Bool c_new; /* C++ */ +#else + Bool new; +#endif + int state; /* ColormapInstalled, ColormapUninstalled */ +} XColormapEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; + Atom message_type; + int format; + union { + char b[20]; + short s[10]; + long l[5]; + } data; +} XClientMessageEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display; /* Display the event was read from */ + Window window; /* unused */ + int request; /* one of MappingModifier, MappingKeyboard, + MappingPointer */ + int first_keycode; /* first keycode */ + int count; /* defines range of change w. first_keycode*/ +} XMappingEvent; + +typedef struct { + int type; + Display *display; /* Display the event was read from */ + XID resourceid; /* resource id */ + unsigned long serial; /* serial number of failed request */ + unsigned char error_code; /* error code of failed request */ + unsigned char request_code; /* Major op-code of failed request */ + unsigned char minor_code; /* Minor op-code of failed request */ +} XErrorEvent; + +typedef struct { + int type; + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent request */ + Display *display;/* Display the event was read from */ + Window window; /* window on which event was requested in event mask */ +} XAnyEvent; + + +/*************************************************************** + * + * GenericEvent. This event is the standard event for all newer extensions. + */ + +typedef struct + { + int type; /* of event. Always GenericEvent */ + unsigned long serial; /* # of last request processed */ + Bool send_event; /* true if from SendEvent request */ + Display *display; /* Display the event was read from */ + int extension; /* major opcode of extension that caused the event */ + int evtype; /* actual event type. */ + } XGenericEvent; + +typedef struct { + int type; /* of event. Always GenericEvent */ + unsigned long serial; /* # of last request processed */ + Bool send_event; /* true if from SendEvent request */ + Display *display; /* Display the event was read from */ + int extension; /* major opcode of extension that caused the event */ + int evtype; /* actual event type. */ + unsigned int cookie; + void *data; +} XGenericEventCookie; + +/* + * this union is defined so Xlib can always use the same sized + * event structure internally, to avoid memory fragmentation. + */ +typedef union _XEvent { + int type; /* must not be changed; first element */ + XAnyEvent xany; + XKeyEvent xkey; + XButtonEvent xbutton; + XMotionEvent xmotion; + XCrossingEvent xcrossing; + XFocusChangeEvent xfocus; + XExposeEvent xexpose; + XGraphicsExposeEvent xgraphicsexpose; + XNoExposeEvent xnoexpose; + XVisibilityEvent xvisibility; + XCreateWindowEvent xcreatewindow; + XDestroyWindowEvent xdestroywindow; + XUnmapEvent xunmap; + XMapEvent xmap; + XMapRequestEvent xmaprequest; + XReparentEvent xreparent; + XConfigureEvent xconfigure; + XGravityEvent xgravity; + XResizeRequestEvent xresizerequest; + XConfigureRequestEvent xconfigurerequest; + XCirculateEvent xcirculate; + XCirculateRequestEvent xcirculaterequest; + XPropertyEvent xproperty; + XSelectionClearEvent xselectionclear; + XSelectionRequestEvent xselectionrequest; + XSelectionEvent xselection; + XColormapEvent xcolormap; + XClientMessageEvent xclient; + XMappingEvent xmapping; + XErrorEvent xerror; + XKeymapEvent xkeymap; + XGenericEvent xgeneric; + XGenericEventCookie xcookie; + long pad[24]; +} XEvent; +#endif + +#define XAllocID(dpy) ((*((_XPrivDisplay)(dpy))->resource_alloc)((dpy))) + +/* + * per character font metric information. + */ +typedef struct { + short lbearing; /* origin to left edge of raster */ + short rbearing; /* origin to right edge of raster */ + short width; /* advance to next char's origin */ + short ascent; /* baseline to top edge of raster */ + short descent; /* baseline to bottom edge of raster */ + unsigned short attributes; /* per char flags (not predefined) */ +} XCharStruct; + +/* + * To allow arbitrary information with fonts, there are additional properties + * returned. + */ +typedef struct { + Atom name; + unsigned long card32; +} XFontProp; + +typedef struct { + XExtData *ext_data; /* hook for extension to hang data */ + Font fid; /* Font id for this font */ + unsigned direction; /* hint about direction the font is painted */ + unsigned min_char_or_byte2;/* first character */ + unsigned max_char_or_byte2;/* last character */ + unsigned min_byte1; /* first row that exists */ + unsigned max_byte1; /* last row that exists */ + Bool all_chars_exist;/* flag if all characters have non-zero size*/ + unsigned default_char; /* char to print for undefined character */ + int n_properties; /* how many properties there are */ + XFontProp *properties; /* pointer to array of additional properties*/ + XCharStruct min_bounds; /* minimum bounds over all existing char*/ + XCharStruct max_bounds; /* maximum bounds over all existing char*/ + XCharStruct *per_char; /* first_char to last_char information */ + int ascent; /* log. extent above baseline for spacing */ + int descent; /* log. descent below baseline for spacing */ +} XFontStruct; + +/* + * PolyText routines take these as arguments. + */ +typedef struct { + char *chars; /* pointer to string */ + int nchars; /* number of characters */ + int delta; /* delta between strings */ + Font font; /* font to print it in, None don't change */ +} XTextItem; + +typedef struct { /* normal 16 bit characters are two bytes */ + unsigned char byte1; + unsigned char byte2; +} XChar2b; + +typedef struct { + XChar2b *chars; /* two byte characters */ + int nchars; /* number of characters */ + int delta; /* delta between strings */ + Font font; /* font to print it in, None don't change */ +} XTextItem16; + + +typedef union { Display *display; + GC gc; + Visual *visual; + Screen *screen; + ScreenFormat *pixmap_format; + XFontStruct *font; } XEDataObject; + +typedef struct { + XRectangle max_ink_extent; + XRectangle max_logical_extent; +} XFontSetExtents; + +/* unused: +typedef void (*XOMProc)(); + */ + +typedef struct _XOM *XOM; +typedef struct _XOC *XOC, *XFontSet; + +typedef struct { + char *chars; + int nchars; + int delta; + XFontSet font_set; +} XmbTextItem; + +typedef struct { + wchar_t *chars; + int nchars; + int delta; + XFontSet font_set; +} XwcTextItem; + +#define XNRequiredCharSet "requiredCharSet" +#define XNQueryOrientation "queryOrientation" +#define XNBaseFontName "baseFontName" +#define XNOMAutomatic "omAutomatic" +#define XNMissingCharSet "missingCharSet" +#define XNDefaultString "defaultString" +#define XNOrientation "orientation" +#define XNDirectionalDependentDrawing "directionalDependentDrawing" +#define XNContextualDrawing "contextualDrawing" +#define XNFontInfo "fontInfo" + +typedef struct { + int charset_count; + char **charset_list; +} XOMCharSetList; + +typedef enum { + XOMOrientation_LTR_TTB, + XOMOrientation_RTL_TTB, + XOMOrientation_TTB_LTR, + XOMOrientation_TTB_RTL, + XOMOrientation_Context +} XOrientation; + +typedef struct { + int num_orientation; + XOrientation *orientation; /* Input Text description */ +} XOMOrientation; + +typedef struct { + int num_font; + XFontStruct **font_struct_list; + char **font_name_list; +} XOMFontInfo; + +typedef struct _XIM *XIM; +typedef struct _XIC *XIC; + +typedef void (*XIMProc)( + XIM, + XPointer, + XPointer +); + +typedef Bool (*XICProc)( + XIC, + XPointer, + XPointer +); + +typedef void (*XIDProc)( + Display*, + XPointer, + XPointer +); + +typedef unsigned long XIMStyle; + +typedef struct { + unsigned short count_styles; + XIMStyle *supported_styles; +} XIMStyles; + +#define XIMPreeditArea 0x0001L +#define XIMPreeditCallbacks 0x0002L +#define XIMPreeditPosition 0x0004L +#define XIMPreeditNothing 0x0008L +#define XIMPreeditNone 0x0010L +#define XIMStatusArea 0x0100L +#define XIMStatusCallbacks 0x0200L +#define XIMStatusNothing 0x0400L +#define XIMStatusNone 0x0800L + +#define XNVaNestedList "XNVaNestedList" +#define XNQueryInputStyle "queryInputStyle" +#define XNClientWindow "clientWindow" +#define XNInputStyle "inputStyle" +#define XNFocusWindow "focusWindow" +#define XNResourceName "resourceName" +#define XNResourceClass "resourceClass" +#define XNGeometryCallback "geometryCallback" +#define XNDestroyCallback "destroyCallback" +#define XNFilterEvents "filterEvents" +#define XNPreeditStartCallback "preeditStartCallback" +#define XNPreeditDoneCallback "preeditDoneCallback" +#define XNPreeditDrawCallback "preeditDrawCallback" +#define XNPreeditCaretCallback "preeditCaretCallback" +#define XNPreeditStateNotifyCallback "preeditStateNotifyCallback" +#define XNPreeditAttributes "preeditAttributes" +#define XNStatusStartCallback "statusStartCallback" +#define XNStatusDoneCallback "statusDoneCallback" +#define XNStatusDrawCallback "statusDrawCallback" +#define XNStatusAttributes "statusAttributes" +#define XNArea "area" +#define XNAreaNeeded "areaNeeded" +#define XNSpotLocation "spotLocation" +#define XNColormap "colorMap" +#define XNStdColormap "stdColorMap" +#define XNForeground "foreground" +#define XNBackground "background" +#define XNBackgroundPixmap "backgroundPixmap" +#define XNFontSet "fontSet" +#define XNLineSpace "lineSpace" +#define XNCursor "cursor" + +#define XNQueryIMValuesList "queryIMValuesList" +#define XNQueryICValuesList "queryICValuesList" +#define XNVisiblePosition "visiblePosition" +#define XNR6PreeditCallback "r6PreeditCallback" +#define XNStringConversionCallback "stringConversionCallback" +#define XNStringConversion "stringConversion" +#define XNResetState "resetState" +#define XNHotKey "hotKey" +#define XNHotKeyState "hotKeyState" +#define XNPreeditState "preeditState" +#define XNSeparatorofNestedList "separatorofNestedList" + +#define XBufferOverflow -1 +#define XLookupNone 1 +#define XLookupChars 2 +#define XLookupKeySym 3 +#define XLookupBoth 4 + +typedef void *XVaNestedList; + +typedef struct { + XPointer client_data; + XIMProc callback; +} XIMCallback; + +typedef struct { + XPointer client_data; + XICProc callback; +} XICCallback; + +typedef unsigned long XIMFeedback; + +#define XIMReverse 1L +#define XIMUnderline (1L<<1) +#define XIMHighlight (1L<<2) +#define XIMPrimary (1L<<5) +#define XIMSecondary (1L<<6) +#define XIMTertiary (1L<<7) +#define XIMVisibleToForward (1L<<8) +#define XIMVisibleToBackword (1L<<9) +#define XIMVisibleToCenter (1L<<10) + +typedef struct _XIMText { + unsigned short length; + XIMFeedback *feedback; + Bool encoding_is_wchar; + union { + char *multi_byte; + wchar_t *wide_char; + } string; +} XIMText; + +typedef unsigned long XIMPreeditState; + +#define XIMPreeditUnKnown 0L +#define XIMPreeditEnable 1L +#define XIMPreeditDisable (1L<<1) + +typedef struct _XIMPreeditStateNotifyCallbackStruct { + XIMPreeditState state; +} XIMPreeditStateNotifyCallbackStruct; + +typedef unsigned long XIMResetState; + +#define XIMInitialState 1L +#define XIMPreserveState (1L<<1) + +typedef unsigned long XIMStringConversionFeedback; + +#define XIMStringConversionLeftEdge (0x00000001) +#define XIMStringConversionRightEdge (0x00000002) +#define XIMStringConversionTopEdge (0x00000004) +#define XIMStringConversionBottomEdge (0x00000008) +#define XIMStringConversionConcealed (0x00000010) +#define XIMStringConversionWrapped (0x00000020) + +typedef struct _XIMStringConversionText { + unsigned short length; + XIMStringConversionFeedback *feedback; + Bool encoding_is_wchar; + union { + char *mbs; + wchar_t *wcs; + } string; +} XIMStringConversionText; + +typedef unsigned short XIMStringConversionPosition; + +typedef unsigned short XIMStringConversionType; + +#define XIMStringConversionBuffer (0x0001) +#define XIMStringConversionLine (0x0002) +#define XIMStringConversionWord (0x0003) +#define XIMStringConversionChar (0x0004) + +typedef unsigned short XIMStringConversionOperation; + +#define XIMStringConversionSubstitution (0x0001) +#define XIMStringConversionRetrieval (0x0002) + +typedef enum { + XIMForwardChar, XIMBackwardChar, + XIMForwardWord, XIMBackwardWord, + XIMCaretUp, XIMCaretDown, + XIMNextLine, XIMPreviousLine, + XIMLineStart, XIMLineEnd, + XIMAbsolutePosition, + XIMDontChange +} XIMCaretDirection; + +typedef struct _XIMStringConversionCallbackStruct { + XIMStringConversionPosition position; + XIMCaretDirection direction; + XIMStringConversionOperation operation; + unsigned short factor; + XIMStringConversionText *text; +} XIMStringConversionCallbackStruct; + +typedef struct _XIMPreeditDrawCallbackStruct { + int caret; /* Cursor offset within pre-edit string */ + int chg_first; /* Starting change position */ + int chg_length; /* Length of the change in character count */ + XIMText *text; +} XIMPreeditDrawCallbackStruct; + +typedef enum { + XIMIsInvisible, /* Disable caret feedback */ + XIMIsPrimary, /* UI defined caret feedback */ + XIMIsSecondary /* UI defined caret feedback */ +} XIMCaretStyle; + +typedef struct _XIMPreeditCaretCallbackStruct { + int position; /* Caret offset within pre-edit string */ + XIMCaretDirection direction; /* Caret moves direction */ + XIMCaretStyle style; /* Feedback of the caret */ +} XIMPreeditCaretCallbackStruct; + +typedef enum { + XIMTextType, + XIMBitmapType +} XIMStatusDataType; + +typedef struct _XIMStatusDrawCallbackStruct { + XIMStatusDataType type; + union { + XIMText *text; + Pixmap bitmap; + } data; +} XIMStatusDrawCallbackStruct; + +typedef struct _XIMHotKeyTrigger { + KeySym keysym; + int modifier; + int modifier_mask; +} XIMHotKeyTrigger; + +typedef struct _XIMHotKeyTriggers { + int num_hot_key; + XIMHotKeyTrigger *key; +} XIMHotKeyTriggers; + +typedef unsigned long XIMHotKeyState; + +#define XIMHotKeyStateON (0x0001L) +#define XIMHotKeyStateOFF (0x0002L) + +typedef struct { + unsigned short count_values; + char **supported_values; +} XIMValuesList; + +_XFUNCPROTOBEGIN + +#if defined(WIN32) && !defined(_XLIBINT_) +#define _Xdebug (*_Xdebug_p) +#endif + +extern int _Xdebug; + +extern XFontStruct *XLoadQueryFont( + Display* /* display */, + _Xconst char* /* name */ +); + +extern XFontStruct *XQueryFont( + Display* /* display */, + XID /* font_ID */ +); + + +extern XTimeCoord *XGetMotionEvents( + Display* /* display */, + Window /* w */, + Time /* start */, + Time /* stop */, + int* /* nevents_return */ +); + +extern XModifierKeymap *XDeleteModifiermapEntry( + XModifierKeymap* /* modmap */, +#if NeedWidePrototypes + unsigned int /* keycode_entry */, +#else + KeyCode /* keycode_entry */, +#endif + int /* modifier */ +); + +extern XModifierKeymap *XGetModifierMapping( + Display* /* display */ +); + +extern XModifierKeymap *XInsertModifiermapEntry( + XModifierKeymap* /* modmap */, +#if NeedWidePrototypes + unsigned int /* keycode_entry */, +#else + KeyCode /* keycode_entry */, +#endif + int /* modifier */ +); + +extern XModifierKeymap *XNewModifiermap( + int /* max_keys_per_mod */ +); + +extern XImage *XCreateImage( + Display* /* display */, + Visual* /* visual */, + unsigned int /* depth */, + int /* format */, + int /* offset */, + char* /* data */, + unsigned int /* width */, + unsigned int /* height */, + int /* bitmap_pad */, + int /* bytes_per_line */ +); +extern Status XInitImage( + XImage* /* image */ +); +extern XImage *XGetImage( + Display* /* display */, + Drawable /* d */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */, + unsigned long /* plane_mask */, + int /* format */ +); +extern XImage *XGetSubImage( + Display* /* display */, + Drawable /* d */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */, + unsigned long /* plane_mask */, + int /* format */, + XImage* /* dest_image */, + int /* dest_x */, + int /* dest_y */ +); + +/* + * X function declarations. + */ +extern Display *XOpenDisplay( + _Xconst char* /* display_name */ +); + +extern void XrmInitialize( + void +); + +extern char *XFetchBytes( + Display* /* display */, + int* /* nbytes_return */ +); +extern char *XFetchBuffer( + Display* /* display */, + int* /* nbytes_return */, + int /* buffer */ +); +extern char *XGetAtomName( + Display* /* display */, + Atom /* atom */ +); +extern Status XGetAtomNames( + Display* /* dpy */, + Atom* /* atoms */, + int /* count */, + char** /* names_return */ +); +extern char *XGetDefault( + Display* /* display */, + _Xconst char* /* program */, + _Xconst char* /* option */ +); +extern char *XDisplayName( + _Xconst char* /* string */ +); +extern char *XKeysymToString( + KeySym /* keysym */ +); + +extern int (*XSynchronize( + Display* /* display */, + Bool /* onoff */ +))( + Display* /* display */ +); +extern int (*XSetAfterFunction( + Display* /* display */, + int (*) ( + Display* /* display */ + ) /* procedure */ +))( + Display* /* display */ +); +extern Atom XInternAtom( + Display* /* display */, + _Xconst char* /* atom_name */, + Bool /* only_if_exists */ +); +extern Status XInternAtoms( + Display* /* dpy */, + char** /* names */, + int /* count */, + Bool /* onlyIfExists */, + Atom* /* atoms_return */ +); +extern Colormap XCopyColormapAndFree( + Display* /* display */, + Colormap /* colormap */ +); +extern Colormap XCreateColormap( + Display* /* display */, + Window /* w */, + Visual* /* visual */, + int /* alloc */ +); +extern Cursor XCreatePixmapCursor( + Display* /* display */, + Pixmap /* source */, + Pixmap /* mask */, + XColor* /* foreground_color */, + XColor* /* background_color */, + unsigned int /* x */, + unsigned int /* y */ +); +extern Cursor XCreateGlyphCursor( + Display* /* display */, + Font /* source_font */, + Font /* mask_font */, + unsigned int /* source_char */, + unsigned int /* mask_char */, + XColor _Xconst * /* foreground_color */, + XColor _Xconst * /* background_color */ +); +extern Cursor XCreateFontCursor( + Display* /* display */, + unsigned int /* shape */ +); +extern Font XLoadFont( + Display* /* display */, + _Xconst char* /* name */ +); +extern GC XCreateGC( + Display* /* display */, + Drawable /* d */, + unsigned long /* valuemask */, + XGCValues* /* values */ +); +extern GContext XGContextFromGC( + GC /* gc */ +); +extern void XFlushGC( + Display* /* display */, + GC /* gc */ +); +extern Pixmap XCreatePixmap( + Display* /* display */, + Drawable /* d */, + unsigned int /* width */, + unsigned int /* height */, + unsigned int /* depth */ +); +extern Pixmap XCreateBitmapFromData( + Display* /* display */, + Drawable /* d */, + _Xconst char* /* data */, + unsigned int /* width */, + unsigned int /* height */ +); +extern Pixmap XCreatePixmapFromBitmapData( + Display* /* display */, + Drawable /* d */, + char* /* data */, + unsigned int /* width */, + unsigned int /* height */, + unsigned long /* fg */, + unsigned long /* bg */, + unsigned int /* depth */ +); +extern Window XCreateSimpleWindow( + Display* /* display */, + Window /* parent */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */, + unsigned int /* border_width */, + unsigned long /* border */, + unsigned long /* background */ +); +extern Window XGetSelectionOwner( + Display* /* display */, + Atom /* selection */ +); +extern Window XCreateWindow( + Display* /* display */, + Window /* parent */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */, + unsigned int /* border_width */, + int /* depth */, + unsigned int /* class */, + Visual* /* visual */, + unsigned long /* valuemask */, + XSetWindowAttributes* /* attributes */ +); +extern Colormap *XListInstalledColormaps( + Display* /* display */, + Window /* w */, + int* /* num_return */ +); +extern char **XListFonts( + Display* /* display */, + _Xconst char* /* pattern */, + int /* maxnames */, + int* /* actual_count_return */ +); +extern char **XListFontsWithInfo( + Display* /* display */, + _Xconst char* /* pattern */, + int /* maxnames */, + int* /* count_return */, + XFontStruct** /* info_return */ +); +extern char **XGetFontPath( + Display* /* display */, + int* /* npaths_return */ +); +extern char **XListExtensions( + Display* /* display */, + int* /* nextensions_return */ +); +extern Atom *XListProperties( + Display* /* display */, + Window /* w */, + int* /* num_prop_return */ +); +extern XHostAddress *XListHosts( + Display* /* display */, + int* /* nhosts_return */, + Bool* /* state_return */ +); +_X_DEPRECATED +extern KeySym XKeycodeToKeysym( + Display* /* display */, +#if NeedWidePrototypes + unsigned int /* keycode */, +#else + KeyCode /* keycode */, +#endif + int /* index */ +); +extern KeySym XLookupKeysym( + XKeyEvent* /* key_event */, + int /* index */ +); +extern KeySym *XGetKeyboardMapping( + Display* /* display */, +#if NeedWidePrototypes + unsigned int /* first_keycode */, +#else + KeyCode /* first_keycode */, +#endif + int /* keycode_count */, + int* /* keysyms_per_keycode_return */ +); +extern KeySym XStringToKeysym( + _Xconst char* /* string */ +); +extern long XMaxRequestSize( + Display* /* display */ +); +extern long XExtendedMaxRequestSize( + Display* /* display */ +); +extern char *XResourceManagerString( + Display* /* display */ +); +extern char *XScreenResourceString( + Screen* /* screen */ +); +extern unsigned long XDisplayMotionBufferSize( + Display* /* display */ +); +extern VisualID XVisualIDFromVisual( + Visual* /* visual */ +); + +/* multithread routines */ + +extern Status XInitThreads( + void +); + +extern void XLockDisplay( + Display* /* display */ +); + +extern void XUnlockDisplay( + Display* /* display */ +); + +/* routines for dealing with extensions */ + +extern XExtCodes *XInitExtension( + Display* /* display */, + _Xconst char* /* name */ +); + +extern XExtCodes *XAddExtension( + Display* /* display */ +); +extern XExtData *XFindOnExtensionList( + XExtData** /* structure */, + int /* number */ +); +extern XExtData **XEHeadOfExtensionList( + XEDataObject /* object */ +); + +/* these are routines for which there are also macros */ +extern Window XRootWindow( + Display* /* display */, + int /* screen_number */ +); +extern Window XDefaultRootWindow( + Display* /* display */ +); +extern Window XRootWindowOfScreen( + Screen* /* screen */ +); +extern Visual *XDefaultVisual( + Display* /* display */, + int /* screen_number */ +); +extern Visual *XDefaultVisualOfScreen( + Screen* /* screen */ +); +extern GC XDefaultGC( + Display* /* display */, + int /* screen_number */ +); +extern GC XDefaultGCOfScreen( + Screen* /* screen */ +); +extern unsigned long XBlackPixel( + Display* /* display */, + int /* screen_number */ +); +extern unsigned long XWhitePixel( + Display* /* display */, + int /* screen_number */ +); +extern unsigned long XAllPlanes( + void +); +extern unsigned long XBlackPixelOfScreen( + Screen* /* screen */ +); +extern unsigned long XWhitePixelOfScreen( + Screen* /* screen */ +); +extern unsigned long XNextRequest( + Display* /* display */ +); +extern unsigned long XLastKnownRequestProcessed( + Display* /* display */ +); +extern char *XServerVendor( + Display* /* display */ +); +extern char *XDisplayString( + Display* /* display */ +); +extern Colormap XDefaultColormap( + Display* /* display */, + int /* screen_number */ +); +extern Colormap XDefaultColormapOfScreen( + Screen* /* screen */ +); +extern Display *XDisplayOfScreen( + Screen* /* screen */ +); +extern Screen *XScreenOfDisplay( + Display* /* display */, + int /* screen_number */ +); +extern Screen *XDefaultScreenOfDisplay( + Display* /* display */ +); +extern long XEventMaskOfScreen( + Screen* /* screen */ +); + +extern int XScreenNumberOfScreen( + Screen* /* screen */ +); + +typedef int (*XErrorHandler) ( /* WARNING, this type not in Xlib spec */ + Display* /* display */, + XErrorEvent* /* error_event */ +); + +extern XErrorHandler XSetErrorHandler ( + XErrorHandler /* handler */ +); + + +typedef int (*XIOErrorHandler) ( /* WARNING, this type not in Xlib spec */ + Display* /* display */ +); + +extern XIOErrorHandler XSetIOErrorHandler ( + XIOErrorHandler /* handler */ +); + + +extern XPixmapFormatValues *XListPixmapFormats( + Display* /* display */, + int* /* count_return */ +); +extern int *XListDepths( + Display* /* display */, + int /* screen_number */, + int* /* count_return */ +); + +/* ICCCM routines for things that don't require special include files; */ +/* other declarations are given in Xutil.h */ +extern Status XReconfigureWMWindow( + Display* /* display */, + Window /* w */, + int /* screen_number */, + unsigned int /* mask */, + XWindowChanges* /* changes */ +); + +extern Status XGetWMProtocols( + Display* /* display */, + Window /* w */, + Atom** /* protocols_return */, + int* /* count_return */ +); +extern Status XSetWMProtocols( + Display* /* display */, + Window /* w */, + Atom* /* protocols */, + int /* count */ +); +extern Status XIconifyWindow( + Display* /* display */, + Window /* w */, + int /* screen_number */ +); +extern Status XWithdrawWindow( + Display* /* display */, + Window /* w */, + int /* screen_number */ +); +extern Status XGetCommand( + Display* /* display */, + Window /* w */, + char*** /* argv_return */, + int* /* argc_return */ +); +extern Status XGetWMColormapWindows( + Display* /* display */, + Window /* w */, + Window** /* windows_return */, + int* /* count_return */ +); +extern Status XSetWMColormapWindows( + Display* /* display */, + Window /* w */, + Window* /* colormap_windows */, + int /* count */ +); +extern void XFreeStringList( + char** /* list */ +); +extern int XSetTransientForHint( + Display* /* display */, + Window /* w */, + Window /* prop_window */ +); + +/* The following are given in alphabetical order */ + +extern int XActivateScreenSaver( + Display* /* display */ +); + +extern int XAddHost( + Display* /* display */, + XHostAddress* /* host */ +); + +extern int XAddHosts( + Display* /* display */, + XHostAddress* /* hosts */, + int /* num_hosts */ +); + +extern int XAddToExtensionList( + struct _XExtData** /* structure */, + XExtData* /* ext_data */ +); + +extern int XAddToSaveSet( + Display* /* display */, + Window /* w */ +); + +extern Status XAllocColor( + Display* /* display */, + Colormap /* colormap */, + XColor* /* screen_in_out */ +); + +extern Status XAllocColorCells( + Display* /* display */, + Colormap /* colormap */, + Bool /* contig */, + unsigned long* /* plane_masks_return */, + unsigned int /* nplanes */, + unsigned long* /* pixels_return */, + unsigned int /* npixels */ +); + +extern Status XAllocColorPlanes( + Display* /* display */, + Colormap /* colormap */, + Bool /* contig */, + unsigned long* /* pixels_return */, + int /* ncolors */, + int /* nreds */, + int /* ngreens */, + int /* nblues */, + unsigned long* /* rmask_return */, + unsigned long* /* gmask_return */, + unsigned long* /* bmask_return */ +); + +extern Status XAllocNamedColor( + Display* /* display */, + Colormap /* colormap */, + _Xconst char* /* color_name */, + XColor* /* screen_def_return */, + XColor* /* exact_def_return */ +); + +extern int XAllowEvents( + Display* /* display */, + int /* event_mode */, + Time /* time */ +); + +extern int XAutoRepeatOff( + Display* /* display */ +); + +extern int XAutoRepeatOn( + Display* /* display */ +); + +extern int XBell( + Display* /* display */, + int /* percent */ +); + +extern int XBitmapBitOrder( + Display* /* display */ +); + +extern int XBitmapPad( + Display* /* display */ +); + +extern int XBitmapUnit( + Display* /* display */ +); + +extern int XCellsOfScreen( + Screen* /* screen */ +); + +extern int XChangeActivePointerGrab( + Display* /* display */, + unsigned int /* event_mask */, + Cursor /* cursor */, + Time /* time */ +); + +extern int XChangeGC( + Display* /* display */, + GC /* gc */, + unsigned long /* valuemask */, + XGCValues* /* values */ +); + +extern int XChangeKeyboardControl( + Display* /* display */, + unsigned long /* value_mask */, + XKeyboardControl* /* values */ +); + +extern int XChangeKeyboardMapping( + Display* /* display */, + int /* first_keycode */, + int /* keysyms_per_keycode */, + KeySym* /* keysyms */, + int /* num_codes */ +); + +extern int XChangePointerControl( + Display* /* display */, + Bool /* do_accel */, + Bool /* do_threshold */, + int /* accel_numerator */, + int /* accel_denominator */, + int /* threshold */ +); + +extern int XChangeProperty( + Display* /* display */, + Window /* w */, + Atom /* property */, + Atom /* type */, + int /* format */, + int /* mode */, + _Xconst unsigned char* /* data */, + int /* nelements */ +); + +extern int XChangeSaveSet( + Display* /* display */, + Window /* w */, + int /* change_mode */ +); + +extern int XChangeWindowAttributes( + Display* /* display */, + Window /* w */, + unsigned long /* valuemask */, + XSetWindowAttributes* /* attributes */ +); + +extern Bool XCheckIfEvent( + Display* /* display */, + XEvent* /* event_return */, + Bool (*) ( + Display* /* display */, + XEvent* /* event */, + XPointer /* arg */ + ) /* predicate */, + XPointer /* arg */ +); + +extern Bool XCheckMaskEvent( + Display* /* display */, + long /* event_mask */, + XEvent* /* event_return */ +); + +extern Bool XCheckTypedEvent( + Display* /* display */, + int /* event_type */, + XEvent* /* event_return */ +); + +extern Bool XCheckTypedWindowEvent( + Display* /* display */, + Window /* w */, + int /* event_type */, + XEvent* /* event_return */ +); + +extern Bool XCheckWindowEvent( + Display* /* display */, + Window /* w */, + long /* event_mask */, + XEvent* /* event_return */ +); + +extern int XCirculateSubwindows( + Display* /* display */, + Window /* w */, + int /* direction */ +); + +extern int XCirculateSubwindowsDown( + Display* /* display */, + Window /* w */ +); + +extern int XCirculateSubwindowsUp( + Display* /* display */, + Window /* w */ +); + +extern int XClearArea( + Display* /* display */, + Window /* w */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */, + Bool /* exposures */ +); + +extern int XClearWindow( + Display* /* display */, + Window /* w */ +); + +extern int XCloseDisplay( + Display* /* display */ +); + +extern int XConfigureWindow( + Display* /* display */, + Window /* w */, + unsigned int /* value_mask */, + XWindowChanges* /* values */ +); + +extern int XConnectionNumber( + Display* /* display */ +); + +extern int XConvertSelection( + Display* /* display */, + Atom /* selection */, + Atom /* target */, + Atom /* property */, + Window /* requestor */, + Time /* time */ +); + +extern int XCopyArea( + Display* /* display */, + Drawable /* src */, + Drawable /* dest */, + GC /* gc */, + int /* src_x */, + int /* src_y */, + unsigned int /* width */, + unsigned int /* height */, + int /* dest_x */, + int /* dest_y */ +); + +extern int XCopyGC( + Display* /* display */, + GC /* src */, + unsigned long /* valuemask */, + GC /* dest */ +); + +extern int XCopyPlane( + Display* /* display */, + Drawable /* src */, + Drawable /* dest */, + GC /* gc */, + int /* src_x */, + int /* src_y */, + unsigned int /* width */, + unsigned int /* height */, + int /* dest_x */, + int /* dest_y */, + unsigned long /* plane */ +); + +extern int XDefaultDepth( + Display* /* display */, + int /* screen_number */ +); + +extern int XDefaultDepthOfScreen( + Screen* /* screen */ +); + +extern int XDefaultScreen( + Display* /* display */ +); + +extern int XDefineCursor( + Display* /* display */, + Window /* w */, + Cursor /* cursor */ +); + +extern int XDeleteProperty( + Display* /* display */, + Window /* w */, + Atom /* property */ +); + +extern int XDestroyWindow( + Display* /* display */, + Window /* w */ +); + +extern int XDestroySubwindows( + Display* /* display */, + Window /* w */ +); + +extern int XDoesBackingStore( + Screen* /* screen */ +); + +extern Bool XDoesSaveUnders( + Screen* /* screen */ +); + +extern int XDisableAccessControl( + Display* /* display */ +); + + +extern int XDisplayCells( + Display* /* display */, + int /* screen_number */ +); + +extern int XDisplayHeight( + Display* /* display */, + int /* screen_number */ +); + +extern int XDisplayHeightMM( + Display* /* display */, + int /* screen_number */ +); + +extern int XDisplayKeycodes( + Display* /* display */, + int* /* min_keycodes_return */, + int* /* max_keycodes_return */ +); + +extern int XDisplayPlanes( + Display* /* display */, + int /* screen_number */ +); + +extern int XDisplayWidth( + Display* /* display */, + int /* screen_number */ +); + +extern int XDisplayWidthMM( + Display* /* display */, + int /* screen_number */ +); + +extern int XDrawArc( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */, + int /* angle1 */, + int /* angle2 */ +); + +extern int XDrawArcs( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + XArc* /* arcs */, + int /* narcs */ +); + +extern int XDrawImageString( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst char* /* string */, + int /* length */ +); + +extern int XDrawImageString16( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst XChar2b* /* string */, + int /* length */ +); + +extern int XDrawLine( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x1 */, + int /* y1 */, + int /* x2 */, + int /* y2 */ +); + +extern int XDrawLines( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + XPoint* /* points */, + int /* npoints */, + int /* mode */ +); + +extern int XDrawPoint( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */ +); + +extern int XDrawPoints( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + XPoint* /* points */, + int /* npoints */, + int /* mode */ +); + +extern int XDrawRectangle( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */ +); + +extern int XDrawRectangles( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + XRectangle* /* rectangles */, + int /* nrectangles */ +); + +extern int XDrawSegments( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + XSegment* /* segments */, + int /* nsegments */ +); + +extern int XDrawString( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst char* /* string */, + int /* length */ +); + +extern int XDrawString16( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst XChar2b* /* string */, + int /* length */ +); + +extern int XDrawText( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + XTextItem* /* items */, + int /* nitems */ +); + +extern int XDrawText16( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + XTextItem16* /* items */, + int /* nitems */ +); + +extern int XEnableAccessControl( + Display* /* display */ +); + +extern int XEventsQueued( + Display* /* display */, + int /* mode */ +); + +extern Status XFetchName( + Display* /* display */, + Window /* w */, + char** /* window_name_return */ +); + +extern int XFillArc( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */, + int /* angle1 */, + int /* angle2 */ +); + +extern int XFillArcs( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + XArc* /* arcs */, + int /* narcs */ +); + +extern int XFillPolygon( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + XPoint* /* points */, + int /* npoints */, + int /* shape */, + int /* mode */ +); + +extern int XFillRectangle( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */ +); + +extern int XFillRectangles( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + XRectangle* /* rectangles */, + int /* nrectangles */ +); + +extern int XFlush( + Display* /* display */ +); + +extern int XForceScreenSaver( + Display* /* display */, + int /* mode */ +); + +extern int XFree( + void* /* data */ +); + +extern int XFreeColormap( + Display* /* display */, + Colormap /* colormap */ +); + +extern int XFreeColors( + Display* /* display */, + Colormap /* colormap */, + unsigned long* /* pixels */, + int /* npixels */, + unsigned long /* planes */ +); + +extern int XFreeCursor( + Display* /* display */, + Cursor /* cursor */ +); + +extern int XFreeExtensionList( + char** /* list */ +); + +extern int XFreeFont( + Display* /* display */, + XFontStruct* /* font_struct */ +); + +extern int XFreeFontInfo( + char** /* names */, + XFontStruct* /* free_info */, + int /* actual_count */ +); + +extern int XFreeFontNames( + char** /* list */ +); + +extern int XFreeFontPath( + char** /* list */ +); + +extern int XFreeGC( + Display* /* display */, + GC /* gc */ +); + +extern int XFreeModifiermap( + XModifierKeymap* /* modmap */ +); + +extern int XFreePixmap( + Display* /* display */, + Pixmap /* pixmap */ +); + +extern int XGeometry( + Display* /* display */, + int /* screen */, + _Xconst char* /* position */, + _Xconst char* /* default_position */, + unsigned int /* bwidth */, + unsigned int /* fwidth */, + unsigned int /* fheight */, + int /* xadder */, + int /* yadder */, + int* /* x_return */, + int* /* y_return */, + int* /* width_return */, + int* /* height_return */ +); + +extern int XGetErrorDatabaseText( + Display* /* display */, + _Xconst char* /* name */, + _Xconst char* /* message */, + _Xconst char* /* default_string */, + char* /* buffer_return */, + int /* length */ +); + +extern int XGetErrorText( + Display* /* display */, + int /* code */, + char* /* buffer_return */, + int /* length */ +); + +extern Bool XGetFontProperty( + XFontStruct* /* font_struct */, + Atom /* atom */, + unsigned long* /* value_return */ +); + +extern Status XGetGCValues( + Display* /* display */, + GC /* gc */, + unsigned long /* valuemask */, + XGCValues* /* values_return */ +); + +extern Status XGetGeometry( + Display* /* display */, + Drawable /* d */, + Window* /* root_return */, + int* /* x_return */, + int* /* y_return */, + unsigned int* /* width_return */, + unsigned int* /* height_return */, + unsigned int* /* border_width_return */, + unsigned int* /* depth_return */ +); + +extern Status XGetIconName( + Display* /* display */, + Window /* w */, + char** /* icon_name_return */ +); + +extern int XGetInputFocus( + Display* /* display */, + Window* /* focus_return */, + int* /* revert_to_return */ +); + +extern int XGetKeyboardControl( + Display* /* display */, + XKeyboardState* /* values_return */ +); + +extern int XGetPointerControl( + Display* /* display */, + int* /* accel_numerator_return */, + int* /* accel_denominator_return */, + int* /* threshold_return */ +); + +extern int XGetPointerMapping( + Display* /* display */, + unsigned char* /* map_return */, + int /* nmap */ +); + +extern int XGetScreenSaver( + Display* /* display */, + int* /* timeout_return */, + int* /* interval_return */, + int* /* prefer_blanking_return */, + int* /* allow_exposures_return */ +); + +extern Status XGetTransientForHint( + Display* /* display */, + Window /* w */, + Window* /* prop_window_return */ +); + +extern int XGetWindowProperty( + Display* /* display */, + Window /* w */, + Atom /* property */, + long /* long_offset */, + long /* long_length */, + Bool /* delete */, + Atom /* req_type */, + Atom* /* actual_type_return */, + int* /* actual_format_return */, + unsigned long* /* nitems_return */, + unsigned long* /* bytes_after_return */, + unsigned char** /* prop_return */ +); + +extern Status XGetWindowAttributes( + Display* /* display */, + Window /* w */, + XWindowAttributes* /* window_attributes_return */ +); + +extern int XGrabButton( + Display* /* display */, + unsigned int /* button */, + unsigned int /* modifiers */, + Window /* grab_window */, + Bool /* owner_events */, + unsigned int /* event_mask */, + int /* pointer_mode */, + int /* keyboard_mode */, + Window /* confine_to */, + Cursor /* cursor */ +); + +extern int XGrabKey( + Display* /* display */, + int /* keycode */, + unsigned int /* modifiers */, + Window /* grab_window */, + Bool /* owner_events */, + int /* pointer_mode */, + int /* keyboard_mode */ +); + +extern int XGrabKeyboard( + Display* /* display */, + Window /* grab_window */, + Bool /* owner_events */, + int /* pointer_mode */, + int /* keyboard_mode */, + Time /* time */ +); + +extern int XGrabPointer( + Display* /* display */, + Window /* grab_window */, + Bool /* owner_events */, + unsigned int /* event_mask */, + int /* pointer_mode */, + int /* keyboard_mode */, + Window /* confine_to */, + Cursor /* cursor */, + Time /* time */ +); + +extern int XGrabServer( + Display* /* display */ +); + +extern int XHeightMMOfScreen( + Screen* /* screen */ +); + +extern int XHeightOfScreen( + Screen* /* screen */ +); + +extern int XIfEvent( + Display* /* display */, + XEvent* /* event_return */, + Bool (*) ( + Display* /* display */, + XEvent* /* event */, + XPointer /* arg */ + ) /* predicate */, + XPointer /* arg */ +); + +extern int XImageByteOrder( + Display* /* display */ +); + +extern int XInstallColormap( + Display* /* display */, + Colormap /* colormap */ +); + +extern KeyCode XKeysymToKeycode( + Display* /* display */, + KeySym /* keysym */ +); + +extern int XKillClient( + Display* /* display */, + XID /* resource */ +); + +extern Status XLookupColor( + Display* /* display */, + Colormap /* colormap */, + _Xconst char* /* color_name */, + XColor* /* exact_def_return */, + XColor* /* screen_def_return */ +); + +extern int XLowerWindow( + Display* /* display */, + Window /* w */ +); + +extern int XMapRaised( + Display* /* display */, + Window /* w */ +); + +extern int XMapSubwindows( + Display* /* display */, + Window /* w */ +); + +extern int XMapWindow( + Display* /* display */, + Window /* w */ +); + +extern int XMaskEvent( + Display* /* display */, + long /* event_mask */, + XEvent* /* event_return */ +); + +extern int XMaxCmapsOfScreen( + Screen* /* screen */ +); + +extern int XMinCmapsOfScreen( + Screen* /* screen */ +); + +extern int XMoveResizeWindow( + Display* /* display */, + Window /* w */, + int /* x */, + int /* y */, + unsigned int /* width */, + unsigned int /* height */ +); + +extern int XMoveWindow( + Display* /* display */, + Window /* w */, + int /* x */, + int /* y */ +); + +extern int XNextEvent( + Display* /* display */, + XEvent* /* event_return */ +); + +extern int XNoOp( + Display* /* display */ +); + +extern Status XParseColor( + Display* /* display */, + Colormap /* colormap */, + _Xconst char* /* spec */, + XColor* /* exact_def_return */ +); + +extern int XParseGeometry( + _Xconst char* /* parsestring */, + int* /* x_return */, + int* /* y_return */, + unsigned int* /* width_return */, + unsigned int* /* height_return */ +); + +extern int XPeekEvent( + Display* /* display */, + XEvent* /* event_return */ +); + +extern int XPeekIfEvent( + Display* /* display */, + XEvent* /* event_return */, + Bool (*) ( + Display* /* display */, + XEvent* /* event */, + XPointer /* arg */ + ) /* predicate */, + XPointer /* arg */ +); + +extern int XPending( + Display* /* display */ +); + +extern int XPlanesOfScreen( + Screen* /* screen */ +); + +extern int XProtocolRevision( + Display* /* display */ +); + +extern int XProtocolVersion( + Display* /* display */ +); + + +extern int XPutBackEvent( + Display* /* display */, + XEvent* /* event */ +); + +extern int XPutImage( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + XImage* /* image */, + int /* src_x */, + int /* src_y */, + int /* dest_x */, + int /* dest_y */, + unsigned int /* width */, + unsigned int /* height */ +); + +extern int XQLength( + Display* /* display */ +); + +extern Status XQueryBestCursor( + Display* /* display */, + Drawable /* d */, + unsigned int /* width */, + unsigned int /* height */, + unsigned int* /* width_return */, + unsigned int* /* height_return */ +); + +extern Status XQueryBestSize( + Display* /* display */, + int /* class */, + Drawable /* which_screen */, + unsigned int /* width */, + unsigned int /* height */, + unsigned int* /* width_return */, + unsigned int* /* height_return */ +); + +extern Status XQueryBestStipple( + Display* /* display */, + Drawable /* which_screen */, + unsigned int /* width */, + unsigned int /* height */, + unsigned int* /* width_return */, + unsigned int* /* height_return */ +); + +extern Status XQueryBestTile( + Display* /* display */, + Drawable /* which_screen */, + unsigned int /* width */, + unsigned int /* height */, + unsigned int* /* width_return */, + unsigned int* /* height_return */ +); + +extern int XQueryColor( + Display* /* display */, + Colormap /* colormap */, + XColor* /* def_in_out */ +); + +extern int XQueryColors( + Display* /* display */, + Colormap /* colormap */, + XColor* /* defs_in_out */, + int /* ncolors */ +); + +extern Bool XQueryExtension( + Display* /* display */, + _Xconst char* /* name */, + int* /* major_opcode_return */, + int* /* first_event_return */, + int* /* first_error_return */ +); + +extern int XQueryKeymap( + Display* /* display */, + char [32] /* keys_return */ +); + +extern Bool XQueryPointer( + Display* /* display */, + Window /* w */, + Window* /* root_return */, + Window* /* child_return */, + int* /* root_x_return */, + int* /* root_y_return */, + int* /* win_x_return */, + int* /* win_y_return */, + unsigned int* /* mask_return */ +); + +extern int XQueryTextExtents( + Display* /* display */, + XID /* font_ID */, + _Xconst char* /* string */, + int /* nchars */, + int* /* direction_return */, + int* /* font_ascent_return */, + int* /* font_descent_return */, + XCharStruct* /* overall_return */ +); + +extern int XQueryTextExtents16( + Display* /* display */, + XID /* font_ID */, + _Xconst XChar2b* /* string */, + int /* nchars */, + int* /* direction_return */, + int* /* font_ascent_return */, + int* /* font_descent_return */, + XCharStruct* /* overall_return */ +); + +extern Status XQueryTree( + Display* /* display */, + Window /* w */, + Window* /* root_return */, + Window* /* parent_return */, + Window** /* children_return */, + unsigned int* /* nchildren_return */ +); + +extern int XRaiseWindow( + Display* /* display */, + Window /* w */ +); + +extern int XReadBitmapFile( + Display* /* display */, + Drawable /* d */, + _Xconst char* /* filename */, + unsigned int* /* width_return */, + unsigned int* /* height_return */, + Pixmap* /* bitmap_return */, + int* /* x_hot_return */, + int* /* y_hot_return */ +); + +extern int XReadBitmapFileData( + _Xconst char* /* filename */, + unsigned int* /* width_return */, + unsigned int* /* height_return */, + unsigned char** /* data_return */, + int* /* x_hot_return */, + int* /* y_hot_return */ +); + +extern int XRebindKeysym( + Display* /* display */, + KeySym /* keysym */, + KeySym* /* list */, + int /* mod_count */, + _Xconst unsigned char* /* string */, + int /* bytes_string */ +); + +extern int XRecolorCursor( + Display* /* display */, + Cursor /* cursor */, + XColor* /* foreground_color */, + XColor* /* background_color */ +); + +extern int XRefreshKeyboardMapping( + XMappingEvent* /* event_map */ +); + +extern int XRemoveFromSaveSet( + Display* /* display */, + Window /* w */ +); + +extern int XRemoveHost( + Display* /* display */, + XHostAddress* /* host */ +); + +extern int XRemoveHosts( + Display* /* display */, + XHostAddress* /* hosts */, + int /* num_hosts */ +); + +extern int XReparentWindow( + Display* /* display */, + Window /* w */, + Window /* parent */, + int /* x */, + int /* y */ +); + +extern int XResetScreenSaver( + Display* /* display */ +); + +extern int XResizeWindow( + Display* /* display */, + Window /* w */, + unsigned int /* width */, + unsigned int /* height */ +); + +extern int XRestackWindows( + Display* /* display */, + Window* /* windows */, + int /* nwindows */ +); + +extern int XRotateBuffers( + Display* /* display */, + int /* rotate */ +); + +extern int XRotateWindowProperties( + Display* /* display */, + Window /* w */, + Atom* /* properties */, + int /* num_prop */, + int /* npositions */ +); + +extern int XScreenCount( + Display* /* display */ +); + +extern int XSelectInput( + Display* /* display */, + Window /* w */, + long /* event_mask */ +); + +extern Status XSendEvent( + Display* /* display */, + Window /* w */, + Bool /* propagate */, + long /* event_mask */, + XEvent* /* event_send */ +); + +extern int XSetAccessControl( + Display* /* display */, + int /* mode */ +); + +extern int XSetArcMode( + Display* /* display */, + GC /* gc */, + int /* arc_mode */ +); + +extern int XSetBackground( + Display* /* display */, + GC /* gc */, + unsigned long /* background */ +); + +extern int XSetClipMask( + Display* /* display */, + GC /* gc */, + Pixmap /* pixmap */ +); + +extern int XSetClipOrigin( + Display* /* display */, + GC /* gc */, + int /* clip_x_origin */, + int /* clip_y_origin */ +); + +extern int XSetClipRectangles( + Display* /* display */, + GC /* gc */, + int /* clip_x_origin */, + int /* clip_y_origin */, + XRectangle* /* rectangles */, + int /* n */, + int /* ordering */ +); + +extern int XSetCloseDownMode( + Display* /* display */, + int /* close_mode */ +); + +extern int XSetCommand( + Display* /* display */, + Window /* w */, + char** /* argv */, + int /* argc */ +); + +extern int XSetDashes( + Display* /* display */, + GC /* gc */, + int /* dash_offset */, + _Xconst char* /* dash_list */, + int /* n */ +); + +extern int XSetFillRule( + Display* /* display */, + GC /* gc */, + int /* fill_rule */ +); + +extern int XSetFillStyle( + Display* /* display */, + GC /* gc */, + int /* fill_style */ +); + +extern int XSetFont( + Display* /* display */, + GC /* gc */, + Font /* font */ +); + +extern int XSetFontPath( + Display* /* display */, + char** /* directories */, + int /* ndirs */ +); + +extern int XSetForeground( + Display* /* display */, + GC /* gc */, + unsigned long /* foreground */ +); + +extern int XSetFunction( + Display* /* display */, + GC /* gc */, + int /* function */ +); + +extern int XSetGraphicsExposures( + Display* /* display */, + GC /* gc */, + Bool /* graphics_exposures */ +); + +extern int XSetIconName( + Display* /* display */, + Window /* w */, + _Xconst char* /* icon_name */ +); + +extern int XSetInputFocus( + Display* /* display */, + Window /* focus */, + int /* revert_to */, + Time /* time */ +); + +extern int XSetLineAttributes( + Display* /* display */, + GC /* gc */, + unsigned int /* line_width */, + int /* line_style */, + int /* cap_style */, + int /* join_style */ +); + +extern int XSetModifierMapping( + Display* /* display */, + XModifierKeymap* /* modmap */ +); + +extern int XSetPlaneMask( + Display* /* display */, + GC /* gc */, + unsigned long /* plane_mask */ +); + +extern int XSetPointerMapping( + Display* /* display */, + _Xconst unsigned char* /* map */, + int /* nmap */ +); + +extern int XSetScreenSaver( + Display* /* display */, + int /* timeout */, + int /* interval */, + int /* prefer_blanking */, + int /* allow_exposures */ +); + +extern int XSetSelectionOwner( + Display* /* display */, + Atom /* selection */, + Window /* owner */, + Time /* time */ +); + +extern int XSetState( + Display* /* display */, + GC /* gc */, + unsigned long /* foreground */, + unsigned long /* background */, + int /* function */, + unsigned long /* plane_mask */ +); + +extern int XSetStipple( + Display* /* display */, + GC /* gc */, + Pixmap /* stipple */ +); + +extern int XSetSubwindowMode( + Display* /* display */, + GC /* gc */, + int /* subwindow_mode */ +); + +extern int XSetTSOrigin( + Display* /* display */, + GC /* gc */, + int /* ts_x_origin */, + int /* ts_y_origin */ +); + +extern int XSetTile( + Display* /* display */, + GC /* gc */, + Pixmap /* tile */ +); + +extern int XSetWindowBackground( + Display* /* display */, + Window /* w */, + unsigned long /* background_pixel */ +); + +extern int XSetWindowBackgroundPixmap( + Display* /* display */, + Window /* w */, + Pixmap /* background_pixmap */ +); + +extern int XSetWindowBorder( + Display* /* display */, + Window /* w */, + unsigned long /* border_pixel */ +); + +extern int XSetWindowBorderPixmap( + Display* /* display */, + Window /* w */, + Pixmap /* border_pixmap */ +); + +extern int XSetWindowBorderWidth( + Display* /* display */, + Window /* w */, + unsigned int /* width */ +); + +extern int XSetWindowColormap( + Display* /* display */, + Window /* w */, + Colormap /* colormap */ +); + +extern int XStoreBuffer( + Display* /* display */, + _Xconst char* /* bytes */, + int /* nbytes */, + int /* buffer */ +); + +extern int XStoreBytes( + Display* /* display */, + _Xconst char* /* bytes */, + int /* nbytes */ +); + +extern int XStoreColor( + Display* /* display */, + Colormap /* colormap */, + XColor* /* color */ +); + +extern int XStoreColors( + Display* /* display */, + Colormap /* colormap */, + XColor* /* color */, + int /* ncolors */ +); + +extern int XStoreName( + Display* /* display */, + Window /* w */, + _Xconst char* /* window_name */ +); + +extern int XStoreNamedColor( + Display* /* display */, + Colormap /* colormap */, + _Xconst char* /* color */, + unsigned long /* pixel */, + int /* flags */ +); + +extern int XSync( + Display* /* display */, + Bool /* discard */ +); + +extern int XTextExtents( + XFontStruct* /* font_struct */, + _Xconst char* /* string */, + int /* nchars */, + int* /* direction_return */, + int* /* font_ascent_return */, + int* /* font_descent_return */, + XCharStruct* /* overall_return */ +); + +extern int XTextExtents16( + XFontStruct* /* font_struct */, + _Xconst XChar2b* /* string */, + int /* nchars */, + int* /* direction_return */, + int* /* font_ascent_return */, + int* /* font_descent_return */, + XCharStruct* /* overall_return */ +); + +extern int XTextWidth( + XFontStruct* /* font_struct */, + _Xconst char* /* string */, + int /* count */ +); + +extern int XTextWidth16( + XFontStruct* /* font_struct */, + _Xconst XChar2b* /* string */, + int /* count */ +); + +extern Bool XTranslateCoordinates( + Display* /* display */, + Window /* src_w */, + Window /* dest_w */, + int /* src_x */, + int /* src_y */, + int* /* dest_x_return */, + int* /* dest_y_return */, + Window* /* child_return */ +); + +extern int XUndefineCursor( + Display* /* display */, + Window /* w */ +); + +extern int XUngrabButton( + Display* /* display */, + unsigned int /* button */, + unsigned int /* modifiers */, + Window /* grab_window */ +); + +extern int XUngrabKey( + Display* /* display */, + int /* keycode */, + unsigned int /* modifiers */, + Window /* grab_window */ +); + +extern int XUngrabKeyboard( + Display* /* display */, + Time /* time */ +); + +extern int XUngrabPointer( + Display* /* display */, + Time /* time */ +); + +extern int XUngrabServer( + Display* /* display */ +); + +extern int XUninstallColormap( + Display* /* display */, + Colormap /* colormap */ +); + +extern int XUnloadFont( + Display* /* display */, + Font /* font */ +); + +extern int XUnmapSubwindows( + Display* /* display */, + Window /* w */ +); + +extern int XUnmapWindow( + Display* /* display */, + Window /* w */ +); + +extern int XVendorRelease( + Display* /* display */ +); + +extern int XWarpPointer( + Display* /* display */, + Window /* src_w */, + Window /* dest_w */, + int /* src_x */, + int /* src_y */, + unsigned int /* src_width */, + unsigned int /* src_height */, + int /* dest_x */, + int /* dest_y */ +); + +extern int XWidthMMOfScreen( + Screen* /* screen */ +); + +extern int XWidthOfScreen( + Screen* /* screen */ +); + +extern int XWindowEvent( + Display* /* display */, + Window /* w */, + long /* event_mask */, + XEvent* /* event_return */ +); + +extern int XWriteBitmapFile( + Display* /* display */, + _Xconst char* /* filename */, + Pixmap /* bitmap */, + unsigned int /* width */, + unsigned int /* height */, + int /* x_hot */, + int /* y_hot */ +); + +extern Bool XSupportsLocale (void); + +extern char *XSetLocaleModifiers( + const char* /* modifier_list */ +); + +extern XOM XOpenOM( + Display* /* display */, + struct _XrmHashBucketRec* /* rdb */, + _Xconst char* /* res_name */, + _Xconst char* /* res_class */ +); + +extern Status XCloseOM( + XOM /* om */ +); + +extern char *XSetOMValues( + XOM /* om */, + ... +) _X_SENTINEL(0); + +extern char *XGetOMValues( + XOM /* om */, + ... +) _X_SENTINEL(0); + +extern Display *XDisplayOfOM( + XOM /* om */ +); + +extern char *XLocaleOfOM( + XOM /* om */ +); + +extern XOC XCreateOC( + XOM /* om */, + ... +) _X_SENTINEL(0); + +extern void XDestroyOC( + XOC /* oc */ +); + +extern XOM XOMOfOC( + XOC /* oc */ +); + +extern char *XSetOCValues( + XOC /* oc */, + ... +) _X_SENTINEL(0); + +extern char *XGetOCValues( + XOC /* oc */, + ... +) _X_SENTINEL(0); + +extern XFontSet XCreateFontSet( + Display* /* display */, + _Xconst char* /* base_font_name_list */, + char*** /* missing_charset_list */, + int* /* missing_charset_count */, + char** /* def_string */ +); + +extern void XFreeFontSet( + Display* /* display */, + XFontSet /* font_set */ +); + +extern int XFontsOfFontSet( + XFontSet /* font_set */, + XFontStruct*** /* font_struct_list */, + char*** /* font_name_list */ +); + +extern char *XBaseFontNameListOfFontSet( + XFontSet /* font_set */ +); + +extern char *XLocaleOfFontSet( + XFontSet /* font_set */ +); + +extern Bool XContextDependentDrawing( + XFontSet /* font_set */ +); + +extern Bool XDirectionalDependentDrawing( + XFontSet /* font_set */ +); + +extern Bool XContextualDrawing( + XFontSet /* font_set */ +); + +extern XFontSetExtents *XExtentsOfFontSet( + XFontSet /* font_set */ +); + +extern int XmbTextEscapement( + XFontSet /* font_set */, + _Xconst char* /* text */, + int /* bytes_text */ +); + +extern int XwcTextEscapement( + XFontSet /* font_set */, + _Xconst wchar_t* /* text */, + int /* num_wchars */ +); + +extern int Xutf8TextEscapement( + XFontSet /* font_set */, + _Xconst char* /* text */, + int /* bytes_text */ +); + +extern int XmbTextExtents( + XFontSet /* font_set */, + _Xconst char* /* text */, + int /* bytes_text */, + XRectangle* /* overall_ink_return */, + XRectangle* /* overall_logical_return */ +); + +extern int XwcTextExtents( + XFontSet /* font_set */, + _Xconst wchar_t* /* text */, + int /* num_wchars */, + XRectangle* /* overall_ink_return */, + XRectangle* /* overall_logical_return */ +); + +extern int Xutf8TextExtents( + XFontSet /* font_set */, + _Xconst char* /* text */, + int /* bytes_text */, + XRectangle* /* overall_ink_return */, + XRectangle* /* overall_logical_return */ +); + +extern Status XmbTextPerCharExtents( + XFontSet /* font_set */, + _Xconst char* /* text */, + int /* bytes_text */, + XRectangle* /* ink_extents_buffer */, + XRectangle* /* logical_extents_buffer */, + int /* buffer_size */, + int* /* num_chars */, + XRectangle* /* overall_ink_return */, + XRectangle* /* overall_logical_return */ +); + +extern Status XwcTextPerCharExtents( + XFontSet /* font_set */, + _Xconst wchar_t* /* text */, + int /* num_wchars */, + XRectangle* /* ink_extents_buffer */, + XRectangle* /* logical_extents_buffer */, + int /* buffer_size */, + int* /* num_chars */, + XRectangle* /* overall_ink_return */, + XRectangle* /* overall_logical_return */ +); + +extern Status Xutf8TextPerCharExtents( + XFontSet /* font_set */, + _Xconst char* /* text */, + int /* bytes_text */, + XRectangle* /* ink_extents_buffer */, + XRectangle* /* logical_extents_buffer */, + int /* buffer_size */, + int* /* num_chars */, + XRectangle* /* overall_ink_return */, + XRectangle* /* overall_logical_return */ +); + +extern void XmbDrawText( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + XmbTextItem* /* text_items */, + int /* nitems */ +); + +extern void XwcDrawText( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + XwcTextItem* /* text_items */, + int /* nitems */ +); + +extern void Xutf8DrawText( + Display* /* display */, + Drawable /* d */, + GC /* gc */, + int /* x */, + int /* y */, + XmbTextItem* /* text_items */, + int /* nitems */ +); + +extern void XmbDrawString( + Display* /* display */, + Drawable /* d */, + XFontSet /* font_set */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst char* /* text */, + int /* bytes_text */ +); + +extern void XwcDrawString( + Display* /* display */, + Drawable /* d */, + XFontSet /* font_set */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst wchar_t* /* text */, + int /* num_wchars */ +); + +extern void Xutf8DrawString( + Display* /* display */, + Drawable /* d */, + XFontSet /* font_set */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst char* /* text */, + int /* bytes_text */ +); + +extern void XmbDrawImageString( + Display* /* display */, + Drawable /* d */, + XFontSet /* font_set */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst char* /* text */, + int /* bytes_text */ +); + +extern void XwcDrawImageString( + Display* /* display */, + Drawable /* d */, + XFontSet /* font_set */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst wchar_t* /* text */, + int /* num_wchars */ +); + +extern void Xutf8DrawImageString( + Display* /* display */, + Drawable /* d */, + XFontSet /* font_set */, + GC /* gc */, + int /* x */, + int /* y */, + _Xconst char* /* text */, + int /* bytes_text */ +); + +extern XIM XOpenIM( + Display* /* dpy */, + struct _XrmHashBucketRec* /* rdb */, + char* /* res_name */, + char* /* res_class */ +); + +extern Status XCloseIM( + XIM /* im */ +); + +extern char *XGetIMValues( + XIM /* im */, ... +) _X_SENTINEL(0); + +extern char *XSetIMValues( + XIM /* im */, ... +) _X_SENTINEL(0); + +extern Display *XDisplayOfIM( + XIM /* im */ +); + +extern char *XLocaleOfIM( + XIM /* im*/ +); + +extern XIC XCreateIC( + XIM /* im */, ... +) _X_SENTINEL(0); + +extern void XDestroyIC( + XIC /* ic */ +); + +extern void XSetICFocus( + XIC /* ic */ +); + +extern void XUnsetICFocus( + XIC /* ic */ +); + +extern wchar_t *XwcResetIC( + XIC /* ic */ +); + +extern char *XmbResetIC( + XIC /* ic */ +); + +extern char *Xutf8ResetIC( + XIC /* ic */ +); + +extern char *XSetICValues( + XIC /* ic */, ... +) _X_SENTINEL(0); + +extern char *XGetICValues( + XIC /* ic */, ... +) _X_SENTINEL(0); + +extern XIM XIMOfIC( + XIC /* ic */ +); + +extern Bool XFilterEvent( + XEvent* /* event */, + Window /* window */ +); + +extern int XmbLookupString( + XIC /* ic */, + XKeyPressedEvent* /* event */, + char* /* buffer_return */, + int /* bytes_buffer */, + KeySym* /* keysym_return */, + Status* /* status_return */ +); + +extern int XwcLookupString( + XIC /* ic */, + XKeyPressedEvent* /* event */, + wchar_t* /* buffer_return */, + int /* wchars_buffer */, + KeySym* /* keysym_return */, + Status* /* status_return */ +); + +extern int Xutf8LookupString( + XIC /* ic */, + XKeyPressedEvent* /* event */, + char* /* buffer_return */, + int /* bytes_buffer */, + KeySym* /* keysym_return */, + Status* /* status_return */ +); + +extern XVaNestedList XVaCreateNestedList( + int /*unused*/, ... +) _X_SENTINEL(0); + +/* internal connections for IMs */ + +extern Bool XRegisterIMInstantiateCallback( + Display* /* dpy */, + struct _XrmHashBucketRec* /* rdb */, + char* /* res_name */, + char* /* res_class */, + XIDProc /* callback */, + XPointer /* client_data */ +); + +extern Bool XUnregisterIMInstantiateCallback( + Display* /* dpy */, + struct _XrmHashBucketRec* /* rdb */, + char* /* res_name */, + char* /* res_class */, + XIDProc /* callback */, + XPointer /* client_data */ +); + +typedef void (*XConnectionWatchProc)( + Display* /* dpy */, + XPointer /* client_data */, + int /* fd */, + Bool /* opening */, /* open or close flag */ + XPointer* /* watch_data */ /* open sets, close uses */ +); + + +extern Status XInternalConnectionNumbers( + Display* /* dpy */, + int** /* fd_return */, + int* /* count_return */ +); + +extern void XProcessInternalConnection( + Display* /* dpy */, + int /* fd */ +); + +extern Status XAddConnectionWatch( + Display* /* dpy */, + XConnectionWatchProc /* callback */, + XPointer /* client_data */ +); + +extern void XRemoveConnectionWatch( + Display* /* dpy */, + XConnectionWatchProc /* callback */, + XPointer /* client_data */ +); + +extern void XSetAuthorization( + char * /* name */, + int /* namelen */, + char * /* data */, + int /* datalen */ +); + +extern int _Xmbtowc( + wchar_t * /* wstr */, + char * /* str */, + int /* len */ +); + +extern int _Xwctomb( + char * /* str */, + wchar_t /* wc */ +); + +extern Bool XGetEventData( + Display* /* dpy */, + XGenericEventCookie* /* cookie*/ +); + +extern void XFreeEventData( + Display* /* dpy */, + XGenericEventCookie* /* cookie*/ +); + +#ifdef __clang__ +#pragma clang diagnostic pop +#endif + +_XFUNCPROTOEND + +#endif /* _X11_XLIB_H_ */ diff --git a/src/X11/include/X11/Xosdefs.h b/src/X11/include/X11/Xosdefs.h new file mode 100644 index 00000000..33eaee43 --- /dev/null +++ b/src/X11/include/X11/Xosdefs.h @@ -0,0 +1,116 @@ +/* + * O/S-dependent (mis)feature macro definitions + * +Copyright 1991, 1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ + +#ifndef _XOSDEFS_H_ +# define _XOSDEFS_H_ + +/* + * X_NOT_POSIX means does not have POSIX header files. Lack of this + * symbol does NOT mean that the POSIX environment is the default. + * You may still have to define _POSIX_SOURCE to get it. + */ + + +# ifdef _SCO_DS +# ifndef __SCO__ +# define __SCO__ +# endif +# endif + +# ifdef __i386__ +# ifdef SYSV +# if !defined(__SCO__) && \ + !defined(__UNIXWARE__) && !defined(__sun) +# if !defined(_POSIX_SOURCE) +# define X_NOT_POSIX +# endif +# endif +# endif +# endif + +# ifdef __sun +/* Imake configs define SVR4 on Solaris, but cc & gcc only define __SVR4 + * This check allows non-Imake configured programs to build correctly. + */ +# if defined(__SVR4) && !defined(SVR4) +# define SVR4 1 +# endif +# ifdef SVR4 +/* define this to whatever it needs to be */ +# define X_POSIX_C_SOURCE 199300L +# endif +# endif + +# ifdef WIN32 +# ifndef _POSIX_ +# define X_NOT_POSIX +# endif +# endif + + +# ifdef __APPLE__ +# define NULL_NOT_ZERO + +/* Defining any of these will sanitize the namespace to JUST want is defined by + * that particular standard. If that happens, we don't get some expected + * prototypes, typedefs, etc (like fd_mask). We can define _DARWIN_C_SOURCE to + * loosen our belts a tad. + */ +# if defined(_XOPEN_SOURCE) || defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) +# ifndef _DARWIN_C_SOURCE +# define _DARWIN_C_SOURCE +# endif +# endif + +# endif + +# ifdef __GNU__ +# ifndef PATH_MAX +# define PATH_MAX 4096 +# endif +# ifndef MAXPATHLEN +# define MAXPATHLEN 4096 +# endif +# endif + +# if defined(__SCO__) || defined(__UNIXWARE__) +# ifndef PATH_MAX +# define PATH_MAX 1024 +# endif +# ifndef MAXPATHLEN +# define MAXPATHLEN 1024 +# endif +# endif + +# if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) \ + || defined(__APPLE__) || defined(__DragonFly__) +# ifndef CSRG_BASED +# define CSRG_BASED +# endif +# endif + +#endif /* _XOSDEFS_H_ */ + diff --git a/src/X11/lib/libX11.so b/src/X11/lib/libX11.so new file mode 100644 index 0000000000000000000000000000000000000000..f0ef0e85a75c09a0705804417b63ed56e758abba GIT binary patch literal 1293928 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

;-$n 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

<}m}A3z=-Dn7PkvSnqNV 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%0DV^m>`pxAtw)d4Cde(Yt}jbIBu-qu)(I zCaq6H78x^;g{FDP(((c%qHZw~mRyAVaX}>#x&#B6468qzv#o5%r0-y!`g9wB=dK0)?d`wMc^Cx0N9hv3NvCnYD_diPFteK{aG2{tGh zn=(8ZRyQIU`QDi1Ua+yr&f(fx04IK-zN7#+)GBZJW8Hq|0$V1@L6&(;$<=n`6{_&=o{$g{~ccm59D6u)h6MV50}66v76lAcqc1DJ>k8G7~m7<vwFPgqdK_YHJJy__5znhXg@cR^4_=l9Gu!kwlBY#SPPkfq!M88O>%YK~#oBJkZ zIsaYCcsUEQcq5rmih&HR_fNe%+&F)>{Ro+qSOv&dFtJv z%To`fVN&nHajE@1fKKP0T%B`wb$4~{uFg43=bU?TVs=?} zSy*5}a?nKuLD5q{Ob0Fkiiiq`r=Fe%sOYH}&v2sh{(2VAyZ7#S?s?yRp5Ig3GqXLj z&&)Gj^{=Y$=X1wz)INRuNbdRLliaT#XQSUZev$W`<3ptH9j86?gX74>A05v~-#q?< z8~<>;v+F;O6AK85arziZ@%drWeaIMTT6#I@m2))GmygYob~zl_ z*z2Uf2HzwhlfNWUrN1Nn@KbM--Y4tnKJqJa_fIcQbe|r%qPz3tO!vWAdN=Yzb~p0K zLic@SwEMs!=zgY8+THyPbvJ%i-~A8oc6RfPzV6`3NVl#p(cPoTbUV88-Pnav_jBZ0 zH^ymoJMfL}E^MnC>DcZ*IJwu29X;qKb)4*8z|VA}#p}C|PT$=9z|8I4qet)V{`&b3 zboyRW+I_3lSL z{nPFf++TKY-|>g;Q$25W|Ck3q`hBFH7hWOvOr9U@x$nN|p8ENB_q^*`W>43vb3Ly- z&Fyh^3489+Dtf*^(e&U(eGl1f>AAVn-h&A}J?c(>&lA5*^>lxv*z>EOGq&~qRE;U2@uM|!?}e$jK;Bfsyt2Ki&pix>aWGk2l0_l^fiz0ck^ z*jpN(=yfbz(fiod^xo?(&h>U3TkPfihp4yfUGm=QQEjjD{ia@|%iJqocl93sd8qf( ztyJ$ZJlD&eEcc$kYQ5vnt@U2JyVu*Dx~lhJ_DpZrhtKuWFTbhxp6BoE9Uw0B##s;a zp6~u}FLKpKd-dRwcAa<>u)k0Bo*;j=x8HNIm(=}q?*Q_}-kuj;=tYixtrzKgu@~+7 zMlXKhTfNsI-|an>d%gD>*N=Oru6?sNcKUa{lh?h~8(ccl7grzeBcJQ-d-9&KzC`}A zzRS;2`j9*5eI$g@hn!&b-9=jHn?#oS&a1h7$1!2weLqz69X+b<>rWf{1~|4p+kmI< zm@&}T^LDb2JD%@*aIV_7boE+aFS6N(Om6p`dj6nqX5ds`xp1zJi`>|UjNjZB@ZH&W z{>Z(3GtT?^*wYX6AqOAoqYr(g@3qNK^f9%c>T^Xu-}m8xFZNv+e4&s1v2XP4{OMo& z5Z&v2r1Tqo*x8@<9X$7oKK$Zu`i`FeeV_Uhf9|87Li(SfAMNK)_x4NUL;cA4k^Wnr zn(Eh|d{@5|q4xJrvigrbwa`yRmioze^7G*a1$k`kEk@w%!k03YocT#WZM>=oqCy(FRuR-qa$H@2gBd!bm@y-wQ|GVoW z{m9J2{p71Z-jAMqtRESAyuVZPnSPS?iT+O>Jl+3V{rUcxyT0C!&Aim#LHb5NBKTH+ z=FhM7KQ;B^{;rR_*?+q8*Zrf(-}j$E{?v~nf9}8fe8&LZ*)Jk2Kq>vfukAY z0D_qYC}{$0Q0G9t(+ggxcYu!g2X;@z20D?Iftl}T2c}M!2TWLffJAD-$F~MfA!`F2 zGaCcQsjUGrd1v6Onv(-x>bPb=T)$yp?whv_d?2Kbhr4)k@tIdH`*zZ>YB`;P&5og26vd3#`p z)H(Rf(D6ZhsCV%6#PFbQ@3O(~m}rBhW9&f$n;pFA3_56K2nV0}wqo$JI6gRPG7a8* znPU)n&OO-Z3=AHOMFvkGu|cFSK3MF|4kBMD3?jzTU?)}?q@ayK(`UB^4`y}-4=%rQ z@Zs0b43fxa2fN7E4f2s2246#N9vnS&+u#gx`yeuN#~^aY-Gig#_YQuc{=vZycRe(C z&FPN~&UhXfO!j?haHQ*Vg9kT#evmx#)Zj_%nZaY7UmCfZ`P$%BN4_!mZ$JFr zAcOMS;K8XM4)T8Zb9lZt2QT8k9_)VOkAp{g{yfM$(Lw&_VG_B6)I;tl43f{^K2Gky zCdsG&I77C*&L*Eg=Ews*%Vg&RLh^Knl>GA(YBKUg9a(+KME>+gUF3zwL*&{AQ)Km- z0@-tYo!n_zgIis;$@$KGa{P0r$^Myh;{gp-h(faukHH^`QWt|$=x6SCfRx7pUE8Z_sMMRHS)mR zkIDC+{RR2)!XL;3$-j^pc;^uQ5^3n_gT5h;ZDeR|;j*Dmyqi9B{M++Gi>J9myWf@# zsg0^3LaiIBQmsSCNn(ifUe8e9AHzeUH?uHs()RpmsC)YDp`FR&!}pI240m>r zhm8-84P#vs!}zmT3?Dl|8UB~o=ZAka%^fx_iieqxW5eTJ_;A2s8pf*jVeWx@c$gCy z{^9YJVWclHOgfn!?$P9jF=J_1cF-7(8`p+M&g>5NUwv|z%|A0db>!Ue?2m34*3s@7 z?m2T|_#wuJh9@H*9e!ZrQ^U`G=i)FDdv^FIN4_$A0{QAN@}ZZ9JzxFj;V-IR9Y)x% z4|l!)jp6vGe?HtZ|C`|%uJ z9gmMtIhhemlOH)C6-S6at&Y6^*wzSqk4A=WJ~7fcbJa-K-DgK!OXo+l$8H@#9Jh~< z&)+qoM(!E;?A0F}(V!2G%*=dvq}Tq)$c3YikC0fO8#%z97`f@_7e?MQ{pAtIzrH+z z9D8M?^Znl*p`hOzL65yUazOlOI`e97GzsqL z4M=rV)6*RFqMM`VidT*fbe|f%|JCb8kIkMReMWQZ=&13|(MJ#7H>y0ie-wT6;nB{H zkBwg5dVKVj(a(+c$1je~^gTU_b$@Ym8vV*BcJXVY&JVsaddtP{j6Q$;YopH{ePi?s zx4k*q2YzS=^4rla{vSr4L;f^M?)dX)zxT-4mmlgKW77x6LYI$^X*#CHM8=sh+xG0( zAbDx*F|J^2PA41N;oxIOZ#IqH@@dBy9`TKRE59;!tu8ZmyQ4hz($eafc4~W!q}dzm zeEH-UcJDP~*d6D_ZlAe%tlM+@nC;lTV0r%Eb8zayn8y3S7^Ul>v16BiYz&!rWQ@N4 znK5$WiLoxukuEK2{`7$X1W*vCKmhp`~?7CirdpBLH4_}$3S zacUQ79O>*HCw26WlkkD@t~-Xuv4qO7^f-IGFfRXWa~wOp zK2G||?)Yl+)cC>qGvn_-d>_?j7f2_l*yCeQ-Sev4_WRVm&%u z`pG|zzxBp*<2Pbo8_&A`Y5aj-ygGiR`)A|xKlu0YAAa&LQYST`p; z$j(G3wl^^g2eHK~u7T%2J8{r?9eAMU;B#I-L1x}G(KmM61a@%8M91-aCT!oie}dlk z&;*(NFk~e@KGETLbYjNw_yj`!)WnNjpPM+Se}1B)^Qj3^$I}x}Q@%XG?f5E~rC*)6 z2KoBL)bVdlbdtU`5kLCfiDBelCI+lOfCJ|@Chq&yoA7`C1$^B9zd1mDIdT0Bf0zgz z`OCx;6j*Es^-NyFADpZYjZQL=iAm&dL!O-MeD;dTu4`r{$3D%P?D*s21UG%*ZgAgGUPY#HNG=f|87!){9!VH{Am)o<1dq4 zKRq%vS|?4h$NQ(QNQ_R6IH#wO_~lddY0A`x5atx}U*_VGxv81P^3)`mJJswEO|c$Q zO?AaJQ^(F4rl=P!Q+=Jp6w>XOI)S;T7H0xe7tTee_yZ|;j{h>0%v8rvero8TG&TKH zW6JvTt*M(yds7&)KZRU{FFoV#VG~pg(>cv$c$hW~voO#gT)i2Q8oIqk2f=-2#i%6P?FQ^<3FopN<_P9JHKrbo`hE_c`9 z^ufvDX{2jpntbiV^l1O()4l`BG^vv|ja^_)cd_PSjS$AV1l#{PGaukhcTS0>KXySm z9cOB%k$*K$lYeEO9@_~_Q%*#tUzDb%57gOdHjzDELSuULV0HTIqr213 zAXiQ!GY8W%=vCAI`y%+iA-{b4kBEx=HmpWon!mn1(DC-$?}Ax^QNj=%gPXpNzrLM; zzpueu4Rb5Z{T)|sK8_5Y|3~Cb$uo%L&KHn7?|cR6BK;FQ*Z-U&$hVO`^n1v~=U#*N z!yLR0+t-meoJTND4WN^pmcK$N%4kgxmoC28MJaZ2$Ke zMBW4M`}>R{x5DE~bA9*SNLTuO$ccA9fS@xE!P_4~x?qL)>AsJ{-#-rLVIG6+W5^8h zN!b4H^PkJz@Dcz0Paiz|zvr)D7Qc0bj{Nm)9&F|CZ~i`=hytu)8%z|Y0<(v7{`XJv zKOd3XKMntV&J7(y+(-|+y$3l!dSTlOTa416G%1^uWk4EAlo(}^vPFgbC56JIGHFaY zlfh&%Sxh!_whi4f7nqC8CFU{{WpbEYCXdNy3YbEsh$&{OnHr{+i8FOfJ=4H6GEGb~ z)55eeZA^k`XF8Zpri0TR)7^`g;-%$gcW7Q zSSzeJE5S;#Qmiy9!^*O9tURm0DzZwfGONO>vTCe4tHJWKloSO;L(x+V6eGn%*`RJx zbrhV^qC#|v!lqU!P3k;#fjUQBq}r$i)lOZZI;e4~lq#b}DH$r<8cc~$%~T6jO~t4M zYLS|UtX!4~H@;I6)C?sHLC7>!NmWthR0TCkjZrD=1vZtv$fmKE*mU+Xo5|*|8Ellz zV$0bgHkUoiR>3*Ab$(FwYp?w~vAF1nlUp?m2*x}P4P2k9Yt zm>!`==`s2WJx)*1lk^llP0!G?^c+1;FVKth61_~X(5v(sy-sh?oAefap0Yp@P=pi; zgUX;W=nMvf$zU?X z2F6e`Gz={RXXqGuhJj&Zm>6b;g<)mb7zD%4a4?(<7sJi)FuV*O!_NpXf{YL&%!n|e zj2L5u5oaVANk)p1W@H#yMvjqZ6c|NDiBV=$7*$4%QD-z5O-75c%2;EpGnf=Pg-792 z%ILOMB;U1Um8dMElyf~Mm5u6H=2UqgL|_`1ParktluANlraQ7)hGSdEbVT{6HYaBt z$`JyCUm!B1^ja~`Vk*oz^2&LKfSVE4#RV(VSGVoy8GM0Y0Za)Qp|IuE%Z_zfOV4#E zIV<9rIEz~BW;;(xK`(g|e2dW06z9;UWmm8#*cT*mIUzbUC~PXJf>0?B6^ej>CarU2 z;8M(*^)j7IsZlw+rW_`wU?5XuGzr3tsvSx$F3f3bBCUgNDDiQJ1&xc#{B0B07!)+P zIfq(THs~F4W0F`@8DtwWjO)ayTBv=YDO{%DOX)U3qvDzzN}CRpi>lP7pez%9wl)^ubcZrpyNFg%?U;6rl~J3e{YOcgs>Wt%{dbA|hZGix`?T*R2SG zfe`@}V_6dd4|vLcRb!?@$nNwv0p2hF+Xz@>W%iHPpB3n`#%EbDjGG@;GHa4HBU zI2$Y{p=N`&u>jtN(JT_Qy^Uq=qH|Twh2j|M^f`FWeFfjium!C`@HfQZZ?yG|Ra79B ziR6kMEnS$$HpEql+-bDxbz3qSs2nlf8c*rm*YnkwQ|(+ZZi;1gjgu*qn}wQ&P@rpx z+FD0azrry%_oRBKUTSn!vnHq7a>?x|D6Mi9-|nbE%#1;vtm zleSF|R9$v9oI*=lQg^P2V$zCX6^xJ_Q&G9&O!L-23$d#=KnuZnanY`Gk=S(Zff=&p zv=dumEf;!xihwR7Y0DuQV&2YhZHwuyWggSzv&eC#Eof%BymeI1cFpm5R*G`gl`}88 z=CC=JLpbl6=P!x=W{ZU7JK`AVLL2&qx$TSyTq2jyC3Y#eR?Dtb;tHy%%2}b*6*m6O z9HE=?!VId?t6U020aJrOLQ^KhT9?v@yCOzDsDEr>RnO5@4TMGSDq`@9z-4qTaMsWY zpRI8U8a9hd#5KF-gjQF>YIC`WU9nJ1xEwCKYegmD#5hiu%Ow)KT~z^B=5eiB1k#Xz zWpk)i#yz<~k(aN@*AOHYeoD+s!6z#rdUPxC)pfQJYvl_A7B4cvukmWGT zq9C1^1bSXhVic_43=T)Hv{EEnHiK?oye!JOQbMyOYRtM~{DdocD4~P}3Du%G1+BW2 zIPRj`o8~;86xStrS5#ki?aSBYHSker)}pHg9lM50FIHKbu2t8%t1i{pORfSqDRrpZ z(cIgIO3IE)=`Kh)ye;@uy^eyHf|^ZK_bwFh_FP6O)4hQ%yW2%NhO%H;1V3e2w*-y~ zpCgo_s#$kZH|M6Jd^gR;QcA&4LETyn$6eD1-ApCVowmwFZCgbEvI-YO6}?*nzKX%k zQJdUUiORjF)k52DkzeI!csQ6V>msw;=yt2kf(4<@y(+{x1T^nh9w&6~>>#gLWezY` z0&X9uD_pIP>jHm;t>kh1?ie@e-c`ojZGUCOt>8%1ZI5M}mvGnkY0y|w?j^HVFE(bO zo2TRDz+x$Y$s#edMV2ab^y*--G{9wPy8kY+=$yN9o2{EhS~!b5VllA~xhvpGoW4Q%dAf zL!Doe1}$9urpT^QL!}Sb=)ih0dJ6awpR$_Zw9I9tQJ0kx9)&qdta8mBsoLgA=}fw` zPGYp-fXI2)IYONU`hE_T-9soAg$_^Nyr<1~v14ax}YBC2sI_(;_ zq6~u-lb1xG2p9z^#tU7*1eh^|%&GFIQyw{1LDPmXo_VJhn1^1V(_HlExh0R>hVo1< zqe7(tO9phZswbxr=`fAoR0C6Hha;6YJPx!8vP_cG;K%i=<_(Wmz3#z8Vau8)quT;$ zW(TAhxFyvytK9c6w0j<&c|#G_QM?QZ)k}dOzthSv%zMQGoo(5=;G=;-qtl2jW*y6$ zv6!WEO19S_v&$r?Q9O@1(Y8u6=M{67`LkY~m1AO~Tc}g!LTM-$q#C)E2U^Xtm!n$p zhRkWP2(+4cCEvSXw;F_AmQ>;mn557slv!g2nU`yldofUK3|y60CRcj5L{_iPtMR6_ zYH!=K(L=$o$v1h8P%*43ZQcm3<5&(&8`mY(M&|Z1B_8j#Osw&Gecq6aC2?8V0+Se& z8(zRG(FDCTU+B=fxg_1xH7rg+u0j23lrNC8C0QLs!Qtm2=qpAgf;F>7?h=$RxtwiF zcq0Ofl*>zT7L-PA(yOXchKDO1R3G$Y~HDRL~Iqe#UYhHBWK{tLaBe=q}R6fAyn9IQ)2#g-6emB4@MF0SBqFC zt5jrS;ue$6&sXX>ZIh^JjT_DWJ}@#9&Pw}!dXq0rxjJ9v$+R{kP0~~P{()R@Mw$M z7LfM+)Id%=XA|&)9A-djSVR-Xh<^bLq>OboP|z&}>dNJSUvIF_gNn2xv0xr_4#cF8 zde_gF={1T#SS>zOlCp9M_(-AvLm>q>X%_@WC3H5uC@;_yGEpI424a%tP)pK7eNzo~ zk{Qe-EU+uX13nE`!VL&ifk450$x!lxowR2W@jU^Zh|hBd#DqKGL%mS#bb+UYi)?|Y zZQd3EO=(}fMI=C03WKt=5%2FDXr5$b^ zq$M`q0&6K3*cCNFT3Q2ZY4sg#sc7B>aY?0E!m`|5?p{EJTCx3rwoC~oMATpnYYR+L z0prkM@@s73gjH@SD%im~rl=;3MY&Bn8#HKG=7weggr-F>nwEkbvj~luQpRO4ngmLj z00p5*sN@83L(JATo5aDQP7vftVwgV2H#RkC<6>yr+`!i?vLJ<9)Z#(DRvFXex((hSMFa#-aGoHf0&OT5!32`DD$9|p13{g@AhP3NN2%LY zQ<0_sc2qW~Hns3vaKUD@N%%`>22808DG%%^4%kz|P(vvIcdD&V)q^tdr#6Ff=%NN? zZG#F6slcGx=L#je=4Ff!YeV{w%d{fUh47HaUCTOQh`9fJhZxXGl%pnwG>sCyb zL!nA+j(YW&)fA9sj9Q~jrzSwGk~=~|)FZTEag#Hokr}jMnMmad?U^??5t$b(D_=-L zctSgvKg87pLfiZhm{x7kYKOn87i!Cbs4St5C{Q#SqH+@5Lx@Wt@5U1^!e zm%_XJwyqTde|Fsxu`p!Za7pg8@WI#;hPU`}0T0A2ad=C$V>6*~sazA4x0JFlp_7E? zHPUcX8MVs6;L6)HVc3N-sKRAk3=A;4z+g~^l}g-b2yYve;BslhcC2D?6FG~O8x;$Z{Ms4M69g|8I9~p+4LY`N z(7npqO{-qMDwRrW7B!E+&3Y53iSe;HQ7|l%?DE3lRbB#Gw=K-VTacQ0c4;J>5m`hP zT_~(aqhNm7gbN}$-y%qcx1gbR&0uZK!z#p)=jX-sA3v-h3Af_m30uu zw&YFTlC}a0*?L4Mvuk;Z4HBS7J&wF z44kusjALzEXLLattTO;|R1%Y!qcg7IYDGezH!jKZQH;OIY3g%PrNpf*L>tg7R%?=i zW;8Ei2=J6`l07zydO0jIg@-j8H6Qx>=hLnJzt7sXZs0B6aQ45E#p&+NNV+*meO{iza zbhwqHlFY_fiX~9h*r2QBd2=z7VTo8(u3Z5P#o z#U@v+C>Z7?sSJwBQk@Vh@SIXysfcM5R*@WRwu(Y3PC#XORbbcoKxA7+xg6Nhi7jaC zP+(R|k|4Etp}{)^R<$7Xf3mA3E}k8KI0 zCY5|c!n3c&s4E3dR=s6V^S23#)rIeX{Ki#NR<=Ne)A9?VWia11u@o<%;DP+MfX}W3 zaVvOm3^3r>pu#P#P%t{wojEHSz7Qlh(Ta3MtK)+PmlADhxGOS)1T;7~RG&3ae=bVc z21#tyrdUz0tZ6W4LlY| zIO!FxIkh6N8k9V>Ub#aQSGKThTa@DzRuYB`2y;fI(^y_{%D1r^h;uAaWyN8uuP|5b zincblWLO1lj%QfYZGblCCDuWmt8iK?VfXe*PA!)0f(HTFk*7>$>pW<5J~dswcqr1j%myPG_Zt>*PCUo02=pMS^SOMx%Q9ycVcfV@ zPZRUv9;pD#I^m&Mrxdi!I=a|sl*iYUvbb2N0J%;HC2OZx9WMwm^`1lvf}JK_ksI|A zp+3H#)x`z&q`?G|oiXmQn!&Tf2?uy~>)J&FLrj2f#{mu98Lx8IB}rLZxbw!f3P1F) z192NK1j=0mlsmbYO<09YZc&)v=ZV;%b?4+p;}V$~UjhHFDo@6hB9k!%?d(EaA(r0&_l-Sct$ ziM-JX;+{95RQVE~1SWTY!>2KsltD1~LJ6jPS-PPMCoFh0K_McEf;xF<@OiW;sD8&l z=1U~DSRvw0n4zP8J^`#)s9Wurq!Pc{vFQ(Nbo z)3JECMOL~(fVY(q|dNoAvk^xAIv^MvaXY0lBg)Dwu+N_ zzTbFB@QYZzRwZ6kE0RftS&4z=r%dh{4g6WLKB-NrR9veji6?d7`?XcSWjw{tXyIiI zT)&(O*Aq#%rLFuqp)GC)-_HfYpAU>bn;Di?2!B$f4}kO+J(T`J|0(^6tjT2Eno1Jd zqM;;|Y12um(1B%=3TYPXKc?6#EhJ&NMM?`Pdy$(X4#T>*|!3b<63EmEr%~|qY&;s|s3k(?7!3?CPD5->HKUqTQ zAO>2MjFeW*0yU7G%7ZsJ2PJd1yg<0*^C^)C6R-p+8Q;bMK@e9jf+T2BV5%i>1?LPl zrQGC~ZtB{upeYp)D(nI^Kjq?X;1shUwJi`HDuc5I>7g?i6uP-OJzJ5MDN?fvGgoU; zrb0bRYz^$5_-6V z$ePkinv$%UNO>&a6JmCbl)Hf152eBlr8{Nkc~eDER^Usm3H_;E%%+cHYtld}sV%8P zAQuLq#!eMQQ%q4#;Ig$1!zE5Cwa!a|WtaigFq@hs+LGa_rwE#1+cFdol~k>6SGGk% zze239r`Xy?O0I3D7($gZs^!Uz{1%*cUr*%)Yj9$DHRVulf^;~q+fK!JAywM6o62i8 zz&+ec?MRvFB@@%Qr3(oepdSj1`>B|AN4Kq8mx{qaoIBJH+X~_=n240L-R$KGz(Ev& zf!H#ztTGu24k901#N{+6ZQ?7mdl=QIOw)}COqRAARcW_5td$-riC7w!>-9Pi64hy; z-3%(C<Ab5!Zuo5F+ChF6% zLo-othJ3!25YCEHX}&oRiwx;Bk61P6)qI0ZfuRMk6fEEushCYyp)g+tSFtTB zO0fpi=9_7kSgc-4@9I`TRuq`aYJ+4WZ6vnd@f9<&y|i6a6wC=InU>Wk*@sj0S*zT@ zGo=)?j9YG!WMu_`&`ix3)EdhM5Pwmem02NzQg%k8n#;J9s1!U#g;H!(GeBizW*nj= z@EA*?MX(snl8Q}^@-ihsTWQ?WErZ&~=A|*V7=G!4)X2{`MLdlpQ&sE1Xq1E1xGj&u zY4mob-Xa0099MwaD9tFfs*D0PTa}rxuxzZT9Yjr0%@{NL7!EaiOJ)lvGUklOY~fq1 zG1QjXBdnPkr>wVUd>Kc^54z)y!7TSe^*#XFBd%artO^g*?<3H_kAm+Q1|!mqS&Xqv zFhfzhMDq%UN~lhQ_n6D1ze5)bt~sgWvKQOe2+LUs~YEEN4N&cBq6a&3TR#$ zG_0VjSxg%+gf;76POgDH*~&64Uhy8TI9M+9ofV;=r0V~rZq8)k!^C&;xKT-|v!(K4UIA3j1#1nA&QgBXLb10%;%w%%a%Y|}Q>|NIbFPBY zDdcQ`+3CgC^ZO`Oqc!h<(it@F=Y2|(oK{c@>4h!R9$28edApseZ<*!~l}<)s-LPC> zf#Asl$8(|3!oOl+ZI3Jf(x0wpfNZ=01bow82|(HPym$&3u>)Tq~S#hDqaE{(0D;=Y+Im4SgK4G z_B3TsKug?gVa}2}bU}+?ftJ97NEHIw)xw;$?SWPgZHQVSi%INl6O>Y%Q|*8Vx(-e# zwHV><7HGvikV1L*Mj>xt6=gOiD4|P-?nBnbJ9I*qL4e?Z8M*)-sPIq;ZR?>Y0OQV~h zjyAv@-6@LdZ0>$>MYvalOESTkpn*EdQCxCIm6+c)TcVrwhPFRCFJ2HVlu9zSVX@@k zErCP2VOuWgRhKkUC;x9Asgrj}ByDops!J*o7CBMk0QkUp@ti%ziN*kI*L0c&e zDk~zqv|w4m)&*-;vsza&sOs8~QV(jWxule8U`ZX8K23&FS?1;trGTg^tH^A28)&91 zwN0S4OL-Bc1%y*4xTXOyW~<3q22TmYG+Lp}Un+}Lm>Z0Yiny(vx=KmRq+ixXxpkvf zz{kU2pIWtQ%*79t!YVU?*&`rn2=FZUrzH?jz_`97tuU!H=b-B#cbIOYr?mL2NNFP-S z%O%N@qb;ebOcKyjrC_PbKvUIQE_te&@*=#*6ii8}Ut%|{a0#QX?B;th9AwokZOYm< zR+nIBEM-{HG>i%zsH>JT*IH)VHMq{+kXgzcO{C0LZ|WT;ds!uG%3{ilVNpzg##%I~ zfr)I3tO1GRP-XR%X&P@i%MXCf+O|O2Dyt8(%U8-SUc9`nZtJWi)3P8{7UE$}y4;Yj zs}?mmuv#-aj2#RalaFv1| zVpPd06`}kc#Z>{0t52?}paPy~Nvy5Z^-3KMo-1Fj2iY|wGFIF?b0s1*f#zxj*)?Of zfbi-B;gutBfbSYI1PH#uQ=!^?AiV}FYFnUE;rYRN4TJZ})m_qF%Mym@lK5&;r7DZ^ zG{_|s*S<4bsb_K(x^`ZL8S)jc*@N#(X0>yiO^aU@6D5Q`bD>hI6f1G=y1rc5Fz|Gh zic3+eXsr8{Mx|LX!7|E*nys%_yn?ODI$SO~tB-42m3`c;TdizX;;Nj%ifgcq%94hz zS*y&VRQq-%p%Ey|s@=*?rH1ZRmQAc`SYHC}Z&S#uifk&5-<;r5KtiEa=~bDYrcI&j z>TH#^s?f|;TO6x;Ssb#>R~K}fYQKD;x?IgD7OV5>IdvL^!|`g<$OAzIt)^2RezhW~ z@Mlu!$pKuX_cZYqCtri4!8KCwzINo^6(@!mC&P8Rk5nNO4VtrnyOom zS7Gr;9yT$2MpUy3Th&@EXli0Dh8iUbdv!(W zsyaYz@qpU0t@KuXAh$S-ZfQaus0OQaLZ_%&twgAr6o#ubU97svv#8p#OC0xFc7^e3 zqPhaY%Zgsh%T?3WEO;;WTBceeLgHGLuPat7)l#)yZBz@@_3A1oUtKhot8rymVzi`% zdWBrSs9vpB!H3aW#rRsaSzSD~&v&N{gYJ1g!-mCND3pK5l4OYyeXugJu=V}S%77wkd zq+4n;F5@kMAfv?>Yn+;>CapP@Ij5J`bhY-y z37XobMqe}3Of@gxSlhOGYUY})W~o_gM9p!i(0FU^ny(fBi$;RytijrnI#k2W;o3Y; z&hhho{K%nCvr>!K0(>toCJ`Ewpw*;m5l*(2sikYVTCrw8+jdQh(IEqZS&>Qk*J{ zOLB^cs#R~+HMTt8WsK-|RRj?ht%KuZu`K8voQ?Ww-DxV?HtSpUoqACd=0$kh^#Y$O zF7j2nI1v%=*7rdCp)_a>YGcDhZ!j9n2CFgKU^nI(t43>fR>c*}Hx?QTE?LxV+(BjN zstmR4D;FCp)}={D!c>Z3r4+z6jJGNkiI@H53hbL)FkUlno3V zAZun3=Lx=q%G-9jXi@^6W~;ZHDOCjH0r_{*9KmY71W?W!wznc z6XYOI!`%ofydVhi1ir?OnkNo6Y?@GGQ6C0PDAtHJRzMa?HWH0=Ln}-*GL0-4L%Bww zQEC($yOMIF(vb72jas9jsy7;qW~0?eN>&?djrGPxW3$0AZa0{w9Z-q(8oP~sxao!3 zq=78NXfm6uCc8P?oC9TOp}E*xY6_yu&CN7lK;dzvoF>|2Sb3liahn2I+7mW+1Pr?f zBqCVaXwI9(O<7akR5X=MRkLbYlx<6w)ffmx>L%W7h&4@JQ{OZ+EzLPuT4QaRn#QKN zxgv6aUPLr`XbAKoKPW~)aEy{Xt3A;4G+j+6ct$HA8bzBXQ@Ghe&M z;We9F`7Adj*##YGySdTaYwp8M3-lJVwa9^6Us|gYiIvvkTINAIT4>FJb`%jUww7AU zt-01}6Ky4MKFCKr@Q=hTPD|Jlfr2Dy$-zNVwoG!HKhr*!mUs%()ydRlxQVesaCp`In1cYIfo7zcXl9y)W~JF^ z1kFx^3;$_w@iNUrgUcalep-MQq=je%#ZEyfT*?w9K}*t7v@|V4%hGbRJPi(nXeAo# zFwv^C8m&%i(3-RsZI!l0Tc>T%HfdY5ZJL9kr8p@ZN{xab_YmXWBO%po7d@9H*s0$K zspr>DU4E5g`@`|qQjF@Gne3?tPX6xh_vBgr`!bE>-QgF5JE#Bsj^y5xdpF!Yo_yc# zr>;30{$#8>b$iyB|I)43-)_(Si0HA~?DyJDj^Fr1!B>JEq3+1P#s}eC!ASOK;j?x7 zT7B)Ut&i^ga_{Mbfm5k#I{x`STuj;$=HTUCQ zG~8I3$^JIml^2(P3;Unp)#uiUZT=m(4?Y(DeT*G{DE05D&zDCbEI!%@Honk{XToke!=xiceiga_*Cfe@N40hw$5bl z$vvL4mL4sa>R)JGzxCvneEZDKCr*C%WY<+2SN-y;Z(Nl<^T@Tcz6Z~}aU*g5UAJF* z`WgFAB16ewQ?~Y_6HlD{>*B5eIMwI6!Vr|&9P9=!8Ar$69-JNLEI12h`&O#QF60Bd5N1)4BJAee8Rw`J-2HPTjvt zay@(Ujn#ePD*FZJ%i$i^w_QJWy%oL7I~RB(crJWL_`Bg|Y%BJG_`4IS#FL5drjnVL za_;<}^2(CC* zm2aK-$7}1?J)C;}stdPwdyaTM;`QVM#rn0Z&9&TD-@EF5e|Y+YQ1GrC`gqih>8Nzq$^DU3)nTi_ujkdz4u;sda~0@!kzy)=iYP9 zJ?-AC^<@TT{IOiiH7;kK=Y5G3aw-|h5FoF~G*chY$3joshqDOK6WKo89NxTwgOWqC z*Rr?DuZCbF%7n9i@jR#tK(*|-&F^q`h`-T|{6bL%{R3YvvX>HsM(t6;W7415zw-Lm zE#dVQPZEzRGphEg=4npqcA8F`^){w`yz_$lg0~OFP@9JvLwG`-K)xpPmA+6uHLb7d zYC7I@u}Mkn!Ddu$$W*HpgiEwPJyzdH+^vFVULr*PG;%xCb&@ha+r3KdD6#oW+5};7 z1yLxe`#|bRS#6DREYY8-dEnubZMLbZL->6JENKRjocUY!%Ti}HF^9vnFy$--Tfkn) z-o%}dFX0vOp%4)%Up`6Qt(~uH(#@+7>m$u`&1Wi64z7dm{8`hZ(cQMgbk_a6rHa&t zW6nQN)a08g^b%6UY6+#NOij>b*!nt9g3q||g#H8`K}#G*;*yqUMr8+6Pv?GTY+`?9 zf8@xx$)Z68I@uc8u+rG_qH>iEtz2nv+LN3QT^DP(9(kSGm)RK8T;4vN*g@V*)-d`r zdrCc0OX;uD>AJBd!13Kd@ZoUbgvVqp<$Klz=rPj!yw#8*JB~Axw_cDXJuf?{-C|p4 zcwl&E##L51o>z~pJq8uo#&p!JEC?Tkbwi8Y_?=UnG3=T79opl21I_=SR0p%978M(@@}JC`tQF0- zWP9BCVtC_8+`Fv&?0wYSTp{ZiJBp9wj~8wfekr^npP-YPrnR)-2>26ZWM)y`)4Vr% z-GU}bX&J1X;PBPmvk|hFGlp=t64nr^iGbh)g+bk&vwsGhySCIIjxJJSuatZx8t2UntK`T#7PL}qS`!%MDhDx*ZmaE*0XX!O|`4v~ZJa5>&Mj=65TPWyf|7Kxp>Kk(If0x_HRoi>{t z#GS@Z6`zvsmQ0rIExRl~SUy38HvDdQX{@)jy9p9~dlZxE9Mbk({k5i=_LmQidr$t7 zJtF5s?h=}vrI#X$_Q_wmI%t6PzD7p)Bxp0S>2s~UD?j2J1#B_)@g87X#5qFhrqs`-t5IDpyWcN#l zsl~>{)g-U4DVlhVTtErXY~1k$YjlABX4YAP zQUBW5$KSR-(sf)OZ`HEL0vWq_!`lR_q zzZ9{$2YGT&l^5Cgl-P@u!SV8M@OwzNF)r$4`mg-;)-Tqtj+LYvbIL5pB1*^-=In#G<*hU%J&KN{_n=!C4#s^(F;ma6aBgv2TqQSz zkLLfzSMVzYi-dg&Mi=an*a}0XROuhkUz&oFWAY$nUU`s;r+TNluf}SYYsc$+hO1_$ zWsWt^_R-eI@rQ%rD0Q%1cU?=o{Mw4T#QIiWqdyFX!u7^wVK4t%Ee9egv`NXeFC>2VB%=FZLuQ9V~qkAHK z9R2}*D?TJMCHD^P1??~s#~#kzz?;W^BWw|s7rrn2UA|M^N6AnT z;8*js*&UUn6-kO;2BRb zWv4S%a7RfT#cZWhdtYB{o93Z-F?ES`ZXcuUNOMS@D6g2eNU);%mQTu^BS;b*H77J4 z@cpt`iq!dEY4NzB#d-4K{3FCMq=%$SIYubL0K=KWE93Rym+?OcN`ZB`G?QeG@n5A#vEK)paaxgyNC z#+6_Fpqg2;vOI)zgR_)7Ex(cTo5QR=pjqR1=~L*?ra4tNaI=ZiA^UJK4MvZr-^uF_ z(KZ|MV}zrGCnPfq6ACX0=tVf_@8?rIy?U+YrfzP<3ccFc(=^_+%qn%9b^Tpk?ooQy z)_QBr4eMGKkSv+wipG=(iB?r+#b)DK?ffhvbp?GD_ZR;sKUZ`^=9bsUBUM?ddn&&+ zMK?niQaQ>o(Z}|rbUcG9UQd%Bl0ylrGT%_~Ig?~gT0XrO`4Q_Qi_SH3r*L<3&*Z=0 zed9mMJ0tojiYt0jV#mFZe}zg)?rG2IT6Jv095dA{vFx#QTaVg`tAjj+9)Df3Kf3uG z!B4GWUowuiqN-Cohw){EKS`zJBGw!(Q!rGzxw?<%8lFKv={m=2){)3Qn}T?lOQnfv zVf2W6qJZwXit7P68O0K!V{&F3b!pB!7MXKUFxr$U%J3a&8rV$6BdNb=7{f;TaHy;; zg*A^oiWA_!liZb_HRz3(O-|bm7vLG@arkbv-)eb;dq*CSGgMRUo!|Ja?T&OnF_}Cg z(@LXq+BugvizIK0(#jGX&hQPkA`;gF>2gZSia6TlFf zP}Qo(m>=Y3D1XC!z%|kCGxu`-;J+62sHocSxb3i3f2?k< zRW`sHpR^t&Wph6%;siFynbO0qb#ZXW_iwd&8P>0fn>ITcgD382b+ScN5csk_pPbamzW>fl6n`ylm4UDyn zFN{7+7i%kL0{1+3y)Z*kRbHbCSKrtDX@WVPI%d?wcy@Sx^IrExc07S3pojT#-Y2O= z(NiPxT&UY6{Xp5tT#~=Q{n|aFwwx%Y4$8@-`x)JZ?uumj9@oPfTI0^*UikgujYXim z+lM1!D5I&_)HM(iS(KMsd&l+7;{h=~+;hUOu6G6=@lxPj*>OG%K2rOI$-d zLj*{eObV4s&CY3{eWp9}_OKc_zvY(*rVIB7?+LFdt``Q4rQh3v7`-lvDOO(FZ4o0+YJDj8R~U-ejXQT$4_)&Uo?3%(MK>QSP(^v|t-nU2!t zczYL@XBE+pvG_cfB-b_76Vphf9OFmS&dyovu@V>HUJ{$Ekxpu{nmezKBiho0s8GtY z$t=;mnn%7oi3|4!9m9O#hLJD0>;_e3fboP^isKPYIaBCw{M|T5&KYL4<3Z5|6-V`q zR$>`ay0N5;@i$Y$ZO%Vj(x{z|`@xupyPdr#YbEP&QH1WN;dkSH<0iM?zNGR~o`bVC zzsjx@Jd{i>98)%`d{(Ypzt*&-=_CFy;|`~mo6Rc{99GPioi^+;4012pwMpnKZ}~<CtP)%ok1h*U*61g8oD?Le$CI7%*UfxpoAJH5 z(eMZJD3c?frTN1n5dM|Zl8ez*D26)!#uqS?3dTxcMGwn_DxodYp>o}0oZ}vqUsPQ) z4Xpc6+iH1T`CIEjiiGLn(F@~>m%A>xCN|=EpUWa}*Kzl=hve{cPt#Tq;fz*BJWIh* z@|N?U$2o;#Wc@V+W3#czM0a+&p1R7alYKLM>+q}d`QqLtwxz)O+!I76i&iwME!oy6 zd=Y6Sb0#A~;8v-OA@)l9--QXxOwJC;Ih;sV+kzxbq?BcCrY>PiIXz0GId<(`ZBN}h zUlosGNW#hSa$*LR3$g2A%p-#SxJg!f1I<^e4QlKr9HeF`mY1iKmMXE&zR>DV#0*o`Um&i^5uBs&18G zg%NPNT>D)WwIh8gl%b6Y0qT4PC1HZZacgJP2|!O&zGNgOD+(f&rk5d=uVO^`#xsnBk4;WM|f!gYp*ATkrTjhLJ> zK{m#4)|<|JsI-t(OoVQY^>;^gO_u+oV4am*AIe6tcS=Z#*N$=S;h9AIVB#^-De_X9 zj?u|7v9EGN1vdo(sjKiGce_W(392i$M#o%_*YmgMh_AXTF2{z;!AIikjwxSk?d|^!$Y%gb| z*eoe4JgxtsKTv4Z@2dK0;|VsJ|7iT;>siRwO|letOK@^BArB$`tLTjNx60-AL8K@O zkB$?p5F*RWWe?@&Y!7Uwy$^lmJ}0xP^pqNB>E!a{cGA?sR%vKij$B+`tF83iR#$gy z!%NvmdGyLk+&bJ%LMrYw@eQqsXB6%!>{B{Tu~wO^ex@xlU36$Y=e%-XVq**Gf^G<* zk?a?oDm-8Ed)ag2VE1BQc56pFt86N@sc^WC(fAlQ2JgggCvGI|%1dT#D*Z!s$uz2V zyYI6v%Vfi6lTp-Swh^!l)vS?1${NCdg1>m{)byQ%J09x2T+kk#$!czY$!N z5=Vjfh%3Z+fz>Ja(AI= >;+j)PXA6%bWO{pFd)|KFC7|F`qeObjj#HyAepHwO0y zZVGN1E(=G+K{vf{VwVFKZHi#l;M#E=xK7+6+y>lc+&0`<+!@>vTo>*T?i%hc?ltZn z?h7sypNj|aG<+UD8~-O>fw$q^_(r@2FTxk&z4#)0CEkZmBwohf!=J@p$KS$Vz~985 z$3MnD!S{etqGAby3F(AjLNfj{K9w+tFqH5M{}zuWAPLi>tl)NE7C%-0tCkH`E zCmEEXP*TbtP*%zq${JE3m)VqQ$XrixWOig~GAlA0Gut!QWok3cnJY7^GFN2Y%siTTFY`#|?aarS zmosCtzGTK{{mT5A*)!`~CJxGkxK}bNYfKh|RYEBZ`B}rWBv4jEWtJh!k=2=1pXJV4 znzb%#Th^AWLs@&W4rU$BI*@fd>ulDAtV>zfvfgBU%L1|kP{~hdHYz(jJ0d$KJ25*x z`&ec&l)5lBdt5dYHvpv~;Gq6Bzsl%hU~-HUD=njFJ@oL z4x?Vpev})e^OyNVL6zbo;k~e={Z9oQ+_1m!B5V)sLq58 zbX-nu4i$34Svi6nNscI|Jja;RmcziW#xKs!bmj=v}3drw9B;fw8ylk zw1>32v?sK`XzysBX&-69^bk6V9zl9fPc*uU8MaR*}ki&|nm(V11DV>8; z&{cF7-Ak{hx8$s*@1}2~@1bv}AEoc3AEV!(zo7r5f2Y5uyYgPr!}H?u5+FabPhQVF zY+fuxh4#ox%1g|fpGSgh&v|(g$gx!9RpnXoOnHm)+Va-qt;^e+=gHfiw19?i+nG(w zMrJ2-1#>NP5A!OsoB5demHD1|hq;**fIK=DD~W}Hytzo$2v$#49BT-xKPw6{-*Q<~ zA)8FeVzTD4W#FT*I5hLacm^}GwTZrV1HtLXTjO2>~7Y3Rs=he{U_vl4P*~s&t*@6 z?69HiQS3>O_ca4@t(1_pl>>QOVs;tiVDTUeiwOy|WXQd0V*A)t>^1Cqb~D?-_Oe&A z*RfBtPqI(2zp#(953{@2yV$4LD*YMuQ}!eFXZCmYCw74Sll_DJiw$s4oKQ{#2hEA) z^yKvBq(WBKFb>EW$@v{}r*M$_#Dy#<7Dvd@a!edMr-D<+ZUIJv< zL_v;95#*lW@(1%8^6T=K=C91Rzk`33 zf0KWoKZXC4|APOH|2O{&KS~fU=q>0k7$6wu9|m~^V<3|NvJ4=L;2(s4j({u37uW^G zf|UX-MD)7^PQfz4LV;DVUGP@0Mes_nS@1%zL-1H|S8zx0Q1C{uQ*c($C3q%iE$9uA z@q>gJ5EDNVBI7p;hd|srSEv-~g&jh-aILUj*d}ZdnuY5Mc0#=RR$-@bmoQ3HEvyg* ziB1YpqU*vmh&q2DM2pS{FAJXuuL#G8qD2VNHQ^&DBw8mrFWN6UD7qxtCps&7PCF^O zBib!GELtuaR^SzNidsbtqAjAkqUR!5LC=DKC`|lK^g;AY6kM=T)VtudD7N4)QCLBA z!NG#Q1u+FP3eXTOJqDtr|Act!oB}>XbdM`YEASLl7jza_3KkVCF7Ov5RPHV~TyUsh zN5STTH3fGIE)?7=SXFSd;AKH~L9jT!@_RwFI9@!WrH^==c&zxgV!ZfGlG;#K0+;`QQ9;*H|X;_c!+;x6$i@g?y+ z@hkCP;*a9D;(hHXNsJ^`(o@n8;)fZMOo*#3keDRZl4glf(juvVNZL|Kt;8caB6%;l zB-tyuCOIm(BUvZeDA_03CAlSeE4d+gDd|(Vz%~Y=WhX%-Y!XDo{$3beh%V$7))nSM ztf~s4S8ECz3Lh6)3%?b{NyDUD3y&2(E!i2nj1&g&mU*A!U>L~hNK zQDtQiA!U*oWmU3TnNPMzwp_MTwn=ta)+IY4J1e^=dnmgvdm#HJ`yz`XB$S4gCYQ#S z_9`6(5mSRo(;+GfSBfva-kx1rP%4B-q;iNr(m?dl@zTwuXG?dN9w>cM`lj@5>7ugW zvZAu|vah8h%O;d%mQ5*RmgSU9Eu)u-%8JXlWd&u5vWhZiS$o;?vXf=!$}X3^FTG#( zsO(wUi?TOmAIjd9y)XM(_N5FVhs%TIXnCYOLLMiNk@uGOmk*WyA)g^%AfGFrBd5t{ z$#dl*dA?jA7t0If<#L6*QeGu5lRM;gxk+9xZom&zB*56L&n56id8_sVz3_sBQO z&&W^8FUoJoAIa~^f5`*#AMzl@JNb9{2l+>NxFSLks_3H_ph!_bF~o{~ictzsF;VfS zVzy$Ig07${*b0t9s1PX%6as}rQLK6*h%aQKRrF>J&|iX2k}@7R3(5 zPQ@<8A;lTRRmDZcUBv^%6U8&dOU3ZYZUssiqC_YMDf=mVE7O(zl|7YXmE)9uDsz=W zrC3Q*@|1dIg;J%gQ96}gWv8-Txk0&2xl_4cxktHIxm$Tmc}96nc~f~?`AGRj`9p~= zk1p@8N+}<#nps{`URGXNt}Smaca<+L-&($^e0}+a@~-kz<(JF%mG3D(T7I(pRr#~> zo8>>tKb425qE%Q`l4_`Gh$=(HQe~@{s$5m3imXzr^eTs{O|@J#uVa;Joocgcr)rn# zgzAdwnd+75f$EV8rH)W1s*}_y>ON|NYJ_^Cda`<~db&DWJx9$}bJQYrTSu{4rPir! zYQMTc-Kh4dSE`SzH>kI%kE)NT_p8mGW9pOYGwO5dE9y(?8|s_tJL(7Ohw7*5*Xnm_ zm?laSra@|c*Cc9^G`%&WH3KzcGz5)WgU~F{glpz&W@_Xbo~BGA&=hM*G!l(e)23r_1sQIEv z&_-xKYx-&jXa{TiXvb=YXeVjsYo}`|TD&$xOVCoaOl`h4OUu(rv~sOk>(MUJuGKEm zuGTKpuF!7QZqjbluG8++?$sX99@QSwUe{jK-qt?UPHcIr{hWL=yt zOgB?EPd7|AQa436S~p8qs>{;hbTXY#C)MF~TwR^cuA}MPI-RaXw@bH9w^+ATcTBfe zw^}!;Vv%mW?zV1+u0yv$cU^Z!_gHsV*RA`Yd!P%h2&?E@ky;U5F`}YRMQBBMMOwwI z3Vy}JiqRG0E2dYBtr%G`p+ZoRSCLi0sK}|vtx#1IRER3H6`Bfj#TA{dVx3!GVXLrL zKsVefJQZ~n^%cH~nu?Z+){1fZ3Hq7(`T7NVoSvX3>NE8eJyp-tv-Co}NH5Tr>rMJf zJp{VwtMo2?y}n)Frf=3S*00xZ((lx-({I!7(3d!m>bvwO^;h(l^$+w<^)K`v_22Zj z8<7TtA>0scNHioFk`1YbfrcrDiH5m`Sq74UYREM(4IG2eP->7FiVX^b%Ahmo4HiSC z!D?tR)ESx$YYiUa8pAEa6T=O|9m5gBO~X|~sPV1gy`iUZkg>0ExN)A*>6>MoY$O|r z#vg_fqtwVV@{MIiv(aXB7!5{~vD4UKTw+{oWE$&?D~%hBTaEjSJB)jc2aJb|yNoA{ zXN(t&H;mVf$Bj3Q_l)336xDaS-L z<(YC#OjEvzV-lJQOk&e8Q;A7wDmPV_s!g?~)us;9Zqpjm1JfhZJ<~$L)DszW9E|eoU!b- z+_apx9JF*cUjL_cUsR|uUPL`pIC2Ozgfd7V=BWde_6j< zk(FtcJu1P5DsNT3t&FZhR-vkZDtJ|QCAKQGDx&IJWmwgyswq`tt0q>ZR}HG_QN^la zR+U%HufkQ8Rb^KRtE5#qRpcseRY6s-ZBbQ6m8oid)v2nzRR^lhS6%h3t~ye+x$0O| zSJm#Sw^bji?pH1&bHMivzcsuTdi%Kt;x2?R&85i+hE&o+h{v%J7T+RyKcK-yJP!i zgV}%BKG~kzKG+a;v^~roW1nvCZBMrkwhysSwa>6mw2!fmv(LBpva{?AJKvsfFSHlf zi|l1~rM<##w%hCud!4<}zRlCoDteB0 zKt*GYo{nCQbjKLSR0qvLa?Enfc4!@i4vB-~usTc*i(`djp~LG~>R9Gzb}V)rah!1+ za@=(M<@o4$=6LLQ?}&BYcRX}_aoly>a-f|d&K}MOj(8`=ncz%u{_b4u@9!Mqoa`Lv zoa&tK#5-}$InFF6&6(>IJDE<2v&dQI)Hw}Km$SxM>#TG7oK4PV=LFYO*A&-m*L)Yw zMQ~-hI4+5++@*GzTy~e$<#1KIYFza$t*g=1i?i0X%C*)$!GW>cZ-h>e6asbyM}B>V4I_s?Sy5 ztiD=(y82f2sp^;2e^uYBepLOV8dVco6R7T0)4K*!)2C)y&FC7iW>n4Gnm=pi)Xc9T z)Xc8QsmZTl)eNrT)@0TwYGgIq8e>gWjkU&7T8;6R@E%5SyQv2rmJRS z&AytWHOFgC)!eFiRP&>zyXLQ&Uo~OwV0WB5+MVQ%aVNX`xO=+M?*8uI-4os8-80?O z+>_n&-E-Wt+&Fi(o9^bgx$b;-tGmO!*uB=h-o4#@)BVK#(EZZ=)?MZKY?8SNSG`Rc}d2p*z`pdGiTRjgwk3F+Fw>&U!v^U8+(hGX$db7M#FW1ZSioB&>nb+yH zdrjU&-qqgq-c{bM-Ywo;-UHr)-V@$a-t*q8-h18$-do-u-oL${y}fG#-q_lqwQ;rB zT1IVl?abOawfVKPYa42()Xu9V)V9|8YU^rSYIAGP)$Xj_Ui+dps_uL3jJjcUNp)#; zJ?i?_O{g1PH?fXh$EwrTN$axeHq@=DTU%FOx3lhQ-L<;sbx-Q9*B!3AQ+K}Zc-`Z= z9`&*HG4=5Jka|r0nEE00qw7=aC)7`^C)LlWr`5CSIrWVCg8D(V#r5)fWxcLGw_aOc zQE#l**P9xu8XOJv4ZeoPhNgzjh7}FV8`d`LY1rMcvteJu$%fBGha1i`oNl<%aJk`X z!|jF#4Nn>#Hl+Fn`iA+2`=390weviM^zrw%F zzu3Rozr}yp-{n8fA;_Fk7`6Wj%)1KnA$kDaZ=-~MttMEMsZ_N zV{v0iV_9QqjT;-cH6Cd^+}PFlqVcarcvEOobW?0oVpD2UucqEj{hCsmhBggr zn$$G8Xt z^V;SO&3l>;G@om}(0r-+a`WBhd(97R&F`DPG

6TM}D(wDf67 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 z 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 literal 0 HcmV?d00001 diff --git a/src/defines.hpp b/src/defines.hpp index 91700c63..3a897b2f 100644 --- a/src/defines.hpp +++ b/src/defines.hpp @@ -23,8 +23,8 @@ //#define TEMPERATURE // enables temperature extension; set fixed-temperature nodes with TYPE_T (similar to EQUILIBRIUM_BOUNDARIES); allocates an extra 32 (FP32) or 18 (FP16) Bytes/node //#define SUBGRID // enables Smagorinsky-Lilly subgrid turbulence model to keep simulations with very large Reynolds number stable -//#define WINDOWS_GRAPHICS // enable interactive graphics in Windows; start/pause the simulation by pressing P -//#define CONSOLE_GRAPHICS // enable interactive graphics in the console; start/pause the simulation by pressing P +//#define INTERACTIVE_GRAPHICS // enable interactive graphics; start/pause the simulation by pressing P; either Windows or Linux X11 desktop must be available; on Linux: change to "compile on Linux with X11" command in make.sh +//#define INTERACTIVE_GRAPHICS_ASCII // enable interactive graphics in ASCII mode the console; start/pause the simulation by pressing P //#define GRAPHICS // run FluidX3D in the console, but still enable graphics functionality for writing rendered frames to the hard drive #define GRAPHICS_FRAME_WIDTH 3840 // set frame width if only GRAPHICS is enabled @@ -64,8 +64,8 @@ #undef SURFACE #undef TEMPERATURE #undef SUBGRID -#undef WINDOWS_GRAPHICS -#undef CONSOLE_GRAPHICS +#undef INTERACTIVE_GRAPHICS +#undef INTERACTIVE_GRAPHICS_ASCII #undef GRAPHICS #endif // BENCHMARK @@ -77,9 +77,6 @@ #define VOLUME_FORCE #endif // TEMPERATURE -#ifdef WINDOWS_GRAPHICS +#if defined(INTERACTIVE_GRAPHICS) || defined(INTERACTIVE_GRAPHICS_ASCII) #define GRAPHICS -#endif // WINDOWS_GRAPHICS -#ifdef CONSOLE_GRAPHICS -#define GRAPHICS -#endif // CONSOLE_GRAPHICS \ No newline at end of file +#endif // INTERACTIVE_GRAPHICS || INTERACTIVE_GRAPHICS_ASCII \ No newline at end of file diff --git a/src/graphics.cpp b/src/graphics.cpp index a7322602..0b803f12 100644 --- a/src/graphics.cpp +++ b/src/graphics.cpp @@ -12,195 +12,9 @@ Camera camera; bool key_E=false, key_G=false, key_H=false, key_O=false, key_P=false, key_Q=false, key_T=false, key_Z=false; bool key_1=false, key_2=false, key_3=false, key_4=false, key_5=false, key_6=false, key_7=false, key_8=false, key_9=false, key_0=false; -const uint max_light_sources = 100u; // maximal number of light sources +const uint light_sources_N = 100u; // maximal number of light sources +float3 light_sources[light_sources_N]; // coordinates of light sources uint light_sources_n = 0u; // number of light sources -float3 light_sources[max_light_sources]; // coordinates of light sources -bool lockmouse = false; // mouse movement won't change camera view when this is true -bool autorotation = false; // autorotation -double mx=0.0, my=0.0, dmx=0.0, dmy=0.0; // mouse position -float zo=0.0f, dzo=0.0f; // zoom and perspective -float fl=0.0f, fvel=0.05f; // free camera speed - -void update_rotation(const double arx, const double ary) { -#ifdef WINDOWS_GRAPHICS - SetCursorPos(camera.width/2, camera.height/2); -#endif // WINDOWS_GRAPHICS - camera.rx += arx*pi/180.0; - camera.ry += ary*pi/180.0; - camera.rx = fmod(camera.rx, 2.0*pi); - camera.ry = clamp(camera.ry, 0.5*pi, 1.5*pi); - camera.update_matrix(); -} - -void key_bindings(const int key) { - camera.key_update = true; - switch(key) { - // reserved keys for graphics: W,A,S,D, I,J,K,L, R,U, V,B, C,VK_SPACE, Y,X, N,M - //case 'A': key_A = !key_A; break; - //case 'B': key_B = !key_B; break; - //case 'C': key_C = !key_C; break; - //case 'D': key_D = !key_D; break; - case 'E': key_E = !key_E; break; - //case 'F': key_F = !key_F; break; - case 'G': key_G = !key_G; break; - case 'H': key_H = !key_H; break; - //case 'I': key_I = !key_I; break; - //case 'J': key_J = !key_J; break; - //case 'K': key_K = !key_K; break; - //case 'L': key_L = !key_L; break; - //case 'M': key_M = !key_M; break; - //case 'N': key_N = !key_N; break; - case 'O': key_O = !key_O; break; - case 'P': key_P = !key_P; break; - case 'Q': key_Q = !key_Q; break; - //case 'R': key_R = !key_R; break; - //case 'S': key_S = !key_S; break; - case 'T': key_T = !key_T; break; - //case 'U': key_U = !key_U; break; - //case 'V': key_V = !key_V; break; - //case 'W': key_W = !key_W; break; - //case 'X': key_X = !key_X; break; - //case 'Y': key_Y = !key_Y; break; - case 'Z': key_Z = !key_Z; break; - - case '1': key_1 = !key_1; break; - case '2': key_2 = !key_2; break; - case '3': key_3 = !key_3; break; - case '4': key_4 = !key_4; break; - case '5': key_5 = !key_5; break; - case '6': key_6 = !key_6; break; - case '7': key_7 = !key_7; break; - case '8': key_8 = !key_8; break; - case '9': key_9 = !key_9; break; - case '0': key_0 = !key_0; break; - - case 'R': autorotation = !autorotation; break; - case 'U': lockmouse = !lockmouse; break; - case 'I': - if(lockmouse) { - double d = (camera.ry*18.0/pi)-(double)((int)(camera.ry*18.0f/pi)); - d = d<1E-6 ? 1.0 : 1.0-d; - update_rotation(0.0, 10.0*d); - } - break; - case 'J': - if(lockmouse) { - double d = (camera.rx*18.0/pi)-(double)((int)(camera.rx*18.0/pi)); - d = d<1E-6 ? 1.0 : 1.0-d; - update_rotation(10.0*d, 0.0); - } - break; - case 'K': - if(lockmouse) { - double d = (camera.ry*18.0/pi)-(double)((int)(camera.ry*18.0/pi)); - d = d<1E-6 ? 1.0f : d; - update_rotation(0.0, -10.0*d); - } - break; - case 'L': - if(lockmouse) { - double d = (camera.rx*18.0/pi)-(double)((int)(camera.rx*18.0/pi)); - d = d<1E-6 ? 1.0 : d; - update_rotation(-10.0*d, 0.0); - } - break; - case 'V': camera.vr = !camera.vr; break; - case 'B': camera.tv = !camera.tv; break; - case ',': case 0xBC: // 0xBC is Windows Virtual-Key Code for ',' - if(!camera.free) { // centered camera zoom - dzo -= 1.0f; - } else if(!lockmouse) { // free camera speed - fl -= 1.0f; - fvel = 0.05f*exp(fl*0.25f); - } - break; - case '.': case 0xBE: // 0xBE is Windows Virtual-Key Code for '.' - if(!camera.free) { // centered camera zoom - dzo += 1.0f; - } else if(!lockmouse) { // free camera speed - fl += 1.0f; - fvel = 0.05f*exp(fl*0.25f); - } - break; - case 'F': - camera.free = !camera.free; - if(!camera.free) { - camera.zoom = exp(zo*0.25f); - } else { - camera.zoom = 1E16f; - } - break; - case 27: - running = false; - exit(0); - } - -#ifndef WINDOWS_GRAPHICS - if(camera.free) { // move free camera - if(key=='W') { - camera.pos.x += camera.R.xy*camera.R.yz*fvel; - camera.pos.y -= camera.R.xx*camera.R.yz*fvel; - camera.pos.z -= camera.R.zz*fvel; - } - if(key=='A') { - camera.pos.x -= camera.R.xx*fvel; - camera.pos.y -= camera.R.xy*fvel; - } - if(key=='S') { - camera.pos.x -= camera.R.xy*camera.R.yz*fvel; - camera.pos.y += camera.R.xx*camera.R.yz*fvel; - camera.pos.z += camera.R.zz*fvel; - } - if(key=='D') { - camera.pos.x += camera.R.xx*fvel; - camera.pos.y += camera.R.xy*fvel; - } - if(key==' ') { - camera.pos.x -= camera.R.xy*camera.R.zz*fvel; - camera.pos.y += camera.R.xx*camera.R.zz*fvel; - camera.pos.z -= camera.R.yz*fvel; - } - if(key=='C') { - camera.pos.x += camera.R.xy*camera.R.zz*fvel; - camera.pos.y -= camera.R.xx*camera.R.zz*fvel; - camera.pos.z += camera.R.yz*fvel; - } - } - if(!lockmouse) { - if(key=='I') dmy += camera.ms; // rotating camera with keys - if(key=='J') dmx += camera.ms; - if(key=='K') dmy -= camera.ms; - if(key=='L') dmx -= camera.ms; - } - if(key=='Y') { // adjusting field of view - camera.fov = fmin(camera.fov<1.0f ? 1.0f : camera.fov+1.0f, 179.0f); - camera.dis = 0.5f*(float)camera.width/tan(camera.fov*pif/360.0f); - } - if(key=='X') { - camera.fov = fmax(camera.fov-1.0f, 1.0f); - camera.dis = 0.5f*(float)camera.width/tan(camera.fov*pif/360.0f); - } - if(key=='N') { // adjust camera.vr eye distance - camera.eye_distance -= 0.2f; - if(camera.eye_distance<0.0f) camera.eye_distance = 0.0f; - } - if(key=='M') { - camera.eye_distance += 0.2f; - } -#endif // WINDOWS_GRAPHICS -} - -void set_zoom(const float rad) { - camera.zoom = 0.5f*(float)min(camera.width, camera.height)/rad; - zo = 4.0f*log(camera.zoom); - dzo = zo; -} -void set_light(const uint i, const float3& position) { - if(i 2D float3 t, r; @@ -218,6 +32,9 @@ bool convert(int& rx, int& ry, float& rz, const float3& p, const int stereo) { / rz = r.z; return true; } +bool is_off_screen(const int x, const int y) { // check if point is off screen + return x<0||x>=(int)camera.width ||y<0||y>=(int)camera.height; // entire screen +} bool is_off_screen(const int x, const int y, const int stereo) { // check if point is off screen switch(stereo) { default: return x< 0||x>=(int)camera.width ||y<0||y>=(int)camera.height; // entire screen @@ -243,7 +60,13 @@ bool intersects_screen(const int x0, const int y0, const int x1, const int y1, c } return false; } -Color lighting(const Color& c, const float3& p, const float3& normal, const bool translucent=false) { +void set_light(const uint i, const float3& position) { + if(i -#ifndef UTILITIES_REGEX -#include // included in in "utilities.hpp" -#endif // UTILITIES_REGEX -HWND hWnd; -HDC frontDC, backDC; -HBITMAP frame; - -void key_hold() { - if(!camera.free) { - zo = 0.8f*zo+0.2f*dzo; // continuous camera.zoom - camera.zoom = exp(zo*0.25f); - } else { // move free camera - if(GetAsyncKeyState('W')<0) { - camera.pos.x += camera.R.xy*camera.R.yz*fvel; - camera.pos.y -= camera.R.xx*camera.R.yz*fvel; - camera.pos.z -= camera.R.zz*fvel; - } - if(GetAsyncKeyState('A')<0) { - camera.pos.x -= camera.R.xx*fvel; - camera.pos.y -= camera.R.xy*fvel; - } - if(GetAsyncKeyState('S')<0) { - camera.pos.x -= camera.R.xy*camera.R.yz*fvel; - camera.pos.y += camera.R.xx*camera.R.yz*fvel; - camera.pos.z += camera.R.zz*fvel; - } - if(GetAsyncKeyState('D')<0) { - camera.pos.x += camera.R.xx*fvel; - camera.pos.y += camera.R.xy*fvel; - } - if(GetAsyncKeyState(VK_SPACE)<0) { - camera.pos.x -= camera.R.xy*camera.R.zz*fvel; - camera.pos.y += camera.R.xx*camera.R.zz*fvel; - camera.pos.z -= camera.R.yz*fvel; - } - if(GetAsyncKeyState('C')<0) { - camera.pos.x += camera.R.xy*camera.R.zz*fvel; - camera.pos.y -= camera.R.xx*camera.R.zz*fvel; - camera.pos.z += camera.R.yz*fvel; - } - } - if(!lockmouse) { - if(GetAsyncKeyState('I')<0) dmy += camera.ms; // rotate camera with keys - if(GetAsyncKeyState('J')<0) dmx += camera.ms; - if(GetAsyncKeyState('K')<0) dmy -= camera.ms; - if(GetAsyncKeyState('L')<0) dmx -= camera.ms; - } - if(autorotation) update_rotation(-1, 0); - if(GetAsyncKeyState('Y')<0) { // adjust field of view - camera.fov = fmin(camera.fov<1.0f ? 1.0f : camera.fov+1.0f, 179.0f); - camera.dis = 0.5f*(float)camera.width/tan(camera.fov*pif/360.0f); - } - if(GetAsyncKeyState('X')<0) { - camera.fov = fmax(camera.fov-1.0f, 1.0f); - camera.dis = 0.5f*(float)camera.width/tan(camera.fov*pif/360.0f); - } - if(GetAsyncKeyState('N')<0) { // adjust camera.vr eye distance - camera.eye_distance = fmax(camera.eye_distance-0.2f, 0.0f); - } - if(GetAsyncKeyState('M')<0) { - camera.eye_distance += 0.2f; - } - mx = 0.8*mx+0.2*dmx; // continuous mouse movement - my = 0.8*my+0.2*dmy; - dmx = 0.0; - dmy = 0.0; - if(!lockmouse) update_rotation(mx, my); -} - -void draw_bitmap(const void* buffer) { - SetBitmapBits(frame, 4*camera.width*camera.height, buffer); -} -void draw_label(const Color& c, const string& s, const int x, const int y) { - SetTextColor(backDC, RGB(c.r, c.g, c.b)); - TextOut(backDC, x, y, s.c_str(), (int)s.length()); - if(camera.vr) { - if(x-camera.width/2>0) { - TextOut(backDC, x-camera.width/2, y, s.c_str(), (int)s.length()); - } else if(x+camera.width/2c = c; - this->z = z; - this->x = x+1; - this->y = y+1; - } - void draw() const override { - draw_pixel(c, x, y); - } -}; -class Circle: public Shape { -private: - int x, y, r; -public: - Circle(const Color& c, const float z, const int x, const int y, const int r) { - this->c = c; - this->z = z; - this->x = x; - this->y = y; - this->r = r; - } - void draw() const override { - draw_circle(c, x, y, r); - } -}; -class Line: public Shape { -private: - int x0, y0, x1, y1; -public: - Line(const Color& c, float z, const int x0, const int y0, const int x1, const int y1) { - this->c = c; - this->z = z; - this->x0 = x0; - this->y0 = y0; - this->x1 = x1; - this->y1 = y1; - } - void draw() const override { - draw_line(c, x0, y0, x1, y1); - } -}; -class Triangle: public Shape { -private: - POINT p[3]; -public: - Triangle(const Color& c, const float z, const int x[3], const int y[3]) { - this->c = c; - this->z = z; - p[0].x = x[0]; p[0].y = y[0]; - p[1].x = x[1]; p[1].y = y[1]; - p[2].x = x[2]; p[2].y = y[2]; - } - void draw() const override { - SetDCPenColor(backDC, RGB(c.r, c.g, c.b)); - SetDCBrushColor(backDC, RGB(c.r, c.g, c.b)); - Polygon(backDC, p, 3); - } -}; -class Quadrangle: public Shape { -private: - POINT p[4]; -public: - Quadrangle(const Color& c, const float z, const int x[4], const int y[4]) { - this->c = c; - this->z = z; - p[0].x = x[0]; p[0].y = y[0]; - p[1].x = x[1]; p[1].y = y[1]; - p[2].x = x[2]; p[2].y = y[2]; - p[3].x = x[3]; p[3].y = y[3]; - } - void draw() const override { - SetDCPenColor(backDC, RGB(c.r, c.g, c.b)); - SetDCBrushColor(backDC, RGB(c.r, c.g, c.b)); - Polygon(backDC, p, 4); - } -}; -class Text: public Shape { -private: - int x, y; - string s; -public: - Text(const Color& c, const float z, const string& s, const int x, const int y) { - this->c = c; - this->z = z; - this->s = s; - this->x = x; - this->y = y; - } - void draw() const override { - draw_text(c, s, x, y); - } -}; - -const uint maxNum = 10000u; // maximum number of 3D shapes (lines, circles, triangles) that can be drawn per frame -uint nums=0u, numr=0u; -Shape* shapes[maxNum]; // shapes for main or left screen -Shape* rights[maxNum]; // shapes for right screen - -void convert_pixel(const Color& c, const float3& p, const int stereo) { + return ::color((int)(br*(float)red(color)), (int)(br*(float)green(color)), (int)(br*(float)blue(color))); +} +int color_mix_3(const int c0, const int c1, const int c2, const float w0, const float w1, const float w2) { // w0+w1+w2 = 1 + const int r0=red(c0), g0=green(c0), b0=blue(c0); + const int r1=red(c1), g1=green(c1), b1=blue(c1); + const int r2=red(c2), g2=green(c2), b2=blue(c2); + const float3 fc0=float3((float)r0, (float)g0, (float)b0), fc1=float3((float)r1, (float)g1, (float)b1), fc2=float3((float)r2, (float)g2, (float)b2); + const float3 fcm = w0*fc0+(w1*fc1+(w2*fc2+float3(0.5f, 0.5f, 0.5f))); + return ::color((int)fcm.x, (int)fcm.y, (int)fcm.z); +} +ulong get_font_pixels(const int character) { + ulong pixels[224] = { // font data (my own 6x11 monospace font) + 0x0000000000000000ull, 0x2082082080082000ull, 0x5145000000000000ull, 0x514F94514F945000ull, 0x21CAA870AA9C2000ull, 0x4AA50421052A9000ull, 0x2145085628A27400ull, 0x2082000000000000ull, + 0x0842082082040800ull, 0x4081041041084000ull, 0xA9C72A0000000000ull, 0x000208F882000000ull, 0x0000000000041080ull, 0x000000F800000000ull, 0x00000000000C3000ull, 0x0821042104208000ull, + 0x7228A28A28A27000ull, 0x0862928820820800ull, 0x722882108420F800ull, 0x7228823028A27000ull, 0x10C51493E1041000ull, 0xFA083C082082F000ull, 0x722820F228A27000ull, 0xF821042084104000ull, + 0x7228A27228A27000ull, 0x7228A27820A27000ull, 0x00030C00030C0000ull, 0x00030C00030C1080ull, 0x0021084081020000ull, 0x00003E03E0000000ull, 0x0204081084200000ull, 0x7228842080082000ull, + 0x7A1B75D75D6E81E0ull, 0x20851453E8A28800ull, 0xF228A2F228A2F000ull, 0x7228208208227000ull, 0xF228A28A28A2F000ull, 0xFA0820F20820F800ull, 0xFA0820F208208000ull, 0x722820B228A27000ull, + 0x8A28A2FA28A28800ull, 0xF88208208208F800ull, 0xF820820820A27000ull, 0x8A4928C289248800ull, 0x820820820820F800ull, 0x8B6DAAAA28A28800ull, 0x8B2CAAAAA9A68800ull, 0xFA28A28A28A2F800ull, + 0xF228A2F208208000ull, 0x7228A28A28A46800ull, 0xF228A2F289228800ull, 0x7228207020A27000ull, 0xF882082082082000ull, 0x8A28A28A28A27000ull, 0x8A28A25145082000ull, 0x8A28A28AAA945000ull, + 0x8A25142145228800ull, 0x8A25142082082000ull, 0xF82104210420F800ull, 0x3882082082083800ull, 0x8204102041020800ull, 0xE08208208208E000ull, 0x2148800000000000ull, 0x000000000000F800ull, + 0x2040000000000000ull, 0x0000007027A27000ull, 0x820820F228A2F000ull, 0x0000007A08207800ull, 0x0820827A28A27800ull, 0x000000722FA07000ull, 0x1882087082082000ull, 0x0000007A28A27827ull, + 0x820820F228A28800ull, 0x0002002082082000ull, 0x0002002082082284ull, 0x4104104946144800ull, 0x4104104104103000ull, 0x000000F2AAAAA800ull, 0x000000F228A28800ull, 0x0000007228A27000ull, + 0x0000007124927104ull, 0x0000007249247041ull, 0x0000007124104000ull, 0x0000003907827000ull, 0x2082087082081800ull, 0x0000008A28A27800ull, 0x0000008A25142000ull, 0x0000008AA7145000ull, + 0x0000008942148800ull, 0x0000008A25142084ull, 0x000000F84210F800ull, 0x0841042041040800ull, 0x2082082082082000ull, 0x8104102104108000ull, 0x000010A840000000ull, 0x0000000000000000ull, + 0x7228208208227084ull, 0x0005008A28A27800ull, 0x004200722FA07000ull, 0x0085007027A27000ull, 0x0005007027A27000ull, 0x0102007027A27000ull, 0x2142007027A27000ull, 0x0000007A08207884ull, + 0x008500722FA07000ull, 0x000500722FA07000ull, 0x010200722FA07000ull, 0x0005002082082000ull, 0x0085002082082000ull, 0x0102002082082000ull, 0xA8851453E8A28800ull, 0x21421453E8A28800ull, + 0x108FA083C820F800ull, 0x000000D89FE85C00ull, 0x5D4B2CFA49249C00ull, 0x0085007228A27000ull, 0x0005007228A27000ull, 0x0102007228A27000ull, 0x0085008A28A27800ull, 0x0102008A28A27800ull, + 0x0005008A25142084ull, 0x500FA28A28A2F800ull, 0x5008A28A28A27000ull, 0x002726AB27200000ull, 0x390410F10410F800ull, 0x082726AB27208000ull, 0x0008942148800000ull, 0x188208708208C000ull, + 0x0042007027A27000ull, 0x0042002082082000ull, 0x0042007228A27000ull, 0x0042008A28A27800ull, 0x42A1007124924800ull, 0x42A122CAAAA68800ull, 0x604624700F800000ull, 0x7228A2700F800000ull, + 0x2080082108A27000ull, 0x01E86DAEDAE17800ull, 0x000000F820000000ull, 0x4B25142164A4B800ull, 0x4B25142125AF8800ull, 0x2080082082082000ull, 0x0002529122400000ull, 0x0009122529000000ull, + 0x9004802409004800ull, 0xA95222568095A120ull, 0xA95A95A95A95A950ull, 0x2082082082082082ull, 0x2082082382082082ull, 0x108008514FA28800ull, 0x214008514FA28800ull, 0x408008514FA28800ull, + 0x01E867A699E17800ull, 0x514514D04D145145ull, 0x5145145145145145ull, 0x000000F04D145145ull, 0x514514D04F000000ull, 0x08472AA2A7108000ull, 0x8A251421C21C2000ull, 0x0000000382082082ull, + 0x20820820F0000000ull, 0x20820823F0000000ull, 0x00000003F2082082ull, 0x20820820F2082082ull, 0x00000003F0000000ull, 0x20820823F2082082ull, 0x42A1007027A27000ull, 0x42A108514FA28800ull, + 0x5145145D07C00000ull, 0x0000007D05D45145ull, 0x514514DC0FC00000ull, 0x000000FC0DD45145ull, 0x5145145D05D45145ull, 0x000000FC0FC00000ull, 0x514514DC0DD45145ull, 0x0227228A27220000ull, + 0xA10A047228A27000ull, 0x712492E924927000ull, 0x214FA083C820F800ull, 0x500FA083C820F800ull, 0x408FA083C820F800ull, 0x000000608208F800ull, 0x10803E208208F800ull, 0x21403E208208F800ull, + 0x01403E208208F800ull, 0x2082082380000000ull, 0x00000000F2082082ull, 0xFFFFFFFFFFFFFFF0ull, 0x00000003FFFFFFF0ull, 0x2082080002082080ull, 0x40803E208208F800ull, 0xFFFFFFFC00000000ull, + 0x10803E8A28A2F800ull, 0x3124944925104000ull, 0x21403E8A28A2F800ull, 0x40803E8A28A2F800ull, 0x42A1007228A27000ull, 0x42A13E8A28A2F800ull, 0x0000008A28A2FA08ull, 0x82082CCA28A2F208ull, + 0x000820F228A2F208ull, 0x1088A28A28A2F800ull, 0x2140228A28A2F800ull, 0x4088A28A28A2F800ull, 0x0042008A25142084ull, 0x12A8945082082000ull, 0xF800000000000000ull, 0x1080000000000000ull, + 0x0000007000000000ull, 0x00823E20803E0000ull, 0x00000000003E03E0ull, 0xC49C8AD0A3974800ull, 0x7BAEBA6820A27000ull, 0x31240C49230248C0ull, 0x000200F802000000ull, 0x0000000000002080ull, + 0x7147000000000000ull, 0x0140000000000000ull, 0x0000002000000000ull, 0x2182087000000000ull, 0x6046046000000000ull, 0x6042107000000000ull, 0x000FFFFFFFC00000ull, 0x0000000000000000ull + }; + return pixels[clamp(character+256*(character<0)-32, 0, 223)]; +} +void draw(const int x, const int y, const float z, const int color, const int stereo) { + const int index=x+y*(int)camera.width, iz=(int)(z*(2147483647.0f/10000.0f)); + if(!is_off_screen(x, y, stereo)&&iz>camera.zbuffer[index]) { + camera.zbuffer[index] = iz; + camera.bitmap[index] = color; // only draw if point is on screen and first in zbuffer + } +} +void convert_pixel(const float3& p, const int color, const int stereo) { int rx, ry; float rz; - if(nums= 0 && rx-radius<(int)camera.width || ry+radius>=0 || ry-radius<(int)camera.height)) shapes[nums++] = new Circle(c, rz, rx, ry, radius); break; // cancel drawing if circle is off screen - case -1: if((rx+radius>= 0 && rx-radius<(int)camera.width/2 || ry+radius>=0 || ry-radius<(int)camera.height)) shapes[nums++] = new Circle(c, rz, rx, ry, radius); break; - case +1: if((rx+radius>=(int)camera.width/2 && rx-radius<(int)camera.width || ry+radius>=0 || ry-radius<(int)camera.height)) rights[numr++] = new Circle(c, rz, rx, ry, radius); break; + default: if(rx< -radius||rx>=(int)camera.width +radius || ry<-radius||ry>=(int)camera.height+radius) return; break; // cancel drawing if circle is off screen + case -1: if(rx< -radius||rx>=(int)camera.width/2+radius || ry<-radius||ry>=(int)camera.height+radius) return; break; + case +1: if(rx<(int)camera.width/2-radius||rx>=(int)camera.width +radius || ry<-radius||ry>=(int)camera.height+radius) return; break; + } + int d=-radius, x=radius, y=0; // Bresenham algorithm for circle + while(x>=y) { + draw(rx+x, ry+y, rz, color, stereo); + draw(rx-x, ry+y, rz, color, stereo); + draw(rx+x, ry-y, rz, color, stereo); + draw(rx-x, ry-y, rz, color, stereo); + draw(rx+y, ry+x, rz, color, stereo); + draw(rx-y, ry+x, rz, color, stereo); + draw(rx+y, ry-x, rz, color, stereo); + draw(rx-y, ry-x, rz, color, stereo); + d += 2*y+1; + y++; + if(d>0) d-=2*(--x); } } } -void convert_line(const Color& c, const float3& p0, const float3& p1, const int stereo) { +void convert_line(const float3& p0, const float3& p1, const int color, const int stereo) { int r0x, r0y, r1x, r1y; float r0z, r1z; - if(numsdy) { err+=dy; x+=sx; } + if(e2r1y) { std::swap(r0x, r1x); std::swap(r0y, r1y); } // sort vertices ascending by y + if(r0y>r2y) { std::swap(r0x, r2x); std::swap(r0y, r2y); } + if(r1y>r2y) { std::swap(r1x, r2x); std::swap(r1y, r2y); } + const float z = (r0z+r1z+r2z)/3.0f; // approximate triangle z position for each pixel to be equal + for(int y=r0y; yr1y) { std::swap(r0x, r1x); std::swap(r0y, r1y); std::swap(c0, c1); } // sort vertices ascending by y + if(r0y>r2y) { std::swap(r0x, r2x); std::swap(r0y, r2y); std::swap(c0, c2); } + if(r1y>r2y) { std::swap(r1x, r2x); std::swap(r1y, r2y); std::swap(c1, c2); } + const float z = (r0z+r1z+r2z)/3.0f; // approximate triangle z position for each pixel to be equal + const float d = (float)((r1y-r2y)*(r0x-r2x)+(r2x-r1x)*(r0y-r2y)); + for(int y=r0y; y= 0 && rx-radius<(int)camera.width || ry+radius>=0 || ry-radius<(int)camera.height)) shapes[nums++] = new Text(c, rz, s, (int)(rx+4.0f+tr), (int)(ry+3.0f+tr)); break; // cancel drawing if circle is off screen - case -1: if((rx+radius>= 0 && rx-radius<(int)camera.width/2 || ry+radius>=0 || ry-radius<(int)camera.height)) shapes[nums++] = new Text(c, rz, s, (int)(rx+4.0f+tr), (int)(ry+3.0f+tr)); break; - case +1: if((rx+radius>=(int)camera.width/2 && rx-radius<(int)camera.width || ry+radius>=0 || ry-radius<(int)camera.height)) rights[numr++] = new Text(c, rz, s, (int)(rx+4.0f+tr), (int)(ry+3.0f+tr)); break; + rx += 4+(int)tr; + ry += 3+(int)tr; + for(int i=0u; i<(int)length(s); i++) { + const int character = (int)s[i]; + const ulong pixels = get_font_pixels(character); + for(int k=0; k<64; k++) { + if((pixels>>(63-k))&1) draw(rx+i*6+k%6+(character==113), ry+k/6, rz, color, stereo); + } } } } -void draw_pixel(const Color& c, const float3& p) { +void draw_pixel(const int x, const int y, const int color) { + if(!is_off_screen(x, y)) camera.bitmap[x+y*(int)camera.width] = color; // only draw if point is on screen +} +void draw_circle(const int x, const int y, const int r, const int color) { + int d=-r, dx=r, dy=0; // Bresenham algorithm for circle + while(dx>=dy) { + draw_pixel(x+dx, y+dy, color); + draw_pixel(x-dx, y+dy, color); + draw_pixel(x+dx, y-dy, color); + draw_pixel(x-dx, y-dy, color); + draw_pixel(x+dy, y+dx, color); + draw_pixel(x-dy, y+dx, color); + draw_pixel(x+dy, y-dx, color); + draw_pixel(x-dy, y-dx, color); + d += 2*dy+1; + dy++; + if(d>0) d-=2*(--dx); + } +} +void draw_line(const int x0, const int y0, const int x1, const int y1, const int color) { + int x=x0, y=y0; // Bresenham algorithm + const int dx= abs(x1-x0), sx=2*(x0dy) { err+=dy; x+=sx; } + if(e2r1y) { std::swap(r0x, r1x); std::swap(r0y, r1y); } // sort vertices ascending by y + if(r0y>r2y) { std::swap(r0x, r2x); std::swap(r0y, r2y); } + if(r1y>r2y) { std::swap(r1x, r2x); std::swap(r1y, r2y); } + for(int y=r0y; y>(63-k))&1) draw_pixel(x+i*6+k%6+(character==113), y+k/6, color); + } + } +} +void draw_label(const int x, const int y, const string& s, const int color) { + draw_text(x, y, s, color); + if(camera.vr) { + if(x-camera.width/2>0) { + draw_text(x-(int)camera.width/2, y, s, color); + } else if(x+(int)camera.width/2<(int)camera.width) { + draw_text(x+(int)camera.width/2, y, s, color); + } + } +} +void draw_bitmap(const int* bitmap) { + std::copy(bitmap, bitmap+(int)camera.width*(int)camera.height, camera.bitmap); +} + +void draw_pixel(const float3& p, const int color) { if(!camera.vr) { - convert_pixel(c, p, 0); + convert_pixel(p, color, 0); } else { - convert_pixel(c, p, -1); - convert_pixel(c, p, +1); + convert_pixel(p, color, -1); + convert_pixel(p, color, +1); } } -void draw_circle(const Color& c, const float3& p, const float r) { +void draw_circle(const float3& p, const float r, const int color) { if(!camera.vr) { - convert_circle(c, p, r, 0); + convert_circle(p, r, color, 0); } else { - convert_circle(c, p, r, -1); - convert_circle(c, p, r, +1); + convert_circle(p, r, color, -1); + convert_circle(p, r, color, +1); } } -void draw_line(const Color& c, const float3& p0, const float3& p1) { +void draw_line(const float3& p0, const float3& p1, const int color) { if(!camera.vr) { - convert_line(c, p0, p1, 0); + convert_line(p0, p1, color, 0); } else { - convert_line(c, p0, p1, -1); - convert_line(c, p0, p1, +1); + convert_line(p0, p1, color, -1); + convert_line(p0, p1, color, +1); } } -void draw_triangle(const Color& c, const float3& p0, const float3& p1, const float3& p2, const bool translucent) { // points clockwise from above - const Color cl = lighting(c, (p0+p1+p2)/3.0f, cross(p1-p0, p2-p0), translucent); +void draw_triangle(const float3& p0, const float3& p1, const float3& p2, const int color, const bool translucent) { // points clockwise from above + const int cl = lighting(color, (p0+p1+p2)/3.0f, cross(p1-p0, p2-p0), translucent); if(!camera.vr) { - convert_triangle(cl, p0, p1, p2, 0); + convert_triangle(p0, p1, p2, cl, 0); } else { - convert_triangle(cl, p0, p1, p2, -1); - convert_triangle(cl, p0, p1, p2, +1); + convert_triangle(p0, p1, p2, cl, -1); + convert_triangle(p0, p1, p2, cl, +1); } } -void draw_quadrangle(const Color& c, const float3& p0, const float3& p1, const float3& p2, const float3& p3, const bool translucent) { // points clockwise from above, only planar points - const Color cl = lighting(c, (p0+p1+p2+p3)*0.25f, cross(p1-p0, p2-p0), translucent); +void draw_triangle(const float3& p0, const float3& p1, const float3& p2, const int c0, const int c1, const int c2, const bool translucent) { // points clockwise from above + const float3 normal = cross(p1-p0, p2-p0); + const int cl0 = lighting(c0, p0, normal, translucent); + const int cl1 = lighting(c1, p1, normal, translucent); + const int cl2 = lighting(c2, p2, normal, translucent); if(!camera.vr) { - convert_quadrangle(cl, p0, p1, p2, p3, 0); + convert_triangle_interpolated(p0, p1, p2, cl0, cl1, cl2, 0); } else { - convert_quadrangle(cl, p0, p1, p2, p3, -1); - convert_quadrangle(cl, p0, p1, p2, p3, +1); + convert_triangle_interpolated(p0, p1, p2, cl0, cl1, cl2, -1); + convert_triangle_interpolated(p0, p1, p2, cl0, cl1, cl2, +1); } } -void draw_text(const Color& c, const float3& p, const string& s, const float r) { +void draw_text(const float3& p, const float r, const string& s, const int color) { if(!camera.vr) { - convert_text(c, p, s, r, 0); + convert_text(p, s, r, color, 0); } else { - convert_text(c, p, s, r, -1); - convert_text(c, p, s, r, +1); + convert_text(p, s, r, color, -1); + convert_text(p, s, r, color, +1); } } -void set_mouse(const int x, const int y) { - SetCursorPos(x, y); -} -void set_clip(const int x, const int y, const int w, const int h) { - SelectClipRgn(backDC, CreateRectRgn(x, y, x+w, y+h)); -} -inline bool z_order(const Shape* const lhs, const Shape* const rhs) { - return lhs->zz; -} -void draw_frame() { -#ifndef SKIP_VISIBILITY_CHECKS - if(!camera.vr) { - std::sort(shapes, shapes+nums, z_order); // sort data array (--> visibility <--) - } else if(numr>0u) { - std::sort(shapes, shapes+nums, z_order); - std::sort(rights, rights+numr, z_order); - } -#endif // SKIP_VISIBILITY_CHECKS - if(!camera.vr) { - for(uint i=0u; idraw(); // draw in right order on frame - delete shapes[i]; - shapes[i] = nullptr; - } - nums = 0u; - } else { - set_clip(0, 0, camera.width/2, camera.height); // draw on left image only - for(uint i=0u; idraw(); - delete shapes[i]; - shapes[i] = nullptr; - } - nums = 0u; - set_clip(camera.width/2, 0, camera.width/2, camera.height); // draw on right image only - for(uint i=0u; idraw(); - delete rights[i]; - rights[i] = nullptr; - } - numr = 0u; - set_clip(0, 0, camera.width, camera.height); // enable full drawing area again +void key_bindings(const int key) { + camera.key_update = true; + switch(key) { + // reserved keys for graphics: W,A,S,D, I,J,K,L, R,U, V,B, C,VK_SPACE, Y,X, N,M + //case 'A': key_A = !key_A; break; + //case 'B': key_B = !key_B; break; + //case 'C': key_C = !key_C; break; + //case 'D': key_D = !key_D; break; + case 'E': key_E = !key_E; break; + //case 'F': key_F = !key_F; break; + case 'G': key_G = !key_G; break; + case 'H': key_H = !key_H; break; + //case 'I': key_I = !key_I; break; + //case 'J': key_J = !key_J; break; + //case 'K': key_K = !key_K; break; + //case 'L': key_L = !key_L; break; + //case 'M': key_M = !key_M; break; + //case 'N': key_N = !key_N; break; + case 'O': key_O = !key_O; break; + case 'P': key_P = !key_P; break; + case 'Q': key_Q = !key_Q; break; + //case 'R': key_R = !key_R; break; + //case 'S': key_S = !key_S; break; + case 'T': key_T = !key_T; break; + //case 'U': key_U = !key_U; break; + //case 'V': key_V = !key_V; break; + //case 'W': key_W = !key_W; break; + //case 'X': key_X = !key_X; break; + //case 'Y': key_Y = !key_Y; break; + case 'Z': key_Z = !key_Z; break; + case '1': key_1 = !key_1; break; + case '2': key_2 = !key_2; break; + case '3': key_3 = !key_3; break; + case '4': key_4 = !key_4; break; + case '5': key_5 = !key_5; break; + case '6': key_6 = !key_6; break; + case '7': key_7 = !key_7; break; + case '8': key_8 = !key_8; break; + case '9': key_9 = !key_9; break; + case '0': key_0 = !key_0; break; + default: camera.input_key(key); } } +#if defined(INTERACTIVE_GRAPHICS) +#if defined(_WIN32) + +#define WIN32_LEAN_AND_MEAN +#define VC_EXTRALEAN +#include +HWND window; +HDC displayDC, memDC; +HBITMAP frameDC; + +int key_windows(const int keycode) { + switch(keycode) { + case VK_SPACE : return ' '; // space + case VK_ESCAPE : return 27; // escape + case VK_UP : return -38; // up arrow + case VK_DOWN : return 40; // down arrow + case VK_LEFT : return -37; // left arrow + case VK_RIGHT : return -39; // right arrow + case VK_PRIOR : return -33; // page up + case VK_NEXT : return -34; // page down + case VK_HOME : return -36; // pos1 + case VK_OEM_COMMA : return ','; // , + case VK_OEM_PERIOD: return '.'; // . + default: return keycode; + } +} void update_frame(const double frametime) { main_label(frametime); - BitBlt(frontDC, 0, 0, camera.width, camera.height, backDC, 0, 0, SRCCOPY); // copy back buffer to front buffer - HPEN oldPen = (HPEN )SelectObject(backDC, GetStockObject(BLACK_PEN )); - HBRUSH oldBrush = (HBRUSH)SelectObject(backDC, GetStockObject(BLACK_BRUSH)); - Rectangle(backDC, 0, 0, camera.width, camera.height); // clear back buffer - SelectObject(backDC, oldPen); - SelectObject(backDC, oldBrush); -} -LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { - switch(message) { - case WM_DESTROY: - running = false; - PostQuitMessage(0); - exit(0); - return 0; - case WM_MOUSEMOVE: - if(!lockmouse) { - dmx = camera.ms*(double)((int)camera.width/2 -(int)LOWORD(lParam)); - dmy = camera.ms*(double)((int)camera.height/2-(int)HIWORD(lParam)); - } - break; - case WM_MOUSEWHEEL: - if(!camera.free) { // camera.zoom - if((short)HIWORD(wParam)<0) dzo += 1.0f; - else dzo -= 1.0f; - } else if(!lockmouse) { - if((short)HIWORD(wParam)<0) fl -= 1.0f; - else fl += 1.0f; - fvel = 0.05f*exp(fl*0.25f); - } - break; - case WM_KEYDOWN: - int key = (int)wParam; - switch(key) { - case VK_ESCAPE: key = 27; break; // escape - case VK_UP : key = -38; break; // up arrow - case VK_DOWN : key = 40; break; // down arrow - case VK_LEFT : key = -37; break; // left arrow - case VK_RIGHT : key = -39; break; // right arrow - case VK_PRIOR : key = -33; break; // page up - case VK_NEXT : key = -34; break; // page down - case VK_HOME : key = -36; break; // pos1 - case VK_END : key = -35; break; // end - } - if(key=='U') { - if(!lockmouse) { - ShowCursor(true); // show cursor - } else { - ShowCursor(false); // hide cursor - set_mouse(camera.width/2, camera.height/2); // reset mouse - } - } - key_bindings(key); - break; + SetBitmapBits(frameDC, 4*(int)camera.width*(int)camera.height, camera.bitmap); + BitBlt(displayDC, 0, 0, (int)camera.width, (int)camera.height, memDC, 0, 0, SRCCOPY); // copy back buffer to front buffer + camera.clear_frame(); // clear frame +} +LRESULT CALLBACK WndProc(HWND window, UINT message, WPARAM wParam, LPARAM lParam) { + if(message==WM_DESTROY) { + running = false; + PostQuitMessage(0); + exit(0); + } else if(message==WM_MOUSEMOVE) { + camera.input_mouse_moved((int)LOWORD(lParam), (int)HIWORD(lParam)); + } else if(message==WM_MOUSEWHEEL) { + if((short)HIWORD(wParam)>0) camera.input_scroll_up(); else camera.input_scroll_down(); + } else if(message==WM_KEYDOWN) { + int key = key_windows((int)wParam); + camera.set_key_state(key, true); + key_bindings(key); + } else if(message==WM_KEYUP) { + int key = key_windows((int)wParam); + camera.set_key_state(key, false); } - return DefWindowProc(hWnd, message, wParam, lParam); + return DefWindowProc(window, message, wParam, lParam); } #ifdef GRAPHICS_CONSOLE int main(int argc, char* argv[]) { // call WinMain from dummy main function in order to have an additional console window main_arguments = get_main_arguments(argc, argv); - return WinMain(GetModuleHandle(NULL), NULL, GetCommandLineA(), SW_SHOWMINIMIZED); + return WinMain(GetModuleHandle(0), 0, GetCommandLineA(), SW_SHOWMINIMIZED); } #endif // GRAPHICS_CONSOLE INT WINAPI WinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE, _In_ PSTR, _In_ INT) { - WNDCLASS wndClass; - wndClass.style = CS_HREDRAW|CS_VREDRAW; - wndClass.lpfnWndProc = WndProc; - wndClass.cbClsExtra = 0; - wndClass.cbWndExtra = 0; - wndClass.hInstance = hInstance; - wndClass.hIcon = LoadIcon(NULL, IDI_APPLICATION); - wndClass.hCursor = LoadCursor(NULL, IDC_ARROW); - wndClass.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH); - wndClass.lpszMenuName = NULL; - wndClass.lpszClassName = TEXT("WindowClass"); + WNDCLASS wndClass = { 0, WndProc, 0, 0, hInstance, LoadIcon(0, IDI_APPLICATION), LoadCursor(0, IDC_ARROW), (HBRUSH)GetStockObject(BLACK_BRUSH), 0, TEXT("WindowClass") }; RegisterClass(&wndClass); - HMONITOR hMon = MonitorFromWindow(hWnd, MONITOR_DEFAULTTONEAREST); - MONITORINFO mi = {sizeof(mi)}; - if(!GetMonitorInfo(hMon, &mi)) return 1; - - DEVMODE lpDevMode; // get monitor fps - memset(&lpDevMode, 0, sizeof(DEVMODE)); - camera.fps_limit = (uint)EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &lpDevMode)!=0 ? (uint)lpDevMode.dmDisplayFrequency : 60u; // find out screen refresh rate - camera.width = (uint)(mi.rcMonitor.right-mi.rcMonitor.left); // get screen size, initialize variables - camera.height = (uint)(mi.rcMonitor.bottom-mi.rcMonitor.top); - camera.fov = 100.0f; - set_zoom(1.0f); // set initial zoom (weird 1.0f/1.296875f value required for backwards compatibility with previous work) + MONITORINFO mi = { sizeof(mi) }; + if(!GetMonitorInfo(MonitorFromWindow(window, MONITOR_DEFAULTTONEAREST), &mi)) return 1; + const uint width = (uint)(mi.rcMonitor.right-mi.rcMonitor.left); // get screen size, initialize variables + const uint height = (uint)(mi.rcMonitor.bottom-mi.rcMonitor.top); ShowCursor(false); // hide cursor - set_mouse(camera.width/2, camera.height/2); - camera.update_matrix(); - - hWnd = CreateWindow("WindowClass", WINDOW_NAME, WS_POPUP|WS_VISIBLE, mi.rcMonitor.left, mi.rcMonitor.top, camera.width, camera.height, NULL, NULL, hInstance, 0); // create fullscreen window - frontDC = GetDC(hWnd); - frame = CreateCompatibleBitmap(frontDC, camera.width, camera.height); // initialize back buffer - backDC = CreateCompatibleDC(frontDC); - HBITMAP oldBMP = (HBITMAP)SelectObject(backDC, frame); - DeleteObject(oldBMP); - SelectObject(backDC, GetStockObject(DC_PEN )); - SelectObject(backDC, GetStockObject(DC_BRUSH)); - //SelectObject(backDC, GetStockObject(NULL_BRUSH)); for no filling of circles and polygons - SetDCPenColor(backDC, RGB(255, 255, 255)); // define drawing properties - SetDCBrushColor(backDC, RGB(0, 0, 0)); - SetTextAlign(backDC, TA_TOP); - SetBkMode(backDC, TRANSPARENT); - SetPolyFillMode(backDC, ALTERNATE); - HFONT hFont = CreateFont(FONT_HEIGHT+5, FONT_WIDTH+1, 0, 0, 500, 0, 0, 0, ANSI_CHARSET, 0, 0, 0, 0, "Courier New"); // (HFONT)GetStockObject(ANSI_FIXED_FONT); - SelectObject(backDC, hFont); - + SetCursorPos(width/2, height/2); + DEVMODE lpDevMode = { 0 }; // get monitor fps + const uint fps_limit = (uint)EnumDisplaySettings(0, ENUM_CURRENT_SETTINGS, &lpDevMode)!=0 ? (uint)lpDevMode.dmDisplayFrequency : 60u; // find out screen refresh rate + window = CreateWindow("WindowClass", WINDOW_NAME, WS_POPUP|WS_VISIBLE, mi.rcMonitor.left, mi.rcMonitor.top, width, height, 0, 0, hInstance, 0); // create fullscreen window + displayDC = GetDC(window); + memDC = CreateCompatibleDC(displayDC); + frameDC = CreateCompatibleBitmap(displayDC, width, height); // initialize back buffer + SelectObject(memDC, frameDC); + + camera = Camera(width, height, fps_limit); thread compute_thread(main_physics); // start main_physics() in a new thread - MSG msg = {0}; Clock clock; double frametime = 1.0; + MSG msg = { 0 }; while(msg.message!=WM_QUIT) { - while(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) { + while(PeekMessage(&msg, 0, 0, 0, PM_REMOVE)) { if(msg.message==WM_QUIT) break; TranslateMessage(&msg); DispatchMessage(&msg); } // main loop ################################################################ - key_hold(); + camera.update_state(); main_graphics(); - draw_frame(); update_frame(frametime); frametime = clock.stop(); sleep(1.0/(double)camera.fps_limit-frametime); clock.start(); // ########################################################################## } - ReleaseDC(hWnd, frontDC); + + ReleaseDC(window, displayDC); compute_thread.join(); return 0; } -#elif defined(CONSOLE_GRAPHICS) +#elif defined(__linux__)||defined(__APPLE__) + +#include "X11/include/X11/Xlib.h" // source: libx11-dev + +Display* x11_display; +Window x11_window; +GC x11_gc; +XImage* x11_image; +std::atomic_bool updating_frame = true; + +int key_linux(const int keycode) { + switch(keycode) { + case 38: return 'A'; case 42: return 'G'; case 58: return 'M'; case 39: return 'S'; case 52: return 'Y'; case 15: return '6'; + case 56: return 'B'; case 43: return 'H'; case 57: return 'N'; case 28: return 'T'; case 29: return 'Z'; case 16: return '7'; + case 54: return 'C'; case 31: return 'I'; case 32: return 'O'; case 30: return 'U'; case 10: return '1'; case 17: return '8'; + case 40: return 'D'; case 44: return 'J'; case 33: return 'P'; case 55: return 'V'; case 11: return '2'; case 18: return '9'; + case 26: return 'E'; case 45: return 'K'; case 24: return 'Q'; case 25: return 'W'; case 12: return '3'; case 14: return '5'; + case 41: return 'F'; case 46: return 'L'; case 27: return 'R'; case 53: return 'X'; case 13: return '4'; case 19: return '0'; + case 51: return '#'; case 94: return '<'; case 35: return '+'; case 61: return '-'; case 59: return ','; case 60: return '.'; + case 65: return ' '; // space + case 36: return 10; // enter + case 22: return 8; // backspace + case 9: return 27; // escape + case 107: return 127; // delete + case 48: return 142; // Ä + case 47: return 153; // Ö + case 34: return 154; // Ü + case 20: return 225; // ß + case 49: return 248; // ^ + case 21: return 239; // ´ + case 106: return -45; // insert + case 77: return -144; // num lock + case 66: return -20; // caps lock + case 115: return -91; // windows key + case 117: return -93; // kontext menu key + case 87: return '1'; case 85: return '6'; // numpad + case 88: return '2'; case 79: return '7'; // numpad + case 89: return '3'; case 80: return '8'; // numpad + case 83: return '4'; case 81: return '9'; // numpad + case 84: return '5'; case 90: return '0'; // numpad + case 63: return '*'; case 112: return '/'; // numpad + case 86: return '+'; case 82: return '-'; // numpad + case 91: return ','; case 108: return 10; // numpad + case 98: return -38; case 104: return -40; // up/down arrow + case 100: return -37; case 102: return -39; // left/right arrow + case 99: return -33; case 105: return -34; // page up/down + case 97: return -36; case 103: return -35; // pos1/end + case 67: return -112; case 73: return -118; // F1/F7 + case 68: return -113; case 74: return -119; // F2/F8 + case 69: return -114; case 75: return -120; // F3/F9 + case 70: return -115; case 76: return -121; // F4/F10 + case 71: return -116; case 95: return -122; // F5/F11 + case 72: return -117; case 96: return -123; // F6/F12 + default: return 0; + } +} +void update_frame(const double frametime) { + main_label(frametime); + updating_frame = true; + XPutImage(x11_display, x11_window, x11_gc, x11_image, 0, 0, 0, 0, camera.width, camera.height); + updating_frame = false; + camera.clear_frame(); // clear frame +} +void input_detection() { + int last_x=camera.width/2, last_y=camera.height/2; + bool mouse_pressed = false; + XEvent x11_event; + while(running) { + if(!updating_frame) { + XNextEvent(x11_display, &x11_event); + if(x11_event.type==KeyPress) { + const int key = key_linux((int)x11_event.xkey.keycode); + camera.set_key_state(key, true); + key_bindings(key); + } else if(x11_event.type==KeyRelease) { + const int key = key_linux((int)x11_event.xkey.keycode); + camera.set_key_state(key, false); + } else if(x11_event.type==ButtonPress) { + const int x11_button = x11_event.xbutton.button; + if(x11_button==Button4) { // scroll up + camera.input_scroll_up(); + } else if(x11_button==Button5) { // scroll down + camera.input_scroll_down(); + } else { + mouse_pressed = true; + last_x = (int)x11_event.xmotion.x; + last_y = (int)x11_event.xmotion.y; + } + } else if(x11_event.type==ButtonRelease) { + mouse_pressed = false; + } else if(x11_event.type==MotionNotify) { + int new_x = (int)x11_event.xmotion.x; + int new_y = (int)x11_event.xmotion.y; + if(mouse_pressed) { + camera.input_mouse_dragged(new_x-last_x, new_y-last_y); + last_x = new_x; + last_y = new_y; + } + } + } else { + sleep(0.01); + } + } +} +int main(int argc, char* argv[]) { + main_arguments = get_main_arguments(argc, argv); + + x11_display = XOpenDisplay(0); + if(!x11_display) print_error("No X11 display available."); + + const uint height = 720u; // (uint)DisplayHeight(x11_display, 0); + const uint width = height*16u/9u; // (uint)DisplayWidth(x11_display, 0); + camera = Camera(width, height, 60u); -Image* frame = nullptr; + x11_window = XCreateWindow(x11_display, DefaultRootWindow(x11_display), 0, 0, width, height, 0, CopyFromParent, CopyFromParent, CopyFromParent, 0, 0); + XStoreName(x11_display, x11_window, WINDOW_NAME); + struct Hints { long flags=2l, functions=0l, decorations=0b0111010l, input_mode=0l, status=0l; } x11_hints; // decorations=maximize|minimize|menu|title|resize|border|all + Atom x11_property = XInternAtom(x11_display, "_MOTIF_WM_HINTS", 0); + XChangeProperty(x11_display, x11_window, x11_property, x11_property, 32, PropModeReplace, (unsigned char*)&x11_hints, 5); + XMapRaised(x11_display, x11_window); + x11_gc = XCreateGC(x11_display, x11_window, 0, 0); + x11_image = XCreateImage(x11_display, CopyFromParent, DefaultDepth(x11_display, DefaultScreen(x11_display)), ZPixmap, 0, (char*)camera.bitmap, width, height, 32, 0); + XSelectInput(x11_display, x11_window, KeyPressMask|KeyReleaseMask|ButtonPressMask|ButtonReleaseMask|PointerMotionMask); + + thread compute_thread(main_physics); // start main_physics() in a new thread + thread input_thread(input_detection); + + Clock clock; + double frametime = 1.0; + while(running) { + // main loop ################################################################ + camera.update_state(); + main_graphics(); + update_frame(frametime); + frametime = clock.stop(); + sleep(1.0/(double)camera.fps_limit-frametime); + clock.start(); + // ########################################################################## + } -void draw_bitmap(const void* buffer) { - std::copy((int*)buffer, (int*)buffer+camera.width*camera.height, frame->data()); + XFreeGC(x11_display, x11_gc); + XDestroyWindow(x11_display, x11_window); + XCloseDisplay(x11_display); + compute_thread.join(); + input_thread.join(); + return 0; } -void draw_label(const Color& c, const string& s, const int x, const int y) {} +#endif // Linux +#endif // INTERACTIVE_GRAPHICS -uint ltw=0u, lth=0u; +#ifdef INTERACTIVE_GRAPHICS_ASCII +uint last_textwidth=0u, last_textheight=0u; uint fontwidth=8u, fontheight=16u; void update_frame(const double frametime) { - if(ltw==0u&<h==0u) get_console_font_size(fontwidth, fontheight); + if(last_textwidth==0u&&last_textheight==0u) get_console_font_size(fontwidth, fontheight); uint textwidth=0u, textheight=0u; get_console_size(textwidth, textheight); textwidth = max(textwidth, 2u)-1u; - textwidth = min(textwidth, textheight*frame->width()*fontheight/(frame->height()*fontwidth)); - textheight = min(textheight, textwidth*frame->height()*fontwidth/(frame->width()*fontheight)); + textwidth = min(textwidth, textheight*camera.width*fontheight/(camera.height*fontwidth)); + textheight = min(textheight, textwidth*camera.height*fontwidth/(camera.width*fontheight)); textwidth = max(textwidth, 1u); textheight = max(textheight, 1u); - if(textwidth!=ltw||textheight!=lth) { + if(textwidth!=last_textwidth||textheight!=last_textheight) { clear_console(); - ltw = textwidth; - lth = textheight; + last_textwidth = textwidth; + last_textheight = textheight; } show_console_cursor(false); - print_video_dither(frame, textwidth, textheight); + const Image image(camera.width, camera.height, camera.bitmap); + print_video_dither(&image, textwidth, textheight); print(alignr(textwidth, to_string(textwidth)+"x"+to_string(textheight)+" "+alignr(4, to_int(1.0/frametime))+"fps")); show_console_cursor(true); + camera.clear_frame(); // clear frame } - -void key_detection() { +void input_detection() { while(running) { int key = key_press(); key -= (key>96&&key<123)*32; // convert lower case to upper case key_bindings(key); } } - -void key_hold() { - if(autorotation) update_rotation(-1, 0); - if(!camera.free) { - zo = 0.8f*zo+0.2f*dzo; // continuous camera.zoom - camera.zoom = exp(zo*0.25f); - } - mx = 0.8*mx+0.2*dmx; // continuous mouse movement - my = 0.8*my+0.2*dmy; // continuous mouse movement - dmx = 0.0; - dmy = 0.0; - if(!lockmouse) update_rotation(mx, my); -} - int main(int argc, char* argv[]) { main_arguments = get_main_arguments(argc, argv); - camera.fps_limit = 60u; // find out screen refresh rate - camera.width = 384u; // must be divisible by 8 - camera.height = 216u; // must be divisible by 8 - camera.fov = 100.0f; - set_zoom(1.0f); // set initial zoom - camera.update_matrix(); - - frame = new Image(camera.width, camera.height); - + camera = Camera(384u, 216u, 60u); // width and height must be divisible by 8 thread compute_thread(main_physics); // start main_physics() in a new thread - thread key_thread(key_detection); - + thread input_thread(input_detection); Clock clock; double frametime = 1.0; #ifdef UTILITIES_CONSOLE_DITHER_LOOKUP @@ -880,7 +729,7 @@ int main(int argc, char* argv[]) { clear_console(); while(running) { // main loop ################################################################ - key_hold(); + camera.update_state(); main_graphics(); update_frame(frametime); frametime = clock.stop(); @@ -889,26 +738,16 @@ int main(int argc, char* argv[]) { // ########################################################################## } compute_thread.join(); - key_thread.join(); + input_thread.join(); return 0; } +#endif // INTERACTIVE_GRAPHICS_ASCII -#else // GRAPHICS - -void draw_bitmap(const void* buffer) {} -void draw_label(const Color& c, const string& s, const int x, const int y) {} - +#if !defined(INTERACTIVE_GRAPHICS) && !defined(INTERACTIVE_GRAPHICS_ASCII) int main(int argc, char* argv[]) { main_arguments = get_main_arguments(argc, argv); - camera.fps_limit = 60u; // find out screen refresh rate - camera.width = GRAPHICS_FRAME_WIDTH; // must be divisible by 8 - camera.height = GRAPHICS_FRAME_HEIGHT; // must be divisible by 8 - camera.fov = 100.0f; - set_zoom(1.0f); // set initial zoom - camera.update_matrix(); - + camera = Camera(GRAPHICS_FRAME_WIDTH, GRAPHICS_FRAME_HEIGHT, 60u); // width and height must be divisible by 8 thread compute_thread(main_physics); // start main_physics() in a new thread - while(running) { // main loop ################################################################ main_label(1.0); @@ -918,6 +757,5 @@ int main(int argc, char* argv[]) { compute_thread.join(); return 0; } - -#endif // GRAPHICS +#endif // no INTERACTIVE_GRAPHICS and no INTERACTIVE_GRAPHICS_ASCII #endif // GRAPHICS \ No newline at end of file diff --git a/src/graphics.hpp b/src/graphics.hpp index 3e3a7697..23defa2e 100644 --- a/src/graphics.hpp +++ b/src/graphics.hpp @@ -17,29 +17,62 @@ void main_label(const double frametime); // implement these three void main_graphics(); void main_physics(); -struct Camera { -#ifdef GRAPHICS_WIDTH - uint width = (uint)(GRAPHICS_WIDTH); -#else // GRAPHICS_WIDTH +class Camera { +public: + int* bitmap = nullptr; + int* zbuffer = nullptr; uint width = 1920u; // screen width -#endif // GRAPHICS_WIDTH -#ifdef GRAPHICS_HEIGHT - uint height = (uint)(GRAPHICS_HEIGHT); -#else // GRAPHICS_HEIGHT uint height = 1080u; // screen height -#endif // GRAPHICS_HEIGHT uint fps_limit = 60u; // default value for screen frames per second limit - bool key_update = true; // a key variable has been updated - float fov = 1E-6f; // field of view, default: orthogonal graphics (fov cannot be exactly 0) - float zoom = 0.5f*(float)min(width, height); // zoom - float dis = 0.5f*(float)width/tan(fov*pif/360.0f); // distance from camera to rotation center - float3 pos = float3(0.0f); // free camera position + float fov = 100.0f; // field of view, default: 100 + float zoom=0.5f*(float)min(width, height), dis=0.5f*(float)width/tan(fov*pif/360.0f); // zoom, distance from camera to rotation center float3x3 R = float3x3(1.0f); // camera rotation matrix + double rx=0.5*pi, ry=pi; // rotation angles + float3 pos = float3(0.0f); // free camera position bool free = false; // free camera mode bool vr=false, tv=false; // virtual reality mode (enables stereoscopic rendering), VR TV mode - float eye_distance = 8.0f; // distance between cameras - const double ms = 1.0; // mouse sensitivity - double rx=0.5*pi, ry=pi; // rotation angles + float eye_distance = 8.0f; // distance between cameras in VR mode + bool key_update = true; // a key variable has been updated + +private: + float log_zoom=4.0f*log(zoom), target_log_zoom=log_zoom; + double free_camera_velocity = 0.05; // free camera speed + double mouse_x=0.0, mouse_y=0.0, target_mouse_x=0.0, target_mouse_y=0.0; // mouse position + double mouse_sensitivity = 1.0; // mouse sensitivity + bool lockmouse = false; // mouse movement won't change camera view when this is true + bool autorotation = false; // autorotation + bool key_state[512] = { 0 }; + +public: + Camera(const uint width, const uint height, const uint fps_limit) { + this->width = width; + this->height = height; + this->fps_limit = fps_limit; + bitmap = new int[width*height]; + zbuffer = new int[width*height]; + set_zoom(1.0f); // set initial zoom + update_matrix(); + } + Camera() = default; // default constructor + ~Camera() { + delete[] bitmap; + delete[] zbuffer; + } + Camera& operator=(Camera&& camera) noexcept { // move assignment + this->width = camera.width; + this->height = camera.height; + this->fps_limit = camera.fps_limit; + std::swap(bitmap, camera.bitmap); + std::swap(zbuffer, camera.zbuffer); + set_zoom(1.0f); // set initial zoom + update_matrix(); + return *this; + } + + void set_zoom(const float rad) { + zoom = 0.5f*(float)min(width, height)/rad; + log_zoom = target_log_zoom = 4.0f*log(zoom); + } void update_matrix() { dis = 0.5f*(float)width/tan(fov*pif/360.0f); const float sinrx=sin((float)rx), cosrx=cos((float)rx), sinry=sin((float)ry), cosry=cos((float)ry); @@ -47,7 +80,84 @@ struct Camera { R.yx = sinrx*sinry; R.yy = -cosrx*sinry; R.yz = cosry; R.zx = -sinrx*cosry; R.zy = cosrx*cosry; R.zz = sinry; } - float data(const uint i) { // returns all camera data required for rendering + void set_key_state(const int key, const bool state) { + key_state[clamp(256+key, 0, 511)] = state; + } + bool get_key_state(const int key) { + return key_state[clamp(256+key, 0, 511)]; + } + void input_key(const int key) { + switch(key) { + case 'R': input_R(); break; + case 'U': input_U(); break; + case 'I': input_I(); break; + case 'J': input_J(); break; + case 'K': input_K(); break; + case 'L': input_L(); break; + case 'V': input_V(); break; + case 'B': input_B(); break; + case ',': input_scroll_up(); break; + case '.': input_scroll_down(); break; + case 'F': input_F(); break; + case 27: running=false; exit(0); + } +#ifdef INTERACTIVE_GRAPHICS_ASCII + if(free) { // move free camera + if(key=='W') input_W(); + if(key=='A') input_A(); + if(key=='S') input_S(); + if(key=='D') input_D(); + if(key==' ') input_Space(); + if(key=='C') input_C(); + } + if(!lockmouse) { + if(key=='I') input_I(); // rotating camera with keys + if(key=='J') input_J(); + if(key=='K') input_K(); + if(key=='L') input_L(); + } + if(key=='Y') input_Y(); // adjusting field of view + if(key=='X') input_X(); + if(key=='N') input_N(); // adjust camera.vr eye distance + if(key=='M') input_M(); +#endif // INTERACTIVE_GRAPHICS_ASCII + } + void update_state() { + if(!free) { + log_zoom = 0.8f*log_zoom+0.2f*target_log_zoom; // continuous zoom + zoom = exp(log_zoom*0.25f); + } else { // move free camera + if(get_key_state('W')) input_W(); + if(get_key_state('A')) input_A(); + if(get_key_state('S')) input_S(); + if(get_key_state('D')) input_D(); + if(get_key_state(' ')) input_Space(); + if(get_key_state('C')) input_C(); + } + if(!lockmouse) { + if(get_key_state('I')) input_I(); // rotate camera with keys + if(get_key_state('J')) input_J(); + if(get_key_state('K')) input_K(); + if(get_key_state('L')) input_L(); + } + if(autorotation) update_rotation(-1, 0); + if(get_key_state('Y')) input_Y(); // adjust field of view + if(get_key_state('X')) input_X(); + if(get_key_state('N')) input_N(); // adjust vr eye distance + if(get_key_state('M')) input_M(); + mouse_x = 0.8*mouse_x+0.2*target_mouse_x; // continuous mouse movement + mouse_y = 0.8*mouse_y+0.2*target_mouse_y; + target_mouse_x = 0.0; + target_mouse_y = 0.0; + if(!lockmouse) update_rotation(mouse_x, mouse_y); + } + void clear_frame() { + for(uint i=0u; ir = (uchar)r; - this->g = (uchar)g; - this->b = (uchar)b; - } - Color() = default; -}; - -#define FONT_HEIGHT 10 // default: 10 -#define FONT_WIDTH 5 // default: 6 +#define GRAPHICS_CONSOLE // open console additionally to graphics window +#define FONT_HEIGHT 11 // default: 11 +#define FONT_WIDTH 6 // default: 6 -void set_zoom(const float rad); void set_light(const uint i, const float3& p); -void draw_bitmap(const void* buffer); -void draw_label(const Color& c, const string& s, const int x, const int y); - -#ifdef WINDOWS_GRAPHICS - -#define GRAPHICS_CONSOLE -//#define SKIP_VISIBILITY_CHECKS // makes CPU graphics without polygons 40% faster +void draw_bitmap(const int* bitmap); +void draw_label(const int x, const int y, const string& s, const int color); -void draw_pixel(const Color& c, const int x, const int y); // 2D drawing functions -void draw_circle(const Color& c, const int x, const int y, const int r); -void draw_line(const Color& c, const int x0, const int y0, const int x1, const int y1); -void draw_triangle(const Color& c, const int x0, const int y0, const int x1, const int y1, const int x2, const int y2); -void draw_rectangle(const Color& c, const int x0, const int y0, const int x1, const int y1); -void draw_polygon(const Color& c, const int* const x, const int* const y, const int n); -void draw_text(const Color& c, const string& s, const int x, const int y); +void draw_pixel(const int x, const int y, const int color); // 2D drawing functions +void draw_circle(const int x, const int y, const int r, const int color); +void draw_line(const int x0, const int y0, const int x1, const int y1, const int color); +void draw_triangle(const int x0, const int y0, const int x1, const int y1, const int x2, const int y2, const int color); +void draw_rectangle(const int x0, const int y0, const int x1, const int y1, const int color); +void draw_text(const int x, const int y, const string& s, const int color); -void draw_pixel(const Color& c, const float3& p); // 3D drawing functions -void draw_circle(const Color& c, const float3& p, const float r); -void draw_line(const Color& c, const float3& p0, const float3& p1); -void draw_triangle(const Color& c, const float3& p0, const float3& p1, const float3& p2, const bool translucent=false); -void draw_quadrangle(const Color& c, const float3& p0, const float3& p1, const float3& p2, const float3& p3, const bool translucent=false); -void draw_text(const Color& c, const float3& p, const string& s, const float r); +void draw_pixel(const float3& p, const int color); // 3D drawing functions +void draw_circle(const float3& p, const float r, const int color); +void draw_line(const float3& p0, const float3& p1, const int color); +void draw_triangle(const float3& p0, const float3& p1, const float3& p2, const int color, const bool translucent=false); +void draw_triangle(const float3& p0, const float3& p1, const float3& p2, const int c0, const int c1, const int c2, const bool translucent=false); +void draw_text(const float3& p, const float r, const string& s, const int color); -#endif // WINDOWS_GRAPHICS #endif // GRAPHICS \ No newline at end of file diff --git a/src/info.cpp b/src/info.cpp index 855f9e6d..277eea7c 100644 --- a/src/info.cpp +++ b/src/info.cpp @@ -103,12 +103,12 @@ void Info::print_initialize() { println("| Thermal Diff. | "+alignr(57u, to_string(lbm->get_alpha(), 8u))+" |"); println("| Thermal Exp. | "+alignr(57u, to_string(lbm->get_beta(), 8u))+" |"); #endif // TEMPERATURE -#ifndef CONSOLE_GRAPHICS +#ifndef INTERACTIVE_GRAPHICS_ASCII println("|---------.-------'-----.-----------.-------------------.---------------------|"); println("| MLUPs | Bandwidth | Steps/s | Current Step | "+string(steps==max_ulong?"Elapsed Time ":"Time Remaining")+" |"); -#else // CONSOLE_GRAPHICS +#else // INTERACTIVE_GRAPHICS_ASCII println("'-----------------'-----------------------------------------------------------'"); -#endif // CONSOLE_GRAPHICS +#endif // INTERACTIVE_GRAPHICS_ASCII allow_rendering = true; } void Info::print_update() const { diff --git a/src/kernel.cpp b/src/kernel.cpp index 33aaeadd..0157ae63 100644 --- a/src/kernel.cpp +++ b/src/kernel.cpp @@ -89,11 +89,11 @@ string opencl_c_container() { return R( // ########################## begin of O // draw_circle(...) : draw 3D circle // draw_line(...) : draw 3D line // draw_triangle(...) : draw 3D triangle -// iron_color(...) : convert float in [0,255] to iron spectrum uint color +// iron_color(...) : convert float in [0,255] to iron spectrum int color // graphics_clear() : kernel to reset bitmap and zbuffer )+"#ifdef GRAPHICS"+R( -)+R(uint iron_color(float x) { // coloring scheme (float 0-255 -> uint color) +)+R(int iron_color(float x) { // coloring scheme (float 0-255 -> int color) x = clamp(360.0f-x*360.0f/255.0f, 0.0f, 360.0f); float r=255.0f, g=0.0f, b=0.0f; if(x<60.0f) { // white - yellow @@ -108,9 +108,9 @@ string opencl_c_container() { return R( // ########################## begin of O r = 255.0f-255.0f*(x-180.0f)/180.0f; b = 255.0f-255.0f*(x-270.0f)/90.0f; } - return (((uint)r)<<16)|(((uint)g)<<8)|((uint)b); + return (((int)r)<<16)|(((int)g)<<8)|((int)b); } -)+R(uint rainbow_color(float x) { // coloring scheme (float 0-255 -> uint color) +)+R(int rainbow_color(float x) { // coloring scheme (float 0-255 -> int color) x = clamp(360.0f-x*360.0f/255.0f, 0.0f, 360.0f); float r=0.0f, g=0.0f, b=0.0f; // black if(x<60.0f) { // red - yellow @@ -132,27 +132,27 @@ string opencl_c_container() { return R( // ########################## begin of O r = (255.0f-255.0f*(x-300.0f)/60.0f)/2.0f; b = 255.0f-255.0f*(x-300.0f)/60.0f; } - return (((uint)r)<<16)|(((uint)g)<<8)|((uint)b); + return (((int)r)<<16)|(((int)g)<<8)|((int)b); } -)+R(uint color_dim(const uint c, const float x) { - const uint r = clamp((uint)fma((float)((c>>16)&255), x, 0.5f), 0u, 255u); - const uint g = clamp((uint)fma((float)((c>> 8)&255), x, 0.5f), 0u, 255u); - const uint b = clamp((uint)fma((float)( c &255), x, 0.5f), 0u, 255u); +)+R(int color_dim(const int c, const float x) { + const int r = clamp((int)fma((float)((c>>16)&255), x, 0.5f), 0, 255); + const int g = clamp((int)fma((float)((c>> 8)&255), x, 0.5f), 0, 255); + const int b = clamp((int)fma((float)( c &255), x, 0.5f), 0, 255); return (r&255)<<16|(g&255)<<8|(b&255); } -)+R(uint color_mix(const uint c1, const uint c2, const float w) { +)+R(int color_mix(const int c1, const int c2, const float w) { const uchar4 cc1=as_uchar4(c1), cc2=as_uchar4(c2); const float3 fc1=(float3)((float)cc1.x, (float)cc1.y, (float)cc1.z), fc2=(float3)((float)cc2.x, (float)cc2.y, (float)cc2.z); const float3 fcm = fma(w, fc1, fma(1.0f-w, fc2, (float3)(0.5f, 0.5f, 0.5f))); - return as_uint((uchar4)((uchar)fcm.x, (uchar)fcm.y, (uchar)fcm.z, (uchar)0u)); + return as_int((uchar4)((uchar)fcm.x, (uchar)fcm.y, (uchar)fcm.z, (uchar)0u)); } -)+R(uint color_mix_3(const uint c0, const uint c1, const uint c2, const float w0, const float w1, const float w2) { // w0+w1+w2 = 1 +)+R(int color_mix_3(const int c0, const int c1, const int c2, const float w0, const float w1, const float w2) { // w0+w1+w2 = 1 const uchar4 cc0=as_uchar4(c0), cc1=as_uchar4(c1), cc2=as_uchar4(c2); const float3 fc0=(float3)((float)cc0.x, (float)cc0.y, (float)cc0.z), fc1=(float3)((float)cc1.x, (float)cc1.y, (float)cc1.z), fc2=(float3)((float)cc2.x, (float)cc2.y, (float)cc2.z); const float3 fcm = fma(w0, fc0, fma(w1, fc1, fma(w2, fc2, (float3)(0.5f, 0.5f, 0.5f)))); - return as_uint((uchar4)((uchar)fcm.x, (uchar)fcm.y, (uchar)fcm.z, (uchar)0u)); + return as_int((uchar4)((uchar)fcm.x, (uchar)fcm.y, (uchar)fcm.z, (uchar)0u)); } -)+R(uint hsv_to_rgb(const float h, const float s, const float v) { +)+R(int hsv_to_rgb(const float h, const float s, const float v) { const float c = v*s; const float x = c*(1.0f-fabs(fmod(h/60.0f, 2.0f)-1.0f)); const float m = v-c; @@ -163,9 +163,9 @@ string opencl_c_container() { return R( // ########################## begin of O else if(h<240.0f) { g = x; b = c; } else if(h<300.0f) { r = x; b = c; } else if(h<360.0f) { r = c; b = x; } - return (uint)((r+m)*255.0f)<<16|(uint)((g+m)*255.0f)<<8|(uint)((b+m)*255.0f); + return (int)((r+m)*255.0f)<<16|(int)((g+m)*255.0f)<<8|(int)((b+m)*255.0f); } -)+R(uint lighting(const uint c, const float3 p, const float3 normal, const float* camera_cache) { // calculate lighting of triangle +)+R(int lighting(const int c, const float3 p, const float3 normal, const float* camera_cache) { // calculate lighting of triangle const float dis = camera_cache[ 1]; // fetch camera parameters (rotation matrix, camera position, etc.) const float posx = camera_cache[ 2]; const float posy = camera_cache[ 3]; @@ -179,8 +179,8 @@ string opencl_c_container() { return R( // ########################## begin of O const float dy = p.y-fma(Rzy, dis, posy); const float dz = p.z-fma(Rzz, dis, posz); const float dl2 = sq(dx)+sq(dy)+sq(dz); - const float br = max(1.5f*fabs(normal.x*dx+normal.y*dy+normal.z*dz)/native_sqrt(nl2*dl2), 0.3f); - return min((uint)(br*cr), 255u)<<16|min((uint)(br*cg), 255u)<<8|min((uint)(br*cb), 255u); + const float br = max(1.5f*fabs(normal.x*dx+normal.y*dy+normal.z*dz)*rsqrt(nl2*dl2), 0.3f); + return min((int)(br*cr), 255)<<16|min((int)(br*cg), 255)<<8|min((int)(br*cb), 255); } )+R(bool is_off_screen(const int x, const int y, const int stereo) { switch(stereo) { @@ -189,7 +189,7 @@ string opencl_c_container() { return R( // ########################## begin of O case +1: return x=def_screen_width ||y<0||y>=def_screen_height; // right half } } -)+R(void draw(const int x, const int y, const float z, const uint color, global uint* bitmap, volatile global int* zbuffer, const int stereo) { +)+R(void draw(const int x, const int y, const float z, const int color, global int* bitmap, volatile global int* zbuffer, const int stereo) { const int index=x+y*def_screen_width, iz=(int)(z*(2147483647.0f/10000.0f)); // use int z-buffer and atomic_max to minimize noise in image if(!is_off_screen(x, y, stereo)&&iz>atomic_max(&zbuffer[index], iz)) bitmap[index] = color; // only draw if point is on screen and first in zbuffer } @@ -224,7 +224,7 @@ string opencl_c_container() { return R( // ########################## begin of O *rz = r.z; return true; } -)+R(void convert_circle(float3 p, const float r, const uint color, const float* camera_cache, global uint* bitmap, global int* zbuffer, const int stereo) { // 3D -> 2D +)+R(void convert_circle(float3 p, const float r, const int color, const float* camera_cache, global int* bitmap, global int* zbuffer, const int stereo) { // 3D -> 2D int rx, ry; float rz; if(convert(&rx, &ry, &rz, p, camera_cache, stereo)) { const float zoom = camera_cache[0]; @@ -252,7 +252,7 @@ string opencl_c_container() { return R( // ########################## begin of O } } } -)+R(void convert_line(const float3 p0, const float3 p1, const uint color, const float* camera_cache, global uint* bitmap, global int* zbuffer, const int stereo) { // 3D -> 2D +)+R(void convert_line(const float3 p0, const float3 p1, const int color, const float* camera_cache, global int* bitmap, global int* zbuffer, const int stereo) { // 3D -> 2D int r0x, r0y, r1x, r1y; float r0z, r1z; if(convert(&r0x, &r0y, &r0z, p0, camera_cache, stereo) && convert(&r1x, &r1y, &r1z, p1, camera_cache, stereo) && !(is_off_screen(r0x, r0y, stereo) && is_off_screen(r1x, r1y, stereo))) { // cancel drawing if both points are off screen @@ -269,7 +269,7 @@ string opencl_c_container() { return R( // ########################## begin of O } } } -)+R(void convert_triangle(float3 p0, float3 p1, float3 p2, const uint color, const float* camera_cache, global uint* bitmap, global int* zbuffer, const int stereo) { // 3D -> 2D +)+R(void convert_triangle(float3 p0, float3 p1, float3 p2, const int color, const float* camera_cache, global int* bitmap, global int* zbuffer, const int stereo) { // 3D -> 2D int r0x, r0y, r1x, r1y, r2x, r2y; float r0z, r1z, r2z; if(convert(&r0x, &r0y, &r0z, p0, camera_cache, stereo) && convert(&r1x, &r1y, &r1z, p1, camera_cache, stereo) && convert(&r2x, &r2y, &r2z, p2, camera_cache, stereo) && !(is_off_screen(r0x, r0y, stereo) && is_off_screen(r1x, r1y, stereo) && is_off_screen(r2x, r2y, stereo))) { // cancel drawing if all points are off screen @@ -294,14 +294,14 @@ string opencl_c_container() { return R( // ########################## begin of O } } } -)+R(void convert_triangle_interpolated(float3 p0, float3 p1, float3 p2, uint c0, uint c1, uint c2, const float* camera_cache, global uint* bitmap, global int* zbuffer, const int stereo) { // 3D -> 2D +)+R(void convert_triangle_interpolated(float3 p0, float3 p1, float3 p2, int c0, int c1, int c2, const float* camera_cache, global int* bitmap, global int* zbuffer, const int stereo) { // 3D -> 2D int r0x, r0y, r1x, r1y, r2x, r2y; float r0z, r1z, r2z; if(convert(&r0x, &r0y, &r0z, p0, camera_cache, stereo) && convert(&r1x, &r1y, &r1z, p1, camera_cache, stereo) && convert(&r2x, &r2y, &r2z, p2, camera_cache, stereo) && !(is_off_screen(r0x, r0y, stereo) && is_off_screen(r1x, r1y, stereo) && is_off_screen(r2x, r2y, stereo))) { // cancel drawing if all points are off screen if(r0x*(r1y-r2y)+r1x*(r2y-r0y)+r2x*(r0y-r1y)>100000 || (r0y==r1y&&r0y==r2y)) return; // return for large triangle area or degenerate triangles - if(r0y>r1y) { const int xt = r0x; const int yt = r0y; r0x = r1x; r0y = r1y; r1x = xt; r1y = yt; const uint ct = c0; c0 = c1; c1 = ct; } // sort vertices ascending by y - if(r0y>r2y) { const int xt = r0x; const int yt = r0y; r0x = r2x; r0y = r2y; r2x = xt; r2y = yt; const uint ct = c0; c0 = c2; c2 = ct; } - if(r1y>r2y) { const int xt = r1x; const int yt = r1y; r1x = r2x; r1y = r2y; r2x = xt; r2y = yt; const uint ct = c1; c1 = c2; c2 = ct; } + if(r0y>r1y) { const int xt = r0x; const int yt = r0y; r0x = r1x; r0y = r1y; r1x = xt; r1y = yt; const int ct = c0; c0 = c1; c1 = ct; } // sort vertices ascending by y + if(r0y>r2y) { const int xt = r0x; const int yt = r0y; r0x = r2x; r0y = r2y; r2x = xt; r2y = yt; const int ct = c0; c0 = c2; c2 = ct; } + if(r1y>r2y) { const int xt = r1x; const int yt = r1y; r1x = r2x; r1y = r2y; r2x = xt; r2y = yt; const int ct = c1; c1 = c2; c2 = ct; } const float z = (r0z+r1z+r2z)/3.0f; // approximate triangle z position for each pixel to be equal const float d = (float)((r1y-r2y)*(r0x-r2x)+(r2x-r1x)*(r0y-r2y)); for(int y=r0y; y 2D +)+R(void draw_point(const float3 p, const int color, const float* camera_cache, global int* bitmap, global int* zbuffer) { // 3D -> 2D const bool vr = (as_int(camera_cache[14])>>31)&0x1; int rx, ry; float rz; if(!vr) { @@ -338,7 +338,7 @@ string opencl_c_container() { return R( // ########################## begin of O if(convert(&rx, &ry, &rz, p, camera_cache, +1)) draw(rx, ry, rz, color, bitmap, zbuffer, +1); // right eye } } -)+R(void draw_circle(const float3 p, const float r, const uint color, const float* camera_cache, global uint* bitmap, global int* zbuffer) { // 3D -> 2D +)+R(void draw_circle(const float3 p, const float r, const int color, const float* camera_cache, global int* bitmap, global int* zbuffer) { // 3D -> 2D const bool vr = (as_int(camera_cache[14])>>31)&0x1; if(!vr) { convert_circle(p, r, color, camera_cache, bitmap, zbuffer, 0); @@ -347,7 +347,7 @@ string opencl_c_container() { return R( // ########################## begin of O convert_circle(p, r, color, camera_cache, bitmap, zbuffer, +1); // right eye } } -)+R(void draw_line(const float3 p0, const float3 p1, const uint color, const float* camera_cache, global uint* bitmap, global int* zbuffer) { // 3D -> 2D +)+R(void draw_line(const float3 p0, const float3 p1, const int color, const float* camera_cache, global int* bitmap, global int* zbuffer) { // 3D -> 2D const bool vr = (as_int(camera_cache[14])>>31)&0x1; if(!vr) { convert_line(p0, p1, color, camera_cache, bitmap, zbuffer, 0); @@ -356,7 +356,7 @@ string opencl_c_container() { return R( // ########################## begin of O convert_line(p0, p1, color, camera_cache, bitmap, zbuffer, +1); // right eye } } -)+R(void draw_triangle(const float3 p0, const float3 p1, const float3 p2, const uint color, const float* camera_cache, global uint* bitmap, global int* zbuffer) { // 3D -> 2D +)+R(void draw_triangle(const float3 p0, const float3 p1, const float3 p2, const int color, const float* camera_cache, global int* bitmap, global int* zbuffer) { // 3D -> 2D const bool vr = (as_int(camera_cache[14])>>31)&0x1; if(!vr) { convert_triangle(p0, p1, p2, color, camera_cache, bitmap, zbuffer, 0); @@ -365,7 +365,7 @@ string opencl_c_container() { return R( // ########################## begin of O convert_triangle(p0, p1, p2, color, camera_cache, bitmap, zbuffer, +1); // right eye } } -)+R(void draw_triangle_interpolated(const float3 p0, const float3 p1, const float3 p2, const uint c0, const uint c1, const uint c2, const float* camera_cache, global uint* bitmap, global int* zbuffer) { // 3D -> 2D +)+R(void draw_triangle_interpolated(const float3 p0, const float3 p1, const float3 p2, const int c0, const int c1, const int c2, const float* camera_cache, global int* bitmap, global int* zbuffer) { // 3D -> 2D const bool vr = (as_int(camera_cache[14])>>31)&0x1; if(!vr) { convert_triangle_interpolated(p0, p1, p2, c0, c1, c2, camera_cache, bitmap, zbuffer, 0); @@ -374,9 +374,9 @@ string opencl_c_container() { return R( // ########################## begin of O convert_triangle_interpolated(p0, p1, p2, c0, c1, c2, camera_cache, bitmap, zbuffer, +1); // right eye } } -)+R(kernel void graphics_clear(global uint* bitmap, global int* zbuffer) { +)+R(kernel void graphics_clear(global int* bitmap, global int* zbuffer) { const uint n = get_global_id(0); - bitmap[n] = def_background_color; // black background = 0x000000u, use 0xFFFFFFu for white background + bitmap[n] = def_background_color; // black background = 0x000000, use 0xFFFFFF for white background zbuffer[n] = -2147483648; } )+R(constant ushort edge_table_data[128] = { // source: Paul Bourke, http://paulbourke.net/geometry/polygonise/, mirror symmetry applied, makes marching-cubes 31% faster @@ -631,7 +631,7 @@ string opencl_c_container() { return R( // ########################## begin of O int b = (int)(18.0f*y); return 0xFFFFFF*(a%2==b%2); } -)+R(uint skybox_color(const ray r, const global uint* skybox) { +)+R(uint skybox_color(const ray r, const global int* skybox) { //const float x = fma(atan2(r.direction.x, r.direction.y), 0.5f/3.1415927f, 0.5f); //const float y = fma(asin (r.direction.z ), -1.0f/3.1415927f, 0.5f); //return color_mix(skybox_color_hsv(x, y), skybox_color_grid(x, y), 0.95f-0.33f*(2.0f*(0.5f-fabs(y-0.5)))); @@ -643,7 +643,7 @@ string opencl_c_container() { return R( // ########################## begin of O const float u1=fu-(float)ua, v1=fv-(float)va, u0=1.0f-u1, v0=1.0f-v1; // interpolation factors return color_mix(color_mix(s00, s01, v0), color_mix(s10, s11, v0), u0); // perform bilinear interpolation } -)+R(uint last_ray_reflectivity(const ray reflection, const ray transmission, const uint last_color, const float reflectivity, const global uint* skybox) { +)+R(uint last_ray_reflectivity(const ray reflection, const ray transmission, const uint last_color, const float reflectivity, const global int* skybox) { return color_mix(skybox_color(reflection, skybox), skybox_color(transmission, skybox), reflectivity); } )+R(float ray_grid_traverse(const ray r, const global float* phi, const global uchar* flags, float3* normal, const uint Nx, const uint Ny, const uint Nz) { @@ -731,7 +731,7 @@ string opencl_c_container() { return R( // ########################## begin of O } return -1.0f; // no intersection found } -)+R(bool raytrace_phi_mirror(const ray ray_in, ray* ray_reflect, const global float* phi, const global uchar* flags, const global uint* skybox, const uint Nx, const uint Ny, const uint Nz) { // only reflection +)+R(bool raytrace_phi_mirror(const ray ray_in, ray* ray_reflect, const global float* phi, const global uchar* flags, const global int* skybox, const uint Nx, const uint Ny, const uint Nz) { // only reflection float3 normal; float d = ray_grid_traverse(ray_in, phi, flags, &normal, Nx, Ny, Nz); // move ray through lattice, at each cell call marching_cubes if(d==-1.0f) return false; // no intersection found @@ -739,7 +739,7 @@ string opencl_c_container() { return R( // ########################## begin of O ray_reflect->direction = reflect(ray_in.direction, normal); return true; } -)+R(bool raytrace_phi(const ray ray_in, ray* ray_reflect, ray* ray_transmit, float* reflectivity, const global float* phi, const global uchar* flags, const global uint* skybox, const uint Nx, const uint Ny, const uint Nz) { +)+R(bool raytrace_phi(const ray ray_in, ray* ray_reflect, ray* ray_transmit, float* reflectivity, const global float* phi, const global uchar* flags, const global int* skybox, const uint Nx, const uint Ny, const uint Nz) { float3 normal; float d = ray_grid_traverse(ray_in, phi, flags, &normal, Nx, Ny, Nz); // move ray through lattice, at each cell call marching_cubes if(d==-1.0f) return false; // no intersection found @@ -1915,9 +1915,9 @@ string opencl_c_container() { return R( // ########################## begin of O )+"#ifdef GRAPHICS"+R( )+"#ifndef FORCE_FIELD"+R( -)+R(kernel void graphics_flags(const global uchar* flags, const global float* camera, global uint* bitmap, global int* zbuffer) { +)+R(kernel void graphics_flags(const global uchar* flags, const global float* camera, global int* bitmap, global int* zbuffer) { )+"#else"+R( // FORCE_FIELD -)+R(kernel void graphics_flags(const global uchar* flags, const global float* camera, global uint* bitmap, global int* zbuffer, const global float* F) { +)+R(kernel void graphics_flags(const global uchar* flags, const global float* camera, global int* bitmap, global int* zbuffer, const global float* F) { )+"#endif"+R( // FORCE_FIELD const uint n = get_global_id(0); const uchar flagsn = flags[n]; // cache flags @@ -1930,7 +1930,7 @@ string opencl_c_container() { return R( // ########################## begin of O calculate_indices(n, &x0, &xp, &xm, &y0, &yp, &ym, &z0, &zp, &zm); const uint3 xyz = coordinates(n); const float3 p = position(xyz); - const uint c = // coloring scheme + const int c = // coloring scheme flagsn_bo==TYPE_S ? COLOR_S : // solid boundary ((flagsn&TYPE_T)&&flagsn_bo==TYPE_E) ? color_mix(COLOR_T, COLOR_E, 0.5f) : // both temperature boundary and equilibrium boundary ((flagsn&TYPE_T)&&flagsn_bo==TYPE_MS) ? color_mix(COLOR_T, COLOR_M, 0.5f) : // both temperature boundary and moving boundary @@ -1975,14 +1975,14 @@ string opencl_c_container() { return R( // ########################## begin of O const float3 Fn = def_scale_F*(float3)(F[n], F[def_N+(ulong)n], F[2ul*def_N+(ulong)n]); const float Fnl = length(Fn); if(Fnl>0.0f) { - const uint c = iron_color(255.0f*Fnl); // color boundaries depending on the force on them + const int c = iron_color(255.0f*Fnl); // color boundaries depending on the force on them draw_line(p, p+5.0f*Fn, c, camera_cache, bitmap, zbuffer); // draw colored force vectors } } )+"#endif"+R( // FORCE_FIELD } -)+R(kernel void graphics_field(const global uchar* flags, const global float* u, const global float* camera, global uint* bitmap, global int* zbuffer) { +)+R(kernel void graphics_field(const global uchar* flags, const global float* u, const global float* camera, global int* bitmap, global int* zbuffer) { const uint n = get_global_id(0); )+"#ifndef MOVING_BOUNDARIES"+R( if(flags[n]&(TYPE_S|TYPE_E|TYPE_I|TYPE_G)) return; @@ -1995,22 +1995,29 @@ string opencl_c_container() { return R( // ########################## begin of O float camera_cache[15]; // cache camera parameters in case the kernel draws more than one shape for(uint i=0u; i<15u; i++) camera_cache[i] = camera[i]; const float3 p = position(coordinates(n)); - const uint c = iron_color(255.0f*def_scale_u*ul); // coloring by velocity + const int c = iron_color(255.0f*def_scale_u*ul); // coloring by velocity draw_line(p-(0.5f/ul)*un, p+(0.5f/ul)*un, c, camera_cache, bitmap, zbuffer); } )+"#ifndef GRAPHICS_TEMPERATURE"+R( -)+R(kernel void graphics_streamline(const global uchar* flags, const global float* u, const global float* camera, global uint* bitmap, global int* zbuffer) { +)+R(kernel void graphics_streamline(const global uchar* flags, const global float* u, const global float* camera, global int* bitmap, global int* zbuffer) { )+"#else"+R( // GRAPHICS_TEMPERATURE -)+R(kernel void graphics_streamline(const global uchar* flags, const global float* u, const global float* camera, global uint* bitmap, global int* zbuffer, const global float* T) { +)+R(kernel void graphics_streamline(const global uchar* flags, const global float* u, const global float* camera, global int* bitmap, global int* zbuffer, const global float* T) { )+"#endif"+R( // GRAPHICS_TEMPERATURE const uint n = get_global_id(0); +)+"#ifndef D2Q9"+R( if(n>=(uint)def_N/cb(def_streamline_sparse)) return; const uint z = n/((def_Nx/def_streamline_sparse)*(def_Ny/def_streamline_sparse)); // disassemble 1D index to 3D coordinates const uint t = n%((def_Nx/def_streamline_sparse)*(def_Ny/def_streamline_sparse)); const uint y = t/(def_Nx/def_streamline_sparse); const uint x = t%(def_Nx/def_streamline_sparse); float3 p = (float)def_streamline_sparse*((float3)((float)x+0.5f, (float)y+0.5f, (float)z+0.5f))-0.5f*((float3)((float)def_Nx, (float)def_Ny, (float)def_Nz)); +)+"#else"+R( // D2Q9 + if(n>=(uint)def_N/sq(def_streamline_sparse)) return; + const uint y = n/(def_Nx/def_streamline_sparse); // disassemble 1D index to 3D coordinates + const uint x = n%(def_Nx/def_streamline_sparse); + float3 p = ((float3)((float)def_streamline_sparse*((float)x+0.5f), (float)def_streamline_sparse*((float)y+0.5f), 0.5f))-0.5f*((float3)((float)def_Nx, (float)def_Ny, (float)def_Nz)); +)+"#endif"+R( // D2Q9 float camera_cache[15]; // cache camera parameters in case the kernel draws more than one shape for(uint i=0u; i<15u; i++) camera_cache[i] = camera[i]; //draw_circle(p, 0.5f*def_streamline_sparse, 0xFFFFFF, camera_cache, bitmap, zbuffer); @@ -2028,16 +2035,16 @@ string opencl_c_container() { return R( // ########################## begin of O p1 += (dt/ul)*un; // integrate forward in time if(def_scale_u*ul<0.1f||p1.x<-0.5f*def_Nx||p1.x>0.5f*def_Nx||p1.y<-0.5f*def_Ny||p1.y>0.5f*def_Ny||p1.z<-0.5f*def_Nz||p1.z>0.5f*def_Nz) break; )+"#ifndef GRAPHICS_TEMPERATURE"+R( - const uint c = iron_color(255.0f*def_scale_u*ul); + const int c = iron_color(255.0f*def_scale_u*ul); )+"#else"+R( // GRAPHICS_TEMPERATURE - const uint c = iron_color(180.0f+250.0f*(T[n]-def_T_avg)); + const int c = iron_color(180.0f+250.0f*(T[n]-def_T_avg)); )+"#endif"+R( // GRAPHICS_TEMPERATURE draw_line(p0, p1, c, camera_cache, bitmap, zbuffer); } } } -)+R(kernel void graphics_q_field(const global uchar* flags, const global float* u, const global float* camera, global uint* bitmap, global int* zbuffer) { +)+R(kernel void graphics_q_field(const global uchar* flags, const global float* u, const global float* camera, global int* bitmap, global int* zbuffer) { const uint n = get_global_id(0); if(flags[n]&(TYPE_S|TYPE_E|TYPE_I|TYPE_G)) return; float3 un = load_u(n, u); // cache velocity @@ -2047,11 +2054,11 @@ string opencl_c_container() { return R( // ########################## begin of O float camera_cache[15]; // cache camera parameters in case the kernel draws more than one shape for(uint i=0u; i<15u; i++) camera_cache[i] = camera[i]; const float3 p = position(coordinates(n)); - const uint c = rainbow_color(255.0f*2.0f*ul*def_scale_u); // coloring by velocity + const int c = rainbow_color(255.0f*2.0f*ul*def_scale_u); // coloring by velocity draw_line(p-(0.5f/ul)*un, p+(0.5f/ul)*un, c, camera_cache, bitmap, zbuffer); } -)+R(kernel void graphics_q(const global uchar* flags, const global float* u, const global float* camera, global uint* bitmap, global int* zbuffer) { +)+R(kernel void graphics_q(const global uchar* flags, const global float* u, const global float* camera, global int* bitmap, global int* zbuffer) { const uint n = get_global_id(0); const uint3 xyz = coordinates(n); if(xyz.x==def_Nx-1u || xyz.y==def_Ny-1u || xyz.z==def_Nz-1u) return; @@ -2132,30 +2139,30 @@ string opencl_c_container() { return R( // ########################## begin of O const float3 p0 = triangles[3u*i ]; // triangle coordinates in [0,1] (local cell) const float3 p1 = triangles[3u*i+1u]; const float3 p2 = triangles[3u*i+2u]; - const float3 p = (p0+p1+p2)/3.0f+offset, normal=cross(p1-p0, p2-p0); - uint c0, c1, c2; + const float3 normal = cross(p1-p0, p2-p0); + int c0, c1, c2; { const float x1=p0.x, y1=p0.y, z1=p0.z, x0=1.0f-x1, y0=1.0f-y1, z0=1.0f-z1; // calculate interpolation factors const float3 ui = (x0*y0*z0)*uj[0]+(x1*y0*z0)*uj[1]+(x1*y0*z1)*uj[2]+(x0*y0*z1)*uj[3]+(x0*y1*z0)*uj[4]+(x1*y1*z0)*uj[5]+(x1*y1*z1)*uj[6]+(x0*y1*z1)*uj[7]; // perform trilinear interpolation - c0 = lighting(rainbow_color(255.0f*2.0f*length(ui)*def_scale_u), p, normal, camera_cache); // rainbow_color(255.0f*2.0f*length(ui)*def_scale_u); + c0 = lighting(rainbow_color(255.0f*2.0f*length(ui)*def_scale_u), p0+offset, normal, camera_cache); // rainbow_color(255.0f*2.0f*length(ui)*def_scale_u); } { const float x1=p1.x, y1=p1.y, z1=p1.z, x0=1.0f-x1, y0=1.0f-y1, z0=1.0f-z1; // calculate interpolation factors const float3 ui = (x0*y0*z0)*uj[0]+(x1*y0*z0)*uj[1]+(x1*y0*z1)*uj[2]+(x0*y0*z1)*uj[3]+(x0*y1*z0)*uj[4]+(x1*y1*z0)*uj[5]+(x1*y1*z1)*uj[6]+(x0*y1*z1)*uj[7]; // perform trilinear interpolation - c1 = lighting(rainbow_color(255.0f*2.0f*length(ui)*def_scale_u), p, normal, camera_cache); // rainbow_color(255.0f*2.0f*length(ui)*def_scale_u); + c1 = lighting(rainbow_color(255.0f*2.0f*length(ui)*def_scale_u), p1+offset, normal, camera_cache); // rainbow_color(255.0f*2.0f*length(ui)*def_scale_u); } { const float x1=p2.x, y1=p2.y, z1=p2.z, x0=1.0f-x1, y0=1.0f-y1, z0=1.0f-z1; // calculate interpolation factors const float3 ui = (x0*y0*z0)*uj[0]+(x1*y0*z0)*uj[1]+(x1*y0*z1)*uj[2]+(x0*y0*z1)*uj[3]+(x0*y1*z0)*uj[4]+(x1*y1*z0)*uj[5]+(x1*y1*z1)*uj[6]+(x0*y1*z1)*uj[7]; // perform trilinear interpolation - c2 = lighting(rainbow_color(255.0f*2.0f*length(ui)*def_scale_u), p, normal, camera_cache); // rainbow_color(255.0f*2.0f*length(ui)*def_scale_u); + c2 = lighting(rainbow_color(255.0f*2.0f*length(ui)*def_scale_u), p2+offset, normal, camera_cache); // rainbow_color(255.0f*2.0f*length(ui)*def_scale_u); } draw_triangle_interpolated(p0+offset, p1+offset, p2+offset, c0, c1, c2, camera_cache, bitmap, zbuffer); // draw triangle with interpolated colors } } )+"#ifdef SURFACE"+R( -)+R(kernel void graphics_rasterize_phi(const global float* phi, const global float* camera, global uint* bitmap, global int* zbuffer) { // marching cubes +)+R(kernel void graphics_rasterize_phi(const global float* phi, const global float* camera, global int* bitmap, global int* zbuffer) { // marching cubes const uint n = get_global_id(0); const uint3 xyz = coordinates(n); - if(xyz.x==def_Nx-1u || xyz.y==def_Ny-1u || xyz.z==def_Nz-1u) return; + if(xyz.x==def_Nx-1u||xyz.y==def_Ny-1u||xyz.z==def_Nz-1u) return; uint j[8]; const uint x0 = xyz.x; // cube stencil const uint xp = xyz.x+1u; @@ -2184,7 +2191,7 @@ string opencl_c_container() { return R( // ########################## begin of O const float3 p1 = triangles[3u*i+1u]+offset; const float3 p2 = triangles[3u*i+2u]+offset; const float3 p=(p0+p1+p2)/3.0f, normal=cross(p1-p0, p2-p0); - const uint c = lighting(55<<16|155<<8|255, p, normal, camera_cache); + const int c = lighting(55<<16|155<<8|255, p, normal, camera_cache); draw_triangle(p0, p1, p2, c, camera_cache, bitmap, zbuffer); //draw_line(p0, p1, c, camera_cache, bitmap, zbuffer); // wireframe rendering //draw_line(p0, p2, c, camera_cache, bitmap, zbuffer); @@ -2192,8 +2199,8 @@ string opencl_c_container() { return R( // ########################## begin of O } } -)+R(uint raytrace_phi_next_ray(const ray reflection, const ray transmission, const uint pixelcolor, const float reflectivity, const global float* phi, const global uchar* flags, const global uint* skybox) { - uint color_reflect=pixelcolor, color_transmit=pixelcolor; +)+R(int raytrace_phi_next_ray(const ray reflection, const ray transmission, const int pixelcolor, const float reflectivity, const global float* phi, const global uchar* flags, const global int* skybox) { + int color_reflect=pixelcolor, color_transmit=pixelcolor; ray reflection_next, transmission_next; float reflection_reflectivity, transmission_reflectivity; if(raytrace_phi(reflection, &reflection_next, &transmission_next, &reflection_reflectivity, phi, flags, skybox, def_Nx, def_Ny, def_Nz)) { @@ -2209,8 +2216,8 @@ string opencl_c_container() { return R( // ########################## begin of O return color_mix(color_reflect, color_transmit, reflectivity); } -)+R(uint raytrace_phi_next_ray_mirror(const ray reflection, const uint pixelcolor, const global float* phi, const global uchar* flags, const global uint* skybox) { - uint color_reflect = pixelcolor; +)+R(int raytrace_phi_next_ray_mirror(const ray reflection, const int pixelcolor, const global float* phi, const global uchar* flags, const global int* skybox) { + int color_reflect = pixelcolor; ray reflection_next; if(raytrace_phi_mirror(reflection, &reflection_next, phi, flags, skybox, def_Nx, def_Ny, def_Nz)) { color_reflect = skybox_color(reflection_next, skybox); @@ -2220,7 +2227,7 @@ string opencl_c_container() { return R( // ########################## begin of O return color_reflect; } -)+R(kernel void graphics_raytrace_phi(const global float* phi, const global uchar* flags, const global uint* skybox, const global float* camera, global uint* bitmap) { // marching cubes +)+R(kernel void graphics_raytrace_phi(const global float* phi, const global uchar* flags, const global int* skybox, const global float* camera, global int* bitmap) { // marching cubes const uint gid = get_global_id(0); // workgroup size alignment is critical const uint lid = get_local_id(0); // make workgropus not horizontal stripes of pixels, but 8x8 rectangular (close to square) tiles const uint lsi = get_local_size(0); // (50% performance boost due to more coalesced memory access) @@ -2232,7 +2239,7 @@ string opencl_c_container() { return R( // ########################## begin of O float camera_cache[15]; // cache parameters in case the kernel draws more than one shape for(uint i=0u; i<15u; i++) camera_cache[i] = camera[i]; ray camray = get_camray(x, y, camera_cache); - uint pixelcolor = 0u; + int pixelcolor = 0; const float distance = intersect_cuboid(camray, (float3)(0.0f, 0.0f, 0.0f), (float)def_Nx, (float)def_Ny, (float)def_Nz); camray.origin = camray.origin+fmax(distance, 0.0f)*camray.direction; ray reflection, transmission; // reflection and transmission diff --git a/src/lbm.cpp b/src/lbm.cpp index 2c0f9f7b..0800d5e6 100644 --- a/src/lbm.cpp +++ b/src/lbm.cpp @@ -218,10 +218,10 @@ void LBM::run(const ulong steps) { // initializes the LBM simulation (copies dat } Clock clock; for(ulong i=1ull; i<=steps; i++) { // run LBM in loop, runs infinitely long if steps = max_ulong -#if defined(CONSOLE_GRAPHICS)||defined(WINDOWS_GRAPHICS) +#if defined(INTERACTIVE_GRAPHICS)||defined(INTERACTIVE_GRAPHICS_ASCII) while(!key_P&&running) sleep(0.016); if(!running) break; -#endif // CONSOLE_GRAPHICS || WINDOWS_GRAPHICS +#endif // INTERACTIVE_GRAPHICS || INTERACTIVE_GRAPHICS_ASCII clock.start(); do_time_step(); // execute one LBM time step info.update(clock.stop()); @@ -563,26 +563,30 @@ void LBM::Graphics::default_settings() { } void LBM::Graphics::allocate(Device& device) { - bitmap = Memory(device, camera.width*camera.height); + bitmap = Memory(device, camera.width*camera.height); zbuffer = Memory(device, camera.width*camera.height, 1u, false); camera_parameters = Memory(device, 15u); kernel_clear = Kernel(device, bitmap.length(), "graphics_clear", bitmap, zbuffer); - set_zoom(0.5f*(float)fmax(fmax(lbm->get_Nx(), lbm->get_Ny()), lbm->get_Nz())); + camera.set_zoom(0.5f*(float)fmax(fmax(lbm->get_Nx(), lbm->get_Ny()), lbm->get_Nz())); default_settings(); - kernel_graphics_flags = Kernel(device, lbm->flags.length(), "graphics_flags", lbm->flags, camera_parameters, bitmap, zbuffer); - kernel_graphics_field = Kernel(device, lbm->flags.length(), "graphics_field", lbm->flags, lbm->u, camera_parameters, bitmap, zbuffer); - kernel_graphics_streamline = Kernel(device, lbm->flags.length()/(cb(GRAPHICS_STREAMLINE_SPARSE)), "graphics_streamline", lbm->flags, lbm->u, camera_parameters, bitmap, zbuffer); - kernel_graphics_q = Kernel(device, lbm->flags.length(), "graphics_q", lbm->flags, lbm->u, camera_parameters, bitmap, zbuffer); + kernel_graphics_flags = Kernel(device, lbm->get_N(), "graphics_flags", lbm->flags, camera_parameters, bitmap, zbuffer); + kernel_graphics_field = Kernel(device, lbm->get_N(), "graphics_field", lbm->flags, lbm->u, camera_parameters, bitmap, zbuffer); +#ifndef D2Q9 + kernel_graphics_streamline = Kernel(device, lbm->get_N()/(cb(GRAPHICS_STREAMLINE_SPARSE)), "graphics_streamline", lbm->flags, lbm->u, camera_parameters, bitmap, zbuffer); // 3D +#else // D2Q9 + kernel_graphics_streamline = Kernel(device, lbm->get_N()/(sq(GRAPHICS_STREAMLINE_SPARSE)), "graphics_streamline", lbm->flags, lbm->u, camera_parameters, bitmap, zbuffer); // 2D +#endif // D2Q9 + kernel_graphics_q = Kernel(device, lbm->get_N(), "graphics_q", lbm->flags, lbm->u, camera_parameters, bitmap, zbuffer); #ifdef FORCE_FIELD kernel_graphics_flags.add_parameters(lbm->F); #endif // FORCE_FIELD #ifdef SURFACE - skybox = Memory(device, skybox_image->width()*skybox_image->height(), 1u, (uint*)skybox_image->data()); - kernel_graphics_rasterize_phi = Kernel(device, lbm->phi.length(), "graphics_rasterize_phi", lbm->phi, camera_parameters, bitmap, zbuffer); + skybox = Memory(device, skybox_image->width()*skybox_image->height(), 1u, skybox_image->data()); + kernel_graphics_rasterize_phi = Kernel(device, lbm->get_N(), "graphics_rasterize_phi", lbm->phi, camera_parameters, bitmap, zbuffer); kernel_graphics_raytrace_phi = Kernel(device, bitmap.length(), "graphics_raytrace_phi", lbm->phi, lbm->flags, skybox, camera_parameters, bitmap); #endif // SURFACE @@ -600,11 +604,11 @@ bool LBM::Graphics::update_camera() { } return change; // return false if camera parameters remain unchanged } -void* LBM::Graphics::draw_frame() { +int* LBM::Graphics::draw_frame() { const bool camera_update = update_camera(); -#if defined(WINDOWS_GRAPHICS)||defined(CONSOLE_GRAPHICS) - if(!camera_update&&!camera.key_update&&lbm->get_t()==t_last_frame) return (void*)bitmap.data(); // don't render a new frame if the scene hasn't changed since last frame -#endif // WINDOWS_GRAPHICS or CONSOLE_GRAPHICS +#if defined(INTERACTIVE_GRAPHICS)||defined(INTERACTIVE_GRAPHICS_ASCII) + if(!camera_update&&!camera.key_update&&lbm->get_t()==t_last_frame) return bitmap.data(); // don't render a new frame if the scene hasn't changed since last frame +#endif // INTERACTIVE_GRAPHICS or INTERACTIVE_GRAPHICS_ASCII t_last_frame = lbm->get_t(); #ifndef UPDATE_FIELDS if(key_2||key_3||key_4) lbm->update_fields(); // only call update_fields() if the time step has changed since the last rendered frame @@ -623,11 +627,11 @@ void* LBM::Graphics::draw_frame() { if(key_4) kernel_graphics_q.run(); bitmap.read_from_device(); - return (void*)bitmap.data(); + return bitmap.data(); } string LBM::Graphics::device_defines() const { return "\n #define GRAPHICS" - "\n #define def_background_color " +to_string(GRAPHICS_BACKGROUND_COLOR)+"u" + "\n #define def_background_color " +to_string(GRAPHICS_BACKGROUND_COLOR)+"" "\n #define def_screen_width " +to_string(camera.width)+"u" "\n #define def_screen_height " +to_string(camera.height)+"u" "\n #define def_n " +to_string(1.333f)+"f" // refractive index of water @@ -665,7 +669,7 @@ void LBM::Graphics::set_camera_centered(const float rx, const float ry, const fl camera.rx = 0.5*pi+((double)rx*pi/180.0); camera.ry = pi-((double)ry*pi/180.0); camera.fov = clamp((float)fov, 1E-6f, 179.0f); - set_zoom(0.5f*(float)fmax(fmax(lbm->get_Nx(), lbm->get_Ny()), lbm->get_Nz())/zoom); + camera.set_zoom(0.5f*(float)fmax(fmax(lbm->get_Nx(), lbm->get_Ny()), lbm->get_Nz())/zoom); } void LBM::Graphics::set_camera_free(const float3& p, const float rx, const float ry, const float fov) { camera.free = true; @@ -676,15 +680,15 @@ void LBM::Graphics::set_camera_free(const float3& p, const float rx, const float camera.pos = p; } void LBM::Graphics::print_frame() { // preview current frame in console -#ifndef CONSOLE_GRAPHICS +#ifndef INTERACTIVE_GRAPHICS_ASCII info.allow_rendering = false; // temporarily disable interactive rendering draw_frame(); // make sure the frame is fully rendered - Image* image = new Image(camera.width, camera.height, (int*)bitmap.data()); + Image* image = new Image(camera.width, camera.height, bitmap.data()); println(); print_image(image); delete image; info.allow_rendering = true; -#endif // CONSOLE_GRAPHICS +#endif // INTERACTIVE_GRAPHICS_ASCII } void encode_image(Image* image, const string& filename, const string& extension, std::atomic_int* running_encoders) { if(extension==".png") write_png(filename, image); @@ -703,14 +707,14 @@ void LBM::Graphics::write_frame(const uint x1, const uint y1, const uint x2, con const uint xa=max(min(x1, x2), 0u), xb=min(max(x1, x2), camera.width ); // sort coordinates if necessary const uint ya=max(min(y1, y2), 0u), yb=min(max(y1, y2), camera.height); Image* image = new Image(xb-xa, yb-ya); // create local copy of frame buffer - for(uint y=0u; yheight(); y++) for(uint x=0u; xwidth(); x++) image->set_color(x, y, (int)bitmap[camera.width*(ya+y)+(xa+x)]); -#ifndef CONSOLE_GRAPHICS + for(uint y=0u; yheight(); y++) for(uint x=0u; xwidth(); x++) image->set_color(x, y, bitmap[camera.width*(ya+y)+(xa+x)]); +#ifndef INTERACTIVE_GRAPHICS_ASCII if(print_preview) { println(); print_image(image); print_info("Image \""+filename+"\" saved."); } -#endif // CONSOLE_GRAPHICS +#endif // INTERACTIVE_GRAPHICS_ASCII running_encoders++; thread encoder(encode_image, image, filename, extension, &running_encoders); // the main bottleneck in rendering images to the hard disk is .png encoding, so encode image in new thread encoder.detach(); // detatch thread so it can run concurrently diff --git a/src/lbm.hpp b/src/lbm.hpp index b2f726aa..a9818aae 100644 --- a/src/lbm.hpp +++ b/src/lbm.hpp @@ -191,7 +191,7 @@ class LBM { class Graphics { private: Kernel kernel_clear; // reset bitmap and zbuffer - Memory bitmap; // bitmap for rendering + Memory bitmap; // bitmap for rendering Memory zbuffer; // z-buffer for rendering Memory camera_parameters; // contains camera position, rotation, field of view etc. @@ -207,7 +207,7 @@ class LBM { #ifdef SURFACE const string path_skybox = get_exe_path()+"../skybox/skybox8k.png"; Image* skybox_image = nullptr; - Memory skybox; // skybox for free surface raytracing + Memory skybox; // skybox for free surface raytracing Kernel kernel_graphics_rasterize_phi; // rasterize free surface Kernel kernel_graphics_raytrace_phi; // raytrace free surface #endif // SURFACE @@ -246,7 +246,7 @@ class LBM { #endif // SURFACE void allocate(Device& device); // allocate memory for bitmap and zbuffer - void* draw_frame(); // main rendering function, calls rendering kernels + int* draw_frame(); // main rendering function, calls rendering kernels string device_defines() const; // returns preprocessor constants for embedding in OpenCL C code void set_camera_centered(const float rx=0.0f, const float ry=0.0f, const float fov=100.0f, const float zoom=1.0f); // set camera centered diff --git a/src/main.cpp b/src/main.cpp index 3108e661..b57c863f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6,23 +6,23 @@ void main_label(const double frametime) { if(info.allow_rendering) { info.print_update(); - const Color c = Color(255-red(GRAPHICS_BACKGROUND_COLOR), 255-green(GRAPHICS_BACKGROUND_COLOR), 255-blue(GRAPHICS_BACKGROUND_COLOR)); - const int ox=-36*FONT_WIDTH-2, oy=-11*FONT_HEIGHT-3; // character size 5x10 + const int c = color(255-red(GRAPHICS_BACKGROUND_COLOR), 255-green(GRAPHICS_BACKGROUND_COLOR), 255-blue(GRAPHICS_BACKGROUND_COLOR)); + const int ox=-36*FONT_WIDTH-1, oy=-11*FONT_HEIGHT-1; int i = 0; const float Re = info.lbm->get_Re_max(); const double pn=(double)info.lbm->get_N(), mt=(double)info.device_transfer; - draw_label(c, "Resolution " +alignr(25u, to_string(info.lbm->get_Nx())+"x"+to_string(info.lbm->get_Ny())+"x"+to_string(info.lbm->get_Nz())+" = "+to_string(info.lbm->get_N())), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - //draw_label(c, "Volume Force " +alignr(15u, info.lbm->get_fx())+","+alignr(15, info.lbm->get_fy())+", "+alignr(15, info.lbm->get_fz()), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, "Kin. Viscosity " +alignr(21u, to_string(info.lbm->get_nu(), 8u)), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, "Relaxation Time "+alignr(20u, to_string(info.lbm->get_tau(), 8u)), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, "Reynolds Number "+alignr(20u, "Re < "+string(Re>=100.0f ? to_string(to_uint(Re)) : to_string(Re, 6u))), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, "LBM Type " +alignr(27u, "D"+to_string(info.lbm->get_velocity_set()==9u?2:3)+"Q"+to_string(info.lbm->get_velocity_set())+" "+info.collision), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, "RAM Usage " +alignr(26u, "CPU "+to_string(info.cpu_mem_required)+" MB, GPU "+to_string(info.gpu_mem_required)+" MB"), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, (info.steps==max_ulong ? "Elapsed Time " : "Remaining Time ")+alignr(21u, print_time(info.time())), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, "Simulation Time "+alignr(20u, (units.si_t(1ull)==1.0f?to_string(info.lbm->get_t()):to_string(units.si_t(info.lbm->get_t()), 6u))+"s"), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, "MLUPs " +alignr(30u, alignr(5u, to_uint(pn*1E-6/info.dt_smooth))+" ("+alignr(5u, to_uint(pn*mt*1E-9/info.dt_smooth))+" GB/s)"), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, "Steps " +alignr(30u, alignr(10u, info.lbm->get_t())+" ("+alignr(5, to_uint(1.0/info.dt_smooth))+" Steps/s)"), camera.width+ox, camera.height+oy+i); i+=FONT_HEIGHT; - draw_label(c, "FPS " +alignr(32u, alignr(4u, to_uint(1.0/frametime))+" ("+alignr(5u, camera.fps_limit)+" fps max)"), camera.width+ox, camera.height+oy+i); + draw_label(camera.width+ox, camera.height+oy+i, "Resolution " +alignr(25u, to_string(info.lbm->get_Nx())+"x"+to_string(info.lbm->get_Ny())+"x"+to_string(info.lbm->get_Nz())+" = "+to_string(info.lbm->get_N())), c); i+=FONT_HEIGHT; + //draw_label(camera.width+ox, camera.height+oy+i, "Volume Force " +alignr(15u, info.lbm->get_fx())+","+alignr(15, info.lbm->get_fy())+", "+alignr(15, info.lbm->get_fz()), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, "Kin. Viscosity " +alignr(21u, to_string(info.lbm->get_nu(), 8u)), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, "Relaxation Time "+alignr(20u, to_string(info.lbm->get_tau(), 8u)), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, "Reynolds Number "+alignr(20u, "Re < "+string(Re>=100.0f ? to_string(to_uint(Re)) : to_string(Re, 6u))), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, "LBM Type " +alignr(27u, "D"+to_string(info.lbm->get_velocity_set()==9u?2:3)+"Q"+to_string(info.lbm->get_velocity_set())+" "+info.collision), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, "RAM Usage " +alignr(26u, "CPU "+to_string(info.cpu_mem_required)+" MB, GPU "+to_string(info.gpu_mem_required)+" MB"), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, (info.steps==max_ulong ? "Elapsed Time " : "Remaining Time ")+alignr(21u, print_time(info.time())), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, "Simulation Time "+alignr(20u, (units.si_t(1ull)==1.0f?to_string(info.lbm->get_t()):to_string(units.si_t(info.lbm->get_t()), 6u))+"s"), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, "MLUPs " +alignr(30u, alignr(5u, to_uint(pn*1E-6/info.dt_smooth))+" ("+alignr(5u, to_uint(pn*mt*1E-9/info.dt_smooth))+" GB/s)"), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, "Steps " +alignr(30u, alignr(10u, info.lbm->get_t())+" ("+alignr(5, to_uint(1.0/info.dt_smooth))+" Steps/s)"), c); i+=FONT_HEIGHT; + draw_label(camera.width+ox, camera.height+oy+i, "FPS " +alignr(32u, alignr(4u, to_uint(1.0/frametime))+" ("+alignr(5u, camera.fps_limit)+" fps max)"), c); } } diff --git a/src/setup.cpp b/src/setup.cpp index 609d5a69..57328b5e 100644 --- a/src/setup.cpp +++ b/src/setup.cpp @@ -27,7 +27,7 @@ /*void main_setup() { // 2D Taylor-Green vortices // ######################################################### define simulation box size, viscosity and volume force ############################################################################ - LBM lbm(1024u, 1024u, 1u, 0.01f); + LBM lbm(1024u, 1024u, 1u, 0.02f); // ############################################################################################################################################################################################# const uint N=lbm.get_N(), Nx=lbm.get_Nx(), Ny=lbm.get_Ny(), Nz=lbm.get_Nz(); for(uint n=0u, x=0u, y=0u, z=0u; n