| 1108 | // v3_funknown |
| 1109 | |
| 1110 | static v3_result V3_API query_interface_view(void* self, const v3_tuid iid, void** iface) |
| 1111 | { |
| 1112 | dpf_plugin_view* const view = *static_cast<dpf_plugin_view**>(self); |
| 1113 | |
| 1114 | if (v3_tuid_match(iid, v3_funknown_iid) || |
| 1115 | v3_tuid_match(iid, v3_plugin_view_iid)) |
| 1116 | { |
| 1117 | d_debug("query_interface_view => %p %s %p | OK", self, tuid2str(iid), iface); |
| 1118 | ++view->refcounter; |
| 1119 | *iface = self; |
| 1120 | return V3_OK; |
| 1121 | } |
| 1122 | |
| 1123 | if (v3_tuid_match(v3_connection_point_iid, iid)) |
| 1124 | { |
| 1125 | d_debug("query_interface_view => %p %s %p | OK convert %p", |
| 1126 | self, tuid2str(iid), iface, view->connection.get()); |
| 1127 | |
| 1128 | if (view->connection == nullptr) |
| 1129 | view->connection = new dpf_ui_connection_point(view->uivst3); |
| 1130 | else |
| 1131 | ++view->connection->refcounter; |
| 1132 | *iface = &view->connection; |
| 1133 | return V3_OK; |
| 1134 | } |
| 1135 | |
| 1136 | #ifndef DISTRHO_OS_MAC |
| 1137 | if (v3_tuid_match(v3_plugin_view_content_scale_iid, iid)) |
| 1138 | { |
| 1139 | d_debug("query_interface_view => %p %s %p | OK convert %p", |
| 1140 | self, tuid2str(iid), iface, view->scale.get()); |
| 1141 | |
| 1142 | if (view->scale == nullptr) |
| 1143 | view->scale = new dpf_plugin_view_content_scale(view->uivst3); |
| 1144 | else |
| 1145 | ++view->scale->refcounter; |
| 1146 | *iface = &view->scale; |
| 1147 | return V3_OK; |
| 1148 | } |
| 1149 | #endif |
| 1150 | |
| 1151 | d_debug("query_interface_view => %p %s %p | WARNING UNSUPPORTED", self, tuid2str(iid), iface); |
| 1152 | |
| 1153 | *iface = nullptr; |
| 1154 | return V3_NO_INTERFACE; |
| 1155 | } |
| 1156 | |
| 1157 | static uint32_t V3_API ref_view(void* self) |
| 1158 | { |
nothing calls this directly
no test coverage detected