/*****************************************************************************
 * $LastChangedDate: 2011-04-22 12:24:45 -0400 (Fri, 22 Apr 2011) $
 * @file
 * @author  Jim E. Brooks  http://www.palomino3d.org
 * @brief   Module configuration.
 *//*
 * LEGAL:   COPYRIGHT (C) 2009 JIM E. BROOKS
 *          THIS SOURCE CODE IS RELEASED UNDER THE TERMS
 *          OF THE GNU GENERAL PUBLIC LICENSE VERSION 2 (GPL 2).
 *****************************************************************************/

#ifndef GRAPH_CONF_HH
#define GRAPH_CONF_HH 1

#define GRAPH_CONF graph::GET_CONF()

#include "base/conf_txt.hh"
#include "gfx/rgba.hh"
using namespace gfx;

namespace graph {

////////////////////////////////////////////////////////////////////////////////
/// @brief Module configuration.
///
class Conf
{
#include "base/conf_template_txt.hh"
public:
    // cmd-line:
    bool            mEnableOsgOptimizer;    ///< disabled by -no-osg-opt
    bool            mEnableWireframe;       ///< -wire,-wireframe or Mod-F9 key
    bool            mEnableDumpFull;        ///< when scene-graph is dumped, dump as much as possible (wastes memory)
    bool            mEnableFog;
    int             mShadowMode;            ///< disabled if equals defs::SHADOW_MODE_DISABLED
    // conf file:
    uint            mShadowLightNum;
    osg::Vec4       mShadowLightPos;
    osg::Vec3       mShadowLightDir;
    RGBA            mShadowLightColor;
    RGBA            mBackgroundColor;       ///< clear color
};
#include "base/conf_template_end.hh"

} // namespace graph

#endif // GRAPH_CONF_HH
