[cig-commits] r13575 - in cs/cigma/trunk: . src src/tmp tests/pytests

luis at geodynamics.org luis at geodynamics.org
Tue Dec 9 18:14:52 PST 2008


Author: luis
Date: 2008-12-09 18:14:52 -0800 (Tue, 09 Dec 2008)
New Revision: 13575

Added:
   cs/cigma/trunk/src/tmp/
   cs/cigma/trunk/src/tmp/py_FileReader.cpp
   cs/cigma/trunk/src/tmp/py_FileReader.h
   cs/cigma/trunk/src/tmp/py_FileWriter.cpp
   cs/cigma/trunk/src/tmp/py_FileWriter.h
Removed:
   cs/cigma/trunk/src/py_FileReader.cpp
   cs/cigma/trunk/src/py_FileReader.h
   cs/cigma/trunk/src/py_FileWriter.cpp
   cs/cigma/trunk/src/py_FileWriter.h
   cs/cigma/trunk/tests/pytests/test_reader.py
   cs/cigma/trunk/tests/pytests/test_writer.py
Modified:
   cs/cigma/trunk/Makefile.am
   cs/cigma/trunk/src/py_cigma_module.cpp
   cs/cigma/trunk/src/py_cigma_setup.py
   cs/cigma/trunk/tests/pytests/runner.py
Log:
Prune File{Reader,Writer} from _cigma module

We allocate objects and read data directly from Python,
so there's no need to wrap those file operations.

Modified: cs/cigma/trunk/Makefile.am
===================================================================
--- cs/cigma/trunk/Makefile.am	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/Makefile.am	2008-12-10 02:14:52 UTC (rev 13575)
@@ -327,10 +327,6 @@
 	src/py_Field.cpp \
 	src/py_Residuals.h \
 	src/py_Residuals.cpp \
-	src/py_FileReader.h \
-	src/py_FileReader.cpp \
-	src/py_FileWriter.h \
-	src/py_FileWriter.cpp \
 	src/py_CompareOp.cpp \
 	src/py_EvalOp.cpp \
 	src/py_ExtractOp.cpp \

