SuperSampleGenerator.h

Go to the documentation of this file.
00001 /**<!-------------------------------------------------------------------->
00002    @class  SuperSampleGenerator
00003    @author Travis Fischer (fisch0920@gmail.com)
00004    @date   Fall 2008
00005    
00006    @brief
00007      Brute force super sampling, where sub-bin (sub-pixel) sampling is done 
00008    via an auxillary SampleGenerator
00009    <!-------------------------------------------------------------------->**/
00010 
00011 #ifndef SUPER_SAMPLE_GENERATOR_H_
00012 #define SUPER_SAMPLE_GENERATOR_H_
00013 
00014 #include <renderers/generators/SampleGenerator.h>
00015 
00016 DECLARE_STL_TYPEDEF(std::vector<PointSampleList>, PointSampleListList);
00017 
00018 template <class SG>
00019 class SuperSG : public SG {
00020    
00021    public:
00022       ///@name Constructors
00023       //@{-----------------------------------------------------------------
00024       
00025       inline SuperSG(const std::string &subGeneratorType)
00026          : SG(), m_subGeneratorType(subGeneratorType)
00027       { }
00028       
00029       
00030       //@}-----------------------------------------------------------------
00031       ///@name Initialization Routines
00032       //@{-----------------------------------------------------------------
00033       
00034       virtual void init();
00035       
00036       
00037       //@}-----------------------------------------------------------------
00038       ///@name Main usage interface
00039       //@{-----------------------------------------------------------------
00040       
00041       virtual void generate(PointSampleList &outSamples, 
00042                             const Viewport &viewport);
00043       
00044       
00045       //@}-----------------------------------------------------------------
00046       
00047    protected:
00048       std::string         m_subGeneratorType;
00049       PointSampleListList m_samples;
00050 };
00051 
00052 #endif // SUPER_SAMPLE_GENERATOR_H_
00053 

Generated on 28 Feb 2009 for Milton by doxygen 1.5.6