11#import "IPlugCocoaViewController.h" 
   13#include "IPlugStructs.h" 
   19- (id) initWithEditorDelegateAndBundleID: (
void*) _editorDelegate : (const 
char*) _bundleID
 
   21  if (self = [super init]) {
 
   22    editorDelegate = _editorDelegate;
 
   23    bundleID = [NSString stringWithUTF8String:_bundleID];
 
   28- (void) setEditorDelegate: (
void*) _editorDelegate
 
   30  editorDelegate = _editorDelegate;
 
   33- (BOOL) onMessage: (NSInteger) msgTag : (NSInteger) ctrlTag : (NSData*) msg
 
   38- (void) onParamChangeUI: (NSInteger) paramIdx : (
double) value
 
   43- (void) onMidiMsgUI: (UInt8) status : (UInt8) data1 : (UInt8) data2 : (NSInteger) offset
 
   48- (void) onSysexMsgUI: (NSData*) msg : (NSInteger) offset
 
   53- (void) sendControlValueFromDelegate: (NSInteger) ctrlTag : (
double) normalizedValue
 
   58- (void) sendControlMsgFromDelegate: (NSInteger) ctrlTag : (NSInteger) msgTag : (NSData*) msg
 
   63- (void) sendParameterValueFromDelegate: (NSInteger) paramIdx : (
double) value : (BOOL) normalized
 
   65  [
self onParamChangeUI: paramIdx : value];
 
   68-(void) sendParameterValueFromUI: (NSInteger) paramIdx : (
double) value
 
   70  ((
CocoaEditorDelegate*) editorDelegate)->SendParameterValueFromUI(
static_cast<int>(paramIdx), value);
 
   73-(void) beginInformHostOfParamChangeFromUI: (NSInteger) paramIdx
 
   75  ((
CocoaEditorDelegate*) editorDelegate)->BeginInformHostOfParamChangeFromUI(
static_cast<int>(paramIdx));
 
   78-(void) endInformHostOfParamChangeFromUI: (NSInteger) paramIdx
 
   80  ((
CocoaEditorDelegate*) editorDelegate)->EndInformHostOfParamChangeFromUI(
static_cast<int>(paramIdx));
 
   83-(void) sendArbitraryMsgFromUI: (NSInteger) msgTag : (NSInteger) ctrlTag : (NSData*) msg
 
   85  ((
CocoaEditorDelegate*) editorDelegate)->SendArbitraryMsgFromUI(
static_cast<int>(msgTag), 
static_cast<int>(ctrlTag), 
static_cast<int>([msg length]), [msg bytes]);
 
   88-(void) sendMidiMsgFromUI: (UInt8) status : (UInt8) data1 : (UInt8) data2 : (NSInteger) offset
 
   90  IMidiMsg msg { 
static_cast<int>(offset), status, data1, data2 };
 
   94-(void) sendSysexMsgFromUI: (NSData*) msg : (NSInteger) offset
 
   96  ISysEx smsg { 
static_cast<int>(offset), 
reinterpret_cast<const uint8_t*
>([msg bytes]), 
static_cast<int>([msg length]) };
 
  100- (NSInteger) parameterCount
 
  105- (NSString*) getParameterName: (NSInteger) paramIdx
 
  107  NSString* name = [NSString stringWithUTF8String:((CocoaEditorDelegate*) editorDelegate)->GetParam(static_cast<int>(paramIdx))->GetName()];
 
  111- (double) getParameterDefault: (NSInteger) paramIdx
 
  113  return ((
CocoaEditorDelegate*) editorDelegate)->GetParam(
static_cast<int>(paramIdx))->GetDefault();
 
  116- (double) getParameterMin: (NSInteger) paramIdx
 
  118  return ((
CocoaEditorDelegate*) editorDelegate)->GetParam(
static_cast<int>(paramIdx))->GetMin();
 
  121- (double) getParameterMax: (NSInteger) paramIdx
 
  123  return ((
CocoaEditorDelegate*) editorDelegate)->GetParam(
static_cast<int>(paramIdx))->GetMax();
 
  126- (double) getParameterStep: (NSInteger) paramIdx
 
  128  return ((
CocoaEditorDelegate*) editorDelegate)->GetParam(
static_cast<int>(paramIdx))->GetStep();
 
  131- (NSString*) getParameterLabel: (NSInteger) paramIdx
 
  133  NSString* label = [NSString stringWithUTF8String:((CocoaEditorDelegate*) editorDelegate)->GetParam(static_cast<int>(paramIdx))->GetLabel()];
 
  137- (NSString*) getParameterGroup: (NSInteger) paramIdx
 
  139  NSString* group = [NSString stringWithUTF8String:((CocoaEditorDelegate*) editorDelegate)->GetParam(static_cast<int>(paramIdx))->GetGroup()];
 
  143- (NSInteger) getParameterNumDisplayTexts:(NSInteger)paramIdx
 
  145  if (paramIdx < 0 || paramIdx >= [self parameterCount]) {
 
  153- (NSString*) getParameterDisplayText:(NSInteger)paramIdx
 
  154                                index:(NSInteger)displayIndex
 
  156  if (paramIdx < 0 || paramIdx >= [self parameterCount]) {
 
  164  double dummyValue = 0.0;
 
  165  const char* text = pParam->
GetDisplayTextAtIdx(
static_cast<int>(displayIndex), &dummyValue);
 
  170  return [NSString stringWithUTF8String:text];
 
  173- (double) getParameterDisplayTextValue:(NSInteger)paramIdx
 
  174                                  index:(NSInteger)displayIndex
 
  176  if (paramIdx < 0 || paramIdx >= [self parameterCount]) {
 
  187- (int) getParameterFlags:(NSInteger) paramIdx
 
  189  if (paramIdx < 0 || paramIdx >= [self parameterCount]) {
 
  197- (int) getParameterShapeID:(NSInteger)paramIdx
 
  199  if (paramIdx < 0 || paramIdx >= [self parameterCount]) {
 
  207- (double) getParameterShapeValue:(NSInteger)paramIdx
 
  209  if (paramIdx < 0 || paramIdx >= [self parameterCount]) {
 
  218- (void) setBundleID: (const 
char *) _bundleID
 
  220  bundleID = [NSString stringWithUTF8String:_bundleID];
 
  223- (NSString*) getBundleID
 
An editor delegate base class that uses Apple frameworks for the UI, either in Objective C,...
 
int GetFlags() const
Returns the parameter's flags.
 
const char * GetDisplayTextAtIdx(int idx, double *pValue=nullptr) const
Get the display text at a particular index.
 
double GetShapeValue() const
 
int NDisplayTexts() const
Get the number of display texts for the parameter.
 
EShapeIDs GetShapeID() const
 
An objc view controller base which reproduces some functionality from EditorDelegate in objc.
 
Encapsulates a MIDI message and provides helper functions.
 
A struct for dealing with SysEx messages.