BALL 1.5.0
raytracingRenderer.h
Go to the documentation of this file.
1// -*- Mode: C++; tab-width: 2; -*-
2// vi: set ts=2:
3//
4
5#ifndef BALL_VIEW_RENDERING_RENDERERS_RAYTRACINGRENDERER_H
6#define BALL_VIEW_RENDERING_RENDERERS_RAYTRACINGRENDERER_H
7
8#ifndef BALL_VIEW_RENDERING_RENDERERS_RENDERER_H
10#endif
11
12#ifndef BALL_VIEW_KERNEL_STAGE_H
14#endif
15
16#ifndef BALL_VIEW_RENDERING_RENDERERS_BUFFEREDRENDERER_H
18#endif
19
20#include <vector>
21
22namespace BALL
23{
24 namespace VIEW
25 {
26 class Scene;
27
33 : public BufferedRenderer
34 {
35 public:
36
37 /*
38 * \link BufferedRenderer \endlink public methods
39 */
40 virtual bool supports(const PixelFormat &format) const;
41
44 const Resolution &min, const Resolution &max,
45 const PixelFormat &format) const;
46
47 /*
48 * Get description of the renderer int textual form
49 */
50 virtual String getRenderer() = 0;
51
52 virtual void updateMaterialForRepresentation(Representation const* rep) = 0;
53
64 virtual std::vector<float> intersectRaysWithGeometry(const std::vector<Vector3>& origins,
65 const std::vector<Vector3>& directions);
66
68 protected:
69
70 /* BufferedRender protected methods */
71 virtual bool supports(const FrameBufferFormat &format) const;
72 };
73
74 } // namespace VIEW
75
76} // namespace BALL
77
78#endif // BALL_VIEW_RENDERING_RAYTRACINGRENDERER_H
Definition: constants.h:13
T max(const T &a, const T &b)
Definition: MATHS/common.h:75
T min(const T &a, const T &b)
Definition: MATHS/common.h:102
virtual Resolution getSupportedResolution(const Resolution &min, const Resolution &max, const PixelFormat &format) const
virtual bool supports(const FrameBufferFormat &format) const
virtual void updateMaterialForRepresentation(Representation const *rep)=0
virtual bool supports(const PixelFormat &format) const
virtual std::vector< float > intersectRaysWithGeometry(const std::vector< Vector3 > &origins, const std::vector< Vector3 > &directions)
virtual String getRenderer()=0
#define BALL_VIEW_EXPORT
Definition: COMMON/global.h:52