Material.h

Go to the documentation of this file.
00001 
00005 #ifndef Material_h
00006 #define Material_h
00007 
00008 class Color;
00009 class HitRecord;
00010 class Ray;
00011 class RenderContext;
00012 
00013 class Material {
00014  public:
00015   Material();
00016   virtual ~Material();
00017 
00018   virtual void preprocess();
00019   virtual void shade(Color& result, const RenderContext& context, const Ray& ray,
00020                      const HitRecord& hit, const Color& atten, int depth) const = 0;
00021 
00022  private:
00023   Material(const Material&);
00024   Material& operator=(const Material&);
00025 };
00026 
00027 #endif
00028 

Generated on Tue Jan 29 21:34:53 2008 for specter by  doxygen 1.4.6