//////////////////////////////////////////////////////////////////////////////
//
// Asura_AnimTable.cpp
//
// Copyright (c) 2007 Rebellion. All rights reserved.
//
//////////////////////////////////////////////////////////////////////////////

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

#include "Core/Asura.h"

// This file's header.
#include "Animation/Asura_AnimTable.h"

// C L A S S   I M P L E M E N T A T I O N S /////////////////////////////////

#ifndef ASURA_DISABLE_ANIM_TABLE_CODE
Asura_AnimTable_AnimFlags Asura_AnimTable::s_xDefaultAnimFlags;
#endif

#ifdef ASURA_TOOLS
#ifndef ASURA_DISABLE_ANIM_TABLE_CODE


void Asura_AnimTable::SetName(const char* pszName) 
{ 
	if (m_pszName)
	{
		Asura_Deallocate(m_pszName);
		m_pszName = NULL;
		if (!pszName) return;
	}

	char* pszTempA = (char*)Asura_Allocate(strlen(pszName)+1);
	char* pszTempB = (char*)Asura_Allocate(strlen(pszName)+1);

	strcpy(pszTempA, pszName);
	char* pszLastSlash = strrchr(pszTempA,'\\');
	strcpy(pszTempB, pszLastSlash+1);
	char* pszLastUnderscore = strrchr(pszTempB, '_');
	*pszLastUnderscore = 0;
	
	m_pszName = (char*)Asura_Allocate(strlen(pszTempB)+1);
	strcpy(m_pszName, pszTempB);

	Asura_Deallocate(pszTempA);
	Asura_Deallocate(pszTempB);

}

#endif // ASURA_DISABLE_ANIM_TABLE_CODE
#endif // ASURA_TOOLS