3.7.3.14 SoQtViewer

void SoQtViewerCB( void *data, SoQtViewer *viewer)

A Python implementation must look like:

def mySoQtViewerCallback(myCallbackData, mySoQtViewer):
    '''Callback for ..

    myCallbackData can be any type or class
    mySoQtViewer is an iv.SoQtViewer
    '''

    # your Python code

    # no use to return something

SbVec2f SoQtAutoClippingCB( void *data, const SbVec2f &nearfar)

A Python implementation must look like:

def mySoQtAutoClippingCallback(myCallbackData, mySbVec2f):
    '''Callback for ..

    myCallbackData can be any type or class
    mySbVec2f is an iv.SbVec2f
    '''

    # your Python code to compute aSbVec2f

    return aSbVec2f

Usage example showing that IVuPy requires all 4 arguments:

    ...
    # set the auto clipping strategy with a callback
    mySoQtViewer.setAutoClippingStrategy(
        SoQtViewer.VARIABLE_NEAR_PLANE,
	0.3,
	mySoQtAutClippingCallback,
	myCallbackData,
	)
    ...
    # change the auto clipping strategy, disable the callback
    mySoQtViewer.setAutoClippingStrategy(
        SoQtViewer.CONSTANT_NEAR_PLANE,
	0.6, # the default value
	None,
	None,
	)