当前位置: 首页>>代码示例>>C++>>正文


C++ XmlDocument::getDocumentElement方法代码示例

本文整理汇总了C++中XmlDocument::getDocumentElement方法的典型用法代码示例。如果您正苦于以下问题:C++ XmlDocument::getDocumentElement方法的具体用法?C++ XmlDocument::getDocumentElement怎么用?C++ XmlDocument::getDocumentElement使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在XmlDocument的用法示例。


在下文中一共展示了XmlDocument::getDocumentElement方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: contstantsDoc

CtrlrIDManager::CtrlrIDManager() : ctrlrIdTree(Ids::ctrlr)
{
    XmlDocument contstantsDoc (String (BinaryData::CtrlrIDs_xml, BinaryData::CtrlrIDs_xmlSize));
    XmlDocument vendorsDoc (String (BinaryData::CtrlrMIDIVendors_xml, BinaryData::CtrlrMIDIVendors_xmlSize));

    {
        ScopedPointer <XmlElement> xml (contstantsDoc.getDocumentElement());
        if (xml)
        {
            ctrlrIdTree = ValueTree::fromXml (*xml);

            if (ctrlrIdTree.isValid())
                constantsTree = ctrlrIdTree.getChildWithName ("constants");
        }
    }

    {
        ScopedPointer <XmlElement> xml (vendorsDoc.getDocumentElement());
        if (xml)
        {
            vendorTree = ValueTree::fromXml (*xml);

            if (vendorTree.isValid())
            {
                /* let's sort it alphabeticaly */
                VendorComparator c;
                vendorTree.sort (c, nullptr, false);
            }
        }
    }
}
开发者ID:noscript,项目名称:ctrlr,代码行数:31,代码来源:CtrlrIDManager.cpp

示例2: createFromImageData

//==============================================================================
Drawable* Drawable::createFromImageData (const void* data, const size_t numBytes)
{
    Drawable* result = 0;

    Image image (ImageFileFormat::loadFrom (data, (int) numBytes));

    if (image.isValid())
    {
        DrawableImage* const di = new DrawableImage();
        di->setImage (image);
        result = di;
    }
    else
    {
        const String asString (String::createStringFromData (data, (int) numBytes));

        XmlDocument doc (asString);
        ScopedPointer <XmlElement> outer (doc.getDocumentElement (true));

        if (outer != 0 && outer->hasTagName ("svg"))
        {
            ScopedPointer <XmlElement> svg (doc.getDocumentElement());

            if (svg != 0)
                result = Drawable::createFromSVG (*svg);
        }
    }

    return result;
}
开发者ID:Labmind,项目名称:GUI,代码行数:31,代码来源:juce_Drawable.cpp

示例3: importTrigger

void TextEditorWindow::importTrigger()
{
  TextBuffer* buf=getTextBuffer();
  String str=(buf->isRegion()) ? buf->getRegion() : buf->getLineAtPoint();
  int a=str.indexOf(T("<trigger"));
  int b=str.lastIndexOf(T("/>"));
  if (a>=0 && a<b)
    {
      XmlDocument doc (str.substring(a,b));
      XmlElement* xml=doc.getDocumentElement();
      int type=TriggerIDs::fromString(xml->getStringAttribute(T("type")));
      if (xml->hasTagName(T("trigger")) && type>TriggerIDs::Empty)
	{
	  Trigger* trig=new Trigger(type);
	  trig->initFromXml(xml);
	  ((EditorComponent*)getContentComponent())->setTrigger(trig);
	  // clear the region if successful so that we don't start
	  // triggering just the left over selection
	  buf->clearRegion();
	}
      else
	Console::getInstance()->printError(T("Buffer region does not contain a valid '<trigger .../>' XML description.\n"));
    }
  else
    Console::getInstance()->printError(T("Buffer region does not contain a '<trigger .../>' XML description.\n"));


}
开发者ID:josephzizys,项目名称:CM,代码行数:28,代码来源:TextEditor.cpp

示例4: saveUnloggedEvents

