![]() |
|
#16
|
|||
|
|||
|
Hi Farshizzo,
Thank you for all the detailed information! I still have some questions though: Quote:
Code:
std::list< osg::ref_ptr< MySensor > > m_sensors; Quote:
Code:
Traceback (most recent call last):
File "<string>", line 11, in <module>
File "C:\dat\C\projects\Vizard dll\testCustomNode.py", line 58, in <module>
stim.setStimSpec('GDcl')
File "DNstimuli.py", line 45, in setStimSpec
self.command(1,stimSpec)
File "C:\Program Files\WorldViz\Vizard4\python\viz.py", line 6837, in command
return _ipcSend(_VIZ_CMDEXTNODE,self.id,command,mesg,x,y,z,w)
TypeError: command must be an int
If setup a debug breakpoint on this first call after the raised exception (self.command(1,stimSpec)), and try to step into it, i get this output: Code:
C:\Program Files\WorldViz\Vizard4\python\vizbdb.py:410: RuntimeWarning: tp_compare didn't return -1 or -2 for exception
if id in ids:
Traceback (most recent call last):
File "<string>", line 11, in <module>
File "C:\dat\C\projects\Vizard dll\testCustomNode.py", line 58, in <module>
stim.setStimSpec('GDcl')
File "DNstimuli.py", line 45, in setStimSpec
self.command(1,stimSpec)
File "DNstimuli.py", line 45, in setStimSpec
self.command(1,stimSpec)
File "C:\Program Files\WorldViz\Vizard4\python\vizbdb.py", line 254, in trace_debug
self.wait_for_input(frame,None)
File "C:\Program Files\WorldViz\Vizard4\python\vizbdb.py", line 436, in wait_for_input
id,data = self.wait_for_message(_INPUT_MESSAGES)
File "C:\Program Files\WorldViz\Vizard4\python\vizbdb.py", line 410, in wait_for_message
if id in ids:
RuntimeError: testing
Other things I tried: - doing data.set( PYTHON_RETURN_OBJECT, PYTHON_INT(-1)); or data.set(PYTHON_RETURN_OBJECT, NULL); after the call to PyErr_SetString did not help (inspired by some reading of how error states should be communicated from Python). - try/except around the call where the exception is raised. This didn't do anything, as expected when the exception goes unnoticed. What am I missing? Thanks for your help! |
|
|