Vuo
0.9.1
|
If you're developing an application, library, or other project, your code can build and run Vuo compositions. One way is by invoking the Vuo command-line tools (see the Vuo Manual), but you can also interact with Vuo programmatically through its API.
To learn how to develop an application that uses Vuo, see:
example/api/VuoPluginApp
included with the Vuo SDK) for using Vuo's Cocoa APIexample/api/RunImageFilter
included with the Vuo SDK) for using Vuo's C++ APITo use Vuo, your application needs to link to Vuo.framework, which comes with the Vuo SDK.
If using the Cocoa API or the C++ API:
@loader_path/../Frameworks
If using the Cocoa API:
If using the C++ API:
See the example Qt projects included with the Vuo SDK.
Vuo.framework includes the basic functions you need to build and run a Vuo composition. For additional functionality, you can optionally link in these dynamic libraries:
Vuo.framework/Modules/libVuoHeap.dylib
.Vuo.framework/Modules/libVuoGlContext.dylib
.See the RunImageFilter example projects (included with the Vuo SDK) for examples of using these libraries.
Using the VuoImageFilter and VuoImageGenerator classes, you can compile, run, interact with, and get information about a composition. The composition runs in a separate 64-bit process.
If you want to run a Vuo composition, you first have to compile and link it.
The easiest way to do that is with the factory methods VuoCompiler::newSeparateProcessRunnerFromCompositionFile and VuoCompiler::newCurrentProcessRunnerFromCompositionFile. These compile and link your composition and return a VuoRunner that's ready to run it.
The VuoCompiler class also provides functions for separately compiling a composition, linking a composition, and compiling a node class, port type, or library module.
Using the VuoRunner class, you can run and interact with a composition. The composition can run in the same process as the VuoRunner or in a separate process.
The VuoRunner::start and VuoRunner::stop functions allow you to start and stop a composition. While the composition is running, you can use other VuoRunner functions to control it and query it (such such pausing the composition, setting the values of published input ports, and getting the values of published output ports).
You can receive notifications from the running composition (such as when a published output port receives an event) by creating a derived class of VuoRunnerDelegate or VuoRunnerDelegateAdapter. Use VuoRunner::setDelegate to connect your class to the VuoRunner. Your class's VuoRunnerDelegate functions will be called whenever the VuoRunner receives messages from the running composition.
The Vuo framework contains OpenSSL libraries, which are needed by nodes that support downloading files via HTTPS. If you plan to distribute an application that uses the Vuo framework, your application may be subject to export regulations. For more information, see How do export regulations impact the applications I create with Vuo?.