//==============================================================================
void ProjucerAnalyticsDestination::saveUnloggedEvents (const std::deque<AnalyticsEvent>& eventsToSave)
{
    XmlDocument previouslySavedEvents (savedEventsFile);
    std::unique_ptr<XmlElement> xml (previouslySavedEvents.getDocumentElement());

    if (xml.get() == nullptr || xml->getTagName() != "events")
        xml.reset (new XmlElement ("events"));

    for (auto& event : eventsToSave)
    {
        auto* xmlEvent = new XmlElement ("google_analytics_event");
        xmlEvent->setAttribute ("name", event.name);
        xmlEvent->setAttribute ("type", event.eventType);
        xmlEvent->setAttribute ("timestamp", (int) event.timestamp);
        xmlEvent->setAttribute ("user_id", event.userID);

        auto* parameters = new XmlElement ("parameters");

        for (auto& key : event.parameters.getAllKeys())
            parameters->setAttribute (key, event.parameters[key]);

        xmlEvent->addChildElement (parameters);

        auto* userProperties = new XmlElement ("user_properties");

        for (auto& key : event.userProperties.getAllKeys())
            userProperties->setAttribute (key, event.userProperties[key]);

        xmlEvent->addChildElement (userProperties);

        xml->addChildElement (xmlEvent);
    }

    xml->writeToFile (savedEventsFile, {});
}
开发者ID:olilarkin,项目名称:JUCE,代码行数:36,代码来源:jucer_ProjucerAnalytics.cpp

示例5: readConfig

void XmlParser::readConfig()
{
	XmlDocument* xmlConfigDoc = new XmlDocument(File(File::getCurrentWorkingDirectory().getChildFile(configFile)));
	XmlElement* xmlConfigElem = xmlConfigDoc->getDocumentElement();
	if (xmlConfigElem != NULL) 
	{
		XmlElement* pictures = xmlConfigElem->getChildByName(T("pictures"));
		if (pictures != NULL) 
		{
			if (pictures->hasAttribute(T("path"))) 
			{
				m_picturePath = pictures->getStringAttribute(T("path"));
			}
			else 
			{
				LOG_ERROR(T("Element \"pictures\" is incomplete"));
			}

		}
		else 
		{
			LOG_ERROR(T("Element \"pictures\" not found"));
		}
		delete xmlConfigElem;

	}
	else
	{
		LOG_ERROR((T("XML load failed: %ls"), (const juce_wchar*)xmlConfigDoc->getLastParseError()));
	}
	delete xmlConfigDoc;
}
开发者ID:ptrv,项目名称:MyJuceApp,代码行数:32,代码来源:XmlParser.cpp

示例6: returnSpeciesName

String BirdID::returnSpeciesName(int predictedClass)
{
	XmlDocument myDocument (File ("C:/Users/Aneesh/Desktop/BirdID_Data/species.xml"));
	ScopedPointer<XmlElement> element = myDocument.getDocumentElement();

	XmlElement* speciesElement = element->getChildElement(0);
	int numSpecies = speciesElement->getAllSubText().getIntValue();
	
	speciesElement = element->getChildElement(1);
	String speciesText = speciesElement->getAllSubText();
	int startIndex = 0;
	String tempString;

	for(int i=0;i<numSpecies;i++)
	{
		int endIndex = speciesText.indexOfChar(startIndex+1,',');
		if(i==predictedClass-1)
			{
				tempString = speciesText.substring(startIndex,endIndex);
				break;
			}
		startIndex = endIndex+1;
	}

	element = nullptr;
	
	
	return tempString;
}
开发者ID:aneeshvartakavi,项目名称:birdID,代码行数:29,代码来源:BirdID.cpp

示例7: loadDocument

const String FilterGraph::loadDocument (const File& file)
{
    XmlDocument doc (file);
    ScopedPointer<XmlElement> xml (doc.getDocumentElement());

    if (xml == nullptr || ! xml->hasTagName ("FILTERGRAPH"))
        return "Not a valid filter graph file";

    restoreFromXml (*xml);
    return String::empty;
}
开发者ID:furio,项目名称:pyplasm,代码行数:11,代码来源:FilterGraph.cpp

示例8: loadDocument

Result FilterGraph::loadDocument (const File& file)
{
    XmlDocument doc (file);
    ScopedPointer<XmlElement> xml (doc.getDocumentElement());

    if (xml == nullptr || ! xml->hasTagName ("FILTERGRAPH"))
        return Result::fail ("Not a valid filter graph file");

    restoreFromXml (*xml);
    return Result::ok();
}
开发者ID:Krewn,项目名称:LIOS,代码行数:11,代码来源:FilterGraph.cpp

示例9: loadDocument