Deleted: cs/cigma/trunk/src/py_FileReader.cpp
===================================================================
--- cs/cigma/trunk/src/py_FileReader.cpp	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/src/py_FileReader.cpp	2008-12-10 02:14:52 UTC (rev 13575)
@@ -1,130 +0,0 @@
-#include "py_FileReader.h"
-#include "numpy_util.h"
-
-using namespace cigma;
-using namespace boost::python;
-
-// ----------------------------------------------------------------------------
-
-FileReader::ReaderType pyFileReader::getReaderType()
-{
-    return this->get_override("getReaderType")();
-}
-
-int pyFileReader::open(const char *filename)
-{
-    return this->get_override("open")(filename);
-}
-
-int pyFileReader::close()
-{
-    return this->get_override("close")();
-}
-
-int pyFileReader::getDataset(const char *loc, double **data, int *num, int *dim)
-{
-    return -1;
-}
-
-int pyFileReader::getCoordinates(const char *loc, double **coordinates, int *nno, int *nsd)
-{
-    return -1;
-}
-
-int pyFileReader::getConnectivity(const char *loc, int **connectivity, int *nel, int *ndofs)
-{
-    return -1;
-}
-
-// ----------------------------------------------------------------------------
-
-int pyNullReader::open(const char *filename)
-{
-    // XXX: use std::ostringstream to put filename in error string
-    PyErr_SetString(PyExc_IOError, "Cannot open <filename> with NullReader");
-    throw_error_already_set();
-    return -1;
-}
-
-int pyNullReader::close()
-{
-    PyErr_SetString(PyExc_IOError, "Cannot close a NullReader instance");
-    throw_error_already_set();
-    return -1;
-}
-
-// ----------------------------------------------------------------------------
-
-int pyTextReader::open(const char *filename)
-{
-    // anything to do? (validation-wise)
-    return TextReader::open(filename);
-}
-
-int pyTextReader::close()
-{
-    // anything to do? (validation-wise)
-    return TextReader::close();
-}
-
-// ----------------------------------------------------------------------------
-
-#ifdef HAVE_HDF5
-#endif
-
-// ----------------------------------------------------------------------------
-
-#ifdef HAVE_VTK
-#endif
-
-// ----------------------------------------------------------------------------
-
-void export_FileReader()
-{
-    using namespace cigma;
-    using namespace boost::python;
-
-    enum_<FileReader::ReaderType>("FileReaderType")
-        .value("NULL_READER", FileReader::NULL_FILE_READER)
-        .value("HDF5_READER", FileReader::HDF5_FILE_READER)
-        .value("VTK_READER", FileReader::VTK_FILE_READER)
-        .value("TEXT_READER", FileReader::TEXT_FILE_READER)
-        //.export_values()
-        ;
-
-    class_<pyFileReader, boost::noncopyable>("FileReader")
-        .def("open", pure_virtual(&FileReader::open))
-        .def("close", pure_virtual(&FileReader::close))
-        .def("type", pure_virtual(&FileReader::getReaderType))
-        ;
-
-    class_<pyNullReader, boost::noncopyable>("NullReader")
-        .def("open", &pyNullReader::open)
-        .def("close", &pyNullReader::close)
-        ;
-
-    class_<pyTextReader, boost::noncopyable>("TextReader")
-        .def("open", &pyTextReader::open)
-        .def("close", &pyTextReader::close)
-        ;
-
-#ifdef HAVE_HDF5
-    class_<pyHDF5Reader, boost::noncopyable>("HDF5Reader")
-        .def("open", &pyHDF5Reader::open)
-        .def("close", &pyHDF5Reader::close)
-        ;
-#endif
-
-#ifdef HAVE_VTK
-    class_<pyVTKReader, boost::noncopyable>("VTKReader")
-        .def("open", &pyVTKReader::open)
-        .def("close", &pyVTKReader::close)
-        ;
-    class_<pyUCDReader, boost::noncopyable>("UCDReader")
-        .def("open", &pyUCDReader::open)
-        .def("close", &pyUCDReader::close)
-        ;
-#endif
-
-
-}

Deleted: cs/cigma/trunk/src/py_FileReader.h
===================================================================
--- cs/cigma/trunk/src/py_FileReader.h	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/src/py_FileReader.h	2008-12-10 02:14:52 UTC (rev 13575)
@@ -1,68 +0,0 @@
-#ifndef __PY_FILE_READER_H__
-#define __PY_FILE_READER_H__
-
-#include "io_file_reader.h"
-#include "io_null_reader.h"
-#include "io_text_reader.h"
-
-#ifdef HAVE_HDF5
-#include "io_hdf5_reader.h"
-#endif
-
-#ifdef HAVE_VTK
-#include "io_vtk_reader.h"
-#include "io_ucd_reader.h"
-#endif
-
-#include <boost/python.hpp>
-
-
-struct pyFileReader : cigma::FileReader, boost::python::wrapper<cigma::FileReader>
-{
-    cigma::FileReader::ReaderType getReaderType();
-
-    int open(const char *filename);
-    int close();
-
-    int getDataset(const char *loc, double **data, int *num, int *dim);
-    int getCoordinates(const char *loc, double **coordinates, int *nno, int *nsd);
-    int getConnectivity(const char *loc, int **connectivity, int *nel, int *ndofs);
-};
-
-struct pyNullReader : cigma::NullReader
-{
-    int open(const char *filename);
-    int close();
-};
-
-struct pyTextReader : cigma::TextReader
-{
-    int open(const char *filename);
-    int close();
-};
-
-/* Wrap the HDF5 reader */
-#ifdef HAVE_HDF5
-struct pyHDF5Reader : cigma::HDF5_Reader
-{
-    int open(const char *filename);
-    int close();
-};
-#endif
-
-/* Wrap the VTK reader */
-#ifdef HAVE_VTK
-struct pyVTKReader : cigma::VtkReader
-{
-    int open(const char *filename);
-    int close();
-};
-struct pyUCDReader : cigma::UCD_Reader
-{
-    int open(const char *filename);
-    int close();
-};
-#endif
-
-
-#endif /* __PY_FILE_READER_H__ */

