13#include "Teuchos_CommHelpers.hpp"
16 const std::string &xmlFileName,
17 const Ptr<ParameterList> ¶mList,
18 const Comm<int> &comm,
22 if (comm.getSize()==1)
25 if (comm.getRank()==0) {
26 XMLParameterListReader xmlPLReader;
27 xmlPLReader.setAllowsDuplicateSublists(
false );
28 FileInputSource xmlFile(xmlFileName);
29 XMLObject xmlParams = xmlFile.getObject();
30 std::string xmlString = toString(xmlParams);
31 int strsize =
static_cast<int>(xmlString.size());
32 broadcast<int, int>(comm, 0, &strsize);
33 broadcast<int, char>(comm, 0, strsize, &xmlString[0]);
38 broadcast<int, int>(comm, 0, &strsize);
39 std::string xmlString;
40 xmlString.resize(strsize);
41 broadcast<int, char>(comm, 0, strsize, &xmlString[0]);
Additional ParameterList XML helper functions including parallel support.
Writes an XML object to a parameter list.
TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT void updateParametersFromXmlString(const std::string &xmlStr, const Ptr< ParameterList > ¶mList, bool overwrite=true)
Reads XML parameters from a std::string and updates those already in the given parameter list.
TEUCHOSPARAMETERLIST_LIB_DLL_EXPORT void updateParametersFromXmlFile(const std::string &xmlFileName, const Ptr< ParameterList > ¶mList)
Reads XML parameters from a file and updates those already in the given parameter list.
TEUCHOSCOMM_LIB_DLL_EXPORT void updateParametersFromXmlFileAndBroadcast(const std::string &xmlFileName, const Ptr< ParameterList > ¶mList, const Comm< int > &comm, bool overwrite=true)
On processor rank = 0, reads XML parameters from a file and broadcasts them to all other processors....