本文整理汇总了C++中CfgList::GetLiteral方法的典型用法代码示例。如果您正苦于以下问题:C++ CfgList::GetLiteral方法的具体用法?C++ CfgList::GetLiteral怎么用?C++ CfgList::GetLiteral使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CfgList
的用法示例。
在下文中一共展示了CfgList::GetLiteral方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: DoInitialBuildOrders
bool BuildHandler::DoInitialBuildOrders ()
{
// initial build orders completed?
assert (config.InitialOrders);
if (initialBuildOrderTask)
return true;
for (int a=0;a<initialBuildOrderState.size();a++) {
int &state = initialBuildOrderState[a];
if (state < config.InitialOrders->builds[a]->count) {
int type=-1;
int id=config.InitialOrders->builds[a]->def;
BuildTable::UDef *cd = buildTable.GetCachedDef(id);
CfgList* info = config.InitialOrders->builds[a]->info;
const char *handler = info ? info->GetLiteral ("Handler") : 0;
if (handler) {
for (int h=0;h<NUM_TASK_TYPES;h++) {
if(!STRCASECMP(handler, handlerStr[h])) {
type=h;
break;
}
}
if (h == BTF_Force) {
ChatMsgPrintf (ai->cb, "Error: No force units possible in the initial build orders.\n");
state=config.InitialOrders->builds[a]->count;
return false;
}
} else {
if(!cd->IsBuilder()) {
ChatMsgPrintf (ai->cb, "Error in initial buildorder list: unit %s is not a builder\n", cd->name.c_str());
state=config.InitialOrders->builds[a]->count;
return false;
}
}
aiTask *t = initialBuildOrderTask = AddTask (buildTable.GetDef(id), type);
t->MarkAllocated ();
state ++;
return true;
}
}
// all initial build tasks are done
if (!initialBuildOrdersFinished) {
ChatDebugPrintf (ai->cb,"Initial build orders finished.");
DistributeResources ();
initialBuildOrdersFinished=true;
}
return false;
}
示例2: GetDirPath
Genome::Genome(std::string file)
{
filename = file;
CfgList* d = CfgList::LoadFile(file);
// read sequence data
const char* seqfile = d->GetLiteral("SequenceFile");
std::string seqPath = GetDirPath(file) + seqfile;
sequence = ReadTextFile(seqPath);
std::transform(sequence.begin(), sequence.end(), sequence.begin(), ::tolower);
// load global properties
name = d->GetLiteral("LocusName");
topology = d->GetLiteral("LocusTopology");
modificationDate = d->GetLiteral("LocusModificationDate");
definition = d->GetLiteral("Definition");
source = d->GetLiteral("Source");
// load features
CfgList* features = d->GetList("features");
mvec<FeatureProtein*> proteins = LoadFeatureList<FeatureProtein>(features->GetList("CDS"));
members_ptr(proteins, &FeatureProtein::type) |= FeatureProtein::Type_Protein;
mvec<Feature*> tRNA = LoadFeatureList<Feature>(features->GetList("tRNA"));
members_ptr(tRNA, &Feature::type) |= Feature::Type_tRNA;
mvec<Feature*> rRNA = LoadFeatureList<Feature>(features->GetList("rRNA"));
members_ptr(rRNA, &Feature::type) |= Feature::Type_rRNA;
mvec<Feature*> misc_RNA = LoadFeatureList<Feature>(features->GetList("misc_RNA"));
members_ptr(misc_RNA, &Feature::type) |= Feature::Type_MiscRNA;
mvec<Feature*> misc_feature = LoadFeatureList<Feature>(features->GetList("misc_feature"));
members_ptr(misc_feature, &Feature::type) |= Feature::Type_MiscFeature;
genes = tRNA & rRNA & misc_RNA & misc_feature & proteins;
// sort genes
std::sort(genes.begin(), genes.end(), GeneComparer);
delete d;
}