0

I'm doing some work with the Steinberg VST3SDK and have bumped into an error I don't really understand:

[GLFWWindow window]: unrecognized selector sent to instance 0x7fe10430a830
2022-12-22 08:11:08.981 MyHost[1593:20791] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[GLFWWindow window]: unrecognized selector sent to instance 0x7fe10430a830'
*** First throw call stack:
(
        0   CoreFoundation                      0x00007fff37903a17 __exceptionPreprocess + 250
        1   libobjc.A.dylib                     0x00007fff70468a9e objc_exception_throw + 48
        2   CoreFoundation                      0x00007fff37982e36 -[NSObject(NSObject) __retain_OA] + 0
        3   CoreFoundation                      0x00007fff37868190 ___forwarding___ + 1427
        4   CoreFoundation                      0x00007fff37867b68 _CF_forwarding_prep_0 + 120
        5   Digitalis                           0x000000010a9dc990 GetPluginFactory + 1922288
        6   Digitalis                           0x000000010a9dbb85 GetPluginFactory + 1918693
        7   Digitalis                           0x000000010a80db6e GetPluginFactory + 26318
        8   MyHost                              0x000000010a624641 _ZN6Plugin4loadERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEE + 2065
        9   MyHost                              0x000000010a624e9d main + 61
        10  libdyld.dylib                       0x00007fff71608cc9 start + 1
        11  ???                                 0x0000000000000001 0x0 + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException

i guess this leads me to question whether the kPlatformType “NSView” is equivalent to glfwGetCocoaWindow()'s “NSWindow” return value? heres the snippet of code thats causing me errors:

  if (!glfwInit()) {
    std::cout << "Failed to initialise Editor Window" << std::endl;
    return false;
  }
  auto view = controller->createView(Steinberg::Vst::ViewType::kEditor);
  Steinberg::ViewRect dimensions;
  view->getSize(&dimensions);
  editorWindow = glfwCreateWindow(dimensions.getWidth(), dimensions.getHeight(), "VST 3 SDK", nullptr, nullptr);
  view->attached(glfwGetCocoaWindow(editorWindow), Steinberg::kPlatformTypeNSView);

can also confirm that the windows equivalent of this works fine:

view->attached(glfwGetWin32Window(editorWindow), Steinberg::kPlatformTypeHWN

any type of explanation whether it be for debugging the error message itself or the VST3SDK side would be greatly appreciated!

i tried:

  view->attached(glfwGetCocoaWindow(editorWindow), Steinberg::kPlatformTypeNSView);

and expected the vst3 view to be attached to my GLFW window

sh93
  • 11
  • 2

0 Answers0