Result PMixDocument::loadDocument (const File& file)
{
  XmlDocument doc (file);
  ScopedPointer<XmlElement> xml (doc.getDocumentElement());

  if (xml == nullptr || ! xml->hasTagName ("PMIXDOC"))
    return Result::fail ("Not a valid pMix file");

  restoreFromXml (*xml);
  return Result::ok();
}
开发者ID:olilarkin,项目名称:pMix2,代码行数:11,代码来源:pMixDocument.cpp

示例10: loadXml

bool pspSpatConfig::loadXml(File xmlFile){
    XmlDocument myDocument (xmlFile);
    XmlElement* mainElement = myDocument.getDocumentElement();
    if(!mainElement->hasTagName("SpatConfig")){
        AlertWindow::showMessageBoxAsync (AlertWindow::WarningIcon, "xml file doesn't contain room config data", "", "OK");
        //delete mainElement;
        return false;
    }
    else{
        if(XmlElement* myConfig = mainElement->getChildElement(0)){
            getAttributesFromElement(myConfig);
        }
    }
    
    delete mainElement;
    return true;
}
开发者ID:avperrotta,项目名称:MPSP-GIT,代码行数:17,代码来源:pspSpatConfig.cpp

示例11: loadXmlRoomConfig

bool pspRoomConfigGUI::loadXmlRoomConfig(File xmlFile){
    XmlDocument myDocument (xmlFile);
    XmlElement* mainElement = myDocument.getDocumentElement();
    if (mainElement == nullptr)
    {
        AlertWindow::showMessageBoxAsync (AlertWindow::WarningIcon, "error loading room config xml file !", "", "OK");
        delete mainElement;
        return false;
    }
    else{
        if(!mainElement->hasTagName("RoomConfig")){
            AlertWindow::showMessageBoxAsync (AlertWindow::WarningIcon, "xml file doesn't contain room config data", "", "OK");
            delete mainElement;
            return false;
        }
        else{
            XmlElement* roomSize = mainElement->getChildByName("roomSize");
            if(roomSize){
                static_cast<roomConfigSlider*>(roomDimensions[0])->setValue(roomSize->getDoubleAttribute("width"));
            }
            
            XmlElement* speakers = mainElement->getChildByName("speakers");
            if(speakers != nullptr){
                int ns = speakers->getNumChildElements();
                setNumSpeakers(ns);
                nss->setValue(ns);
                cout<<endl<<speakersPosition.size();
                /*
                for(int i=0; i<ns; i++){
                    static_cast<speakerPositionSlider*>(speakersPosition[3*i+0])->setValue(speakers->getChildElement(i)->getDoubleAttribute("x"));
                    static_cast<speakerPositionSlider*>(speakersPosition[3*i+1])->setValue(speakers->getChildElement(i)->getDoubleAttribute("y"));
                    static_cast<speakerPositionSlider*>(speakersPosition[3*i+2])->setValue(speakers->getChildElement(i)->getDoubleAttribute("z"));
                }
                */
                
            }
            
            
            //delete speakers;
        }
        
    }
    
    delete mainElement;
    return true;
}
开发者ID:avperrotta,项目名称:psPlayground,代码行数:46,代码来源:pspRoomConfigGUI.cpp

示例12: paste

