//
// Asura_Chunk_EnvironmentalLightTransport.h
//
// Created by KJFL - 2004-04-26 15:28:39
//
// Copyright (C) 2004 Rebellion, All Rights Reserved.
//

#ifdef ASURA_USE_PRAGMA_ONCE
	#pragma once
#endif

#ifndef __ASURA_CHUNK_ENVIRONMENTALLIGHTTRANSPORT_H__
#define __ASURA_CHUNK_ENVIRONMENTALLIGHTTRANSPORT_H__

// KJFL - 2004-04-26 - this chunk is only to be used in Tools builds.
#ifdef ASURA_TOOLS

#include "ChunkSystem/Asura_Chunk_Loaders.h"
#include "Core/Asura_Handle.h"

// F O R W A R D   D E C L A R A T I O N S ///////////////////////////////////

class Asura_SaveBlock;

// C L A S S E S /////////////////////////////////////////////////////////////

class Asura_Chunk_EnvironmentalLightTransport : public Asura_Chunk_Header
{

	public:
        
		bool Process( Asura_Handle hFile ) const;

		static bool Create( Asura_SaveBlock& xSaveBlock );
		static bool Create( Asura_Chunk_Stream& xStream );

		static bool SaveFile( const char* szFilename );

	private:

		enum ChunkFlags
		{	
			ChunkFlag_Invalid = 0x00000001,//Indicates that the saved ELT data is out of date (but being saved because its better than nothing)
			ChunkFlag_QuickData = 0x00000002,//Indicates whether ELT was calculated using the quicker/approximate version
		};

		enum { CHUNK_VERSION = 2 };

		u_int		m_uNumberOfModules;
		u_int		m_uUnused;//was total number of vertices

};

#endif //#ifdef ASURA_TOOLS

#endif//__ASURA_CHUNK_ENVIRONMENTALLIGHTTRANSPORT_H__
