本文整理汇总了C++中addon::Joystick类的典型用法代码示例。如果您正苦于以下问题:C++ Joystick类的具体用法?C++ Joystick怎么用?C++ Joystick使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Joystick类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: MapFeature
bool CPeripheralAddon::MapFeature(const CPeripheral* device,
const std::string& strControllerId,
const ADDON::JoystickFeature& feature)
{
if (!m_bProvidesButtonMaps)
return false;
PERIPHERAL_ERROR retVal;
ADDON::Joystick joystickInfo;
GetJoystickInfo(device, joystickInfo);
JOYSTICK_INFO joystickStruct;
joystickInfo.ToStruct(joystickStruct);
JOYSTICK_FEATURE addonFeature;
feature.ToStruct(addonFeature);
try { LogError(retVal = m_pStruct->MapFeatures(&joystickStruct, strControllerId.c_str(),
1, &addonFeature), "MapFeatures()"); }
catch (std::exception &e) { LogException(e, "MapFeatures()"); return false; }
if (retVal == PERIPHERAL_NO_ERROR)
{
// Notify observing button maps
RefreshButtonMaps(device->DeviceName());
}
return retVal == PERIPHERAL_NO_ERROR;
}
开发者ID:un1versal,项目名称:kodi,代码行数:30,代码来源:PeripheralAddon.cpp
示例2: GetIgnoredPrimitives
bool CPeripheralAddon::GetIgnoredPrimitives(const CPeripheral* device, PrimitiveVector& primitives)
{
if (!m_bProvidesButtonMaps)
return false;
PERIPHERAL_ERROR retVal;
ADDON::Joystick joystickInfo;
GetJoystickInfo(device, joystickInfo);
JOYSTICK_INFO joystickStruct;
joystickInfo.ToStruct(joystickStruct);
unsigned int primitiveCount = 0;
JOYSTICK_DRIVER_PRIMITIVE* pPrimitives = nullptr;
LogError(retVal = m_pStruct->GetIgnoredPrimitives(&joystickStruct, &primitiveCount,
&pPrimitives), "GetIgnoredPrimitives()");
if (retVal == PERIPHERAL_NO_ERROR)
{
for (unsigned int i = 0; i < primitiveCount; i++)
primitives.emplace_back(pPrimitives[i]);
m_pStruct->FreePrimitives(primitiveCount, pPrimitives);
return true;
}
return false;
}
开发者ID:aerickson,项目名称:xbmc,代码行数:31,代码来源:PeripheralAddon.cpp
示例3: SetIgnoredPrimitives
bool CPeripheralAddon::SetIgnoredPrimitives(const CPeripheral* device, const PrimitiveVector& primitives)
{
if (!m_bProvidesButtonMaps)
return false;
PERIPHERAL_ERROR retVal;
ADDON::Joystick joystickInfo;
GetJoystickInfo(device, joystickInfo);
JOYSTICK_INFO joystickStruct;
joystickInfo.ToStruct(joystickStruct);
JOYSTICK_DRIVER_PRIMITIVE* addonPrimitives = nullptr;
ADDON::DriverPrimitives::ToStructs(primitives, &addonPrimitives);
try
{
LogError(retVal = m_pStruct->SetIgnoredPrimitives(&joystickStruct,
primitives.size(), addonPrimitives), "SetIgnoredPrimitives()");
}
catch (std::exception &e)
{
LogException(e, "SetIgnoredPrimitives()"); return false;
}
ADDON::DriverPrimitives::FreeStructs(primitives.size(), addonPrimitives);
return retVal == PERIPHERAL_NO_ERROR;
}
开发者ID:NedScott,项目名称:xbmc,代码行数:30,代码来源:PeripheralAddon.cpp
示例4: RevertButtonMap
void CPeripheralAddon::RevertButtonMap(const CPeripheral* device)
{
if (!m_bProvidesButtonMaps)
return;
ADDON::Joystick joystickInfo;
GetJoystickInfo(device, joystickInfo);
JOYSTICK_INFO joystickStruct;
joystickInfo.ToStruct(joystickStruct);
m_pStruct->RevertButtonMap(&joystickStruct);
}
开发者ID:aerickson,项目名称:xbmc,代码行数:13,代码来源:PeripheralAddon.cpp
示例5: SaveButtonMap
void CPeripheralAddon::SaveButtonMap(const CPeripheral* device)
{
if (!m_bProvidesButtonMaps)
return;
ADDON::Joystick joystickInfo;
GetJoystickInfo(device, joystickInfo);
JOYSTICK_INFO joystickStruct;
joystickInfo.ToStruct(joystickStruct);
try { m_pStruct->SaveButtonMap(&joystickStruct); }
catch (std::exception &e) { LogException(e, "SaveMap()"); return; }
}
开发者ID:un1versal,项目名称:kodi,代码行数:14,代码来源:PeripheralAddon.cpp
示例6: ResetButtonMap
void CPeripheralAddon::ResetButtonMap(const CPeripheral* device, const std::string& strControllerId)
{
if (!m_bProvidesButtonMaps)
return;
ADDON::Joystick joystickInfo;
GetJoystickInfo(device, joystickInfo);
JOYSTICK_INFO joystickStruct;
joystickInfo.ToStruct(joystickStruct);
m_pStruct->ResetButtonMap(&joystickStruct, strControllerId.c_str());
// Notify observing button maps
RefreshButtonMaps(device->DeviceName());
}
开发者ID:aerickson,项目名称:xbmc,代码行数:16,代码来源:PeripheralAddon.cpp
示例7: SaveButtonMap
void CPeripheralAddon::SaveButtonMap(const CPeripheral* device)
{
if (!m_bProvidesButtonMaps)
return;
ADDON::Joystick joystickInfo;
GetJoystickInfo(device, joystickInfo);
JOYSTICK_INFO joystickStruct;
joystickInfo.ToStruct(joystickStruct);
m_pStruct->SaveButtonMap(&joystickStruct);
// Notify observing button maps
RefreshButtonMaps(device->DeviceName());
}
开发者ID:aerickson,项目名称:xbmc,代码行数:16,代码来源:PeripheralAddon.cpp
示例8:
CDevice::CDevice(const ADDON::Joystick& joystick)
: m_strName(joystick.Name()),
m_strProvider(joystick.Provider()),
m_vid(joystick.VendorID()),
m_pid(joystick.ProductID()),
m_buttonCount(joystick.ButtonCount()),
m_hatCount(joystick.HatCount()),
m_axisCount(joystick.AxisCount())
{
}
开发者ID:acmiyaguchi,项目名称:peripheral.joystick,代码行数:10,代码来源:Device.cpp
示例9: SetJoystickInfo
void CPeripheralAddon::SetJoystickInfo(CPeripheralJoystick& joystick, const ADDON::Joystick& joystickInfo)
{
joystick.SetProvider(joystickInfo.Provider());
joystick.SetRequestedPort(joystickInfo.RequestedPort());
joystick.SetButtonCount(joystickInfo.ButtonCount());
joystick.SetHatCount(joystickInfo.HatCount());
joystick.SetAxisCount(joystickInfo.AxisCount());
joystick.SetMotorCount(joystickInfo.MotorCount());
joystick.SetSupportsPowerOff(joystickInfo.SupportsPowerOff());
}
开发者ID:aerickson,项目名称:xbmc,代码行数:10,代码来源:PeripheralAddon.cpp
示例10: MapFeature
bool CPeripheralAddon::MapFeature(const CPeripheral* device,
const std::string& strControllerId,
const ADDON::JoystickFeature& feature)
{
if (!m_bProvidesButtonMaps)
return false;
PERIPHERAL_ERROR retVal;
ADDON::Joystick joystickInfo;
GetJoystickInfo(device, joystickInfo);
JOYSTICK_INFO joystickStruct;
joystickInfo.ToStruct(joystickStruct);
JOYSTICK_FEATURE addonFeature;
feature.ToStruct(addonFeature);
LogError(retVal = m_pStruct->MapFeatures(&joystickStruct, strControllerId.c_str(),
1, &addonFeature), "MapFeatures()");
return retVal == PERIPHERAL_NO_ERROR;
}
开发者ID:aerickson,项目名称:xbmc,代码行数:22,代码来源:PeripheralAddon.cpp
示例11: GetFeatures
bool CPeripheralAddon::GetFeatures(const CPeripheral* device,
const std::string& strControllerId,
FeatureMap& features)
{
if (!m_bProvidesButtonMaps)
return false;
PERIPHERAL_ERROR retVal;
ADDON::Joystick joystickInfo;
GetJoystickInfo(device, joystickInfo);
JOYSTICK_INFO joystickStruct;
joystickInfo.ToStruct(joystickStruct);
unsigned int featureCount = 0;
JOYSTICK_FEATURE* pFeatures = NULL;
try { LogError(retVal = m_pStruct->GetFeatures(&joystickStruct, strControllerId.c_str(),
&featureCount, &pFeatures), "GetFeatures()"); }
catch (std::exception &e) { LogException(e, "GetFeatures()"); return false; }
if (retVal == PERIPHERAL_NO_ERROR)
{
for (unsigned int i = 0; i < featureCount; i++)
{
ADDON::JoystickFeature feature(pFeatures[i]);
if (feature.Type() != JOYSTICK_FEATURE_TYPE_UNKNOWN)
features[feature.Name()] = std::move(feature);
}
try { m_pStruct->FreeFeatures(featureCount, pFeatures); }
catch (std::exception &e) { LogException(e, "FreeFeatures()"); }
return true;
}
return false;
}
开发者ID:un1versal,项目名称:kodi,代码行数:39,代码来源:PeripheralAddon.cpp
示例12: GetJoystickInfo
void CPeripheralAddon::GetJoystickInfo(const CPeripheral* device, ADDON::Joystick& joystickInfo)
{
GetPeripheralInfo(device, joystickInfo);
if (device->Type() == PERIPHERAL_JOYSTICK)
{
const CPeripheralJoystick* joystick = static_cast<const CPeripheralJoystick*>(device);
joystickInfo.SetProvider(joystick->Provider());
joystickInfo.SetButtonCount(joystick->ButtonCount());
joystickInfo.SetHatCount(joystick->HatCount());
joystickInfo.SetAxisCount(joystick->AxisCount());
joystickInfo.SetMotorCount(joystick->MotorCount());
joystickInfo.SetSupportsPowerOff(joystick->SupportsPowerOff());
}
else if (device->Type() == PERIPHERAL_JOYSTICK_EMULATION)
{
const CPeripheralJoystickEmulation* joystick = static_cast<const CPeripheralJoystickEmulation*>(device);
joystickInfo.SetName(JOYSTICK_EMULATION_BUTTON_MAP_NAME); // Override name with non-localized version
joystickInfo.SetProvider(JOYSTICK_EMULATION_PROVIDER);
joystickInfo.SetIndex(joystick->ControllerNumber());
}
}
开发者ID:aerickson,项目名称:xbmc,代码行数:22,代码来源:PeripheralAddon.cpp
示例13: GetJoystickInfo
void CPeripheralAddon::GetJoystickInfo(const CPeripheral* device, ADDON::Joystick& joystickInfo)
{
GetPeripheralInfo(device, joystickInfo);
if (device->Type() == PERIPHERAL_JOYSTICK)
{
const CPeripheralJoystick* joystick = static_cast<const CPeripheralJoystick*>(device);
joystickInfo.SetProvider(joystick->Provider());
joystickInfo.SetButtonCount(joystick->ButtonCount());
joystickInfo.SetHatCount(joystick->HatCount());
joystickInfo.SetAxisCount(joystick->AxisCount());
joystickInfo.SetMotorCount(joystick->MotorCount());
joystickInfo.SetSupportsPowerOff(joystick->SupportsPowerOff());
}
}
开发者ID:un1versal,项目名称:kodi,代码行数:15,代码来源:PeripheralAddon.cpp
注:本文中的addon::Joystick类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论