本文整理汇总了C++中ObjRef::createExporterFromText方法的典型用法代码示例。如果您正苦于以下问题:C++ ObjRef::createExporterFromText方法的具体用法?C++ ObjRef::createExporterFromText怎么用?C++ ObjRef::createExporterFromText使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ObjRef
的用法示例。
在下文中一共展示了ObjRef::createExporterFromText方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: exportTo
bool CellmlFile::exportTo(const QString &pFileName,
const QString &pUserDefinedFormatFileName)
{
// Export the model to the required format, after loading it if necessary
if (load()) {
// Check that the user-defined format file actually exists
if (!QFile::exists(pUserDefinedFormatFileName)) {
mIssues << CellmlFileIssue(CellmlFileIssue::Error,
QObject::tr("the user-defined format file does not exist"));
return false;
}
// Make sure that the user-defined format file is valid XML
// Note: you would normally expect CeLEDSExporter to check this, but all
// it does in case of an invalid XML file is crash...
QString userDefinedFormatFileContents;
if (!Core::readTextFromFile(pUserDefinedFormatFileName, userDefinedFormatFileContents)) {
mIssues << CellmlFileIssue(CellmlFileIssue::Error,
QObject::tr("the user-defined format file could not be read"));
return false;
}
QDomDocument domDocument;
if (!domDocument.setContent(userDefinedFormatFileContents)) {
mIssues << CellmlFileIssue(CellmlFileIssue::Error,
QObject::tr("the user-defined format file is not a valid XML file"));
return false;
}
// Fully instantiate all the imports
if (!fullyInstantiateImports(mModel, mIssues))
return false;
// Do the actual export
ObjRef<iface::cellml_services::CeLEDSExporterBootstrap> celedsExporterBootstrap = CreateCeLEDSExporterBootstrap();
ObjRef<iface::cellml_services::CodeExporter> codeExporter = celedsExporterBootstrap->createExporterFromText(userDefinedFormatFileContents.toStdWString());
if (celedsExporterBootstrap->loadError().length()) {
mIssues << CellmlFileIssue(CellmlFileIssue::Error,
QObject::tr("the user-defined format file could not be loaded"));
return false;
}
// Save the export
if (!Core::writeTextToFile(pFileName, QString::fromStdWString(codeExporter->generateCode(mModel)))) {
mIssues << CellmlFileIssue(CellmlFileIssue::Error,
QObject::tr("the output file could not be saved"));
return false;
}
return true;
} else {
return false;
}
}