VST 3 SDK: ProgramList Class Reference
Author: Steinberg

VST 3 SDK VST 3.7 SDK for developing VST plug-in

Public Types | Public Member Functions | Public Attributes | List of all members
ProgramList Class Reference
VST Implementation Helper Classes

ProgramList element. More...

`#include <vsteditcontroller.h>`

Inheritance diagram for ProgramList:

## Public Types
using | StringVector = (ProgramList, FObject) protected std::vector< std::u16string >
using | ProgramInfoVector = std::vector< StringMap >

## Public Member Functions
| ProgramList (const String128 name, ProgramListID listId, UnitID unitId)
| ProgramList (const ProgramList &programList)
const ProgramListInfo & | getInfo () const
ProgramListID | getID () const
const TChar * | getName () const
int32 | getCount () const
virtual tresult | getProgramName (int32 programIndex, String128 name)
virtual tresult | setProgramName (int32 programIndex, const String128 name)
virtual tresult | getProgramInfo (int32 programIndex, CString attributeId, String128 value)
virtual tresult | hasPitchNames (int32 programIndex)
virtual tresult | getPitchName (int32 programIndex, int16 midiPitch, String128 name)
virtual int32 | addProgram (const String128 name)
| Adds a program to the end of the list. More...
virtual bool | setProgramInfo (int32 programIndex, CString attributeId, const String128 value)
| Sets a program attribute value. More...
virtual Parameter * | getParameter ()
| Creates and returns the program parameter. More...

## Public Attributes
ProgramListInfo | info
UnitID | unitId
StringVector | programNames
ProgramInfoVector | programInfos
Parameter * | parameter

## Detailed Description

ProgramList element.

## Member Typedef Documentation

## ◆ StringVector

using StringVector = (ProgramList, FObject) protected std::vector<std::u16string>

## ◆ ProgramInfoVector

using ProgramInfoVector = std::vector<StringMap>

## Constructor & Destructor Documentation

## ◆ ProgramList() [1/2]

ProgramList | ( | const String128 | name,
|  | ProgramListID | listId,
|  | UnitID | unitId
| ) |  |

## ◆ ProgramList() [2/2]

ProgramList | ( | const ProgramList & | programList | ) |

## Member Function Documentation

## ◆ getInfo()

const ProgramListInfo & getInfo | ( |  | ) | const
| inline

## ◆ getID()

ProgramListID getID | ( |  | ) | const
| inline

## ◆ getName()

const TChar * getName | ( |  | ) | const
| inline

## ◆ getCount()

int32 getCount | ( |  | ) | const
| inline

## ◆ getProgramName()

tresult getProgramName | ( | int32 | programIndex,
|  | String128 | name
| ) |  |
| virtual

## ◆ setProgramName()

tresult setProgramName | ( | int32 | programIndex,
|  | const String128 | name
| ) |  |
| virtual

## ◆ getProgramInfo()

tresult getProgramInfo | ( | int32 | programIndex,
|  | CString | attributeId,
|  | String128 | value
| ) |  |
| virtual

## ◆ hasPitchNames()

virtual tresult hasPitchNames | ( | int32 | programIndex | ) |
| inlinevirtual

Reimplemented in ProgramListWithPitchNames.

## ◆ getPitchName()

virtual tresult getPitchName | ( | int32 | programIndex,
|  | int16 | midiPitch,
|  | String128 | name
| ) |  |
| inlinevirtual

Reimplemented in ProgramListWithPitchNames.

## ◆ addProgram()

int32 addProgram | ( | const String128 | name | ) |
| virtual

Adds a program to the end of the list.

returns the index of the program.

Reimplemented in ProgramListWithPitchNames.

## ◆ setProgramInfo()

bool setProgramInfo | ( | int32 | programIndex,
|  | CString | attributeId,
|  | const String128 | value
| ) |  |
| virtual

Sets a program attribute value.

## ◆ getParameter()

Parameter * getParameter | ( |  | ) |
| virtual

Creates and returns the program parameter.

## Member Data Documentation

## ◆ info

ProgramListInfo info

## ◆ unitId

UnitID unitId

## ◆ programNames

StringVector programNames

## ◆ programInfos

ProgramInfoVector programInfos

## ◆ parameter

Parameter* parameter

Empty

Copyright © Steinberg Media Technologies GmbH. All Rights Reserved. This documentation is under this license.