Skip to content
Snippets Groups Projects
Commit fab0a93a authored by Vakhtang Tsulaia's avatar Vakhtang Tsulaia
Browse files

Merge branch 'master-geomodelxml' into 'master'

Fixes in GeoModelXml (from Scott)

See merge request !88
parents 00ca06a5 e469477c
No related branches found
No related tags found
1 merge request!88Fixes in GeoModelXml (from Scott)
......@@ -8,9 +8,6 @@
#include <xercesc/dom/DOMLSParser.hpp>
#include <iostream>
using namespace std;
using namespace xercesc;
DOMDocument *createDOMDocument(string xmlFile, DOMLSParser *parser, unsigned int flags = 0);
xercesc::DOMDocument *createDOMDocument(std::string xmlFile, xercesc::DOMLSParser *parser, unsigned int flags = 0);
#endif // CREATEDOMDOCUMENT_H
......@@ -28,6 +28,7 @@
#include "GeoModelXml/MaterialManager.h"
using namespace std;
using namespace xercesc;
Gmx2Geo::Gmx2Geo(const string xmlFile, GeoPhysVol *addHere, GmxInterface &gmxInterface, unsigned int flags, bool useMatManager) {
//
......
......@@ -65,10 +65,11 @@ GeoNameTag *physVolName;
// Check it is a shape... its parent should be a <shapes>. DTD cannot do this for us.
DOMNode *parent = refShape->getParentNode();
if (XMLString::compareIString(parent->getNodeName(), XMLString::transcode("shapes")) != 0) {
char* shape_s = XMLString::transcode (shape);
msglog << MSG::FATAL << "Processing logvol " << name <<
". Error in gmx file. An IDREF for a logvol shape did not refer to a shape.\n" <<
"Shape ref was " << shape << "; exiting" << endmsg;
"Shape ref was " << shape_s << "; exiting" << endmsg;
XMLString::release (&shape_s);
exit (1); // Need to improve...
}
//
......@@ -90,10 +91,12 @@ GeoNameTag *physVolName;
parent = refMaterial->getParentNode();
XMLCh * materials_tmp = XMLString::transcode("materials");
if (XMLString::compareIString(parent->getNodeName(), materials_tmp) != 0) {
msglog << MSG::FATAL << "Processing logvol " << name <<
char* material_s = XMLString::transcode (material);
msglog << MSG::FATAL << "Processing logvol " << name <<
". Error in gmx file. An IDREF for a logvol material did not refer to a material.\n" <<
"Material ref was " << material << "; exiting" << endmsg;
exit (1); // Need to improve...
"Material ref was " << material_s << "; exiting" << endmsg;
XMLString::release (&material_s);
exit (1); // Need to improve...
}
std::string nam_mat=XMLString::transcode(material);
......
......@@ -31,9 +31,11 @@ const RCBase *MakeShaperef::process(const DOMElement *element, GmxUtil &gmxUtil)
//
DOMNode *parent = shape->getParentNode();
if (XMLString::compareIString(parent->getNodeName(), shapes_tmp) != 0) {
msglog << MSG::FATAL << "Error processing <shaperef> tag: An IDREF for a shape did not refer to a shape.\nShape ref was " <<
idref << "; exiting" << endmsg;
exit (1); // Need to improve...
char* idref_s = XMLString::transcode (idref);
msglog << MSG::FATAL << "Error processing <shaperef> tag: An IDREF for a shape did not refer to a shape.\nShape ref was " <<
idref_s << "; exiting" << endmsg;
XMLString::release (&idref_s);
exit (1); // Need to improve...
}
//
// Get what sort of shape
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment