1 #ifndef FLUTTER_PLUGIN_ONDE_INFERENCE_PLUGIN_H_
2 #define FLUTTER_PLUGIN_ONDE_INFERENCE_PLUGIN_H_
3
4 #include <flutter/plugin_registrar_windows.h>
5
6 #include <memory>
7
8 namespace onde_inference {
9
10 // A minimal Flutter Windows plugin class.
11 //
12 // All on-device inference logic is implemented in the Rust crate
13 // onde_inference_dart (compiled to onde_inference_dart.dll). This plugin
14 // class exists solely to satisfy the Flutter Windows plugin registration
15 // protocol — it does not handle any method channels itself.
16 //
17 // flutter_rust_bridge v2 loads the Rust DLL directly from Dart via dart:ffi,
18 // so no C++ ↔ Dart channel code is needed here.
19 class OndeInferencePlugin : public flutter::Plugin {
20 public:
21 static void RegisterWithRegistrar(flutter::PluginRegistrarWindows* registrar);
22
23 OndeInferencePlugin();
24 virtual ~OndeInferencePlugin();
25
26 // Disallow copy and assign.
27 OndeInferencePlugin(const OndeInferencePlugin&) = delete;
28 OndeInferencePlugin& operator=(const OndeInferencePlugin&) = delete;
29 };
30
31 } // namespace onde_inference
32
33 #endif // FLUTTER_PLUGIN_ONDE_INFERENCE_PLUGIN_H_