Extended IEditController interface for a component. More...
#include <ivstrepresentation.h>
Public Member Functions | |
virtual tresult | getXmlRepresentationStream (RepresentationInfo &info, IBStream *stream)=0 |
Retrieves a stream containing a XmlRepresentation for a wanted representation info. | |
Static Public Attributes | |
static const FUID | iid |
Extended IEditController interface for a component.
A Representation based on XML is a way to export and structure, group Plug-ins parameters for a specific remote (could be hardware or software rack (like quickcontrols)).
It allows to describe more precisely each parameter (what is the best matching to a knob, different titles lengths matching limited remote display,...).
See an Example.
This Representation is implemented as XML text following the Document Type Definition (DTD): http://dtd.steinberg.net/VST-Remote-1.1.dtd
Here an example of what should be passed in the stream of getXmlRepresentationStream:
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE vstXML PUBLIC "-//Steinberg//DTD VST Remote 1.1//EN" "http://dtd.steinberg.net/VST-Remote-1.1.dtd"> <vstXML version="1.0"> <plugin classID="341FC5898AAA46A7A506BC0799E882AE" name="Chorus" vendor="Steinberg Media Technologies" /> <originator>My name</originator> <date>2010-12-31</date> <comment>This is an example for 4 Cells per Page for the Remote named ProductRemote from company HardwareCompany.</comment> <!-- ===================================== --> <representation name="ProductRemote" vendor="HardwareCompany" version="1.0"> <page name="Root"> <cell> <layer type="knob" parameterID="0"> <titleDisplay> <name>Mix dry/wet</name> <name>Mix</name> </titleDisplay> </layer> </cell> <cell> <layer type="display"></layer> </cell> <cell> <layer type="knob" parameterID="3"> <titleDisplay> <name>Delay</name> <name>Dly</name> </titleDisplay> </layer> </cell> <cell> <layer type="knob" parameterID="15"> <titleDisplay> <name>Spatial</name> <name>Spat</name> </titleDisplay> </layer> </cell> </page> <page name="Page 2"> <cell> <layer type="LED" ledStyle="spread" parameterID="2"> <titleDisplay> <name>Width +</name> <name>Widt</name> </titleDisplay> </layer> <!--this is the switch for shape A/B--> <layer type="switch" switchStyle="pushIncLooped" parameterID="4"></layer> </cell> <cell> <layer type="display"></layer> </cell> <cell> <layer type="LED" ledStyle="singleDot" parameterID="17"> <titleDisplay> <name>Sync Note +</name> <name>Note</name> </titleDisplay> </layer> <!--this is the switch for sync to tempo on /off--> <layer type="switch" switchStyle="pushIncLooped" parameterID="16"></layer> </cell> <cell> <layer type="knob" parameterID="1"> <titleDisplay> <name>Rate</name> </titleDisplay> </layer> </cell> </page> </representation> </vstXML>
virtual tresult getXmlRepresentationStream | ( | RepresentationInfo & | info, | |
IBStream * | stream | |||
) | [pure virtual] |
Retrieves a stream containing a XmlRepresentation for a wanted representation info.