ID 391242 - Custom getInputPortAndGraphState() function of NodeTypeBuilder-defined node is called even if node is bypassed

Follow

Problem summary:

When creating custom nodes using NodeTypeBuilder, if the user chooses to implement a custom getInputPortAndGraphState() function using NodeTypeBuilder.setGetInputGraphStateFnc(), the node will still affect Graph State, even when the node is disabled/bypassed. This behavior is unexpected and also undocumented.

Steps to reproduce:

  1. Download the attached ntbTest.py and run it in a new Katana session.

Expected behaviour:

No output is shown in the console.

Actual behaviour:

getInputPortAndGraphState!!! is displayed in the console. 

Workaround:

Within the custom getInputPortAndGraphState() function, you can check the node's isBypassed() state prior to the function carrying out any modifications. 

Tested versions/platforms:

3.2 - Affected (Linux)

Customer version/platform:

Not supplied

    We're sorry to hear that

    Please tell us why