本文整理汇总了C++中Query::getReleaseById方法的典型用法代码示例。如果您正苦于以下问题:C++ Query::getReleaseById方法的具体用法?C++ Query::getReleaseById怎么用?C++ Query::getReleaseById使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Query
的用法示例。
在下文中一共展示了Query::getReleaseById方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: readDisc
int
main(int argc, char **argv)
{
if (argc < 1) {
cout << "Usage: cdlookup [device]" << endl;
return 1;
}
string device;
if (argc > 1)
device = argv[1];
Disc *disc;
try {
disc = readDisc(device);
}
catch (DiscError &e) {
cout << "Error: " << e.what() << endl;
return 1;
}
string discId = disc->getId();
delete disc;
cout << "Disc Id: " << discId << endl << endl;
Query q;
ReleaseResultList results;
try {
ReleaseFilter f = ReleaseFilter().discId(discId);
results = q.getReleases(&f);
}
catch (WebServiceError &e) {
cout << "Error: " << e.what() << endl;
return 1;
}
for (ReleaseResultList::iterator i = results.begin(); i != results.end(); i++) {
ReleaseResult *result = *i;
Release *release;
try {
release = q.getReleaseById(result->getRelease()->getId(), &ReleaseIncludes().tracks().artist());
}
catch (WebServiceError &e) {
cout << "Error: " << e.what() << endl;
continue;
}
cout << "Id : " << release->getId() << endl;
cout << "Title : " << release->getTitle() << endl;
cout << "Tracks : ";
int trackno = 1;
for (TrackList::iterator j = release->getTracks().begin(); j != release->getTracks().end(); j++) {
Track *track = *j;
Artist *artist = track->getArtist();
if (!artist)
artist = release->getArtist();
cout << trackno++ << ". " << artist->getName() << " / " << track->getTitle() << endl;
cout << " ";
}
cout << endl;
delete result;
}
return 0;
}