Skip to content

Commit

Permalink
Add defaultGraphicsAPI utility function
Browse files Browse the repository at this point in the history
Signed-off-by: Ian Chen <ichen@openrobotics.org>
  • Loading branch information
iche033 committed Oct 31, 2023
1 parent 5e23aaf commit 522e36c
Show file tree
Hide file tree
Showing 24 changed files with 41 additions and 111 deletions.
6 changes: 1 addition & 5 deletions examples/actor_animation/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -188,11 +188,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/boundingbox_camera/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -272,11 +272,7 @@ int main(int _argc, char** _argv)
}
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/camera_tracking/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -127,11 +127,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/custom_scene_viewer/ManualSceneDemo.cc
Original file line number Diff line number Diff line change
Expand Up @@ -192,11 +192,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/custom_shaders_uniforms/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -167,11 +167,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/depth_camera/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -154,11 +154,7 @@ int main(int _argc, char** _argv)
engineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/heightmap/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -324,11 +324,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2 && buildDemScene != 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/lidar_visual/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -272,11 +272,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/mesh_viewer/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -142,11 +142,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/mouse_picking/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -135,11 +135,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/ogre2_demo/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -317,11 +317,7 @@ int main(int _argc, char** _argv)
std::vector<std::string> engineNames;
std::vector<CameraPtr> cameras;

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/particles_demo/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -168,11 +168,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/projector/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -180,11 +180,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/render_pass/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -198,11 +198,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/segmentation_camera/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -150,11 +150,7 @@ int main(int _argc, char** _argv)
engineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/simple_demo/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -218,11 +218,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/thermal_camera/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -138,11 +138,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/transform_control/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -121,11 +121,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/view_control/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -167,11 +167,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/visualization_demo/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -248,11 +248,7 @@ int main(int _argc, char** _argv)
engine = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/waves/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -164,11 +164,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
6 changes: 1 addition & 5 deletions examples/wide_angle_camera/Main.cc
Original file line number Diff line number Diff line change
Expand Up @@ -169,11 +169,7 @@ int main(int _argc, char** _argv)
ogreEngineName = _argv[1];
}

#ifdef __APPLE__
GraphicsAPI graphicsApi = GraphicsAPI::METAL;
#else
GraphicsAPI graphicsApi = GraphicsAPI::OPENGL;
#endif
GraphicsAPI graphicsApi = defaultGraphicsAPI();
if (_argc > 2)
{
graphicsApi = GraphicsAPIUtils::Set(std::string(_argv[2]));
Expand Down
7 changes: 7 additions & 0 deletions include/gz/rendering/Utils.hh
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
#include "gz/rendering/Camera.hh"
#include "gz/rendering/config.hh"
#include "gz/rendering/Export.hh"
#include "gz/rendering/GraphicsAPI.hh"
#include "gz/rendering/RayQuery.hh"
#include "gz/rendering/Image.hh"

Expand Down Expand Up @@ -120,6 +121,12 @@ namespace gz
/// \return Image in bayer format
GZ_RENDERING_VISIBLE
Image convertRGBToBayer(const Image &_image, PixelFormat _bayerFormat);

/// \brief Convenience function to get the default graphics API based on
/// current platform
/// \return Graphics API, i.e. METAL, OPENGL, VULKAN
GZ_RENDERING_VISIBLE
GraphicsAPI defaultGraphicsAPI();
}
}
}
Expand Down
13 changes: 12 additions & 1 deletion src/Utils.cc
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,9 @@
#include "gz/math/Vector3.hh"

#include "gz/rendering/Camera.hh"
#include "gz/rendering/RayQuery.hh"
#include "gz/rendering/GraphicsAPI.hh"
#include "gz/rendering/PixelFormat.hh"
#include "gz/rendering/RayQuery.hh"
#include "gz/rendering/Utils.hh"


Expand Down Expand Up @@ -393,6 +394,16 @@ Image convertRGBToBayer(const Image &_image, PixelFormat _bayerFormat)
return destImage;
}

/////////////////////////////////////////////////
GraphicsAPI defaultGraphicsAPI()

Check warning on line 398 in src/Utils.cc

View check run for this annotation

Codecov / codecov/patch

src/Utils.cc#L398

Added line #L398 was not covered by tests
{
#ifdef __APPLE__
return GraphicsAPI::METAL;
#else
return GraphicsAPI::OPENGL;

Check warning on line 403 in src/Utils.cc

View check run for this annotation

Codecov / codecov/patch

src/Utils.cc#L403

Added line #L403 was not covered by tests
#endif
}

}
}
}

0 comments on commit 522e36c

Please sign in to comment.