本文整理汇总了C++中XNode类的典型用法代码示例。如果您正苦于以下问题:C++ XNode类的具体用法?C++ XNode怎么用?C++ XNode使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了XNode类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: Load
void TitleSubst::Load(const std::string &filename, const std::string §ion)
{
XNode xml;
if( !XmlFileUtil::LoadFromFileShowErrors(xml,filename) )
{
// LoadFromFile will show its own error
//LOG->Trace("Error opening %s: %s", filename.c_str(), f.GetError().c_str() );
return;
}
XNode *pGroup = xml.GetChild( section );
if( pGroup == nullptr )
{
return;
}
for (auto const *child: *pGroup)
{
if( child == nullptr || child->GetName() != "Translation" )
{
continue;
}
TitleTrans tr;
tr.LoadFromNode( child );
AddTrans(tr);
}
}
开发者ID:dguzek,项目名称:stepmania,代码行数:26,代码来源:TitleSubstitution.cpp
示例2:
bool
RouteAddress::XMLStore(XNode *pParentNode, int iOptions)
{
XNode *pNode = pParentNode->AppendChild(_T("RouteAddress"));
pNode->AppendAttr(_T("Name"), m_sAddress);
return true;
}
开发者ID:Bill48105,项目名称:hmailserver,代码行数:9,代码来源:RouteAddress.cpp
示例3: XNode
XNode* TapNote::CreateNode() const
{
XNode *p = new XNode( "TapNote" );
p->AppendChild( result.CreateNode() );
p->AppendChild( HoldResult.CreateNode() );
return p;
}
开发者ID:Highlogic,项目名称:stepmania-event,代码行数:9,代码来源:NoteTypes.cpp
示例4: CreateNode
XNode* SongID::CreateNode() const
{
XNode* pNode = new XNode;
pNode->name = "Song";
pNode->AppendAttr( "Dir", sDir );
return pNode;
}
开发者ID:Fighter19,项目名称:PSPMania,代码行数:9,代码来源:SongUtil.cpp
示例5: XNode
XNode* TrailID::CreateNode() const
{
XNode* pNode = new XNode( "Trail" );
pNode->AppendAttr( "StepsType", GAMEMAN->GetStepsTypeInfo(st).szName );
pNode->AppendAttr( "CourseDifficulty", DifficultyToString(cd) );
return pNode;
}
开发者ID:Highlogic,项目名称:stepmania-event,代码行数:9,代码来源:TrailUtil.cpp
示例6:
bool
FetchAccountUID::XMLStore(XNode *pUIDsNode, int iOptions)
{
XNode *pUIDNode = pUIDsNode->AppendChild(_T("UID"));
pUIDNode->AppendAttr(_T("UID"), uid_);
pUIDNode->AppendAttr(_T("Date"), date_);
return true;
}
开发者ID:AimaTeam-hehai,项目名称:hmailserver,代码行数:10,代码来源:FetchAccountUID.cpp
示例7:
bool
BlockedAttachment::XMLStore(XNode *pParentNode, int iOptions)
{
XNode *pNode = pParentNode->AppendChild(_T("BlockedAttachment"));
pNode->AppendAttr(_T("Name"), m_sWildcard);
pNode->AppendAttr(_T("Description"), m_sDescription);
return true;
}
开发者ID:Bill48105,项目名称:hmailserver,代码行数:10,代码来源:BlockedAttachment.cpp
示例8: GetName
bool
TCPIPPort::XMLStore(XNode *pParentNode, int iOptions)
{
XNode *pNode = pParentNode->AppendChild(_T("TCPIPPort"));
pNode->AppendAttr(_T("Name"), GetName());
pNode->AppendAttr(_T("PortProtocol"), StringParser::IntToString(m_iPortProtocol));
pNode->AppendAttr(_T("PortNumber"), StringParser::IntToString(m_iPortNumber));
//JDR: added the following code to set if we are using a StartTLS connection.
if (m_bUseSSL == true){
pNode->AppendAttr(_T("UseSSL"), _T("1"));
} else if (m_bUseSTARTTLS == true){
LOG_DEBUG("Set UseSTARTLS");
pNode->AppendAttr(_T("UseSSL"), _T("2"));
} else {
pNode->AppendAttr(_T("UseSSL"), _T("0"));
}
pNode->AppendAttr(_T("Address"), String(_address.ToString()));
if (m_iSSLCertificateID > 0)
{
pNode->AppendAttr(_T("SSLCertificateName"), _GetSSLCertificateName(m_iSSLCertificateID));
}
return true;
}
开发者ID:jrallo,项目名称:hMailServer,代码行数:26,代码来源:TCPIPPort.cpp
示例9:
bool
SSLCertificate::XMLStore(XNode *pParentNode, int iOptions)
{
XNode *pNode = pParentNode->AppendChild(_T("SSLCertificate"));
pNode->AppendAttr(_T("Name"), m_sName);
pNode->AppendAttr(_T("CertificateFile"), m_sCertificateFile);
pNode->AppendAttr(_T("PrivateKeyFile"), m_sPrivateKeyFile);
return true;
}
开发者ID:Bill48105,项目名称:hmailserver,代码行数:11,代码来源:SSLCertificate.cpp
示例10:
bool
SSLCertificate::XMLStore(XNode *pParentNode, int iOptions)
{
XNode *pNode = pParentNode->AppendChild(_T("SSLCertificate"));
pNode->AppendAttr(_T("Name"), name_);
pNode->AppendAttr(_T("CertificateFile"), certificate_file_);
pNode->AppendAttr(_T("PrivateKeyFile"), private_key_file_);
return true;
}
开发者ID:AimaTeam-hehai,项目名称:hmailserver,代码行数:11,代码来源:SSLCertificate.cpp
示例11:
bool
ACLPermission::XMLStore(XNode *pParentNode, int iOptions)
{
XNode *pNode = pParentNode->AppendChild(_T("Permission"));
pNode->AppendAttr(_T("Type"), StringParser::IntToString(m_iPermissionType));
pNode->AppendAttr(_T("Rights"), StringParser::IntToString(m_iValue));
pNode->AppendAttr(_T("Holder"), _GetPermissionHolderName(this));
return true;
}
开发者ID:bogri5520,项目名称:hMailServer,代码行数:11,代码来源:ACLPermission.cpp
示例12: CreateNode
XNode* CourseID::CreateNode() const
{
XNode* pNode = new XNode;
pNode->name = "Course";
if( !sPath.empty() )
pNode->AppendAttr( "Path", sPath );
if( !sFullTitle.empty() )
pNode->AppendAttr( "FullTitle", sFullTitle );
return pNode;
}
开发者ID:augustg,项目名称:stepmania-3.9,代码行数:12,代码来源:CourseUtil.cpp
示例13: SaveEditableDataToDir
bool Profile::SaveAllToDir( CString sDir, bool bSignData ) const
{
m_sLastPlayedMachineGuid = PROFILEMAN->GetMachineProfile()->m_sGuid;
m_LastPlayedDate = DateTime::GetNowDate();
// Save editable.xml
SaveEditableDataToDir( sDir );
// Save stats.xml
CString fn = sDir + STATS_XML;
XNode xml;
xml.name = "Stats";
xml.AppendChild( SaveGeneralDataCreateNode() );
xml.AppendChild( SaveSongScoresCreateNode() );
xml.AppendChild( SaveCourseScoresCreateNode() );
xml.AppendChild( SaveCategoryScoresCreateNode() );
xml.AppendChild( SaveScreenshotDataCreateNode() );
xml.AppendChild( SaveCalorieDataCreateNode() );
xml.AppendChild( SaveRecentSongScoresCreateNode() );
xml.AppendChild( SaveRecentCourseScoresCreateNode() );
if( IsMachine() )
xml.AppendChild( SaveCoinDataCreateNode() );
DISP_OPT opts = optDefault;
opts.stylesheet = STATS_XSL;
opts.write_tabs = false;
bool bSaved = xml.SaveToFile(fn, &opts);
// Update file cache, or else IsAFile in CryptManager won't see this new file.
FILEMAN->FlushDirCache( sDir );
if( bSaved && bSignData )
{
CString sStatsXmlSigFile = fn+SIGNATURE_APPEND;
CryptManager::SignFileToFile(fn, sStatsXmlSigFile);
// Update file cache, or else IsAFile in CryptManager won't see sStatsXmlSigFile.
FILEMAN->FlushDirCache( sDir );
// Save the "don't share" file
CString sDontShareFile = sDir + DONT_SHARE_SIG;
CryptManager::SignFileToFile(sStatsXmlSigFile, sDontShareFile);
}
SaveStatsWebPageToDir( sDir );
// Empty directories if none exist.
FILEMAN->CreateDir( sDir + EDITS_SUBDIR );
FILEMAN->CreateDir( sDir + SCREENSHOTS_SUBDIR );
return bSaved;
}
开发者ID:augustg,项目名称:stepmania-3.9,代码行数:53,代码来源:Profile.cpp
示例14:
void
BackupExecuter::_RestoreDataDirectory(shared_ptr<Backup> pBackup, XNode *pBackupNode)
{
XNode *pBackupInfoNode = pBackupNode->GetChild(_T("BackupInformation"));
// Create the path to the zip file.
String sBackupFile = pBackup->GetBackupFile();
String sPath = sBackupFile.Mid(0, sBackupFile.ReverseFind(_T("\\")));
String sDirContainingDataFiles;
String sDataFileFormat = pBackupInfoNode->GetChildAttr(_T("DataFiles"), _T("Format"))->value;
String sExtractedFilesDirectory;
if (sDataFileFormat.CompareNoCase(_T("7Z")) == 0)
{
// Create the path to the directory that will contain the extracted files.
// This directory is temporary and will be removed when we're done.
sExtractedFilesDirectory = Utilities::GetUniqueTempDirectory();
// Extract the files to this directory.
Compression oComp;
oComp.Uncompress(sBackupFile, sExtractedFilesDirectory);
// The data files in the zip file are stored in
// a directory called DataBackup.
sDirContainingDataFiles = sExtractedFilesDirectory + "\\DataBackup";
}
else
{
// Fetch the path to the data files.
String sFolderName = pBackupInfoNode->GetChildAttr(_T("DataFiles"), _T("FolderName"))->value;
sDirContainingDataFiles = sPath + "\\" + sFolderName;
}
// Delete all directories from the data directory
// so that we're sure that we're doing a clean restore
String sDataDirectory = IniFileSettings::Instance()->GetDataDirectory();
std::set<String> vecExcludes;
FileUtilities::DeleteFilesInDirectory(sDataDirectory);
FileUtilities::DeleteDirectoriesInDirectory(sDataDirectory, vecExcludes);
String errorMessage;
FileUtilities::CopyDirectory(sDirContainingDataFiles, sDataDirectory, errorMessage);
if (sDataFileFormat.CompareNoCase(_T("7z")) == 0)
{
// The temporary directory we created while
// unzipping should be deleted now.
FileUtilities::DeleteDirectory(sExtractedFilesDirectory);
}
}
开发者ID:Bill48105,项目名称:hmailserver,代码行数:52,代码来源:BackupExecuter.cpp
示例15: XNode
XNode* StepsID::CreateNode() const
{
XNode* pNode = new XNode( "Steps" );
pNode->AppendAttr( "StepsType", GAMEMAN->GetStepsTypeInfo(st).szName );
pNode->AppendAttr( "Difficulty", DifficultyToString(dc) );
if( dc == Difficulty_Edit )
{
pNode->AppendAttr( "Description", sDescription );
pNode->AppendAttr( "Hash", uHash );
}
return pNode;
}
开发者ID:Ancaro,项目名称:stepmania,代码行数:14,代码来源:StepsUtil.cpp
示例16: STATE_TEXT
bool ScreenArcadePatch::GetXMLData( RageFileDriverZip *fZip, CString &sGame, CString &sMessage, int &iRevision )
{
int iError;
RageFileBasic *fXML = fZip->Open( "patch.xml", RageFile::READ, iError );
if( fXML == NULL )
{
STATE_TEXT( "Patch information check failed: could not open patch.xml." );
return false;
}
/* check the actual XML data now */
XNode *pNode = new XNode;
pNode->m_sName = "Patch";
pNode->LoadFromFile( *fXML );
if( !pNode->GetChild("Game") || !pNode->GetChild("Revision") || !pNode->GetChild("Message") )
{
STATE_TEXT( "Patch information check failed: patch.xml is corrupt." );
SAFE_DELETE( pNode );
SAFE_DELETE( fXML );
return false;
}
/* save the patch data */
pNode->GetChild("Revision")->GetValue(iRevision);
sGame = pNode->GetChildValue("Game");
sMessage = pNode->GetChildValue("Message");
SAFE_DELETE( pNode );
SAFE_DELETE( fXML );
return true;
}
开发者ID:Braunson,项目名称:openitg,代码行数:34,代码来源:ScreenArcadePatch.cpp
示例17: GetName
bool
WhiteListAddress::XMLStore(XNode *pParentNode, int iOptions)
{
XNode *pNode = pParentNode->AppendChild(_T("WhiteAddress"));
pNode->AppendAttr(_T("Name"), GetName());
pNode->AppendAttr(_T("LowerIPAddress"), String(m_iWhiteLowerIPAddress.ToString()));
pNode->AppendAttr(_T("UpperIPAddress"), String(m_iWhiteUpperIPAddress.ToString()));
pNode->AppendAttr(_T("EMailAddress"), m_sWhiteEmailAddress);
pNode->AppendAttr(_T("Description"), m_sWhiteDescription);
return true;
}
开发者ID:jrallo,项目名称:hMailServer,代码行数:15,代码来源:WhiteListAddress.cpp
示例18: XNode
XNode* HighScoreList::CreateNode() const
{
XNode* pNode = new XNode( "HighScoreList" );
pNode->AppendChild( "NumTimesPlayed", iNumTimesPlayed );
pNode->AppendChild( "LastPlayed", dtLastPlayed.GetString() );
if( HighGrade != Grade_NoData )
pNode->AppendChild( "HighGrade", GradeToString(HighGrade) );
for( unsigned i=0; i<vHighScores.size(); i++ )
{
const HighScore &hs = vHighScores[i];
pNode->AppendChild( hs.CreateNode() );
}
return pNode;
}
开发者ID:KingMew,项目名称:stepmania,代码行数:17,代码来源:HighScore.cpp
示例19: ssprintf
void PlayerAI::InitFromDisk()
{
IniFile ini;
ini.ReadFile( AI_PATH );
for( int i=0; i<NUM_SKILL_LEVELS; i++ )
{
CString sKey = ssprintf("Skill%d", i);
XNode* pNode = ini.GetChild(sKey);
if( pNode == NULL )
RageException::Throw( "AI.ini: '%s' doesn't exist.", sKey.c_str() );
TapScoreDistribution& dist = g_Distributions[i];
dist.fPercent[TNS_NONE] = 0;
pNode->GetAttrValue( "MissWeight", dist.fPercent[TNS_MISS] );
pNode->GetAttrValue( "BooWeight", dist.fPercent[TNS_BOO] );
pNode->GetAttrValue( "GoodWeight", dist.fPercent[TNS_GOOD] );
pNode->GetAttrValue( "GreatWeight", dist.fPercent[TNS_GREAT] );
pNode->GetAttrValue( "PerfectWeight", dist.fPercent[TNS_PERFECT] );
pNode->GetAttrValue( "MarvelousWeight", dist.fPercent[TNS_MARVELOUS] );
float fSum = 0;
for( int j=0; j<NUM_TAP_NOTE_SCORES; j++ )
fSum += dist.fPercent[j];
for( int j=0; j<NUM_TAP_NOTE_SCORES; j++ )
dist.fPercent[j] /= fSum;
}
}
开发者ID:BitMax,项目名称:openitg,代码行数:28,代码来源:PlayerAI.cpp
示例20: augeGetFilterFactoryInstance
OrderBy* GetFeatureRequest::ParserOrderBy(XElement* pxOrderBy)
{
OrderBy* pOrderBy = NULL;
FilterFactory* pFilterFactory = augeGetFilterFactoryInstance();
if(!pxOrderBy->HasChildren())
{
return NULL;
}
pOrderBy = pFilterFactory->CreateOrderBy();
char field_name[AUGE_NAME_MAX];
const char* property_name = NULL;
XNode* pxNode = NULL;
XNodeSet* pxNodeSet = pxOrderBy->GetChildren("PropertyName");
pxNodeSet->Reset();
while((pxNode=pxNodeSet->Next())!=NULL)
{
property_name = pxNode->GetContent();
if(strlen(property_name)>0)
{
ParseFieldName(property_name, field_name, AUGE_NAME_MAX);
pOrderBy->AddField(field_name);
}
}
pxNodeSet->Release();
XAttribute* pxAttr = pxOrderBy->GetAttribute("order");
if(pxAttr!=NULL)
{
const char* order = pxAttr->GetValue();
if(order!=NULL)
{
if(g_stricmp(order,"desc")==0)
{
pOrderBy->SetOrder(augeOrderDesc);
}
//pxAttr->Release();
}
}
return pOrderBy;
}
开发者ID:marsprj,项目名称:Auge.GIS,代码行数:44,代码来源:GetFeatureRequest.cpp
注:本文中的XNode类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论