JUCE-7.0.12-0-g4f43011b96 JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins

« « « Anklang Documentation
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | List of all members
Steinberg::Vst::IStreamAttributes Class Referenceabstract

Meta attributes of a stream: Vst::IStreamAttributes. More...

#include "ivstattributes.h"

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

Public Member Functions

virtual tresult PLUGIN_API getFileName (String128 name)=0
 Gets filename (without file extension) of the stream.
 
virtual IAttributeList *PLUGIN_API getAttributes ()=0
 Gets meta information list.
 
- Public Member Functions inherited from Steinberg::FUnknown
virtual tresult PLUGIN_API queryInterface (const TUID _iid, void **obj)=0
 Query for a pointer to the specified interface.
 
virtual uint32 PLUGIN_API addRef ()=0
 Adds a reference and returns the new reference count.
 
virtual uint32 PLUGIN_API release ()=0
 Releases a reference and returns the new reference count.
 

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.

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)) == 0)
{
// 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;
}
FUnknownPtr - automatic interface conversion and smart pointer in one.
Definition funknown.h:417
Base class for streams.
Definition ibstream.h:30
UTF-16 string with fixed buffer size.
Definition ustring.h:82
Attribute list used in IMessage and IStreamAttributes: Vst::IAttributeList.
TChar String128[128]
128 character UTF-16 string
Definition vsttypes.h:69
char16 TChar
UTF-16 character.
Definition vsttypes.h:68

Definition at line 129 of file ivstattributes.h.

Member Data Documentation

◆ iid

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

Definition at line 139 of file ivstattributes.h.


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