Interface Technology Basics: IString Class Reference
Author: Steinberg

Interface Technology Basics VST 3.7 SDK for developing VST plug-in

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Public Member Functions | Static Public Attributes | List of all members
IString Class Referenceabstract

Interface to a string of variable size and encoding. More...

`#include <istringresult.h>`

Inheritance diagram for IString:

## Public Member Functions
virtual void | setText8 (const char8 *text)=0
| Assign ASCII string.
virtual void | setText16 (const char16 *text)=0
| Assign unicode string.
virtual const char8 * | getText8 ()=0
| Return ASCII string.
virtual const char16 * | getText16 ()=0
| Return unicode string.
virtual void | take (void *s, bool isWide)=0
| !Do not use this method! Early implementations take the given pointer as internal string and this will cause problems because 'free' will be used to delete the passed memory.
virtual bool | isWideString () const =0
| Returns true if the string is in unicode format, returns false if the string is ASCII.
Public Member Functions inherited from FUnknown
virtual tresult | queryInterface (const TUID _iid, void **obj)=0
| Query for a pointer to the specified interface.
virtual uint32 | addRef ()=0
| Adds a reference and returns the new reference count.
virtual uint32 | release ()=0
| Releases a reference and returns the new reference count.

## Static Public Attributes
static const FUID | iid
Static Public Attributes inherited from FUnknown
static const FUID | iid

## Detailed Description

Interface to a string of variable size and encoding.

- [host imp] or [plug imp]
- [released: ]

## Member Function Documentation

virtual void setText8 | ( | const char8 * | text | ) |
| pure virtual

Assign ASCII string.

virtual void setText16 | ( | const char16 * | text | ) |
| pure virtual

Assign unicode string.

virtual const char8* getText8 | ( |  | ) |
| pure virtual

Return ASCII string.

If the string is unicode so far, it will be converted. So you need to be careful, because the conversion can result in data loss. It is save though to call getText8 if isWideString() returns false

virtual const char16* getText16 | ( |  | ) |
| pure virtual

Return unicode string.

If the string is ASCII so far, it will be converted.

virtual void take | ( | void * | s,
|  | bool | isWide
| ) |  |
| pure virtual

!Do not use this method! Early implementations take the given pointer as internal string and this will cause problems because 'free' will be used to delete the passed memory.

Later implementations will redirect 'take' to setText8 and setText16

virtual bool isWideString | ( |  | ) | const
| pure virtual

Returns true if the string is in unicode format, returns false if the string is ASCII.

## Member Data Documentation

const FUID iid
| static

Empty

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