Program Listing for File dbTest.cpp
↰ Return to documentation for file (core_include\tests\dbTest.cpp)
#include "PDJE_interface.hpp"
#include <iostream>
#include <string>
int
main()
{
auto pdje = new PDJE("ROOT_DB");
auto Musics = pdje->SearchMusic("", "");
auto Tracks = pdje->SearchTrack("");
std::cout << "============musics==================" << std::endl;
for (const auto &musd : Musics) {
std::cout << "title: " << PDJE_Name_Sanitizer::getFileName(musd.title)
<< std::endl;
std::cout << "composer: "
<< PDJE_Name_Sanitizer::getFileName(musd.composer)
<< std::endl;
std::cout << "bpm: " << musd.bpm << std::endl;
CapReader<MusicBinaryCapnpData> bpmReader;
bpmReader.open(musd.bpmBinary);
auto datas = bpmReader.Rp->getDatas();
std::cout << "getting bpm binaries" << musd.bpm << std::endl;
for (int i = 0; i < datas.size(); ++i) {
std::cout << "beat: " << datas[i].getBeat()
<< " subBeat: " << datas[i].getSubBeat()
<< " separate: " << datas[i].getSeparate() << std::endl;
}
std::cout << "first beat: " << musd.firstBeat << std::endl;
std::cout << "musicPath: "
<< PDJE_Name_Sanitizer::getFileName(musd.musicPath)
<< std::endl;
}
std::cout << "==============tracks====================" << std::endl;
for (const auto &trackd : Tracks) {
std::cout << "track title"
<< PDJE_Name_Sanitizer::getFileName(trackd.trackTitle)
<< std::endl;
std::cout << "getting mix binary" << std::endl;
CapReader<MixBinaryCapnpData> mixReader;
mixReader.open(trackd.mixBinary);
auto mixs = mixReader.Rp->getDatas();
for (int i = 0; i < mixs.size(); ++i) {
std::cout << " Type: " << static_cast<int64_t>(mixs[i].getType())
<< " Detail: "
<< static_cast<int64_t>(mixs[i].getDetails())
<< " ID: " << mixs[i].getId() << std::endl;
std::cout << " first: " << mixs[i].getFirst().cStr()
<< " Second: " << mixs[i].getSecond().cStr()
<< " Third: " << mixs[i].getThird().cStr() << std::endl;
std::cout << " beat: " << mixs[i].getBeat()
<< " subBeat: " << mixs[i].getSubBeat()
<< " separate: " << mixs[i].getSeparate() << std::endl;
std::cout << " Ebeat: " << mixs[i].getEbeat()
<< " Esubbeat: " << mixs[i].getEsubBeat()
<< " Eseparate: " << mixs[i].getEseparate() << std::endl;
}
CapReader<NoteBinaryCapnpData> noteReader;
noteReader.open(trackd.mixBinary);
auto notes = noteReader.Rp->getDatas();
for (int i = 0; i < notes.size(); ++i) {
std::cout << " NoteType: " << notes[i].getNoteType().cStr()
<< " NoteDetail: " << notes[i].getNoteDetail().cStr()
<< std::endl;
std::cout << " first: " << notes[i].getFirst().cStr()
<< " Second: " << notes[i].getSecond().cStr()
<< " Third: " << notes[i].getThird().cStr() << std::endl;
std::cout << " beat: " << notes[i].getBeat()
<< " subBeat: " << notes[i].getSubBeat()
<< " separate: " << notes[i].getSeparate() << std::endl;
std::cout << " Ebeat: " << notes[i].getEbeat()
<< " Esubbeat: " << notes[i].getEsubBeat()
<< " Eseparate: " << notes[i].getESeparate() << std::endl;
}
}
return 0;
}