本文整理汇总了C++中KeyMap::begin方法的典型用法代码示例。如果您正苦于以下问题:C++ KeyMap::begin方法的具体用法?C++ KeyMap::begin怎么用?C++ KeyMap::begin使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KeyMap
的用法示例。
在下文中一共展示了KeyMap::begin方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: printMenu
void printMenu(KeyMap & keyMap)
{
for( auto it = keyMap.begin(); it != keyMap.end(); ++it)
{
printf("%c.\t%s\n",it->first, it->second.first);
}
}
示例2: updateState
void DirectInputRegistry::updateState( osgGA::EventQueue* eventQueue )
{
HRESULT hr;
if ( !_supportDirectInput || !eventQueue ) return;
if ( _keyboard )
{
pollDevice( _keyboard );
char buffer[256] = {0};
hr = _keyboard->GetDeviceState( sizeof(buffer), &buffer );
if ( SUCCEEDED(hr) )
{
for ( KeyMap::iterator itr=g_keyMap.begin(); itr!=g_keyMap.end(); ++itr )
{
KeyValue& key = itr->second;
char value = buffer[itr->first];
if ( key.second==value ) continue;
key.second = value;
if ( value&0x80 )
eventQueue->keyPress( key.first );
else
eventQueue->keyRelease( key.first );
}
}
}
if ( _mouse )
{
pollDevice( _mouse );
DIMOUSESTATE2 mouseState;
hr = _mouse->GetDeviceState( sizeof(DIMOUSESTATE2), &mouseState );
// TODO: add mouse handlers
}
if ( _joystick )
{
pollDevice( _joystick );
osg::ref_ptr<JoystickEvent> event = new JoystickEvent;
hr = _joystick->GetDeviceState( sizeof(DIJOYSTATE2), &(event->_js) );
if ( SUCCEEDED(hr) ) eventQueue->userEvent( event.get() );
}
}
示例3:
// Only for debug
void
ClefKeyContext::dumpKeyContext()
{
KeyMaps::iterator i;
KeyMap::iterator j;
std::cout << "Begin of key context dump =================" << std::endl;
for (i = m_keyMaps.begin(); i != m_keyMaps.end(); ++i) {
std::cout << " Track = " << (*i).first << std::endl;
KeyMap *m = (*i).second;
for (j = m->begin(); j != m->end(); ++j) {
std::cout << " Time = " << (*j).first
<< " Key = " << (*j).second.getName() << std::endl;
}
}
std::cout << "End of key context dump =================" << std::endl;
}