include/crbn/graphics/grinterface.hpp

00001 
00002 #ifndef __graphics_interface_hpp__
00003 #define __graphics_interface_hpp__
00004 
00005 #include <crbn/basic/ray.hpp>
00006 #include <crbn/basic/intersection.hpp>
00007 
00008 #include <vector>
00009 
00019 
00020 typedef struct graphics_data_t {
00021   intersection inter; 
00022   float radiance;     
00023   vec3 color;         
00024   uint32 matter_id;   
00025 };
00026 
00034 class GraphicsInterface
00035 {
00036 public:
00037   virtual ~GraphicsInterface() {}
00038 
00040 
00045   virtual bool search_intersection( ray& r, graphics_data_t& gdata ) = 0;
00046 
00048 
00053   virtual void illuminate( ray& r, intersection& inter, vec3& light_value ) = 0;
00054 };
00055 
00056 #endif // __graphics_interface_hpp__

Generated on Tue Nov 14 15:40:08 2006 for libcrbn by  doxygen 1.5.0