Deleted: cs/cigma/trunk/src/py_FileWriter.cpp
===================================================================
--- cs/cigma/trunk/src/py_FileWriter.cpp	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/src/py_FileWriter.cpp	2008-12-10 02:14:52 UTC (rev 13575)
@@ -1,128 +0,0 @@
-#include "py_FileWriter.h"
-#include "numpy_util.h"
-
-using namespace cigma;
-using namespace boost::python;
-
-// ----------------------------------------------------------------------------
-
-FileWriter::WriterType pyFileWriter::getWriterType()
-{
-    return this->get_override("getWriterType")();
-}
-
-int pyFileWriter::open(const char *filename)
-{
-    return this->get_override("open")(filename);
-}
-
-int pyFileWriter::close()
-{
-    return this->get_override("close")();
-}
-
-int pyFileWriter::writeDataset(const char *loc, double *data, int nno, int ndim)
-{
-    return -1;
-}
-
-int pyFileWriter::writeCoordinates(const char *loc, double *coordinates, int nno, int nsd)
-{
-    return -1;
-}
-
-int pyFileWriter::writeConnectivity(const char *loc, int *connectivity, int nel, int ndofs)
-{
-    return -1;
-}
-
-
-// ----------------------------------------------------------------------------
-
-int pyNullWriter::open(const char *filename)
-{
-    // XXX: include filename in error string
-    PyErr_SetString(PyExc_IOError, "Cannot open <filename> with NullWriter");
-    throw_error_already_set();
-    return -1;
-}
-
-int pyNullWriter::close()
-{
-    PyErr_SetString(PyExc_IOError, "Cannot close a NullWriter instance");
-    throw_error_already_set();
-    return -1;
-}
-
-
-// ----------------------------------------------------------------------------
-
-int pyTextWriter::open(const char *filename)
-{
-    // anything to validate? -- throw exception based on return error code
-    return TextWriter::open(filename);
-}
-
-int pyTextWriter::close()
-{
-    // anything to validate?
-    return TextWriter::close();
-}
-
-// ----------------------------------------------------------------------------
-
-#ifdef HAVE_HDF5
-#endif
-
-// ----------------------------------------------------------------------------
-
-#ifdef HAVE_VTK
-#endif
-
-// ----------------------------------------------------------------------------
-
-void export_FileWriter()
-{
-    using namespace cigma;
-    using namespace boost::python;
-
-    enum_<FileWriter::WriterType>("FileWriterType")
-        .value("NULL_WRITER", FileWriter::NULL_FILE_WRITER)
-        .value("HDF5_WRITER", FileWriter::HDF5_FILE_WRITER)
-        .value("VTK_WRITER", FileWriter::VTK_FILE_WRITER)
-        .value("TEXT_WRITER", FileWriter::TEXT_FILE_WRITER)
-        //.export_values()
-        ;
-
-    class_<pyFileWriter, boost::noncopyable>("FileWriter")
-        .def("open", pure_virtual(&FileWriter::open))
-        .def("close", pure_virtual(&FileWriter::close))
-        .def("type", pure_virtual(&FileWriter::getWriterType))
-        ;
-
-    class_<pyNullWriter, boost::noncopyable>("NullWriter")
-        .def("open", &pyNullWriter::open)
-        .def("close", &pyNullWriter::close)
-        ;
-
-    class_<pyTextWriter, boost::noncopyable>("TextWriter")
-        .def("open", &pyTextWriter::open)
-        .def("close", &pyTextWriter::close)
-        ;
-
-#ifdef HAVE_HDF5
-    class_<pyHDF5Writer, boost::noncopyable>("HDF5Writer")
-        .def("open", &pyHDF5Writer::open)
-        .def("close", &pyHDF5Writer::close)
-        ;
-#endif
-
-#ifdef HAVE_VTK
-    class_<pyVTKWriter, boost::noncopyable>("VTKWriter")
-        .def("open", &pyVTKWriter::open)
-        .def("close", &pyVTKWriter::close)
-        ;
-#endif
-
-}
-

