Channel context interface: Vst::IInfoListener. 
Allows the host to inform the plug-in about the context in which the plug-in is instantiated, mainly channel based info (color, name, index,...). Index can be defined inside a namespace (for example, index start from 1 to N for Type Input/Output Channel (Index namespace) and index start from 1 to M for Type Audio Channel).
As soon as the plug-in provides this IInfoListener interface, the host will call setChannelContextInfos for each change occurring to this channel (new name, new color, new indexation,...)
tresult PLUGIN_API MyPlugin::setChannelContextInfos (IAttributeList* list)
 
{
    if (list)
    {
        
        {
            ...
        }
        
        
        {
            ...
        }
 
        
        {
            ...
        }
        
        
        {
            ...
        }
        
        
        {
            String str;
            ...
        }
 
        
        {
            ...
        }
    
        
        {
            ...
        }
        
        
        {
            ...
        }
 
        
        {
            switch (location)
            {
                break;
                break;
                break;
                break;
            }
        }
        
        
    }
}
UString & fromAscii(const char *src, int32 srcSize=-1)
ColorComponent GetRed(ColorSpec cs)
Returns the Red part of the given ColorSpec.
Definition: ivstchannelcontextinfo.h:186
const CString kChannelNameLengthKey
integer (int64) [optional]: number of characters in kChannelNameKey
Definition: ivstchannelcontextinfo.h:204
const CString kChannelPluginLocationKey
integer (int64) [optional]: routing position of the plug-in in the channel (see ChannelPluginLocation...
Definition: ivstchannelcontextinfo.h:229
const CString kChannelColorKey
color (ColorSpec) [optional]: used color for the channel in mixer or track
Definition: ivstchannelcontextinfo.h:207
const CString kChannelNameKey
string (TChar) [optional]: name of the channel like displayed in the mixer
Definition: ivstchannelcontextinfo.h:201
const CString kChannelIndexKey
integer (int64) [optional]: index of the channel in a channel index namespace, start with 1 not * 0!
Definition: ivstchannelcontextinfo.h:210
ColorComponent GetAlpha(ColorSpec cs)
Returns the Alpha part of the given ColorSpec.
Definition: ivstchannelcontextinfo.h:188
ColorComponent GetBlue(ColorSpec cs)
Returns the Blue part of the given ColorSpec.
Definition: ivstchannelcontextinfo.h:182
const CString kChannelUIDKey
Keys used as AttrID (Attribute ID) in the return IAttributeList of IInfoListener::setChannelContextIn...
Definition: ivstchannelcontextinfo.h:195
ColorComponent GetGreen(ColorSpec cs)
Returns the Green part of the given ColorSpec.
Definition: ivstchannelcontextinfo.h:184
const CString kChannelIndexNamespaceLengthKey
integer (int64) [optional]: number of characters in kChannelIndexNamespaceKey
Definition: ivstchannelcontextinfo.h:223
const CString kChannelIndexNamespaceKey
string (TChar) [optional]: name of the channel index namespace for example "Input",...
Definition: ivstchannelcontextinfo.h:220
@ kPreVolumeFader
Definition: ivstchannelcontextinfo.h:164
@ kPostVolumeFader
Definition: ivstchannelcontextinfo.h:165
@ kUsedAsPanner
Definition: ivstchannelcontextinfo.h:166
const CString kChannelIndexNamespaceOrderKey
integer (int64) [optional]: define the order of the current used index namespace, start with 1 not 0!...
Definition: ivstchannelcontextinfo.h:217
TChar String128[128]
128 character UTF-16 string
Definition: vsttypes.h:73