本文整理汇总了C++中VerseKey::setChapter方法的典型用法代码示例。如果您正苦于以下问题:C++ VerseKey::setChapter方法的具体用法?C++ VerseKey::setChapter怎么用?C++ VerseKey::setChapter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类VerseKey
的用法示例。
在下文中一共展示了VerseKey::setChapter方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char **argv)
{
long pos, offset;
int num1, num2, rangemax;
char startflag = 0;
short size;
checkparams(argc, argv);
openfiles(argv[1]);
testmnt = key1.getTestament();
num1 = key1.getChapter();
num2 = key1.getVerse();
pos = 0;
write(bfp, &pos, 4); /* Book offset for testament intros */
pos = 4;
write(cfp, &pos, 4); /* Chapter offset for testament intro */
/* Right now just zero out intros until parsing correctly */
pos = 0;
size = 0;
write(vfp, &pos, 4); /* Module intro */
write(vfp, &size, 2);
write(vfp, &pos, 4); /* Testament intro */
write(vfp, &size, 2);
while(!findbreak(fp, &offset, &num1, &num2, &rangemax, &size)) {
if (!startflag) {
startflag = 1;
}
else {
if (num2 < key2.getVerse()) { // new chapter
if (num1 <= key2.getChapter()) { // new book
key2.setVerse(1);
key2.setChapter(1);
key2.setBook(key2.getBook()+1);
}
printf("Found Chapter Break: %d ('%s')\n", num1, (const char *)key2);
chapoffset = offset;
chapsize = size;
// continue;
}
}
key2.setVerse(1);
key2.setChapter(num1);
key2.setVerse(num2);
key3 = key2;
// key3 += (rangemax - key3.getVerse());
writeidx(key1, key2, key3, offset, size);
}
close(vfp);
close(cfp);
close(bfp);
close(fp);
return 0;
}
示例2: main
int main() {
SWMgr library;
auto const book(library.getModule("KJV"));
VerseKey *vk = (VerseKey *) book->getKey();
for (;!vk->popError();vk->setChapter(vk->getChapter()+1)) {
vk->setVerse(vk->getVerseMax());
std::string text = book->stripText();
trimString(text);
if (!text.empty() && (*text.rbegin()) == ',') {
cout << vk->getText() << ":\n\n";
cout << text << endl;
}
}
return 0;
}
示例3: main
int main(int argc, char **argv) {
SWMgr library;
SWModule *book = library.getModule("KJV");
VerseKey *vk = (VerseKey *) book->getKey();
for (;!vk->popError();vk->setChapter(vk->getChapter()+1)) {
vk->setVerse(vk->getVerseMax());
SWBuf text = book->stripText();
text = text.trim();
if (text.endsWith(",")) {
cout << vk->getText() << ":\n\n";
cout << text << endl;
}
}
return 0;
}
示例4: getVerses
std::string SwordPluginAPI::getVerses(const std::string& moduleName, const std::string& key, const std::string& single) {
/*Get verses from a specific module (e.g. "ESV"). Set your biblepassage in key e.g. "James 1:19" */
std::stringstream passage;
std::stringstream tmpPassage;
std::stringstream out;
SWModule *module = displayLibrary->getModule(moduleName.c_str());
/* if (!module || !(strcmp(module->Type(), "Biblical Texts") == 0 || strcmp(module->Type(), "Commentaries") == 0)) {
PDL_JSException(parms, "getVerses: Module isn't verse driven (no bible or commentary). Currently BibleZ HD doesn't support Generic Books and Lexicons / Dictionaries!");
return PDL_TRUE;
} */
//module->setKey(key);
//VerseKey *vk = (VerseKey*)module->getKey();
VerseKey *vk = dynamic_cast<VerseKey *>(module->getKey());
//vk->AutoNormalize(false);
vk->Headings(true);
vk->setText(key.c_str());
ListKey verses = VerseKey().ParseVerseList(key.c_str(), "", true);
passage << "{\"bookName\": \"" << vk->getBookName() << "\", \"cnumber\": \"" << vk->Chapter() << "\", \"vnumber\": \"" << vk->Verse() << "\", \"passageSingle\" : \"" << vk->getBookName() << " " << vk->Chapter() << ":" << vk->Verse() << "\", \"passage\" : \"" << vk->getBookName() << " " << vk->Chapter() << "\", \"abbrev\": \"" << vk->getBookAbbrev() << "\"}";
if (single == "true") {
verses = VerseKey().ParseVerseList(key.c_str(), "", true);
} else {
tmpPassage << vk->getBookName() << " " << vk->Chapter();
verses = VerseKey().ParseVerseList(tmpPassage.str().c_str(), "", true);
}
AttributeTypeList::iterator i1;
AttributeList::iterator i2;
AttributeValue::iterator i3;
out << "[";
for (verses = TOP; !verses.Error(); verses++) {
vk->setText(verses);
if (strcmp(module->RenderText(), "") != 0) {
//headingOn = 0;
out << "{\"content\": \"" << convertString(module->RenderText()) << "\", ";
out << "\"vnumber\": \"" << vk->Verse() << "\", ";
out << "\"cnumber\": \"" << vk->Chapter() << "\"";
out << ", \"heading\": \"" << convertString(module->getEntryAttributes()["Heading"]["Preverse"]["0"].c_str()) << "\"";
for (i1 = module->getEntryAttributes().begin(); i1 != module->getEntryAttributes().end(); i1++) {
if (strcmp(i1->first, "Footnote") == 0) {
out << ", \"footnotes\": [";
for (i2 = i1->second.begin(); i2 != i1->second.end(); i2++) {
out << "{";
for (i3 = i2->second.begin(); i3 != i2->second.end(); i3++) {
out << "\"" << i3->first << "\": \"" << convertString(i3->second.c_str()) << "\"";
//footnotesOn = 1;
if (i3 != --i2->second.end()) {
out << ", ";
}
}
out << "}";
if (i2 != --i1->second.end()) {
out << ", ";
}
}
out << "]";
} /*else if (strcmp(i1->first, "Word") == 0) {
out << ", \"words\": [";
for (i2 = i1->second.begin(); i2 != i1->second.end(); i2++) {
out << "{";
for (i3 = i2->second.begin(); i3 != i2->second.end(); i3++) {
out << "\"" << i3->first << "\": \"" << convertString(i3->second.c_str()) << "\"";
if (i3 != --i2->second.end()) {
out << ", ";
}
}
out << "}";
if (i2 != --i1->second.end()) {
out << ", ";
}
}
out << "]";
} */
}
if (vk->Chapter() == 1 && vk->Verse() == 1) {
vk->setChapter(0);
vk->setVerse(0);
out << ", \"intro\": \"" << convertString(module->RenderText()) << "\"";
}
out << "}";
ListKey helper = verses;
helper++;
if (!helper.Error()) {
out << ", ";
}
}
}
out << "]";
//.........这里部分代码省略.........
示例5: processText
//.........这里部分代码省略.........
}
}
if (newText) {
textStart = from+1;
newText = false;
}
continue;
}
// if not a strongs token, keep token in text
text.appendFormatted("<%s>", token);
if (newText) {
textStart = text.c_str() + text.length();
newWord = false;
}
continue;
}
if (intoken) {
if ((tokpos < 2045) && ((*from != 10)&&(*from != 13))) {
token[tokpos++] = *from;
token[tokpos+2] = 0;
}
}
else {
switch (*from) {
case '\'':
case '\"':
case '`':
// quoteStack.handleQuote(fromStart, from, &to);
text += *from;
//from++; //this line removes chars after an apostrophe! Needs fixing.
break;
default:
if (newWord && (*from != ' ')) {
wordStart = text.c_str() + text.length();
newWord = false;
//fix this if required?
//memset(to, 0, 10);
}
if (!suspendTextPassThru) {
text += (*from);
lastspace = (*from == ' ');
}
}
}
}
VerseKey *vkey = SWDYNAMIC_CAST(VerseKey, key);
if (vkey) {
SWBuf ref = "";
if (vkey->getVerse()) {
ref.appendFormatted("\t\t<verse osisID=\"%s\">", vkey->getOSISRef());
}
if (ref.length() > 0) {
text = ref + text;
if (vkey->getVerse()) {
VerseKey *tmp = (VerseKey *)vkey->clone();
*tmp = *vkey;
tmp->setAutoNormalize(false);
tmp->setIntros(true);
text += "</verse>";
*tmp = MAXVERSE;
if (*vkey == *tmp) {
tmp->setVerse(0);
// sprintf(ref, "\t</div>");
// pushString(&to, ref);
*tmp = MAXCHAPTER;
*tmp = MAXVERSE;
if (*vkey == *tmp) {
tmp->setChapter(0);
tmp->setVerse(0);
// sprintf(ref, "\t</div>");
// pushString(&to, ref);
/*
if (!quoteStack.empty()) {
SWLog::getSystemLog()->logError("popping unclosed quote at end of book");
quoteStack.clear();
}
*/
}
}
delete tmp;
}
// else if (vkey->Chapter()) {
// sprintf(ref, "\t<div type=\"chapter\" osisID=\"%s\">", vkey->getOSISRef());
// }
// else sprintf(ref, "\t<div type=\"book\" osisID=\"%s\">", vkey->getOSISRef());
}
}
return 0;
}
示例6: main
int main(int argc, char **argv) {
SWMgr mymgr;
RawText::createModule(".");
RawText mod(".");
VerseKey vk;
vk.setIntros(true);
vk.setAutoNormalize(false);
vk.setPersist(true);
mod.setKey(vk);
vk.setVerse(0);
vk.setChapter(0);
vk.setBook(0);
vk.setTestament(0);
mod << "Module heading text";
vk.setVerse(0);
vk.setChapter(0);
vk.setBook(0);
vk.setTestament(1);
mod << "OT heading text";
vk.setTestament(1);
vk.setBook(1);
vk.setChapter(0);
vk.setVerse(0);
mod << "Gen heading text";
vk.setTestament(1);
vk.setBook(1);
vk.setChapter(1);
vk.setVerse(0);
mod << "Gen 1 heading text";
vk.setTestament(1);
vk.setBook(1);
vk.setChapter(1);
vk.setVerse(1);
mod << "Gen 1:1 text";
vk.setTestament(0);
vk.setBook(0);
vk.setChapter(0);
vk.setVerse(0);
std::cout << "Module heading text ?= " << (const char*)mod << std::endl;
vk.setTestament(1);
vk.setBook(0);
vk.setChapter(0);
vk.setVerse(0);
std::cout << "OT heading text ?= " << (const char*)mod << std::endl;
vk.setTestament(1);
vk.setBook(1);
vk.setChapter(0);
vk.setVerse(0);
std::cout << "Gen heading text ?= " << (const char*)mod << std::endl;
vk.setTestament(1);
vk.setBook(1);
vk.setChapter(1);
vk.setVerse(0);
std::cout << "Gen 1 heading text ?= " << (const char*)mod << std::endl;
vk.setTestament(1);
vk.setBook(1);
vk.setChapter(1);
vk.setVerse(1);
std::cout << "Gen 1:1 text ?= " << (const char*)mod << std::endl;
/* old introtest
SWModule *mhc = mymgr.Modules["MHC"];
if (mhc) {
VerseKey vk;
vk.setIntros(true);
vk.setAutoNormalize(false);
vk.setPersist(true);
vk = "jas 0:0";
std::cout << vk << ":\n";
mhc->setKey(vk);
std::cout << (const char *) mhc->Key() << ":\n";
std::cout << (const char *) *mhc << "\n";
}
*/
return 0;
}