本文整理汇总了C++中MpResource::getInputInfo方法的典型用法代码示例。如果您正苦于以下问题:C++ MpResource::getInputInfo方法的具体用法?C++ MpResource::getInputInfo怎么用?C++ MpResource::getInputInfo使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MpResource
的用法示例。
在下文中一共展示了MpResource::getInputInfo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: insertResourceBefore
//:Inserts "rResource" into the flow graph upstream of the
//:designated "rDownstreamResource" resource.
// The new resource will be inserted on the "inPortIdx" input
// link of "rDownstreamResource".
// If the flow graph is not "started", this call takes effect
// immediately. Otherwise, the call takes effect at the start of the
// next frame processing interval.
// Returns OS_SUCCESS if the resource was successfully inserted. Returns
// OS_INVALID_ARGUMENT if the caller specified an invalid port index.
OsStatus MpFlowGraphBase::insertResourceBefore(MpResource& rResource,
MpResource& rDownstreamResource,
int inPortIdx)
{
MpResource *pUpstreamResource;
int upstreamOutPortIdx;
OsStatus res;
// Get information about the downstream end of the link
rDownstreamResource.getInputInfo(inPortIdx, pUpstreamResource,
upstreamOutPortIdx);
// Add the new resource to the flow graph
res = addResource(rResource);
if (res != OS_SUCCESS)
return res;
if (pUpstreamResource != NULL)
{
// Remove the link between the upstream and downstream resources
res = removeLink(*pUpstreamResource, upstreamOutPortIdx);
if (res != OS_SUCCESS)
{ // recover from remove link failure
removeResource(rResource);
return res;
}
// Add the link between output port 0 the new resource and the
// downstream resource
res = addLink(rResource, 0, rDownstreamResource, inPortIdx);
if (res != OS_SUCCESS)
{ // recover from add link failure
removeResource(rResource);
addLink(*pUpstreamResource, upstreamOutPortIdx,
rDownstreamResource, inPortIdx);
return res;
}
}
// Add the link between the upstream resource and input port 0 of
// the new resource
res = addLink(*pUpstreamResource, upstreamOutPortIdx, rResource, 0);
if (res != OS_SUCCESS)
{ // recover from add link failure
removeResource(rResource);
if (pUpstreamResource != NULL)
{
addLink(*pUpstreamResource, upstreamOutPortIdx,
rDownstreamResource, inPortIdx);
}
}
return res;
}