Deleted: cs/cigma/trunk/src/py_FileWriter.h
===================================================================
--- cs/cigma/trunk/src/py_FileWriter.h	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/src/py_FileWriter.h	2008-12-10 02:14:52 UTC (rev 13575)
@@ -1,60 +0,0 @@
-#ifndef __PY_FILE_WRITER_H__
-#define __PY_FILE_WRITER_H__
-
-#include "io_file_writer.h"
-#include "io_null_writer.h"
-#include "io_text_writer.h"
-
-#ifdef HAVE_HDF5
-#include "io_hdf5_writer.h"
-#endif
-
-#ifdef HAVE_VTK
-#include "io_vtk_writer.h"
-#endif
-
-#include <boost/python.hpp>
-
-
-struct pyFileWriter : cigma::FileWriter, boost::python::wrapper<cigma::FileWriter>
-{
-    cigma::FileWriter::WriterType getWriterType();
-
-    int open(const char *filename);
-    int close();
-
-    int writeDataset(const char *loc, double *data, int nno, int ndim);
-    int writeCoordinates(const char *loc, double *coordinates, int nno, int nsd);
-    int writeConnectivity(const char *loc, int *connectivity, int nel, int ndofs);
-};
-
-struct pyNullWriter : cigma::NullWriter
-{
-    int open(const char *filename);
-    int close();
-};
-
-struct pyTextWriter : cigma::TextWriter
-{
-    int open(const char *filename);
-    int close();
-};
-
-#ifdef HAVE_HDF5
-class pyHDF5Writer : cigma::HDF5_Writer
-{
-    int open(const char *filename);
-    int close();
-};
-#endif
-
-#ifdef HAVE_VTK
-struct pyVTKWriter : cigma::VtkWriter
-{
-    int open(const char *filename);
-    int close();
-};
-#endif
-
-
-#endif /* __PY_FILE_WRITER_H__ */

Modified: cs/cigma/trunk/src/py_cigma_module.cpp
===================================================================
--- cs/cigma/trunk/src/py_cigma_module.cpp	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/src/py_cigma_module.cpp	2008-12-10 02:14:52 UTC (rev 13575)
@@ -20,8 +20,6 @@
 extern void export_Function();
 extern void export_Field();
 extern void export_Residuals();
-//extern void export_FileReader();
-//extern void export_FileWriter();
 extern void export_CompareOp();
 extern void export_EvalOp();
 extern void export_ExtractOp();
@@ -52,8 +50,6 @@
     export_Function();
     export_Field();
     export_Residuals();
-    //export_FileReader();
-    //export_FileWriter();
     export_CompareOp();
     export_EvalOp();
     export_ExtractOp();

Modified: cs/cigma/trunk/src/py_cigma_setup.py
===================================================================
--- cs/cigma/trunk/src/py_cigma_setup.py	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/src/py_cigma_setup.py	2008-12-10 02:14:52 UTC (rev 13575)
@@ -33,8 +33,6 @@
     'py_Function.cpp',
     'py_Field.cpp',
     'py_Residuals.cpp',
-    #'py_FileReader.cpp',
-    #'py_FileWriter.cpp',
     'py_CompareOp.cpp',
     'py_EvalOp.cpp',
     'py_ExtractOp.cpp',

