Ion
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
shaderhandler.h
Go to the documentation of this file.
1 
18 #ifndef ION_REMOTE_SHADERHANDLER_H_
19 #define ION_REMOTE_SHADERHANDLER_H_
20 
21 #include "ion/remote/httpserver.h"
22 
23 #include "ion/gfx/renderer.h"
25 
26 namespace ion {
27 namespace remote {
28 
56 class ION_API ShaderHandler : public HttpServer::RequestHandler {
57  public:
60  ShaderHandler(const gfxutils::ShaderManagerPtr& shader_manager,
61  const gfx::RendererPtr& renderer);
62  ~ShaderHandler() override;
63 
65  const gfxutils::ShaderManagerPtr& GetShaderManager() const { return sm_; }
66 
67  const std::string HandleRequest(const std::string& path,
68  const HttpServer::QueryMap& args,
69  std::string* content_type) override;
70 
71  private:
74 };
75 
76 } // namespace remote
77 } // namespace ion
78 
79 #endif // ION_REMOTE_SHADERHANDLER_H_
ShaderHandler serves files related to shaders, their dependencies, and the shader editor...
Definition: shaderhandler.h:56
const gfxutils::ShaderManagerPtr & GetShaderManager() const
Gets the ShaderManager associated with this.
Definition: shaderhandler.h:65
const RendererPtr & renderer_
Renderer used to render images.
std::map< std::string, std::string > QueryMap
Definition: httpserver.h:35
RequestHandlers handle requests for a file or path.
Definition: httpserver.h:68
A SharedPtr is a smart shared pointer to an instance of some class that implements reference counting...
Definition: sharedptr.h:60