Thanks for the reply. :) I may be missing something critical here, but I don't exactly grok what you're saying; how is it even possible to have two instances of PyType_vector3d? It is (like all the examples show and all the extension modules I've done in the past) a static structure declared and assigned to all at once, only once.
Am I misunderstanding the point? :) /me ducks On Thu, 2005-10-06 at 16:26 +0200, Thomas Heller wrote: > Jeremy Moles <[EMAIL PROTECTED]> writes: > > > So, here is my relevant code: > > > > PyArg_ParseTuple(args, "O!", &PyType_vector3d, &arg1) > > > > And here ismy error message: > > > > argument 1 must be pylf.core.vector3d, not pylf.core.vector3d > > > > I know PyType_vector3d "works" (as I can use them in the interpreter all > > day long), and I know I'm passing a pylf.core.vector3d (well, apparently > > not...) > > > > I've spent hours and hours on this and I'm finally just giving up and > > asking. I've tried everything to get my program to verify that arg1 is > > really a PyType_vector3d, but to no avail. > > > > If I take out the "!" in the format string and just use "O", I can at > > least get past PyArg_ParseTuple. Then I try something like... > > > > PyObject_TypeCheck(arg1, &PyType_vector3d) > > > > Which also fails, but I know for a fact that arg1's PyObject_Repr is > > what it should be. (pylf.core.vector3d) > > > > I guess my question is: what in the world could be causing this to fail? > > It seems like I'm just not able to use ParseType or BuildValue to create > > objects of my own type. > > > > I know I haven't provided a lot of information, but does anyone have any > > ideas or where I should start looking? > > Can it be that you have TWO instances of the pylf.core.vector3d object? > Debugging should reveal it... > > Thomas -- http://mail.python.org/mailman/listinfo/python-list