Go to the documentation of this file.
17 #ifndef GZ_RENDERING_RENDERPASSSYSTEM_HH_
18 #define GZ_RENDERING_RENDERPASSSYSTEM_HH_
25 #include <gz/common/SuppressWarning.hh>
27 #include "gz/rendering/config.hh"
28 #include "gz/rendering/Export.hh"
36 inline namespace IGNITION_RENDERING_VERSION_NAMESPACE {
39 class RenderPassSystemPrivate;
68 return this->CreateImpl(
typeid(T).name());
74 public:
static void Register(
const std::string &_type,
95 #define IGN_RENDERING_REGISTER_RENDER_PASS(classname, interface) \
96 class classname##Factory : public gz::rendering::RenderPassFactory \
98 public: classname##Factory() \
100 gz::rendering::RenderPassSystem::Register( \
101 typeid(interface).name(), this); \
103 public: RenderPass *New() const override \
105 return new classname(); \
108 static classname##Factory global_##classname##Factory;
#define IGN_COMMON_WARN_IGNORE__DLL_INTERFACE_MISSING
RenderPassSystem()
Constructor.
static void Register(const std::string &_type, RenderPassFactory *_factory)
Register a render pass factory to the system.
A factory interface for creating render passes.
Definition: gz/rendering/RenderPassSystem.hh:45
virtual RenderPass * New() const =0
Instantiate new render pass.
RenderPassPtr Create()
Templated function for creating render passes.
Definition: gz/rendering/RenderPassSystem.hh:66
A render pass can be added to a camera to affect how the scene is rendered. It can be used to add pos...
Definition: gz/rendering/RenderPass.hh:34
A class for creating and managing render passes.
Definition: gz/rendering/RenderPassSystem.hh:56
virtual ~RenderPassSystem()
Destructor.
#define IGN_COMMON_WARN_RESUME__DLL_INTERFACE_MISSING