本文整理汇总了C++中CPVRChannelPtr::CanRecord方法的典型用法代码示例。如果您正苦于以下问题:C++ CPVRChannelPtr::CanRecord方法的具体用法?C++ CPVRChannelPtr::CanRecord怎么用?C++ CPVRChannelPtr::CanRecord使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CPVRChannelPtr
的用法示例。
在下文中一共展示了CPVRChannelPtr::CanRecord方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Record
JSONRPC_STATUS CPVROperations::Record(const std::string &method, ITransportLayer *transport, IClient *client, const CVariant ¶meterObject, CVariant &result)
{
if (!g_PVRManager.IsStarted())
return FailedToExecute;
CPVRChannelPtr pChannel;
CVariant channel = parameterObject["channel"];
if (channel.isString() && channel.asString() == "current")
{
pChannel = g_PVRManager.GetCurrentChannel();
if (!pChannel)
return InternalError;
}
else if (channel.isInteger())
{
CPVRChannelGroupsContainer *channelGroupContainer = g_PVRManager.ChannelGroups();
if (channelGroupContainer == NULL)
return FailedToExecute;
pChannel = channelGroupContainer->GetChannelById((int)channel.asInteger());
}
else
return InvalidParams;
if (pChannel == NULL)
return InvalidParams;
else if (!pChannel->CanRecord())
return FailedToExecute;
CVariant record = parameterObject["record"];
bool toggle = true;
if (record.isBoolean() && record.asBoolean() == pChannel->IsRecording())
toggle = false;
if (toggle)
{
if (!g_PVRManager.ToggleRecordingOnChannel(pChannel->ChannelID()))
return FailedToExecute;
}
return ACK;
}
示例2: CanRecordOnPlayingChannel
bool CPVRManager::CanRecordOnPlayingChannel(void) const
{
const CPVRChannelPtr currentChannel = GetPlayingChannel();
return currentChannel && currentChannel->CanRecord();
}
示例3: CanRecordInstantly
bool CPVRClients::CanRecordInstantly(void)
{
CPVRChannelPtr currentChannel;
return GetPlayingChannel(currentChannel) &&
currentChannel->CanRecord();
}