Python Scripting Tag Global Variables



  • On 15/07/2015 at 21:31, xxxxxxxx wrote:

    Hello Forum,

    After reading these great posts:
    https://plugincafe.maxon.net/topic/8461/11042_python-tag-catch-button-presson-parent-object&KW=user+data+button&PID=43468#43468 Thanks Niklas.
    https://plugincafe.maxon.net/topic/8312/10843_user-button-test-on-python-generator-solved&KW=user+data+button&PID=42531#42531 Thanks Sebastian.
    I realized there is much to learn about Python Scripting Tags.

    Where are the global variables for the Python Scripting Tags documented?
    By reading other posts/examples, I understand that "op" and "doc" are global variables, but I did knot know there was a global function like message(msg_type, data) : available in a scripting tag.

    I do not understand how message(msg_type, data) works in the scripting tag.  How is it getting called?  Is it like a virtual method in c++?  Are there other functions like this available?

    Thank you,

    Joe Buck



  • On 16/07/2015 at 02:03, xxxxxxxx wrote:

    Hi Joe,

    The Python documentation is currently lacking information on Python scripting features (tags, scripts, XPresso node etc).

    main() in a Python tag is the same as TagData::Execute() and the available global variables are:
    doc : the host document of the tag.
    flags : the execution flags.
    priority : the execution priority in the pipeline (EXECUTIONPRIORITY_INITIAL, EXECUTIONPRIORITY_ANIMATION, EXECUTIONPRIORITY_GENERATOR etc).
    op : the Python tag.
    bt : the calling thread.
    tp : the TP master system for the host document if there's one.

    message(id, data) in a Python tag behaves the same as TagData::Message().
    It receives the data as Python dictionaries with the entries matching the names used in the C++ API for the structure members.
    The available global variables are the same as in main() except that flags and priority does not make sense in message().



  • On 16/07/2015 at 08:20, xxxxxxxx wrote:

    Thank you Yannick.  This is solved.


Log in to reply