diff options
author | Luc Ferron <lucferron@chromium.org> | 2018-06-18 08:28:50 -0400 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2018-06-18 16:40:40 +0000 |
commit | 17cee572471b56d7faab7b1be1e7e474d1568d57 (patch) | |
tree | 8d4d3b79bbcf9d351be5bf4046676595f1257a2e /samples | |
parent | 6ed167a99d8db05aff8657e9d0eab618e72bfe9d (diff) | |
download | angle-17cee572471b56d7faab7b1be1e7e474d1568d57.tar.gz |
SampleApps: Refactor to use cli args the same way
Bug: angleproject:2669
Change-Id: Ica5b49e63e8af69595cdde3737b0aa1808d7d841
Reviewed-on: https://chromium-review.googlesource.com/1104377
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Diffstat (limited to 'samples')
22 files changed, 94 insertions, 156 deletions
diff --git a/samples/gles1/FlatShading.cpp b/samples/gles1/FlatShading.cpp index 41a038243f..3d0bb2ab77 100644 --- a/samples/gles1/FlatShading.cpp +++ b/samples/gles1/FlatShading.cpp @@ -23,8 +23,8 @@ class FlatShadingSample : public SampleApplication { public: - FlatShadingSample(EGLint displayType) - : SampleApplication("FlatShadingSample", 1280, 720, 1, 0, displayType) + FlatShadingSample(int argc, char **argv) + : SampleApplication("FlatShadingSample", argc, argv, 1, 0) { } @@ -102,13 +102,6 @@ class FlatShadingSample : public SampleApplication int main(int argc, char **argv) { - EGLint displayType = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; - - if (argc > 1) - { - displayType = GetDisplayTypeFromArg(argv[1]); - } - - FlatShadingSample app(displayType); + FlatShadingSample app(argc, argv); return app.run(); } diff --git a/samples/gles1/HelloTriangle.cpp b/samples/gles1/HelloTriangle.cpp index 50b04976a6..554b50ad5b 100644 --- a/samples/gles1/HelloTriangle.cpp +++ b/samples/gles1/HelloTriangle.cpp @@ -21,8 +21,8 @@ class GLES1HelloTriangleSample : public SampleApplication { public: - GLES1HelloTriangleSample(EGLint displayType) - : SampleApplication("GLES1HelloTriangle", 1280, 720, 1, 0, displayType) + GLES1HelloTriangleSample(int argc, char **argv) + : SampleApplication("GLES1HelloTriangle", argc, argv, 1, 0) { } @@ -55,13 +55,6 @@ class GLES1HelloTriangleSample : public SampleApplication int main(int argc, char **argv) { - EGLint displayType = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; - - if (argc > 1) - { - displayType = GetDisplayTypeFromArg(argv[1]); - } - - GLES1HelloTriangleSample app(displayType); + GLES1HelloTriangleSample app(argc, argv); return app.run(); } diff --git a/samples/gles1/SimpleLighting.cpp b/samples/gles1/SimpleLighting.cpp index a97e8ca139..78d977abf0 100644 --- a/samples/gles1/SimpleLighting.cpp +++ b/samples/gles1/SimpleLighting.cpp @@ -23,8 +23,8 @@ class SimpleLightingSample : public SampleApplication { public: - SimpleLightingSample(EGLint displayType) - : SampleApplication("SimpleLightingSample", 1280, 720, 1, 0, displayType) + SimpleLightingSample(int argc, char **argv) + : SampleApplication("SimpleLightingSample", argc, argv, 1, 0) { } @@ -112,13 +112,6 @@ class SimpleLightingSample : public SampleApplication int main(int argc, char **argv) { - EGLint displayType = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; - - if (argc > 1) - { - displayType = GetDisplayTypeFromArg(argv[1]); - } - - SimpleLightingSample app(displayType); + SimpleLightingSample app(argc, argv); return app.run(); } diff --git a/samples/gles1/SimpleTexture2D.cpp b/samples/gles1/SimpleTexture2D.cpp index 6eb2469da4..d0e46733b7 100644 --- a/samples/gles1/SimpleTexture2D.cpp +++ b/samples/gles1/SimpleTexture2D.cpp @@ -22,8 +22,8 @@ class GLES1SimpleTexture2DSample : public SampleApplication { public: - GLES1SimpleTexture2DSample(EGLint displayType) - : SampleApplication("GLES1SimpleTexture2D", 1280, 720, 1, 0, displayType) + GLES1SimpleTexture2DSample(int argc, char **argv) + : SampleApplication("GLES1SimpleTexture2D", argc, argv, 1, 0) { } @@ -82,13 +82,6 @@ class GLES1SimpleTexture2DSample : public SampleApplication int main(int argc, char **argv) { - EGLint displayType = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; - - if (argc > 1) - { - displayType = GetDisplayTypeFromArg(argv[1]); - } - - GLES1SimpleTexture2DSample app(displayType); + GLES1SimpleTexture2DSample app(argc, argv); return app.run(); } diff --git a/samples/hello_triangle/HelloTriangle.cpp b/samples/hello_triangle/HelloTriangle.cpp index a2b6d65134..1c45417baf 100644 --- a/samples/hello_triangle/HelloTriangle.cpp +++ b/samples/hello_triangle/HelloTriangle.cpp @@ -19,8 +19,8 @@ class HelloTriangleSample : public SampleApplication { public: - HelloTriangleSample(EGLint displayType) - : SampleApplication("HelloTriangle", 1280, 720, 2, 0, displayType) + HelloTriangleSample(int argc, char **argv) + : SampleApplication("HelloTriangle", argc, argv, 2, 0) { } @@ -87,13 +87,6 @@ class HelloTriangleSample : public SampleApplication int main(int argc, char **argv) { - EGLint displayType = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; - - if (argc > 1) - { - displayType = GetDisplayTypeFromArg(argv[1]); - } - - HelloTriangleSample app(displayType); + HelloTriangleSample app(argc, argv); return app.run(); } diff --git a/samples/mip_map_2d/MipMap2D.cpp b/samples/mip_map_2d/MipMap2D.cpp index 167d1ea691..1810a2ddd6 100644 --- a/samples/mip_map_2d/MipMap2D.cpp +++ b/samples/mip_map_2d/MipMap2D.cpp @@ -20,10 +20,7 @@ class MipMap2DSample : public SampleApplication { public: - MipMap2DSample() - : SampleApplication("MipMap2D", 1280, 720) - { - } + MipMap2DSample(int argc, char **argv) : SampleApplication("MipMap2D", argc, argv) {} virtual bool initialize() { @@ -160,6 +157,6 @@ class MipMap2DSample : public SampleApplication int main(int argc, char **argv) { - MipMap2DSample app; + MipMap2DSample app(argc, argv); return app.run(); } diff --git a/samples/multi_texture/MultiTexture.cpp b/samples/multi_texture/MultiTexture.cpp index c074bff8b7..31c13a368f 100644 --- a/samples/multi_texture/MultiTexture.cpp +++ b/samples/multi_texture/MultiTexture.cpp @@ -22,10 +22,7 @@ class MultiTextureSample : public SampleApplication { public: - MultiTextureSample() - : SampleApplication("MultiTexture", 1280, 720) - { - } + MultiTextureSample(int argc, char **argv) : SampleApplication("MultiTexture", argc, argv) {} GLuint loadTexture(const std::string &path) { @@ -171,6 +168,6 @@ class MultiTextureSample : public SampleApplication int main(int argc, char **argv) { - MultiTextureSample app; + MultiTextureSample app(argc, argv); return app.run(); } diff --git a/samples/multi_window/MultiWindow.cpp b/samples/multi_window/MultiWindow.cpp index e4f616cca0..c0046a690f 100644 --- a/samples/multi_window/MultiWindow.cpp +++ b/samples/multi_window/MultiWindow.cpp @@ -19,8 +19,8 @@ using namespace angle; class MultiWindowSample : public SampleApplication { public: - MultiWindowSample() - : SampleApplication("MultiWindow", 256, 256) + MultiWindowSample(int argc, char **argv) + : SampleApplication("MultiWindow", argc, argv, 2, 0, 256, 256) { } @@ -193,6 +193,6 @@ class MultiWindowSample : public SampleApplication int main(int argc, char **argv) { - MultiWindowSample app; + MultiWindowSample app(argc, argv); return app.run(); } diff --git a/samples/multiple_draw_buffers/MultipleDrawBuffers.cpp b/samples/multiple_draw_buffers/MultipleDrawBuffers.cpp index a31e46622c..5948e08c5c 100644 --- a/samples/multiple_draw_buffers/MultipleDrawBuffers.cpp +++ b/samples/multiple_draw_buffers/MultipleDrawBuffers.cpp @@ -24,8 +24,8 @@ class MultipleDrawBuffersSample : public SampleApplication { public: - MultipleDrawBuffersSample() - : SampleApplication("MultipleDrawBuffers", 1280, 720) + MultipleDrawBuffersSample(int argc, char **argv) + : SampleApplication("MultipleDrawBuffers", argc, argv) { } @@ -221,6 +221,6 @@ class MultipleDrawBuffersSample : public SampleApplication int main(int argc, char **argv) { - MultipleDrawBuffersSample app; + MultipleDrawBuffersSample app(argc, argv); return app.run(); } diff --git a/samples/multiview/Multiview.cpp b/samples/multiview/Multiview.cpp index bc7354d06c..da58ed015a 100644 --- a/samples/multiview/Multiview.cpp +++ b/samples/multiview/Multiview.cpp @@ -42,8 +42,8 @@ void FillTranslationMatrix(float xOffset, float yOffset, float zOffset, float *m class MultiviewSample : public SampleApplication { public: - MultiviewSample() - : SampleApplication("Multiview", 1280, 720, 3, 0), + MultiviewSample(int argc, char **argv) + : SampleApplication("Multiview", argc, argv, 3, 0), mMultiviewProgram(0), mMultiviewPersperiveUniformLoc(-1), mMultiviewLeftEyeCameraUniformLoc(-1), @@ -377,6 +377,6 @@ class MultiviewSample : public SampleApplication int main(int argc, char **argv) { - MultiviewSample app; + MultiviewSample app(argc, argv); return app.run(); } diff --git a/samples/particle_system/ParticleSystem.cpp b/samples/particle_system/ParticleSystem.cpp index 80b6c421a4..506f42771a 100644 --- a/samples/particle_system/ParticleSystem.cpp +++ b/samples/particle_system/ParticleSystem.cpp @@ -29,10 +29,7 @@ using namespace angle; class ParticleSystemSample : public SampleApplication { public: - ParticleSystemSample() - : SampleApplication("ParticleSystem", 1280, 720) - { - } + ParticleSystemSample(int argc, char **argv) : SampleApplication("ParticleSystem", argc, argv) {} bool initialize() override { @@ -224,6 +221,6 @@ class ParticleSystemSample : public SampleApplication int main(int argc, char **argv) { - ParticleSystemSample app; + ParticleSystemSample app(argc, argv); return app.run(); } diff --git a/samples/post_sub_buffer/PostSubBuffer.cpp b/samples/post_sub_buffer/PostSubBuffer.cpp index 1ecd96d6e5..f50a7ca85d 100644 --- a/samples/post_sub_buffer/PostSubBuffer.cpp +++ b/samples/post_sub_buffer/PostSubBuffer.cpp @@ -25,10 +25,7 @@ class PostSubBufferSample : public SampleApplication { public: - PostSubBufferSample() - : SampleApplication("PostSubBuffer", 1280, 720) - { - } + PostSubBufferSample(int argc, char **argv) : SampleApplication("PostSubBuffer", argc, argv) {} virtual bool initialize() { @@ -169,6 +166,6 @@ class PostSubBufferSample : public SampleApplication int main(int argc, char **argv) { - PostSubBufferSample app; + PostSubBufferSample app(argc, argv); return app.run(); } diff --git a/samples/sample_util/SampleApplication.cpp b/samples/sample_util/SampleApplication.cpp index bbf2cdd581..1ef476b94c 100644 --- a/samples/sample_util/SampleApplication.cpp +++ b/samples/sample_util/SampleApplication.cpp @@ -10,27 +10,53 @@ #include "angle_gl.h" -#include <iostream> #include <string.h> +#include <iostream> +#include <utility> namespace { +const char *kUseAngleArg = "--use-angle="; + using DisplayTypeInfo = std::pair<const char *, EGLint>; const DisplayTypeInfo kDisplayTypes[] = { {"d3d9", EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE}, {"d3d11", EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE}, {"gl", EGL_PLATFORM_ANGLE_TYPE_OPENGL_ANGLE}, {"gles", EGL_PLATFORM_ANGLE_TYPE_OPENGLES_ANGLE}, {"null", EGL_PLATFORM_ANGLE_TYPE_NULL_ANGLE}, {"vulkan", EGL_PLATFORM_ANGLE_TYPE_VULKAN_ANGLE}}; + +EGLint GetDisplayTypeFromArg(const char *displayTypeArg) +{ + for (const auto &displayTypeInfo : kDisplayTypes) + { + if (strcmp(displayTypeInfo.first, displayTypeArg) == 0) + { + std::cout << "Using ANGLE back-end API: " << displayTypeInfo.first << std::endl; + return displayTypeInfo.second; + } + } + + std::cout << "Unknown ANGLE back-end API: " << displayTypeArg << std::endl; + return EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; +} } // anonymous namespace -SampleApplication::SampleApplication(const std::string &name, - size_t width, - size_t height, +SampleApplication::SampleApplication(std::string name, + int argc, + char **argv, EGLint glesMajorVersion, EGLint glesMinorVersion, - EGLint requestedRenderer) - : mName(name), mWidth(width), mHeight(height), mRunning(false) + size_t width, + size_t height) + : mName(std::move(name)), mWidth(width), mHeight(height), mRunning(false) { + EGLint requestedRenderer = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; + + if (argc > 1 && strncmp(argv[1], kUseAngleArg, strlen(kUseAngleArg)) == 0) + { + requestedRenderer = GetDisplayTypeFromArg(argv[1] + strlen(kUseAngleArg)); + } + mEGLWindow.reset(new EGLWindow(glesMajorVersion, glesMinorVersion, EGLPlatformParameters(requestedRenderer))); mTimer.reset(CreateTimer()); @@ -170,18 +196,4 @@ void SampleApplication::exit() bool SampleApplication::popEvent(Event *event) { return mOSWindow->popEvent(event); -} - -EGLint GetDisplayTypeFromArg(const char *displayTypeArg) -{ - for (const auto &displayTypeInfo : kDisplayTypes) - { - if (strcmp(displayTypeInfo.first, displayTypeArg) == 0) - { - return displayTypeInfo.second; - } - } - - std::cout << "Unknown ANGLE back-end API: " << displayTypeArg << std::endl; - return EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; -} +}
\ No newline at end of file diff --git a/samples/sample_util/SampleApplication.h b/samples/sample_util/SampleApplication.h index c98ce5d39f..1495ecd190 100644 --- a/samples/sample_util/SampleApplication.h +++ b/samples/sample_util/SampleApplication.h @@ -23,12 +23,13 @@ class EGLWindow; class SampleApplication { public: - SampleApplication(const std::string &name, - size_t width, - size_t height, - EGLint glesMajorVersion = 2, - EGLint glesMinorVersion = 0, - EGLint requestedRenderer = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE); + SampleApplication(std::string name, + int argc, + char **argv, + EGLint glesMajorVersion = 2, + EGLint glesMinorVersion = 0, + size_t width = 1280, + size_t height = 720); virtual ~SampleApplication(); virtual bool initialize(); @@ -61,6 +62,4 @@ class SampleApplication std::unique_ptr<OSWindow> mOSWindow; }; -EGLint GetDisplayTypeFromArg(const char *displayTypeArg); - #endif // SAMPLE_UTIL_SAMPLE_APPLICATION_H diff --git a/samples/simple_instancing/SimpleInstancing.cpp b/samples/simple_instancing/SimpleInstancing.cpp index 73b8993064..e34206da26 100644 --- a/samples/simple_instancing/SimpleInstancing.cpp +++ b/samples/simple_instancing/SimpleInstancing.cpp @@ -28,8 +28,8 @@ using namespace angle; class SimpleInstancingSample : public SampleApplication { public: - SimpleInstancingSample() - : SampleApplication("SimpleInstancing", 1280, 720) + SimpleInstancingSample(int argc, char **argv) + : SampleApplication("SimpleInstancing", argc, argv) { } @@ -197,6 +197,6 @@ class SimpleInstancingSample : public SampleApplication int main(int argc, char **argv) { - SimpleInstancingSample app; + SimpleInstancingSample app(argc, argv); return app.run(); } diff --git a/samples/simple_texture_2d/SimpleTexture2D.cpp b/samples/simple_texture_2d/SimpleTexture2D.cpp index a66cb6f379..9df0ad4470 100644 --- a/samples/simple_texture_2d/SimpleTexture2D.cpp +++ b/samples/simple_texture_2d/SimpleTexture2D.cpp @@ -20,8 +20,7 @@ class SimpleTexture2DSample : public SampleApplication { public: - SimpleTexture2DSample(EGLint displayType) - : SampleApplication("SimpleTexture2D", 1280, 720, 2, 0, displayType) + SimpleTexture2DSample(int argc, char **argv) : SampleApplication("SimpleTexture2D", argc, argv) { } @@ -132,13 +131,6 @@ class SimpleTexture2DSample : public SampleApplication int main(int argc, char **argv) { - EGLint displayType = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; - - if (argc > 1) - { - displayType = GetDisplayTypeFromArg(argv[1]); - } - - SimpleTexture2DSample app(displayType); + SimpleTexture2DSample app(argc, argv); return app.run(); } diff --git a/samples/simple_texture_cubemap/SimpleTextureCubemap.cpp b/samples/simple_texture_cubemap/SimpleTextureCubemap.cpp index 055998039f..bf6b8b7dbc 100644 --- a/samples/simple_texture_cubemap/SimpleTextureCubemap.cpp +++ b/samples/simple_texture_cubemap/SimpleTextureCubemap.cpp @@ -21,8 +21,8 @@ class SimpleTextureCubemapSample : public SampleApplication { public: - SimpleTextureCubemapSample(EGLint displayType) - : SampleApplication("SimpleTextureCubemap", 1280, 720, 2, 0, displayType) + SimpleTextureCubemapSample(int argc, char **argv) + : SampleApplication("SimpleTextureCubemap", argc, argv) { } @@ -129,13 +129,6 @@ class SimpleTextureCubemapSample : public SampleApplication int main(int argc, char **argv) { - EGLint displayType = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; - - if (argc > 1) - { - displayType = GetDisplayTypeFromArg(argv[1]); - } - - SimpleTextureCubemapSample app(displayType); + SimpleTextureCubemapSample app(argc, argv); return app.run(); } diff --git a/samples/simple_vertex_shader/SimpleVertexShader.cpp b/samples/simple_vertex_shader/SimpleVertexShader.cpp index 48d26de4f8..da8552f46e 100644 --- a/samples/simple_vertex_shader/SimpleVertexShader.cpp +++ b/samples/simple_vertex_shader/SimpleVertexShader.cpp @@ -25,8 +25,8 @@ class SimpleVertexShaderSample : public SampleApplication { public: - SimpleVertexShaderSample(EGLint displayType) - : SampleApplication("SimpleVertexShader", 1280, 720, 2, 0, displayType) + SimpleVertexShaderSample(int argc, char **argv) + : SampleApplication("SimpleVertexShader", argc, argv) { } @@ -144,13 +144,6 @@ class SimpleVertexShaderSample : public SampleApplication int main(int argc, char **argv) { - EGLint displayType = EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE; - - if (argc > 1) - { - displayType = GetDisplayTypeFromArg(argv[1]); - } - - SimpleVertexShaderSample app(displayType); + SimpleVertexShaderSample app(argc, argv); return app.run(); } diff --git a/samples/stencil_operations/StencilOperations.cpp b/samples/stencil_operations/StencilOperations.cpp index 5c4dc66f29..2e1575bd54 100644 --- a/samples/stencil_operations/StencilOperations.cpp +++ b/samples/stencil_operations/StencilOperations.cpp @@ -19,8 +19,8 @@ class StencilOperationsSample : public SampleApplication { public: - StencilOperationsSample() - : SampleApplication("StencilOperations", 1280, 720) + StencilOperationsSample(int argc, char **argv) + : SampleApplication("StencilOperations", argc, argv) { } @@ -233,6 +233,6 @@ class StencilOperationsSample : public SampleApplication int main(int argc, char **argv) { - StencilOperationsSample app; + StencilOperationsSample app(argc, argv); return app.run(); } diff --git a/samples/tex_redef_microbench/TexRedefMicroBench.cpp b/samples/tex_redef_microbench/TexRedefMicroBench.cpp index 9e51f42b23..bda9a75594 100644 --- a/samples/tex_redef_microbench/TexRedefMicroBench.cpp +++ b/samples/tex_redef_microbench/TexRedefMicroBench.cpp @@ -46,8 +46,8 @@ class TexRedefBenchSample : public SampleApplication { public: - TexRedefBenchSample() - : SampleApplication("Microbench", 1280, 1280), + TexRedefBenchSample(int argc, char **argv) + : SampleApplication("Microbench", argc, argv, 2, 0, 1280, 1280), mPixelsResize(nullptr), mPixelsNewTex(nullptr), mTimeFrame(false), @@ -272,6 +272,6 @@ class TexRedefBenchSample : public SampleApplication int main(int argc, char **argv) { - TexRedefBenchSample app; + TexRedefBenchSample app(argc, argv); return app.run(); } diff --git a/samples/texture_wrap/TextureWrap.cpp b/samples/texture_wrap/TextureWrap.cpp index e52ca4858f..8608ac4363 100644 --- a/samples/texture_wrap/TextureWrap.cpp +++ b/samples/texture_wrap/TextureWrap.cpp @@ -20,10 +20,7 @@ class TextureWrapSample : public SampleApplication { public: - TextureWrapSample() - : SampleApplication("TextureWrap", 1280, 720) - { - } + TextureWrapSample(int argc, char **argv) : SampleApplication("TextureWrap", argc, argv) {} virtual bool initialize() { @@ -151,6 +148,6 @@ private: int main(int argc, char **argv) { - TextureWrapSample app; + TextureWrapSample app(argc, argv); return app.run(); } diff --git a/samples/tri_fan_microbench/TriFanMicroBench.cpp b/samples/tri_fan_microbench/TriFanMicroBench.cpp index 14a65eb14a..2c3b42f6a3 100644 --- a/samples/tri_fan_microbench/TriFanMicroBench.cpp +++ b/samples/tri_fan_microbench/TriFanMicroBench.cpp @@ -27,9 +27,8 @@ class TriangleFanBenchSample : public SampleApplication { public: - TriangleFanBenchSample() - : SampleApplication("Microbench", 1280, 1280), - mFrameCount(0) + TriangleFanBenchSample(int argc, char **argv) + : SampleApplication("Microbench", argc, argv, 2, 0, 1280, 1280), mFrameCount(0) { } @@ -234,6 +233,6 @@ class TriangleFanBenchSample : public SampleApplication int main(int argc, char **argv) { - TriangleFanBenchSample app; + TriangleFanBenchSample app(argc, argv); return app.run(); } |