Copied: cs/cigma/trunk/src/tmp/py_FileReader.cpp (from rev 13574, cs/cigma/trunk/src/py_FileReader.cpp)
===================================================================
--- cs/cigma/trunk/src/tmp/py_FileReader.cpp	                        (rev 0)
+++ cs/cigma/trunk/src/tmp/py_FileReader.cpp	2008-12-10 02:14:52 UTC (rev 13575)
@@ -0,0 +1,130 @@
+#include "py_FileReader.h"
+#include "numpy_util.h"
+
+using namespace cigma;
+using namespace boost::python;
+
+// ----------------------------------------------------------------------------
+
+FileReader::ReaderType pyFileReader::getReaderType()
+{
+    return this->get_override("getReaderType")();
+}
+
+int pyFileReader::open(const char *filename)
+{
+    return this->get_override("open")(filename);
+}
+
+int pyFileReader::close()
+{
+    return this->get_override("close")();
+}
+
+int pyFileReader::getDataset(const char *loc, double **data, int *num, int *dim)
+{
+    return -1;
+}
+
+int pyFileReader::getCoordinates(const char *loc, double **coordinates, int *nno, int *nsd)
+{
+    return -1;
+}
+
+int pyFileReader::getConnectivity(const char *loc, int **connectivity, int *nel, int *ndofs)
+{
+    return -1;
+}
+
+// ----------------------------------------------------------------------------
+
+int pyNullReader::open(const char *filename)
+{
+    // XXX: use std::ostringstream to put filename in error string
+    PyErr_SetString(PyExc_IOError, "Cannot open <filename> with NullReader");
+    throw_error_already_set();
+    return -1;
+}
+
+int pyNullReader::close()
+{
+    PyErr_SetString(PyExc_IOError, "Cannot close a NullReader instance");
+    throw_error_already_set();
+    return -1;
+}
+
+// ----------------------------------------------------------------------------
+
+int pyTextReader::open(const char *filename)
+{
+    // anything to do? (validation-wise)
+    return TextReader::open(filename);
+}
+
+int pyTextReader::close()
+{
+    // anything to do? (validation-wise)
+    return TextReader::close();
+}
+
+// ----------------------------------------------------------------------------
+
+#ifdef HAVE_HDF5
+#endif
+
+// ----------------------------------------------------------------------------
+
+#ifdef HAVE_VTK
+#endif
+
+// ----------------------------------------------------------------------------
+
+void export_FileReader()
+{
+    using namespace cigma;
+    using namespace boost::python;
+
+    enum_<FileReader::ReaderType>("FileReaderType")
+        .value("NULL_READER", FileReader::NULL_FILE_READER)
+        .value("HDF5_READER", FileReader::HDF5_FILE_READER)
+        .value("VTK_READER", FileReader::VTK_FILE_READER)
+        .value("TEXT_READER", FileReader::TEXT_FILE_READER)
+        //.export_values()
+        ;
+
+    class_<pyFileReader, boost::noncopyable>("FileReader")
+        .def("open", pure_virtual(&FileReader::open))
+        .def("close", pure_virtual(&FileReader::close))
+        .def("type", pure_virtual(&FileReader::getReaderType))
+        ;
+
+    class_<pyNullReader, boost::noncopyable>("NullReader")
+        .def("open", &pyNullReader::open)
+        .def("close", &pyNullReader::close)
+        ;
+
+    class_<pyTextReader, boost::noncopyable>("TextReader")
+        .def("open", &pyTextReader::open)
+        .def("close", &pyTextReader::close)
+        ;
+
+#ifdef HAVE_HDF5
+    class_<pyHDF5Reader, boost::noncopyable>("HDF5Reader")
+        .def("open", &pyHDF5Reader::open)
+        .def("close", &pyHDF5Reader::close)
+        ;
+#endif
+
+#ifdef HAVE_VTK
+    class_<pyVTKReader, boost::noncopyable>("VTKReader")
+        .def("open", &pyVTKReader::open)
+        .def("close", &pyVTKReader::close)
+        ;
+    class_<pyUCDReader, boost::noncopyable>("UCDReader")
+        .def("open", &pyUCDReader::open)
+        .def("close", &pyUCDReader::close)
+        ;
+#endif
+
+
+}

