本文整理汇总了C++中Audio::connect方法的典型用法代码示例。如果您正苦于以下问题:C++ Audio::connect方法的具体用法?C++ Audio::connect怎么用?C++ Audio::connect使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Audio
的用法示例。
在下文中一共展示了Audio::connect方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: JS_connect
bool JSAudioContext::JS_connect(JSContext *cx, JS::CallArgs &args)
{
JSAudioNodeLink *jlink1 = nullptr;
JSAudioNodeLink *jlink2 = nullptr;
NodeLink *link1 = nullptr;
NodeLink *link2 = nullptr;
Audio *audio = this->m_Audio;
JS::RootedObject arg0(cx, args[0].isObject() ? args[0].toObjectOrNull()
: nullptr);
JS::RootedObject arg1(cx, args[1].isObject() ? args[1].toObjectOrNull()
: nullptr);
if (!arg0 || !(jlink1 = JSAudioNodeLink::GetInstance(arg0))) {
JS_ReportError(cx, "First argument must be an AudioNodeLink");
return false;
}
if (!arg1 || !(jlink2 = JSAudioNodeLink::GetInstance(arg1))) {
JS_ReportError(cx, "Second argument must be an AudioNodeLink");
return false;
}
link1 = jlink1->get();
link2 = jlink2->get();
if (!link1 || !link2) {
JS_ReportError(cx, "Invalid AudioNodeLink");
return false;
}
if (link1->isInput() && link2->isOutput()) {
if (!audio->connect(link2, link1)) {
JS_ReportError(cx, "connect() failed (max connection reached)\n");
return false;
}
} else if (link1->isOutput() && link2->isInput()) {
if (!audio->connect(link1, link2)) {
JS_ReportError(cx, "connect() failed (max connection reached)\n");
return false;
}
} else {
JS_ReportError(cx, "connect() expect one input and one output.\n");
return false;
}
return true;
}