void ComponentLayout::paste()
{
    XmlDocument clip (SystemClipboard::getTextFromClipboard());
    ScopedPointer<XmlElement> doc (clip.getDocumentElement());

    if (doc != nullptr && doc->hasTagName (clipboardXmlTag))
    {
        selected.deselectAll();

        forEachXmlChildElement (*doc, e)
            if (Component* newComp = addComponentFromXml (*e, true))
                selected.addToSelection (newComp);

        startDragging();
        dragSelectedComps (Random::getSystemRandom().nextInt (40),
                           Random::getSystemRandom().nextInt (40));
        endDragging();
    }
开发者ID:Crazybond,项目名称:JUCE,代码行数:18,代码来源:jucer_ComponentLayout.cpp

示例13: loadXml

void pspRandomSystem::loadXml(juce::File xmlFile){
    XmlDocument myDocument (xmlFile);
    XmlElement* mainElement = myDocument.getDocumentElement();
    if (mainElement == nullptr)
    {
        AlertWindow::showMessageBoxAsync (AlertWindow::WarningIcon, "error loading randomTrajectory xml file !", "", "OK");
        delete mainElement;
        return;
    }
    else{
        if(!mainElement->hasTagName("RandomTrajectory")){
            AlertWindow::showMessageBoxAsync (AlertWindow::WarningIcon, "xml file doesn't randomTrajectory data", "", "OK");
            delete mainElement;
            return;
        }
        else{
            XmlElement* params = mainElement->getChildByName("parameterValues");
            if(params){
                int np = params->getIntAttribute("numParticles");
                changeNumParticles(np);
                static_cast<pspParticleSystemGUIGenericComponent*>(myGui->getGenericComponent())->getNumParticleSlider()->setValue(np);
                
                setBounds(1, params->getDoubleAttribute("lxMin"));
                setBounds(2, params->getDoubleAttribute("lxMax"));
                setBounds(3, params->getDoubleAttribute("lyMin"));
                setBounds(4, params->getDoubleAttribute("lyMax"));
                setBounds(5, params->getDoubleAttribute("lzMin"));
                setBounds(6, params->getDoubleAttribute("lzMax"));
                
                static_cast<pspRandomSystemSpecificGUI*>(mySpecificGui)->setSliderValues(params->getDoubleAttribute("lxMin"),
                                                                                         params->getDoubleAttribute("lxMax"),
                                                                                         params->getDoubleAttribute("lyMin"),
                                                                                         params->getDoubleAttribute("lxMax"),
                                                                                         params->getDoubleAttribute("lzMin"),
                                                                                         params->getDoubleAttribute("lzMax"));
            }
        }
    }
    
        
    
    delete mainElement;
}
开发者ID:avperrotta,项目名称:MPSP-GIT,代码行数:43,代码来源:pspRandomSystem.cpp

示例14: getXmlFromBinary

XmlElement* AudioProcessor::getXmlFromBinary (const void* data,
                                              const int sizeInBytes)
{
    if (sizeInBytes > 8
         && ByteOrder::littleEndianInt ((const char*) data) == magicXmlNumber)
    {
        const int stringLength = (int) ByteOrder::littleEndianInt (((const char*) data) + 4);

        if (stringLength > 0)
        {
            XmlDocument doc (String (((const char*) data) + 8,
                                     jmin ((sizeInBytes - 8), stringLength)));

            return doc.getDocumentElement();
        }
    }

    return 0;
}
开发者ID:alessandropetrolati,项目名称:juced,代码行数:19,代码来源:juce_AudioProcessor.cpp

示例15: restoreUnloggedEvents

void ProjucerAnalyticsDestination::restoreUnloggedEvents (std::deque<AnalyticsEvent>& restoredEventQueue)
{
    XmlDocument savedEvents (savedEventsFile);
    std::unique_ptr<XmlElement> xml (savedEvents.getDocumentElement());

    if (xml.get() == nullptr || xml->getTagName() != "events")
        return;

    auto numEvents = xml->getNumChildElements();

    for (int iEvent = 0; iEvent < numEvents; ++iEvent)
    {
        auto* xmlEvent = xml->getChildElement (iEvent);

        StringPairArray parameters;
        auto* xmlParameters = xmlEvent->getChildByName ("parameters");
        auto numParameters = xmlParameters->getNumAttributes();

        for (int iParam = 0; iParam < numParameters; ++iParam)
            parameters.set (xmlParameters->getAttributeName (iParam),
                            xmlParameters->getAttributeValue (iParam));

        StringPairArray userProperties;
        auto* xmlUserProperties = xmlEvent->getChildByName ("user_properties");
        auto numUserProperties = xmlUserProperties->getNumAttributes();

        for (int iProp = 0; iProp < numUserProperties; ++iProp)
            userProperties.set (xmlUserProperties->getAttributeName (iProp),
                                xmlUserProperties->getAttributeValue (iProp));

        restoredEventQueue.push_back ({
            xmlEvent->getStringAttribute ("name"),
            xmlEvent->getIntAttribute ("type"),
            static_cast<uint32> (xmlEvent->getIntAttribute ("timestamp")),
            parameters,
            xmlEvent->getStringAttribute ("user_id"),
            userProperties
        });
    }

    savedEventsFile.deleteFile();
}
开发者ID:olilarkin,项目名称:JUCE,代码行数:42,代码来源:jucer_ProjucerAnalytics.cpp


注:本文中的XmlDocument::getDocumentElement方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。