本文整理汇总了C++中SWModule::setType方法的典型用法代码示例。如果您正苦于以下问题:C++ SWModule::setType方法的具体用法?C++ SWModule::setType怎么用?C++ SWModule::setType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SWModule
的用法示例。
在下文中一共展示了SWModule::setType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
//.........这里部分代码省略.........
if (!stricmp(driver, "RawText4")) {
newmod = new RawText4(datapath.c_str(), name, description.c_str(), 0, enc, direction, markup, lang.c_str(), versification);
}
// backward support old drivers
if (!stricmp(driver, "RawGBF")) {
newmod = new RawText(datapath.c_str(), name, description.c_str(), 0, enc, direction, markup, lang.c_str());
}
if (!stricmp(driver, "RawCom")) {
newmod = new RawCom(datapath.c_str(), name, description.c_str(), 0, enc, direction, markup, lang.c_str(), versification);
}
if (!stricmp(driver, "RawCom4")) {
newmod = new RawCom4(datapath.c_str(), name, description.c_str(), 0, enc, direction, markup, lang.c_str(), versification);
}
if (!stricmp(driver, "RawFiles")) {
newmod = new RawFiles(datapath.c_str(), name, description.c_str(), 0, enc, direction, markup, lang.c_str());
}
if (!stricmp(driver, "HREFCom")) {
misc1 = ((entry = section.find("Prefix")) != section.end()) ? (*entry).second : (SWBuf)"";
newmod = new HREFCom(datapath.c_str(), misc1.c_str(), name, description.c_str());
}
int pos = 0; //used for position of final / in AbsoluteDataPath, but also set to 1 for modules types that need to strip module name
if (!stricmp(driver, "RawLD")) {
bool caseSensitive = ((entry = section.find("CaseSensitiveKeys")) != section.end()) ? (*entry).second == "true": false;
bool strongsPadding = ((entry = section.find("StrongsPadding")) != section.end()) ? (*entry).second == "true": true;
newmod = new RawLD(datapath.c_str(), name, description.c_str(), 0, enc, direction, markup, lang.c_str(), caseSensitive, strongsPadding);
pos = 1;
}
if (!stricmp(driver, "RawLD4")) {
bool caseSensitive = ((entry = section.find("CaseSensitiveKeys")) != section.end()) ? (*entry).second == "true": false;
bool strongsPadding = ((entry = section.find("StrongsPadding")) != section.end()) ? (*entry).second == "true": true;
newmod = new RawLD4(datapath.c_str(), name, description.c_str(), 0, enc, direction, markup, lang.c_str(), caseSensitive, strongsPadding);
pos = 1;
}
if (!stricmp(driver, "zLD")) {
SWCompress *compress = 0;
int blockCount;
bool caseSensitive = ((entry = section.find("CaseSensitiveKeys")) != section.end()) ? (*entry).second == "true": false;
bool strongsPadding = ((entry = section.find("StrongsPadding")) != section.end()) ? (*entry).second == "true": true;
misc1 = ((entry = section.find("BlockCount")) != section.end()) ? (*entry).second : (SWBuf)"200";
blockCount = atoi(misc1.c_str());
blockCount = (blockCount) ? blockCount : 200;
misc1 = ((entry = section.find("CompressType")) != section.end()) ? (*entry).second : (SWBuf)"LZSS";
#ifndef EXCLUDEZLIB
if (!stricmp(misc1.c_str(), "ZIP"))
compress = new ZipCompress();
else
#endif
if (!stricmp(misc1.c_str(), "LZSS"))
compress = new LZSSCompress();
if (compress) {
newmod = new zLD(datapath.c_str(), name, description.c_str(), blockCount, compress, 0, enc, direction, markup, lang.c_str(), caseSensitive, strongsPadding);
}
pos = 1;
}
if (!stricmp(driver, "RawGenBook")) {
misc1 = ((entry = section.find("KeyType")) != section.end()) ? (*entry).second : (SWBuf)"TreeKey";
newmod = new RawGenBook(datapath.c_str(), name, description.c_str(), 0, enc, direction, markup, lang.c_str(), misc1.c_str());
pos = 1;
}
if (pos == 1) {
SWBuf &dp = section["AbsoluteDataPath"];
for (int i = dp.length() - 1; i; i--) {
if (dp[i] == '/') {
dp.setSize(i);
break;
}
}
/*
SWBuf &rdp = section["RelativeDataPath"];
for (int i = rdp.length() - 1; i; i--) {
if (rdp[i] == '/') {
rdp.setSize(i);
break;
}
}
*/
}
if (newmod) {
// if a specific module type is set in the config, use this
if ((entry = section.find("Type")) != section.end())
newmod->setType(entry->second.c_str());
newmod->setConfig(§ion);
}
return newmod;
}