/// <summary> /// Creates a proxy class of the specified Vec*b /// </summary> /// <param name="vec"></param> /// <returns></returns> public static InputArray Create(IVec vec) { if (vec == null) { throw new ArgumentNullException(nameof(vec)); } return(vec switch { Vec2b v => new InputArray(new[] { v.Item0, v.Item1 }), Vec3b v => new InputArray(new[] { v.Item0, v.Item1, v.Item2 }), Vec4b v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3 }), Vec6b v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3, v.Item4, v.Item5 }), Vec2s v => new InputArray(new[] { v.Item0, v.Item1 }), Vec3s v => new InputArray(new[] { v.Item0, v.Item1, v.Item2 }), Vec4s v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3 }), Vec6s v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3, v.Item4, v.Item5 }), Vec2w v => new InputArray(new[] { v.Item0, v.Item1 }), Vec3w v => new InputArray(new[] { v.Item0, v.Item1, v.Item2 }), Vec4w v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3 }), Vec6w v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3, v.Item4, v.Item5 }), Vec2i v => new InputArray(new[] { v.Item0, v.Item1 }), Vec3i v => new InputArray(new[] { v.Item0, v.Item1, v.Item2 }), Vec4i v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3 }), Vec6i v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3, v.Item4, v.Item5 }), Vec2f v => new InputArray(new[] { v.Item0, v.Item1 }), Vec3f v => new InputArray(new[] { v.Item0, v.Item1, v.Item2 }), Vec4f v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3 }), Vec6f v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3, v.Item4, v.Item5 }), Vec2d v => new InputArray(new[] { v.Item0, v.Item1 }), Vec3d v => new InputArray(new[] { v.Item0, v.Item1, v.Item2 }), Vec4d v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3 }), Vec6d v => new InputArray(new[] { v.Item0, v.Item1, v.Item2, v.Item3, v.Item4, v.Item5 }), _ => throw new ArgumentException($"Not supported type: '{vec.GetType().Name}'", nameof(vec)) });
/// <summary> /// Writes data to a file storage. /// </summary> /// <param name="val"></param> public FileStorage Add(Vec4d val) { ThrowIfDisposed(); NativeMethods.core_FileStorage_shift_Vec4d(ptr, val); GC.KeepAlive(this); return(this); }
public static extern void core_Mat_push_back_Vec4d(IntPtr self, Vec4d v);
public static extern ExceptionStatus core_FileNode_read_Vec4d(IntPtr node, out Vec4d returnValue);
/// <summary> /// /// </summary> /// <param name="other"></param> /// <returns></returns> public bool Equals(Vec4d other) { return(Item0.Equals(other.Item0) && Item1.Equals(other.Item1) && Item2.Equals(other.Item2) && Item3.Equals(other.Item3)); }
public static extern ExceptionStatus core_FileStorage_shift_Vec4d(IntPtr fs, Vec4d val);
public static extern ExceptionStatus core_Mat_push_back_Vec4d(IntPtr self, Vec4d v);
public static extern void core_FileStorage_shift_Vec4d(IntPtr fs, Vec4d val);
public static void Run(IntPtr ptr, Vec4d v) => NativeMethods.core_Mat_push_back_Vec4d(ptr, v);