Commit 15b20fb9 authored by Kenneth Leiter's avatar Kenneth Leiter
Browse files

ENH: Begin adding install rules. Modify bug in XdmfWriter that resulted in...

ENH: Begin adding install rules.  Modify bug in XdmfWriter that resulted in XdmfArrays not being written in certain cases.
parent 259e3eba
...@@ -57,4 +57,7 @@ if(XDMF_BUILD_UTILS) ...@@ -57,4 +57,7 @@ if(XDMF_BUILD_UTILS)
add_subdirectory(utils) add_subdirectory(utils)
endif(XDMF_BUILD_UTILS) endif(XDMF_BUILD_UTILS)
file(GLOB XdmfHeaders *.hpp)
install(FILES ${XdmfHeaders} DESTINATION include)
install(TARGETS Xdmf LIBRARY DESTINATION lib)
...@@ -57,4 +57,8 @@ if(XDMF_WRAP_PYTHON) ...@@ -57,4 +57,8 @@ if(XDMF_WRAP_PYTHON)
swig_link_libraries(XdmfCore XdmfCore ${PYTHON_LIBRARIES}) swig_link_libraries(XdmfCore XdmfCore ${PYTHON_LIBRARIES})
endif(XDMF_WRAP_PYTHON) endif(XDMF_WRAP_PYTHON)
file(GLOB XdmfCoreHeaders *.hpp)
install(FILES ${XdmfCoreHeaders} DESTINATION include)
install(TARGETS XdmfCore LIBRARY DESTINATION lib)
set(XdmfCore_INCLUDE_DIRS ${Boost_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR} ${HDF5_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR} ${PYTHON_INCLUDE_DIRS} CACHE INTERNAL "") set(XdmfCore_INCLUDE_DIRS ${Boost_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR} ${HDF5_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR} ${PYTHON_INCLUDE_DIRS} CACHE INTERNAL "")
\ No newline at end of file
...@@ -157,7 +157,7 @@ void XdmfWriter::visit(XdmfArray & array, const boost::shared_ptr<XdmfBaseVisito ...@@ -157,7 +157,7 @@ void XdmfWriter::visit(XdmfArray & array, const boost::shared_ptr<XdmfBaseVisito
this->visit(dynamic_cast<XdmfItem &>(array), visitor); this->visit(dynamic_cast<XdmfItem &>(array), visitor);
} }
if(array.size() > 0 && !mImpl->mLastXPathed) if(array.size() > 0 && !(mImpl->mLastXPathed && isSubclassed))
{ {
std::stringstream xmlTextValues; std::stringstream xmlTextValues;
......
...@@ -3,7 +3,6 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}) ...@@ -3,7 +3,6 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
option(XDMF_BUILD_EXODUS_IO OFF) option(XDMF_BUILD_EXODUS_IO OFF)
option(XDMF_BUILD_PARTITIONER OFF) option(XDMF_BUILD_PARTITIONER OFF)
set(XdmfUtilsExecutables)
set(XdmfUtilsSources set(XdmfUtilsSources
XdmfTopologyConverter XdmfTopologyConverter
) )
...@@ -46,3 +45,9 @@ if(XDMF_WRAP_PYTHON) ...@@ -46,3 +45,9 @@ if(XDMF_WRAP_PYTHON)
swig_add_module(XdmfUtils python XdmfUtils.i) swig_add_module(XdmfUtils python XdmfUtils.i)
swig_link_libraries(XdmfUtils XdmfUtils ${PYTHON_LIBRARIES}) swig_link_libraries(XdmfUtils XdmfUtils ${PYTHON_LIBRARIES})
endif(XDMF_WRAP_PYTHON) endif(XDMF_WRAP_PYTHON)
foreach(source ${XdmfUtilsSources})
set(XdmfUtilsHeaders ${XdmfUtilsHeaders} ${source}.hpp)
endforeach(source ${XdmfUtilsSources})
install(FILES ${XdmfUtilsHeaders} DESTINATION include)
install(TARGETS ${XdmfUtilsExecutables} RUNTIME DESTINATION bin)
...@@ -30,7 +30,7 @@ public: ...@@ -30,7 +30,7 @@ public:
* Read the contents of an ExodusII file from disk into an Xdmf structure in memory.. * Read the contents of an ExodusII file from disk into an Xdmf structure in memory..
* *
* @param fileName containing the path of the exodus file to read. * @param fileName containing the path of the exodus file to read.
* @param heavyDataWriter an XdmfHDF5Writer to write the mesh to. If no heavyDataWriter is specified, all mesh data will remain in memory. * @param heavyDataWriter an XdmfHDF5Writer to write the mesh to. If no heavyDataWriter is specified, all mesh data will remain in memory.
* *
* @return XdmfGrid containing the mesh stored in the ExodusII file. * @return XdmfGrid containing the mesh stored in the ExodusII file.
*/ */
......
...@@ -276,10 +276,8 @@ boost::shared_ptr<XdmfGridCollection> XdmfPartitioner::partition(const boost::sh ...@@ -276,10 +276,8 @@ boost::shared_ptr<XdmfGridCollection> XdmfPartitioner::partition(const boost::sh
boost::shared_ptr<XdmfAttribute> createdAttribute = boost::shared_ptr<XdmfAttribute>(); boost::shared_ptr<XdmfAttribute> createdAttribute = boost::shared_ptr<XdmfAttribute>();
if(currAttribute->getCenter() == XdmfAttributeCenter::Grid()) if(currAttribute->getCenter() == XdmfAttributeCenter::Grid())
{ {
if(partitionId == 0) // Insert into each partition
{ createdAttribute = currAttribute;
createdAttribute = currAttribute;
}
} }
else if(currAttribute->getCenter() == XdmfAttributeCenter::Cell() || else if(currAttribute->getCenter() == XdmfAttributeCenter::Cell() ||
currAttribute->getCenter() == XdmfAttributeCenter::Face() || currAttribute->getCenter() == XdmfAttributeCenter::Face() ||
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment