LMMS
Loading...
Searching...
No Matches
Steinberg::Vst::IStreamAttributes Class Referenceabstract

#include <ivstattributes.h>

Inheritance diagram for Steinberg::Vst::IStreamAttributes:
Steinberg::FUnknown

Public Member Functions

virtual tresult PLUGIN_API getFileName (String128 name)=0
virtual IAttributeList *PLUGIN_API getAttributes ()=0
Public Member Functions inherited from Steinberg::FUnknown
virtual tresult PLUGIN_API queryInterface (const TUID _iid, void **obj)=0
virtual uint32 PLUGIN_API addRef ()=0
virtual uint32 PLUGIN_API release ()=0

Static Public Attributes

static const FUID iid
Static Public Attributes inherited from Steinberg::FUnknown
static const FUID iid

Detailed Description

Meta attributes of a stream: Vst::IStreamAttributes

  • [host imp]
  • [extends IBStream]
  • [released: 3.6.0]
  • [optional]

Interface to access preset meta information from stream, used, for example, in setState in order to inform the plug-in about the current context in which the preset loading occurs (Project context or Preset load (see StateType)) or used to get the full file path of the loaded preset (if available).

//------------------------------------------------------------------------
#include "pluginterfaces/vst/vstpresetkeys.h"
...
tresult PLUGIN_API MyPlugin::setState (IBStream* state)
{
if (stream)
{
IAttributeList* list = stream->getAttributes ();
if (list)
{
// get the current type (project/Default..) of this state
String128 string;
if (list->getString (PresetAttributes::kStateType, string, 128 * sizeof (TChar)) == kResultTrue)
{
UString128 tmp (string);
char ascii[128];
tmp.toAscii (ascii, 128);
if (!strncmp (ascii, StateType::kProject, strlen (StateType::kProject)))
{
// we are in project loading context...
}
}
// get the full file path of this state
TChar fullPath[1024];
if (list->getString (PresetAttributes::kFilePathStringType, fullPath, 1024 * sizeof (TChar)) == kResultTrue)
{
// here we have the full path ...
}
}
}
//...read the state here.....
return kResultTrue;
}
Definition funknown.h:403
Definition ibstream.h:30
Definition ivstattributes.h:41
TChar String128[128]
128 character UTF-16 string
Definition vsttypes.h:63
char16 TChar
UTF-16 character.
Definition vsttypes.h:62
UStringBuffer< 128 > UString128
128 character UTF-16 string
Definition ustring.h:108
@ kResultTrue
Definition funknown.h:194

Member Function Documentation

◆ getAttributes()

virtual IAttributeList *PLUGIN_API Steinberg::Vst::IStreamAttributes::getAttributes ( )
pure virtual

Gets meta information list.

◆ getFileName()

virtual tresult PLUGIN_API Steinberg::Vst::IStreamAttributes::getFileName ( String128 name)
pure virtual

Gets filename (without file extension) of the stream.

Member Data Documentation

◆ iid

const FUID Steinberg::Vst::IStreamAttributes::iid
static

The documentation for this class was generated from the following file: