RFFeatureGetter.cs 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. 
  2. using OpenCVForUnity.CoreModule;
  3. using OpenCVForUnity.UtilsModule;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Runtime.InteropServices;
  7. namespace OpenCVForUnity.XimgprocModule {
  8. // C++: class RFFeatureGetter
  9. //javadoc: RFFeatureGetter
  10. public class RFFeatureGetter : Algorithm {
  11. protected override void Dispose(bool disposing) {
  12. #if (UNITY_ANDROID && !UNITY_EDITOR)
  13. try {
  14. if (disposing) {
  15. }
  16. if (IsEnabledDispose) {
  17. if (nativeObj != IntPtr.Zero)
  18. ximgproc_RFFeatureGetter_delete(nativeObj);
  19. nativeObj = IntPtr.Zero;
  20. }
  21. } finally {
  22. base.Dispose(disposing);
  23. }
  24. #else
  25. return;
  26. #endif
  27. }
  28. protected internal RFFeatureGetter(IntPtr addr) : base(addr) { }
  29. // internal usage only
  30. public static new RFFeatureGetter __fromPtr__(IntPtr addr) { return new RFFeatureGetter(addr); }
  31. //
  32. // C++: void cv::ximgproc::RFFeatureGetter::getFeatures(Mat src, Mat features, int gnrmRad, int gsmthRad, int shrink, int outNum, int gradNum)
  33. //
  34. //javadoc: RFFeatureGetter::getFeatures(src, features, gnrmRad, gsmthRad, shrink, outNum, gradNum)
  35. public void getFeatures(Mat src, Mat features, int gnrmRad, int gsmthRad, int shrink, int outNum, int gradNum) {
  36. ThrowIfDisposed();
  37. if (src != null) src.ThrowIfDisposed();
  38. if (features != null) features.ThrowIfDisposed();
  39. #if (UNITY_ANDROID && !UNITY_EDITOR)
  40. ximgproc_RFFeatureGetter_getFeatures_10(nativeObj, src.nativeObj, features.nativeObj, gnrmRad, gsmthRad, shrink, outNum, gradNum);
  41. return;
  42. #else
  43. return;
  44. #endif
  45. }
  46. #if (UNITY_ANDROID && !UNITY_EDITOR)
  47. const string LIBNAME = "opencvforunity";
  48. // C++: void cv::ximgproc::RFFeatureGetter::getFeatures(Mat src, Mat features, int gnrmRad, int gsmthRad, int shrink, int outNum, int gradNum)
  49. [DllImport(LIBNAME)]
  50. private static extern void ximgproc_RFFeatureGetter_getFeatures_10(IntPtr nativeObj, IntPtr src_nativeObj, IntPtr features_nativeObj, int gnrmRad, int gsmthRad, int shrink, int outNum, int gradNum);
  51. // native support for java finalize()
  52. [DllImport(LIBNAME)]
  53. private static extern void ximgproc_RFFeatureGetter_delete(IntPtr nativeObj);
  54. #endif
  55. }
  56. }