00001 #ifndef RAYCASTER_H_ 00002 #define RAYCASTER_H_ 00003 00004 #include "TracingStrategy.h" 00005 00006 namespace rcrt 00007 { 00011 class RayCaster : public rcrt::TracingStrategy 00012 { 00013 public: 00014 using TracingStrategy::trace; 00015 RayCaster(Scene* s); 00016 virtual ~RayCaster(); 00017 00018 virtual RGBColor trace(Ray& r) const; 00019 virtual Image trace(Camera* cam, std::vector<Primitive*>* prList) const; 00020 00021 }; 00022 00023 } 00024 00025 #endif /*RAYCASTER_H_*/