public static int Load(IntPtr tuple, out HTupleMixed data) { int err = 2; int length; HalconAPI.GetTupleLength(tuple, out length); object[] o = new object[length]; for (int index = 0; index < length; ++index) { if (!HalconAPI.IsFailure(err)) { HTupleType type; HalconAPI.GetElementType(tuple, index, out type); switch (type) { case HTupleType.INTEGER: if (HalconAPI.isPlatform64) { long longValue; err = HalconAPI.GetL(tuple, index, out longValue); o[index] = (object)longValue; continue; } int intValue; err = HalconAPI.GetI(tuple, index, out intValue); o[index] = (object)intValue; continue; case HTupleType.DOUBLE: double doubleValue; err = HalconAPI.GetD(tuple, index, out doubleValue); o[index] = (object)doubleValue; continue; case HTupleType.STRING: string stringValue; err = HalconAPI.GetS(tuple, index, out stringValue); o[index] = (object)stringValue; continue; default: continue; } } } data = new HTupleMixed(o, false); return(err); }
public static int Load(IntPtr tuple, out HTupleString data) { int err = 2; int length; HalconAPI.GetTupleLength(tuple, out length); string[] s = new string[length]; for (int index = 0; index < length; ++index) { if (!HalconAPI.IsFailure(err)) { err = HalconAPI.GetS(tuple, index, out s[index]); } } data = new HTupleString(s, false); return(err); }
public static int LoadS(IntPtr proc, int parIndex, int err, out string stringValue) { if (HalconAPI.IsFailure(err)) { stringValue = ""; return(err); } IntPtr tuple = IntPtr.Zero; HalconAPI.GetOutputTuple(proc, parIndex, out tuple); err = HalconAPI.HCkSingle(tuple, HTupleType.STRING); if (err == 2) { return(HalconAPI.GetS(tuple, 0, out stringValue)); } stringValue = ""; return(err); }