//===========================================================================//
// File:	munga.hpp                                                           //
// Project: Adept           Brick: ???                                       //
// Contents: ???                                                             //
//---------------------------------------------------------------------------//
//   Date    Who  Modification                                               //
// --------  ---  ---------------------------------------------------------- //
// 00/00/00  XXX  Initial coding.                                            //
//---------------------------------------------------------------------------//
// Copyright (C) 1995-1996, Virtual World Entertainment, Inc.                //
// All Rights reserved worldwide                                             //
// This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL               //
//===========================================================================//

#if !defined(ELEMENTPROXIES_ELEMENTPROXIES_HPP)
	#define ELEMENTPROXIES_ELEMENTPROXIES_HPP

	#if !defined(PROXIES_PROXIES_HPP)
		#include <Proxies\Proxies.hpp>
	#endif

	#if !defined(ELEMENTRENDERER_ELEMENTRENDERER_HPP)
		#include <ElementRenderer\ElementRenderer.hpp>
	#endif

	#if !defined(ELEMENTRENDERER_GROUPELEMENT_HPP)
		#include <ElementRenderer\GroupElement.hpp>
	#endif

	#if !defined(ELEMENTRENDERER_SHAPEELEMENT_HPP)
		#include <ElementRenderer\ShapeElement.hpp>
	#endif

	#if !defined(ELEMENTRENDERER_LISTELEMENT_HPP)
		#include <ElementRenderer\ListElement.hpp>
	#endif

	#if !defined(MLR_MLR_HPP)
		#include <MLR\MLR.hpp>
	#endif

	namespace ElementProxies {

		//
		//--------------
		// Stuff classes
		//--------------
		//
		enum
		{
			ElementSceneProxyClassID = Stuff::FirstElementProxyClassID,
			ElementGroupProxyClassID,
			ElementListProxyClassID,
			ElementPolygonMeshProxyClassID,

			MLRPolygonProxyClassID,
			MLRIndexProxyClassID,
			MLRVertexProxyClassID,
			MLRTextureProxyClassID,
			MLRTexturePoolProxyClassID,
			MLRStateProxyClassID,
			MLRStatePoolProxyClassID,

			FirstFreeElementProxyClassID
		};

		extern void InitializeClasses();
		extern void TerminateClasses();

	}

	#include "ElementGroupProxy.hpp"
	#include "ElementListProxy.hpp"
	#include "ElementPolygonMeshProxy.hpp"
	#include "ElementSceneProxy.hpp"
	#include "MLRIndexProxy.hpp"
	#include "MLRPolygonProxy.hpp"
	#include "MLRStateProxy.hpp"
	#include "MLRTextureProxy.hpp"
	#include "MLRVertexProxy.hpp"

	#include "OptimizeSync.hpp"
	#include "setexplicitalphamode.hpp"
	#include "setexplicitfogmode.hpp"
	#include "setexplicitlightingmode.hpp"
	#include "ApplyDetailTextures.hpp"

#endif
