#ifdef ASURA_USE_AXON
//////////////////////////////////////////////////////////////////////////////
//
// Axon_Chunk_AnimTemplates.h
//
// Created by Tamir Ibrahim (28.09.06)
//
// Copyright (c) 2006 Rebellion. All rights reserved.
//
//////////////////////////////////////////////////////////////////////////////

// B E G I N   F I L E   W R A P P E R ///////////////////////////////////////

#ifdef ASURA_USE_PRAGMA_ONCE
    #pragma once
#endif

#ifndef AXON_CHUNK_ANIMTEMPLATES_H___
#define AXON_CHUNK_ANIMTEMPLATES_H___ 1

// I N C L U D E S ///////////////////////////////////////////////////////////

// Asura
#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_Chunk_Stream;
class Axon_Gamescene_AnimTemplate;
class Axon_GS2_AnimPackage;

//////////////////////////////////////////////////////////////////////////////
//
// Axon_Chunk_AnimTemplates
//
//////////////////////////////////////////////////////////////////////////////

class Axon_Chunk_AnimTemplates : public Asura_Chunk_Header
{
public:
	bool Process( Asura_Handle iFileHandle ) const;

#ifdef ASURA_TOOLS
	static bool SaveAnimTemplateAndPackageData( const char* szFilename );
	static bool SaveAnimTemplateData( const char* szFilename, const Axon_Gamescene_AnimTemplate& xAnimTemplate );
	static bool SaveAnimPackageData( const char* szFilename, const Axon_GS2_AnimPackage& xAnimPackage );
#endif

private:
	static bool ReadTemplatesIn( Asura_Chunk_File_Stream& xStream );
	static bool ReadPackagesIn( Asura_Chunk_File_Stream& xStream );

private:
	static const int iCURRENT_VERSION = 1;
};

// E N D   F I L E   W R A P P E R ///////////////////////////////////////////

#endif // #ifndef AXON_CHUNK_ANIMTEMPLATES_H___

#endif // ASURA_USE_AXON
