本文整理汇总了C++中BMediaRoster::GetLiveNodeInfo方法的典型用法代码示例。如果您正苦于以下问题:C++ BMediaRoster::GetLiveNodeInfo方法的具体用法?C++ BMediaRoster::GetLiveNodeInfo怎么用?C++ BMediaRoster::GetLiveNodeInfo使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BMediaRoster
的用法示例。
在下文中一共展示了BMediaRoster::GetLiveNodeInfo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: node
MediaNodeControlApp::MediaNodeControlApp(
const char* pAppSignature,
media_node_id nodeID) :
BApplication(pAppSignature) {
BMediaRoster* r = BMediaRoster::Roster();
// get the node
status_t err = r->GetNodeFor(nodeID, &m_node);
if(err < B_OK) {
char buffer[512];
sprintf(buffer,
"MediaNodeControlApp: couldn't find node (%ld):\n%s\n",
nodeID, strerror(err));
(new BAlert("error", buffer, "OK"))->Go();
return;
}
// fetch info (name)
live_node_info nInfo;
err = r->GetLiveNodeInfo(m_node, &nInfo);
if(err < B_OK) {
char buffer[512];
sprintf(buffer,
"MediaNodeControlApp: couldn't get node info (%ld):\n%s\n",
nodeID, strerror(err));
(new BAlert("error", buffer, "OK"))->Go();
return;
}
BString windowTitle;
windowTitle << nInfo.name << '(' << nodeID << ") controls";
// get parameter web
BParameterWeb* pWeb;
err = r->GetParameterWebFor(m_node, &pWeb);
if(err < B_OK) {
char buffer[512];
sprintf(buffer,
"MediaNodeControlApp: no parameters for node (%ld):\n%s\n",
nodeID, strerror(err));
(new BAlert("error", buffer, "OK"))->Go();
return;
}
// build & show control window
BView* pView = BMediaTheme::ViewFor(pWeb);
BWindow* pWnd = new PanelWindow();
pWnd->AddChild(pView);
pWnd->ResizeTo(pView->Bounds().Width(), pView->Bounds().Height());
pWnd->SetTitle(windowTitle.String());
pWnd->Show();
// release the node
//r->ReleaseNode(m_node);
}