
///////////////////////////////////////////////////////////////////////////////
//
// File   : AVP_Actor_AIAnimStateConnectionData.h
// Author : Andy Tate
// Date   : 14-Dec-2006
//
// Copyright (C) 2006 Rebellion, All Rights Reserved.
//
///////////////////////////////////////////////////////////////////////////////

#ifdef ASURA_USE_PRAGMA_ONCE
#pragma once
#endif   // ifdef ASURA_USE_PRAGMA_ONCE

#ifndef __AVP_ACTOR_AIANIMSTATECONNECTION_H__
#define __AVP_ACTOR_AIANIMSTATECONNECTION_H__

class AVP_Actor_AIAnimStateConnectionData
{
public:
	AVP_Actor_AIAnimStateConnectionData( float fCost = 1.0f, float fTweenTime = 0.05f, bool bSync = false, bool bWait = true )
		: m_fCost( fCost ), m_fTweenTime( fTweenTime ), m_bSync( bSync ), m_bWait( bWait ) {}

	float	GetCost() const { return m_fCost; }
	float	GetTweenTime() const { return m_fTweenTime; }
	bool	GetSync() const { return m_bSync; }
	bool	GetWaitForEndOfLoop() const { return m_bWait; }

private:
	float	m_fCost;
	float	m_fTweenTime;
	bool	m_bSync;
	bool	m_bWait;
};

struct AVP_Actor_AIAnimStateConnectionListEntry
{
	AVP_Actor_AIAnimStateConnectionListEntry( int iStateFrom, int iStateTo ) : m_iStateFrom( iStateFrom ), m_iStateTo( iStateTo ) {}
	AVP_Actor_AIAnimStateConnectionListEntry( int iStateFrom, int iStateTo, const AVP_Actor_AIAnimStateConnectionData& xStateData ) : m_iStateFrom( iStateFrom ), m_iStateTo( iStateTo ) { m_xStateData = xStateData; }

	int m_iStateFrom;
	int m_iStateTo;
	AVP_Actor_AIAnimStateConnectionData m_xStateData;
};

#endif   // ifndef __AVP_ACTOR_AIANIMSTATECONNECTION_H__

/// End of file. ///