Copied: cs/cigma/trunk/src/tmp/py_FileReader.h (from rev 13574, cs/cigma/trunk/src/py_FileReader.h)
===================================================================
--- cs/cigma/trunk/src/tmp/py_FileReader.h	                        (rev 0)
+++ cs/cigma/trunk/src/tmp/py_FileReader.h	2008-12-10 02:14:52 UTC (rev 13575)
@@ -0,0 +1,68 @@
+#ifndef __PY_FILE_READER_H__
+#define __PY_FILE_READER_H__
+
+#include "io_file_reader.h"
+#include "io_null_reader.h"
+#include "io_text_reader.h"
+
+#ifdef HAVE_HDF5
+#include "io_hdf5_reader.h"
+#endif
+
+#ifdef HAVE_VTK
+#include "io_vtk_reader.h"
+#include "io_ucd_reader.h"
+#endif
+
+#include <boost/python.hpp>
+
+
+struct pyFileReader : cigma::FileReader, boost::python::wrapper<cigma::FileReader>
+{
+    cigma::FileReader::ReaderType getReaderType();
+
+    int open(const char *filename);
+    int close();
+
+    int getDataset(const char *loc, double **data, int *num, int *dim);
+    int getCoordinates(const char *loc, double **coordinates, int *nno, int *nsd);
+    int getConnectivity(const char *loc, int **connectivity, int *nel, int *ndofs);
+};
+
+struct pyNullReader : cigma::NullReader
+{
+    int open(const char *filename);
+    int close();
+};
+
+struct pyTextReader : cigma::TextReader
+{
+    int open(const char *filename);
+    int close();
+};
+
+/* Wrap the HDF5 reader */
+#ifdef HAVE_HDF5
+struct pyHDF5Reader : cigma::HDF5_Reader
+{
+    int open(const char *filename);
+    int close();
+};
+#endif
+
+/* Wrap the VTK reader */
+#ifdef HAVE_VTK
+struct pyVTKReader : cigma::VtkReader
+{
+    int open(const char *filename);
+    int close();
+};
+struct pyUCDReader : cigma::UCD_Reader
+{
+    int open(const char *filename);
+    int close();
+};
+#endif
+
+
+#endif /* __PY_FILE_READER_H__ */

