Interface Technology Basics: fstrdefs.h File Reference
Author: Steinberg

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

- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Namespaces | Macros | Functions
fstrdefs.h File Reference
`#include "ftypes.h"`
`#include "conststringtable.h"`

## Namespaces
namespace | Steinberg
| This header provides classes for working with FUnknown.

## Macros
#define | STR16(x) Steinberg::ConstStringTable::instance ()->getString (x)
| string methods defines unicode / ASCII
#define | STR(x) STR16(x)
#define | tStrBufferSize(buffer) (sizeof(buffer)/sizeof(Steinberg::tchar))
#define | str8BufferSize(buffer) (sizeof(buffer)/sizeof(Steinberg::char8))
#define | str16BufferSize(buffer) (sizeof(buffer)/sizeof(Steinberg::char16))
#define | FORMAT_INT64A "lld"
#define | FORMAT_UINT64A "llu"
#define | stricmp strcasecmp
#define | strnicmp strncasecmp
#define | FORMAT_INT64W STR(FORMAT_INT64A)
#define | FORMAT_UINT64W STR(FORMAT_UINT64A)
#define | FORMAT_INT64 FORMAT_INT64W
#define | FORMAT_UINT64 FORMAT_UINT64W
#define | ENDLINE_A "\n"
#define | ENDLINE_W STR ("\n")
#define | ENDLINE ENDLINE_W

## Functions
template<class T >
int32 | _tstrlen (const T *wcs)
int32 | tstrlen (const char *str)
int32 | strlen8 (const char8 *str)
int32 | strlen16 (const char16 *str)
template<class T >
int32 | _tstrcmp (const T *src, const T *dst)
int32 | tstrcmp (const char *src, const char *dst)
int32 | strcmp8 (const char8 *src, const char8 *dst)
int32 | strcmp16 (const char16 *src, const char16 *dst)
template<typename T >
int32 | strcmpT (const T *first, const T *last)
template<>
int32 | strcmpT< char8 > (const char8 *first, const char8 *last)
template<>
int32 | strcmpT< char16 > (const char16 *first, const char16 *last)
template<class T >
int32 | _tstrncmp (const T *first, const T *last, uint32 count)
int32 | tstrncmp (const char *first, const char *last, uint32 count)
int32 | strncmp8 (const char8 *first, const char8 *last, uint32 count)
int32 | strncmp16 (const char16 *first, const char16 *last, uint32 count)
template<typename T >
int32 | strncmpT (const T *first, const T *last, uint32 count)
template<>
int32 | strncmpT< char8 > (const char8 *first, const char8 *last, uint32 count)
template<>
int32 | strncmpT< char16 > (const char16 *first, const char16 *last, uint32 count)
template<class T >
T * | _tstrcpy (T *dst, const T *src)
char * | tstrcpy (char *dst, const char *src)
char8 * | strcpy8 (char8 *dst, const char8 *src)
char16 * | strcpy16 (char16 *dst, const char16 *src)
template<class T >
T * | _tstrncpy (T *dest, const T *source, uint32 count)
char * | tstrncpy (char *dest, const char *source, uint32 count)
char8 * | strncpy8 (char8 *dest, const char8 *source, uint32 count)
char16 * | strncpy16 (char16 *dest, const char16 *source, uint32 count)
template<class T >
T * | _tstrcat (T *dst, const T *src)
char * | tstrcat (char *dst, const char *src)
char8 * | strcat8 (char8 *dst, const char8 *src)
char16 * | strcat16 (char16 *dst, const char16 *src)
void | str8ToStr16 (char16 *dst, const char8 *src, int32 n=-1)
bool | FIDStringsEqual (FIDString id1, FIDString id2)

## Macro Definition Documentation

#define STR16 | ( |  | x | ) | Steinberg::ConstStringTable::instance ()->getString (x)

string methods defines unicode / ASCII

#define STR | ( |  | x | ) | STR16(x)

#define tStrBufferSize | ( |  | buffer | ) | (sizeof(buffer)/sizeof(Steinberg::tchar))

#define str8BufferSize | ( |  | buffer | ) | (sizeof(buffer)/sizeof(Steinberg::char8))

#define str16BufferSize | ( |  | buffer | ) | (sizeof(buffer)/sizeof(Steinberg::char16))

#define FORMAT_INT64A "lld"

#define FORMAT_UINT64A "llu"

#define stricmp strcasecmp

#define strnicmp strncasecmp

#define FORMAT_INT64W STR(FORMAT_INT64A)

#define FORMAT_UINT64W STR(FORMAT_UINT64A)

#define FORMAT_INT64 FORMAT_INT64W

#define FORMAT_UINT64 FORMAT_UINT64W

#define ENDLINE_A "\n"

#define ENDLINE_W STR ("\n")

#define ENDLINE ENDLINE_W

Empty

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