• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Allegro X APD
  3. Connecting to APD from external process to execute skill...

Stats

  • Replies 2
  • Subscribers 66
  • Views 657
  • Members are here 0
More Content

Connecting to APD from external process to execute skill code

SV202603065248
SV202603065248 1 month ago

Im looking for a way to connect to an existing/active APD session from an external process and executing skill within that APD session. The idea is to create this communication link between our custom workflow tool and APD to streamline execution. The forums point to using MPS (message passing system) but there isn't much documentation on this. Could you pls point me in the right direction.. Im looking for documentation or code samples.

  • Cancel
  • Sign in to reply
  • JuanCR
    JuanCR 1 month ago

    Can you describe a bit more about how you are planning to connect or what your setup is?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • SV202603065248
    SV202603065248 1 month ago in reply to JuanCR
    Thanks for the response. Here's the setup in more detail:

    * Environment: Windows only, single user, single APD session per machine. APD is running interactively with a design already open — I need to attach to that live session, not spawn a headless / -nograph batch APD. (I'm aware of the -s script.il / batch route; it doesn't fit this use case)
    * Custom application running as a separate process: We have an in-house desktop tool written in C++ (with some Python) that the user runs on the same machine as APD.
    The user clicks a button in our tool → that needs to trigger SKILL execution inside the already-running APD session → we need the return value back in our tool.
    * SKILL calls can be  Short one-line expressions, e.g. (axlDBGetDesign), or pre-registered SKILL function with arguments. In both three cases we need the return value passed back to the external process (not fire-and-forget).

    What I've looked at: Cadence documentation and several forum threads — MPS looks like the right primitive, but I can't find a worked end-to-end example of a Windows C++ (or Python) client exchanging messages with a running APD session, including how the APD-side listener is set up and how responses are returned.
    ipcBeginProcess — this seems to go the other direction (APD spawns a child), so I don't think it fits.

    What would unblock me: A minimal working example of MPS between an external Windows process and a live APD session (both the SKILL side and the external-client side), or
    Confirmation that MPS is the right mechanism for this pattern and pointers to the authoritative reference, or

    If MPS isn't the recommended path for my use-case on Windows, feel free to point me to the mechanism Cadence recommends for this.
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Cadence Guidelines

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2026 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information