Pinnacle3 Users Google Group

Perth Radiation Oncology - Scripting on the Pinnacle3 Treatment Planning System

Scripting on the Pinnnacle3 TPS [PDF document]

  • This is the best guide available. Many of the pages on this wiki are based off this guide.

In Pinnacle

  • Use the Class Browser
    • Create a Script with the line
        • In versions prior to P16
          • WindowList.ClassBrowser.Create=””;
        • In versions after 16
          • XtWindowList.ClassBrowser.Create="";
    • This must be done in the most recent version of Pinnacle on your system (otherwise, it will crash the open patient).
    • A popup window will appear - click "Update Class Information".
    • This will populate the window with a list of different Pinnacle objects, terms, lists and modules.
    • Highlight the module of interest and click "Messages".
    • This will open a window with commands that can be used to act on the specified item.
  • /usr/local/adacnew/PinnacleStatic/Config/ or /usr/local/adacnew/LPStatic/Config/
    • Pinnacle GUI files are located here (.cfg)
    • Many Pinnacle functions are stored in this directory. Some of these may serve as valuable examples.
  • A good way to get started scripting is to record a script using Pinnacle's built-in functionality.
  • The planning transcript is also a valuable resource for scripting help.
    • In Launchpad: Planning -> Highlight the Patient -> Edit -> Revision History… -> Record the information in the "Directory" box (this is where the transcripts are saved)
  • Save list data to file
    • The .Save command in a script will save associated list information to a specified file
    • Often this will provide the command needed to access desired Pinnacle information
      • Examples:
TrialList.Current.BeamList.Current.MonitorUnitInfo.Save = "/home/p3rtp/MUinfo.txt"; //shows handcalc information
TrialList.Current.BeamList.Current.Save = "/home/p3rtp/BeamListInfo.txt"; //shows beam information
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License