Copied: cs/cigma/trunk/src/tmp/py_FileWriter.cpp (from rev 13574, cs/cigma/trunk/src/py_FileWriter.cpp)
===================================================================
--- cs/cigma/trunk/src/tmp/py_FileWriter.cpp	                        (rev 0)
+++ cs/cigma/trunk/src/tmp/py_FileWriter.cpp	2008-12-10 02:14:52 UTC (rev 13575)
@@ -0,0 +1,128 @@
+#include "py_FileWriter.h"
+#include "numpy_util.h"
+
+using namespace cigma;
+using namespace boost::python;
+
+// ----------------------------------------------------------------------------
+
+FileWriter::WriterType pyFileWriter::getWriterType()
+{
+    return this->get_override("getWriterType")();
+}
+
+int pyFileWriter::open(const char *filename)
+{
+    return this->get_override("open")(filename);
+}
+
+int pyFileWriter::close()
+{
+    return this->get_override("close")();
+}
+
+int pyFileWriter::writeDataset(const char *loc, double *data, int nno, int ndim)
+{
+    return -1;
+}
+
+int pyFileWriter::writeCoordinates(const char *loc, double *coordinates, int nno, int nsd)
+{
+    return -1;
+}
+
+int pyFileWriter::writeConnectivity(const char *loc, int *connectivity, int nel, int ndofs)
+{
+    return -1;
+}
+
+
+// ----------------------------------------------------------------------------
+
+int pyNullWriter::open(const char *filename)
+{
+    // XXX: include filename in error string
+    PyErr_SetString(PyExc_IOError, "Cannot open <filename> with NullWriter");
+    throw_error_already_set();
+    return -1;
+}
+
+int pyNullWriter::close()
+{
+    PyErr_SetString(PyExc_IOError, "Cannot close a NullWriter instance");
+    throw_error_already_set();
+    return -1;
+}
+
+
+// ----------------------------------------------------------------------------
+
+int pyTextWriter::open(const char *filename)
+{
+    // anything to validate? -- throw exception based on return error code
+    return TextWriter::open(filename);
+}
+
+int pyTextWriter::close()
+{
+    // anything to validate?
+    return TextWriter::close();
+}
+
+// ----------------------------------------------------------------------------
+
+#ifdef HAVE_HDF5
+#endif
+
+// ----------------------------------------------------------------------------
+
+#ifdef HAVE_VTK
+#endif
+
+// ----------------------------------------------------------------------------
+
+void export_FileWriter()
+{
+    using namespace cigma;
+    using namespace boost::python;
+
+    enum_<FileWriter::WriterType>("FileWriterType")
+        .value("NULL_WRITER", FileWriter::NULL_FILE_WRITER)
+        .value("HDF5_WRITER", FileWriter::HDF5_FILE_WRITER)
+        .value("VTK_WRITER", FileWriter::VTK_FILE_WRITER)
+        .value("TEXT_WRITER", FileWriter::TEXT_FILE_WRITER)
+        //.export_values()
+        ;
+
+    class_<pyFileWriter, boost::noncopyable>("FileWriter")
+        .def("open", pure_virtual(&FileWriter::open))
+        .def("close", pure_virtual(&FileWriter::close))
+        .def("type", pure_virtual(&FileWriter::getWriterType))
+        ;
+
+    class_<pyNullWriter, boost::noncopyable>("NullWriter")
+        .def("open", &pyNullWriter::open)
+        .def("close", &pyNullWriter::close)
+        ;
+
+    class_<pyTextWriter, boost::noncopyable>("TextWriter")
+        .def("open", &pyTextWriter::open)
+        .def("close", &pyTextWriter::close)
+        ;
+
+#ifdef HAVE_HDF5
+    class_<pyHDF5Writer, boost::noncopyable>("HDF5Writer")
+        .def("open", &pyHDF5Writer::open)
+        .def("close", &pyHDF5Writer::close)
+        ;
+#endif
+
+#ifdef HAVE_VTK
+    class_<pyVTKWriter, boost::noncopyable>("VTKWriter")
+        .def("open", &pyVTKWriter::open)
+        .def("close", &pyVTKWriter::close)
+        ;
+#endif
+
+}
+

Copied: cs/cigma/trunk/src/tmp/py_FileWriter.h (from rev 13574, cs/cigma/trunk/src/py_FileWriter.h)
===================================================================
--- cs/cigma/trunk/src/tmp/py_FileWriter.h	                        (rev 0)
+++ cs/cigma/trunk/src/tmp/py_FileWriter.h	2008-12-10 02:14:52 UTC (rev 13575)
@@ -0,0 +1,60 @@
+#ifndef __PY_FILE_WRITER_H__
+#define __PY_FILE_WRITER_H__
+
+#include "io_file_writer.h"
+#include "io_null_writer.h"
+#include "io_text_writer.h"
+
+#ifdef HAVE_HDF5
+#include "io_hdf5_writer.h"
+#endif
+
+#ifdef HAVE_VTK
+#include "io_vtk_writer.h"
+#endif
+
+#include <boost/python.hpp>
+
+
+struct pyFileWriter : cigma::FileWriter, boost::python::wrapper<cigma::FileWriter>
+{
+    cigma::FileWriter::WriterType getWriterType();
+
+    int open(const char *filename);
+    int close();
+
+    int writeDataset(const char *loc, double *data, int nno, int ndim);
+    int writeCoordinates(const char *loc, double *coordinates, int nno, int nsd);
+    int writeConnectivity(const char *loc, int *connectivity, int nel, int ndofs);
+};
+
+struct pyNullWriter : cigma::NullWriter
+{
+    int open(const char *filename);
+    int close();
+};
+
+struct pyTextWriter : cigma::TextWriter
+{
+    int open(const char *filename);
+    int close();
+};
+
+#ifdef HAVE_HDF5
+class pyHDF5Writer : cigma::HDF5_Writer
+{
+    int open(const char *filename);
+    int close();
+};
+#endif
+
+#ifdef HAVE_VTK
+struct pyVTKWriter : cigma::VtkWriter
+{
+    int open(const char *filename);
+    int close();
+};
+#endif
+
+
+#endif /* __PY_FILE_WRITER_H__ */

