Interface Technology Basics VST 3.7
SDK for developing VST plug-in
IPersistent Class Referenceabstract

Persistent Object Interface. More...

#include <ipersistent.h>

+ Inheritance diagram for IPersistent:

Public Member Functions

virtual tresult getClassID (char8 *uid)=0
 The class ID must be a 16 bytes unique id that is used to create the object. More...
 
virtual tresult saveAttributes (IAttributes *)=0
 Store all members/data in the passed IAttributes. More...
 
virtual tresult loadAttributes (IAttributes *)=0
 Restore all members/data from the passed IAttributes. More...
 
- Public Member Functions inherited from FUnknown
virtual tresult queryInterface (const TUID _iid, void **obj)=0
 Query for a pointer to the specified interface. More...
 
virtual uint32 addRef ()=0
 Adds a reference and returns the new reference count. More...
 
virtual uint32 release ()=0
 Releases a reference and returns the new reference count. More...
 

Static Public Attributes

static const FUID iid
 
- Static Public Attributes inherited from FUnknown
static const FUID iid
 

Detailed Description

Persistent Object Interface.

[plug imp]
This interface is used to store/restore attributes of an object. An IPlugController can implement this interface to handle presets. The gui-xml for a preset control looks like this:

....
<view name="PresetView" data="Preset"/>
....
<template name="PresetView">
<view name="preset control" size="0, 0, 100, 20"/>
<switch name="store preset" size="125,0,80,20" style="push|immediate" title="Store" />
<switch name="remove preset" size="220,0,80,20" style="push|immediate" title="Delete" />
</template>

The tag data="Preset" tells the host to create a preset controller that handles the 3 values named "preset control", "store preset", and "remove preset".

Member Function Documentation

◆ getClassID()

virtual tresult getClassID ( char8 uid)
pure virtual

The class ID must be a 16 bytes unique id that is used to create the object.

This ID is also used to identify the preset list when used with presets.

◆ saveAttributes()

virtual tresult saveAttributes ( IAttributes )
pure virtual

Store all members/data in the passed IAttributes.

◆ loadAttributes()

virtual tresult loadAttributes ( IAttributes )
pure virtual

Restore all members/data from the passed IAttributes.

Member Data Documentation

◆ iid

const FUID iid
static
Empty

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