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
Classes | Macros | Typedefs | Enumerations | Functions
funknown.h File Reference
#include "pluginterfaces/base/fplatform.h"
#include "pluginterfaces/base/ftypes.h"
#include "pluginterfaces/base/smartpointer.h"
#include <cstring>

Go to the source code of this file.

Classes

class  Steinberg::FUID
 Handling 16 Byte Globally Unique Identifiers. More...
 
class  Steinberg::FUnknown
 The basic interface of all interfaces. More...
 
class  Steinberg::FUnknownPtr< I >
 FUnknownPtr - automatic interface conversion and smart pointer in one. More...
 
struct  Steinberg::FReleaser
 Release an interface using automatic object (obsolete). More...
 

Macros

#define INLINE_UID(l1, l2, l3, l4)
 
#define DECLARE_UID(name, l1, l2, l3, l4)
 
#define EXTERN_UID(name)
 
#define DECLARE_CLASS_IID(ClassName, l1, l2, l3, l4)
 
#define DEF_CLASS_IID(ClassName)
 
#define INLINE_UID_OF(ClassName)
 
#define INLINE_UID_FROM_FUID(x)
 
#define DECLARE_FUNKNOWN_METHODS
 
#define DELEGATE_REFCOUNT(ClassName)
 
#define IMPLEMENT_REFCOUNT(ClassName)
 
#define FUNKNOWN_CTOR
 
#define FUNKNOWN_DTOR
 
#define QUERY_INTERFACE(iid, obj, InterfaceIID, InterfaceName)
 
#define IMPLEMENT_QUERYINTERFACE(ClassName, InterfaceName, ClassIID)
 
#define IMPLEMENT_FUNKNOWN_METHODS(ClassName, InterfaceName, ClassIID)
 

Typedefs

typedef int64 Steinberg::LARGE_INT
 
typedef char Steinberg::TUID[16]
 plain UID type
 

Enumerations

enum  {
  kNoInterface , kResultOk , kResultTrue , kResultFalse ,
  kInvalidArgument , kNotImplemented , kInternalError , kNotInitialized ,
  kOutOfMemory
}
 

Functions

SMTG_ALWAYS_INLINE bool Steinberg::FUnknownPrivate::iidEqual (const void *iid1, const void *iid2)
 
int32 PLUGIN_API Steinberg::FUnknownPrivate::atomicAdd (int32 &var, int32 d)
 
template<typename T >
const TUIDSteinberg::getTUID ()
 

Macro Definition Documentation

◆ DECLARE_CLASS_IID

#define DECLARE_CLASS_IID (   ClassName,
  l1,
  l2,
  l3,
  l4 
)

Definition at line 73 of file funknown.h.

◆ DECLARE_FUNKNOWN_METHODS

#define DECLARE_FUNKNOWN_METHODS

Definition at line 88 of file funknown.h.

◆ DECLARE_UID

#define DECLARE_UID (   name,
  l1,
  l2,
  l3,
  l4 
)

Definition at line 63 of file funknown.h.

◆ DEF_CLASS_IID

#define DEF_CLASS_IID (   ClassName)

Definition at line 77 of file funknown.h.

◆ DELEGATE_REFCOUNT

#define DELEGATE_REFCOUNT (   ClassName)

Definition at line 99 of file funknown.h.

◆ EXTERN_UID

#define EXTERN_UID (   name)

Definition at line 66 of file funknown.h.

◆ FUNKNOWN_CTOR

#define FUNKNOWN_CTOR

Definition at line 121 of file funknown.h.

◆ FUNKNOWN_DTOR

#define FUNKNOWN_DTOR

Definition at line 126 of file funknown.h.

◆ IMPLEMENT_FUNKNOWN_METHODS

#define IMPLEMENT_FUNKNOWN_METHODS (   ClassName,
  InterfaceName,
  ClassIID 
)

Definition at line 149 of file funknown.h.

◆ IMPLEMENT_QUERYINTERFACE

#define IMPLEMENT_QUERYINTERFACE (   ClassName,
  InterfaceName,
  ClassIID 
)

Definition at line 139 of file funknown.h.

◆ IMPLEMENT_REFCOUNT

#define IMPLEMENT_REFCOUNT (   ClassName)

Definition at line 105 of file funknown.h.

◆ INLINE_UID

#define INLINE_UID (   l1,
  l2,
  l3,
  l4 
)

Definition at line 49 of file funknown.h.

◆ INLINE_UID_FROM_FUID

#define INLINE_UID_FROM_FUID (   x)

Definition at line 81 of file funknown.h.

◆ INLINE_UID_OF

#define INLINE_UID_OF (   ClassName)

Definition at line 79 of file funknown.h.

◆ QUERY_INTERFACE

#define QUERY_INTERFACE (   iid,
  obj,
  InterfaceIID,
  InterfaceName 
)

Definition at line 130 of file funknown.h.

Typedef Documentation

◆ LARGE_INT

typedef int64 Steinberg::LARGE_INT

Definition at line 204 of file funknown.h.

◆ TUID

typedef char Steinberg::TUID[16]

plain UID type

Definition at line 209 of file funknown.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Definition at line 189 of file funknown.h.

Function Documentation

◆ atomicAdd()

int32 PLUGIN_API Steinberg::FUnknownPrivate::atomicAdd ( int32 &  var,
int32  d 
)

Definition at line 88 of file funknown.cpp.

◆ getTUID()

template<typename T >
const TUID & Steinberg::getTUID ( )

Definition at line 496 of file funknown.h.

◆ iidEqual()

SMTG_ALWAYS_INLINE bool Steinberg::FUnknownPrivate::iidEqual ( const void *  iid1,
const void *  iid2 
)

Definition at line 223 of file funknown.h.