IPathGenerator.h
Go to the documentation of this file.00001 /**<!--------------------------------------------------------------------> 00002 @class IPathGenerator 00003 @author Travis Fischer (fisch0920@gmail.com) 00004 @author Matthew Jacobs (jacobs.mh@gmail.com) 00005 @date Fall 2008 00006 00007 @brief 00008 Interface responsible for generating valid light-to-eye paths 00009 00010 @see also PathTracer and BidirectionalPathTracer 00011 <!-------------------------------------------------------------------->**/ 00012 00013 #ifndef IPATH_GENERATOR_H_ 00014 #define IPATH_GENERATOR_H_ 00015 00016 #include <renderers/utils/Path.h> 00017 00018 class IPathGenerator { 00019 public: 00020 ///@name Main usage interface 00021 //@{----------------------------------------------------------------- 00022 00023 /** 00024 * @brief 00025 * Generates a complete, valid path from scratch 00026 * 00027 * @note path generated is assumed to start at an emitter (light) and 00028 * end at a sensor (camera) 00029 * @returns true on success or false on failure (if an invalid path 00030 * was encountered) 00031 */ 00032 virtual bool generate(Path &outPath) = 0; 00033 00034 /** 00035 * @brief 00036 * Generates a light subpath which is assumed to start at an emitter 00037 */ 00038 virtual void generateL(Path &outPath) = 0; 00039 00040 /** 00041 * @brief 00042 * Generates an eye subpath which is assumed to end at a sensor 00043 */ 00044 virtual void generateE(Path &outPath) = 0; 00045 00046 //@}----------------------------------------------------------------- 00047 }; 00048 00049 #endif // IPATH_GENERATOR_H_ 00050
Generated on 28 Feb 2009 for Milton by
1.5.6