
#ifndef __WFX_SCENE_GEOMETRYFACTORY_H__
#define __WFX_SCENE_GEOMETRYFACTORY_H__

#include <WFX/WFXIncludes.h>
#include <WFX/scene/TriMesh.h>
#include <WFX/scene/Color.h>

namespace WFX {

    namespace scene {

        /**
         * Collection of static methods that return Geometric Objects
         */
        class GeometryFactory {
            public:

                /**
                 * returns a triangle TriMesh
                 */
                static TriMesh* getTriangleTriMesh(const Color& c1 = Color::RED,
                                                   const Color& c2 = Color::GREEN,
                                                   const Color& c3 = Color::BLUE
                                                  );
                
                /** returns a textured TriMesh */
                static TriMesh* getTexTriangle(const std::string& fn);

            protected:
            
            private:

        };

    }

}


#endif //include guard