Modified: cs/cigma/trunk/tests/pytests/runner.py
===================================================================
--- cs/cigma/trunk/tests/pytests/runner.py	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/tests/pytests/runner.py	2008-12-10 02:14:52 UTC (rev 13575)
@@ -8,10 +8,6 @@
     testfiles = [fname for fname in os.listdir(rootdir)
                     if fname.startswith('test_') and fname.endswith('.py')]
 
-    skip_files = ['test_reader.py', 'test_writer.py']
-
-    testfiles = [f for f in testfiles if f not in skip_files]
-
     modules = [__import__(splitext(t)[0]) for t in testfiles]
 
 

Deleted: cs/cigma/trunk/tests/pytests/test_reader.py
===================================================================
--- cs/cigma/trunk/tests/pytests/test_reader.py	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/tests/pytests/test_reader.py	2008-12-10 02:14:52 UTC (rev 13575)
@@ -1,28 +0,0 @@
-#!/usr/bin/env python
-
-from _cigma import FileReader, NullReader, TextReader
-
-class MyFileReader(FileReader):
-    def __init__(self):
-        FileReader.__init__(self)
-    def open(self, filename):
-        return 0
-    def close(self):
-        return 0
-
-import unittest
-class ReaderTest(unittest.TestCase):
-    def __init__(self, *args):
-        unittest.TestCase.__init__(self, *args)
-    def test_reader_custom(self):
-        reader = MyFileReader()
-    def test_reader_null(self):
-        reader = NullReader()
-    def test_reader_text(self):
-        reader = TextReader()
-
-def create_suite():
-    suite = unittest.TestSuite()
-    suite.addTest(unittest.makeSuite(ReaderTest))
-    return suite
-

Deleted: cs/cigma/trunk/tests/pytests/test_writer.py
===================================================================
--- cs/cigma/trunk/tests/pytests/test_writer.py	2008-12-10 02:14:50 UTC (rev 13574)
+++ cs/cigma/trunk/tests/pytests/test_writer.py	2008-12-10 02:14:52 UTC (rev 13575)
@@ -1,28 +0,0 @@
-#!/usr/bin/env python
-
-from _cigma import FileWriter, NullWriter, TextWriter
-
-class MyFileWriter(FileWriter):
-    def __init__(self):
-        FileWriter.__init__(self)
-    def open(self, filename):
-        return 0
-    def close(self):
-        return 0
-
-import unittest
-class WriterTest(unittest.TestCase):
-    def __init__(self, *args):
-        unittest.TestCase.__init__(self, *args)
-    def test_writer_custom(self):
-        writer = MyFileWriter()
-    def test_writer_null(self):
-        writer = NullWriter()
-    def test_writer_text(self):
-        writer = TextWriter()
-
-def create_suite():
-    suite = unittest.TestSuite()
-    suite.addTest(unittest.makeSuite(WriterTest))
-    return suite
-



More information about the CIG-COMMITS mailing list