%module EigenvectorTextReader %{ #include "EigenvectorTextReader.h" #include "../base/Proxy.h" #include "../base/Vector3D.h" #include "../base/Vector3DBlock.h" #include "../base/XYZ.h" %} %include "std_vector.i" %template() std::vector; %include "../base/Proxy.h" %include "../base/Real.h" %include "../base/Vector3D.h" %include "../base/Vector3DBlock.h" %include "../base/XYZ.h" %include "File.h" %include "Reader.h" %include "../base/EigenvectorInfo.h" %include "EigenvectorTextReader.h" %extend ProtoMol::EigenvectorInfo { PyObject * getData() { int rowdim = self->myEigenvectorLength*3; int coldim = self->myNumEigenvectors; int fulldim = rowdim*coldim; int dims[1] = {fulldim}; self->loadArr(); PyObject* rhs = PyArray_SimpleNewFromData(1,dims,PyArray_DOUBLE,(char*)(self->myEigenvectors)); return rhs; } }