本文整理汇总了C++中IActionMapManager::EnumerateActions方法的典型用法代码示例。如果您正苦于以下问题:C++ IActionMapManager::EnumerateActions方法的具体用法?C++ IActionMapManager::EnumerateActions怎么用?C++ IActionMapManager::EnumerateActions使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IActionMapManager
的用法示例。
在下文中一共展示了IActionMapManager::EnumerateActions方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: InitActionInputEnums
void CEditorGame::InitActionInputEnums( IGameToEditorInterface* pGTE )
{
CRY_ASSERT(pGTE);
IActionMapManager* pActionMapManager = g_pGame->GetIGameFramework()->GetIActionMapManager();
if (pActionMapManager)
{
struct SActionList : public IActionMapPopulateCallBack
{
explicit SActionList(int actionCount)
: m_maxNumNames(actionCount)
, m_nameCount(0)
{
m_allActionNames = new const char*[actionCount];
}
~SActionList()
{
SAFE_DELETE_ARRAY(m_allActionNames);
}
//IActionMapPopulateCallBack
virtual void AddActionName( const char* const pName )
{
assert(m_nameCount < m_maxNumNames);
if (m_nameCount < m_maxNumNames)
{
m_allActionNames[m_nameCount] = pName;
m_nameCount++;
}
}
//~IActionMapPopulateCallBack
const char** m_allActionNames;
int m_maxNumNames;
int m_nameCount;
};
int actionCount = pActionMapManager->GetActionsCount();
if (actionCount > 0)
{
SActionList actionList(actionCount);
pActionMapManager->EnumerateActions(&actionList);
pGTE->SetUIEnums("input_actions", actionList.m_allActionNames, actionList.m_nameCount);
}
}
}