Ntif.cs 34 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Runtime.InteropServices;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace MazakCnc
  8. {
  9. public class Ntif
  10. {
  11. public const string _MAZAK_NTIF_ = "";
  12. public const int MAZ_AXISMAX = 16;
  13. public const int MAZ_TOOLMAX = 20;
  14. public const int MAZ_ALMMAX = 24;
  15. public const int MAZ_ALMHISMAX = 72;
  16. public const int MAX_RRAGNO = 16383;
  17. public const int MAZERR_OK = 0;
  18. public const int MAZERR_SOCK = -10;
  19. public const int MAZERR_FlibHndl = -20;
  20. public const int MAZERR_CLIMAX = -21;
  21. public const int MAZERR_SERVERMAX = -22;
  22. public const int MAZERR_VER = -30;
  23. public const int MAZERR_BUSY = -40;
  24. public const int MAZERR_RUNNING = -50;
  25. public const int MAZERR_OVER = -51;
  26. public const int MAZERR_NONE = -52;
  27. public const int MAZERR_TYPE = -53;
  28. public const int MAZERR_EDIT = -54;
  29. public const int MAZERR_PROSIZE = -55;
  30. public const int MAZERR_PRONUM = -56;
  31. public const int MAZERR_ARG = -60;
  32. public const int MAZERR_SYS = -70;
  33. public const int MAZERR_FUNC = -80;
  34. public const int MAZERR_TIMEOUT = -90;
  35. public struct MAZ_AXISNAME
  36. {
  37. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 16)]
  38. public string status;
  39. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.Struct)]
  40. public OneAxisName[] axis;
  41. }
  42. public struct OneAxisName
  43. {
  44. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  45. public string axisname;
  46. }
  47. public struct MAZ_NCPOS
  48. {
  49. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 16)]
  50. public string status;
  51. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.I4)]
  52. public int[] data;
  53. }
  54. public struct MAZ_PROINFO
  55. {
  56. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 33)]
  57. public string wno;
  58. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  59. public string dummy;
  60. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 49)]
  61. public string comment;
  62. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  63. public string dummy2;
  64. public byte type;
  65. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  66. public string dummy3;
  67. }
  68. public struct MAZ_PROINFO2
  69. {
  70. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 33)]
  71. public string wno;
  72. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  73. public string dummy;
  74. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 49)]
  75. public string comment;
  76. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  77. public string dummy2;
  78. public byte type;
  79. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  80. public string dummy3;
  81. public int uno;
  82. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  83. public string dummy4;
  84. public int sno;
  85. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  86. public string dummy5;
  87. public int bno;
  88. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  89. public string dummy6;
  90. }
  91. public struct MAZ_AXISLOAD
  92. {
  93. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 16)]
  94. public string status;
  95. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.U2)]
  96. public ushort[] data;
  97. }
  98. public struct MAZ_FEED
  99. {
  100. public int fmin;
  101. public int frev;
  102. }
  103. public struct MAZ_TOOLINFO
  104. {
  105. public ushort tno;
  106. public byte suf;
  107. public byte sufatr;
  108. public byte name;
  109. public byte part;
  110. public byte sts;
  111. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 1)]
  112. public string dummy;
  113. public int yob;
  114. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  115. public string dummy2;
  116. }
  117. public struct MAZ_TLIFE
  118. {
  119. public MAZ_TOOLINFO info;
  120. public uint sts;
  121. public uint lif;
  122. public uint use;
  123. public uint clif;
  124. public uint cuse;
  125. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  126. public string dummy;
  127. }
  128. public struct MAZ_TLIFEALL
  129. {
  130. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.Struct)]
  131. public MAZ_TLIFE[] toolLife;
  132. }
  133. public struct MAZ_TDCOMP
  134. {
  135. public MAZ_TOOLINFO info;
  136. public uint sts;
  137. public int toolsetX;
  138. public int toolsetZ;
  139. public int offsetX;
  140. public int offsetY;
  141. public int offsetZ;
  142. public int lengthA;
  143. public int lengthB;
  144. public int radius;
  145. public int LenOffset;
  146. public int RadOffset;
  147. public int LenCompno;
  148. public int RadCompno;
  149. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  150. public string dummy;
  151. }
  152. public struct MAZ_TDCOMPALL
  153. {
  154. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.Struct)]
  155. public MAZ_TDCOMP[] offset;
  156. }
  157. public struct MAZ_TOFFCOMP
  158. {
  159. public int type;
  160. public int offset1;
  161. public int offset2;
  162. public int offset3;
  163. public int offset4;
  164. public int offset5;
  165. public int offset6;
  166. public int offset7;
  167. public int offset8;
  168. public int offset9;
  169. }
  170. public struct MAZ_ALARM
  171. {
  172. public short eno;
  173. public byte sts;
  174. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 5)]
  175. public string dummy;
  176. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
  177. public string pa1;
  178. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 16)]
  179. public string pa2;
  180. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 16)]
  181. public string pa3;
  182. public byte mon;
  183. public byte day;
  184. public byte hor;
  185. public byte min;
  186. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  187. public string dummy2;
  188. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
  189. public string extmes;
  190. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  191. public string head;
  192. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  193. public string dummy3;
  194. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
  195. public string message;
  196. }
  197. public struct MAZ_ALARMALL
  198. {
  199. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 24, ArraySubType = UnmanagedType.Struct)]
  200. public MAZ_ALARM[] alarm;
  201. }
  202. public struct MAZ_ALARMHIS
  203. {
  204. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 72, ArraySubType = UnmanagedType.Struct)]
  205. public MAZ_ALARM[] alahis;
  206. }
  207. public struct MAZ_MAINTE
  208. {
  209. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 49)]
  210. public string lpszComment;
  211. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  212. public string dummy;
  213. public ushort uYear;
  214. public ushort uMonth;
  215. public ushort uDay;
  216. public short nTargetTime;
  217. public int lProgressSec;
  218. }
  219. public struct MAZ_LMAINTE
  220. {
  221. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 1568)]
  222. public string lpszComment;
  223. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  224. public string dummy;
  225. public ushort uYear;
  226. public ushort uMonth;
  227. public ushort uDay;
  228. public short nTargetTime;
  229. public int lProgressSec;
  230. public uint flgReversed;
  231. }
  232. public struct MAZ_MAINTE_CHECK
  233. {
  234. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 22, ArraySubType = UnmanagedType.Struct)]
  235. public MAZ_MAINTE[] mainte;
  236. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.Struct)]
  237. public MAZ_LMAINTE[] lmainte;
  238. }
  239. public struct MAZ_NCONTIME
  240. {
  241. public uint year;
  242. public uint mon;
  243. public uint day;
  244. public uint hor;
  245. public uint min;
  246. public uint sec;
  247. }
  248. public struct MAZ_NCTIME
  249. {
  250. public uint hor;
  251. public uint min;
  252. public uint sec;
  253. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  254. public string dummy;
  255. }
  256. public struct MAZ_ACCUM_TIME
  257. {
  258. public MAZ_NCTIME power_on;
  259. public MAZ_NCTIME auto_ope;
  260. public MAZ_NCTIME auto_cut;
  261. public MAZ_NCTIME total_cut;
  262. public MAZ_NCTIME total_time;
  263. }
  264. public struct MAZ_VERINFO
  265. {
  266. public ushort majorver;
  267. public ushort minorver;
  268. public ushort releasever;
  269. public ushort buildver;
  270. }
  271. public struct MAZ_NC_VERINFO
  272. {
  273. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 17)]
  274. public string szMainA;
  275. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  276. public string dummy1;
  277. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 17)]
  278. public string szMainB;
  279. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  280. public string dummy2;
  281. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 17)]
  282. public string szLadder;
  283. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  284. public string dummy3;
  285. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 17)]
  286. public string szUnitName;
  287. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  288. public string dummy4;
  289. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 17)]
  290. public string szNCSerial;
  291. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  292. public string dummy5;
  293. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 17)]
  294. public string szNCModel;
  295. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  296. public string dummy6;
  297. }
  298. public struct MTC_COMP_FEED_INFO
  299. {
  300. public byte sts;
  301. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  302. public string dummy;
  303. public double feed;
  304. }
  305. public struct MTC_ONE_AXIS_INFO
  306. {
  307. public byte sts;
  308. public byte dummy;
  309. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  310. public string axis_name;
  311. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 2)]
  312. public string dummy1;
  313. public double pos;
  314. public double mc_pos;
  315. public double load;
  316. public double feed;
  317. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 17, ArraySubType = UnmanagedType.R8)]
  318. public double[] dummy2;
  319. }
  320. public struct MTC_AXIS_INFO
  321. {
  322. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.Struct)]
  323. public MTC_COMP_FEED_INFO[] composited_feedrate;
  324. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 16, ArraySubType = UnmanagedType.Struct)]
  325. public MTC_ONE_AXIS_INFO[] axis;
  326. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.Struct)]
  327. public MTC_ONE_AXIS_INFO[] reserved;
  328. }
  329. public struct MTC_ONE_SPINDLE_INFO
  330. {
  331. public byte sts;
  332. public byte type;
  333. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 6)]
  334. public string dummy;
  335. public double rot;
  336. public double load;
  337. public double temp;
  338. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 17, ArraySubType = UnmanagedType.R8)]
  339. public double[] dummy2;
  340. }
  341. public struct MTC_SPINDLE_INFO
  342. {
  343. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8, ArraySubType = UnmanagedType.Struct)]
  344. public MTC_ONE_SPINDLE_INFO[] sp_info;
  345. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.Struct)]
  346. public MTC_ONE_SPINDLE_INFO[] dummy;
  347. }
  348. public struct MTC_ONE_PROGRAM_INFO
  349. {
  350. public byte sts;
  351. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  352. public string dummy;
  353. public int wno;
  354. public int subwno;
  355. public int blockno;
  356. public int seqno;
  357. public int unitno;
  358. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 33)]
  359. public string wno_string;
  360. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 33)]
  361. public string subwno_string;
  362. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 49)]
  363. public string wno_comment;
  364. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 49)]
  365. public string subwno_comment;
  366. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 44)]
  367. public string dummy3;
  368. }
  369. public struct MTC_PROGRAM_INFO
  370. {
  371. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.Struct)]
  372. public MTC_ONE_PROGRAM_INFO[] prog_info;
  373. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.Struct)]
  374. public MTC_ONE_PROGRAM_INFO[] dummy;
  375. }
  376. public struct MTC_ONE_RUNNING_INFO
  377. {
  378. public byte sts;
  379. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  380. public string dummy;
  381. public short ncmode;
  382. public short ncsts;
  383. public short tno;
  384. public byte suffix;
  385. public byte sufattr;
  386. public short figA;
  387. public short figB;
  388. public int nom;
  389. public int gno;
  390. public short sp_override;
  391. public short ax_override;
  392. public short rpid_override;
  393. public short almno;
  394. public int alm_fore_color;
  395. public int alm_back_color;
  396. public short prtcnt;
  397. public short prtcnt_clamp;
  398. public int autotim;
  399. public int cuttim;
  400. public int totaltim;
  401. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 112)]
  402. public string dummy3;
  403. }
  404. public struct MTC_RUNNING_INFO
  405. {
  406. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4, ArraySubType = UnmanagedType.Struct)]
  407. public MTC_ONE_RUNNING_INFO[] run_info;
  408. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 2, ArraySubType = UnmanagedType.Struct)]
  409. public MTC_ONE_RUNNING_INFO[] dummy;
  410. }
  411. [StructLayout(LayoutKind.Explicit)]
  412. public struct Data
  413. {
  414. [FieldOffset(0)]
  415. public byte ucdata;
  416. [FieldOffset(0)]
  417. public byte cdata;
  418. [FieldOffset(0)]
  419. public ushort usdata;
  420. [FieldOffset(0)]
  421. public short sdata;
  422. [FieldOffset(0)]
  423. public uint uldata;
  424. [FieldOffset(0)]
  425. public int ldata;
  426. }
  427. public struct MAZ_TD_COMMON
  428. {
  429. public ushort tno;
  430. public byte name;
  431. public byte part;
  432. public int nom;
  433. public byte itf;
  434. public byte suf;
  435. public byte sufatr;
  436. public byte dummy1;
  437. public ushort pkno;
  438. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 2)]
  439. public string dummy2;
  440. public int lengthA;
  441. public int lengthB;
  442. public int lengthC;
  443. public int diameter;
  444. public long toolsetX;
  445. public long toolsetZ;
  446. public short rotate;
  447. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 6)]
  448. public string dummy3;
  449. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 9)]
  450. public string mtr;
  451. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  452. public string dummy4;
  453. public short holdno;
  454. public short holdtype;
  455. public int lifetime;
  456. public int usetime;
  457. public ushort lifenumber;
  458. public ushort usenumber;
  459. public int gno;
  460. public int compno;
  461. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 11)]
  462. public string idno;
  463. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 5)]
  464. public string dummy5;
  465. public int wearcompX;
  466. public int wearcompZ;
  467. public int wearcompY;
  468. public int maxwearX;
  469. public int maxwearZ;
  470. public int maxwearY;
  471. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 17)]
  472. public string model;
  473. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  474. public string dummy6;
  475. public int teyecompX;
  476. public int teyecompZ;
  477. public int holdlength;
  478. public int holddiam;
  479. public int sts;
  480. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 28)]
  481. public string dummy7;
  482. }
  483. public struct MAZ_TD_TURNING_COMMON
  484. {
  485. public short angle;
  486. public byte index_select;
  487. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 1)]
  488. public string dummy1;
  489. public int easycompX;
  490. public int easycompZ;
  491. public int easycompY;
  492. public int conscompX;
  493. public int conscompZ;
  494. public int conscompY;
  495. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 36)]
  496. public string dummy2;
  497. }
  498. public struct MAZ_TD_GENERAL
  499. {
  500. public MAZ_TD_TURNING_COMMON td_general;
  501. public int cutang;
  502. public int edgang;
  503. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 8)]
  504. public string dummy1;
  505. public int holdwidth1;
  506. public int holdwidth2;
  507. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  508. public string dummy2;
  509. public int twidth;
  510. public byte lbbno;
  511. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 39)]
  512. public string dummy3;
  513. }
  514. public struct MAZ_TD_VARIOUS
  515. {
  516. public MAZ_TD_GENERAL td_general;
  517. }
  518. public struct MAZ_TD
  519. {
  520. public uint avf;
  521. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 36)]
  522. public string dummy;
  523. public MAZ_TD_COMMON td_common;
  524. public MAZ_TD_VARIOUS td_various;
  525. }
  526. public struct MAZ_TDALL
  527. {
  528. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20)]
  529. public MAZ_TD[] tool;
  530. }
  531. public struct MAZ_MAC_TYPE
  532. {
  533. public byte gcodeType;
  534. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  535. public string dummy1;
  536. public int tableType;
  537. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  538. public string dummy2;
  539. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 16)]
  540. public string headAxisName;
  541. public int ttpcMacType;
  542. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  543. public string dummy3;
  544. }
  545. public struct MAZ_MODAL_INFO
  546. {
  547. public byte sts;
  548. public byte dummy1;
  549. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 2)]
  550. public string aux;
  551. public int modalS;
  552. public int modalF;
  553. public int modalM;
  554. public int modalAux;
  555. public int dummy2;
  556. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 40, ArraySubType = UnmanagedType.U2)]
  557. public short[] modalG;
  558. }
  559. public struct MAZ_TOFFINFO
  560. {
  561. public int type;
  562. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
  563. public string dummy1;
  564. public ushort toffNum1;
  565. public ushort toffNum2;
  566. public ushort toffNum3;
  567. public ushort toffNum4;
  568. public byte toffSysVar;
  569. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  570. public string dummy2;
  571. }
  572. public struct MAZ_TD_ERRORALL
  573. {
  574. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20, ArraySubType = UnmanagedType.Struct)]
  575. public MAZ_TD_ERROR[] tdata_err;
  576. }
  577. public struct MAZ_TD_ERROR
  578. {
  579. public byte failure;
  580. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  581. public string dummy1;
  582. public uint err_flg1;
  583. public uint err_flg2;
  584. public uint err_flg3;
  585. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 36)]
  586. public string dummy2;
  587. }
  588. [StructLayout(LayoutKind.Sequential, Pack = 4)]
  589. public struct MAZ_CERTIFY
  590. {
  591. /// <summary>
  592. /// 授权码
  593. /// </summary>
  594. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 33)]
  595. public string vendorCode;
  596. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  597. public string dummy1;
  598. /// <summary>
  599. /// 用户名
  600. /// </summary>
  601. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 33)]
  602. public string appName;
  603. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 7)]
  604. public string dummy2;
  605. /// <summary>
  606. /// 密码
  607. /// </summary>
  608. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 33)]
  609. public string userPasswd;
  610. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 15)]
  611. public string dummy3;
  612. }
  613. [DllImport("NTIFDLL.dll")]
  614. public static extern int MazConnect_s(ref ushort FlibHndl, [In][MarshalAs(UnmanagedType.LPStr)] string ip, int port, int timeout, MAZ_CERTIFY certify);
  615. [System.Runtime.InteropServices.DllImportAttribute("NTIFDLL.dll", EntryPoint = "MazConnect")]
  616. public static extern int MazConnect(ref ushort hndl, [System.Runtime.InteropServices.InAttribute()][System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.LPStr)] string param1, ushort param2, ushort param3);
  617. [DllImport("NTIFDLL.dll")]
  618. public static extern int MazDisconnect(ushort FlibHndl);
  619. [DllImport("NTIFDLL.dll")]
  620. public static extern int MazGetAxisName(ushort FlibHndl, ref MAZ_AXISNAME param1);
  621. [DllImport("NTIFDLL.dll")]
  622. public static extern int MazGetMachineUnit(ushort FlibHndl, ref short param1);
  623. [DllImport("NTIFDLL.dll")]
  624. public static extern int MazGetCurrentPos(ushort FlibHndl, ref MAZ_NCPOS param1);
  625. [DllImport("NTIFDLL.dll")]
  626. public static extern int MazGetRemain(ushort FlibHndl, ref MAZ_NCPOS param1);
  627. [DllImport("NTIFDLL.dll")]
  628. public static extern int MazGetRunMode(ushort FlibHndl, ushort head, ref short param2);
  629. [DllImport("NTIFDLL.dll")]
  630. public static extern int MazGetMainPro(ushort FlibHndl, ushort head, ref MAZ_PROINFO param2);
  631. [DllImport("NTIFDLL.dll")]
  632. public static extern int MazGetRunningPro(ushort FlibHndl, ushort head, ref MAZ_PROINFO param2);
  633. [DllImport("NTIFDLL.dll")]
  634. public static extern int MazGetRunningPro2(ushort FlibHndl, ushort head, ref MAZ_PROINFO2 param2);
  635. [DllImport("NTIFDLL.dll")]
  636. public static extern int MazGetSpindleLoad(ushort FlibHndl, ushort head, ref ushort param2);
  637. [DllImport("NTIFDLL.dll")]
  638. public static extern int MazGetAxisLoad(ushort FlibHndl, ref MAZ_AXISLOAD param1);
  639. [DllImport("NTIFDLL.dll")]
  640. public static extern int MazGetOrderSpindleRev(ushort FlibHndl, ushort head, ref int param2);
  641. [DllImport("NTIFDLL.dll")]
  642. public static extern int MazGetCurrentSpindleRev(ushort FlibHndl, ushort head, ref int param2);
  643. [DllImport("NTIFDLL.dll")]
  644. public static extern int MazGetFeed(ushort FlibHndl, ushort head, ref MAZ_FEED param2);
  645. [DllImport("NTIFDLL.dll")]
  646. public static extern int MazGetFeedOverRide(ushort FlibHndl, ushort head, ref ushort param2);
  647. [DllImport("NTIFDLL.dll")]
  648. public static extern int MazGetCurrentTool(ushort FlibHndl, ushort head, ref MAZ_TOOLINFO param2);
  649. [DllImport("NTIFDLL.dll")]
  650. public static extern int MazGetPartsCount(ushort FlibHndl, ushort head, ref int param2);
  651. [DllImport("NTIFDLL.dll")]
  652. public static extern int MazGetRunningSts(ushort FlibHndl, ushort head, ref short param2);
  653. [DllImport("NTIFDLL.dll")]
  654. public static extern int MazGetMagazineToolNum(ushort FlibHndl, ushort head, ref int param2);
  655. [DllImport("NTIFDLL.dll")]
  656. public static extern int MazGetToolLife(ushort FlibHndl, ushort head, short tlnum, ref MAZ_TLIFEALL param3);
  657. [DllImport("NTIFDLL.dll")]
  658. public static extern int MazGetToolDataComp(ushort FlibHndl, ushort head, short tlnum, ref MAZ_TDCOMPALL param3);
  659. [DllImport("NTIFDLL.dll")]
  660. public static extern int MazGetToolOffsetComp(ushort FlibHndl, ushort head, short tlnum, ref MAZ_TOFFCOMP param3);
  661. [DllImport("NTIFDLL.dll")]
  662. public static extern int MazSetToolOffsetComp(ushort FlibHndl, ushort head, short tlnum, ref MAZ_TOFFCOMP param3);
  663. [DllImport("NTIFDLL.dll")]
  664. public static extern int MazGetToolOffsetInfo(ushort FlibHndl, ref MAZ_TOFFINFO param1);
  665. [DllImport("NTIFDLL.dll")]
  666. public static extern int MazDeleteToolData(ushort FlibHndl, ushort head, [In] [Out] MAZ_TD[] param2);
  667. [DllImport("NTIFDLL.dll")]
  668. public static extern int MazSetToolData(ushort FlibHndl, ushort head, ushort tlnum, ref MAZ_TDALL param3, ref MAZ_TD_ERRORALL param4);
  669. [DllImport("NTIFDLL.dll")]
  670. public static extern int MazGetAlarm(ushort FlibHndl, ref MAZ_ALARMALL param1);
  671. [DllImport("NTIFDLL.dll")]
  672. public static extern int MazGetAlarmHis(ushort FlibHndl, ref MAZ_ALARMHIS param1);
  673. [DllImport("NTIFDLL.dll")]
  674. public static extern int MazGetMainteCheck(ushort FlibHndl, ref MAZ_MAINTE_CHECK param1);
  675. [DllImport("NTIFDLL.dll")]
  676. public static extern int MazGetNcPowerOnTime(ushort FlibHndl, ref MAZ_NCONTIME param1);
  677. [DllImport("NTIFDLL.dll")]
  678. public static extern int MazGetRunningTime(ushort FlibHndl, ushort head, ref MAZ_NCTIME param2);
  679. [DllImport("NTIFDLL.dll")]
  680. public static extern int MazGetPreparationTime(ushort FlibHndl, ushort head, ref MAZ_NCTIME param2);
  681. [DllImport("NTIFDLL.dll")]
  682. public static extern int MazGetAccumulatedTime(ushort FlibHndl, ushort head, ref MAZ_ACCUM_TIME param2);
  683. [DllImport("NTIFDLL.dll")]
  684. public static extern int MazGetClientVer(ushort FlibHndl, ref MAZ_VERINFO param1);
  685. [DllImport("NTIFDLL.dll")]
  686. public static extern int MazGetServerVer(ushort FlibHndl, ref MAZ_VERINFO param1);
  687. [DllImport("NTIFDLL.dll")]
  688. public static extern int MazGetNCVersionInfo(ushort FlibHndl, ref MAZ_NC_VERINFO param1);
  689. [DllImport("NTIFDLL.dll")]
  690. public static extern int MazGetAxisInfo(ushort FlibHndl, ref MTC_AXIS_INFO param1);
  691. [DllImport("NTIFDLL.dll")]
  692. public static extern int MazGetSpindleInfo(ushort FlibHndl, ref MTC_SPINDLE_INFO param1);
  693. [DllImport("NTIFDLL.dll")]
  694. public static extern int MazGetProgramInfo(ushort FlibHndl, ref MTC_PROGRAM_INFO param1);
  695. [DllImport("NTIFDLL.dll")]
  696. public static extern int MazGetRunningInfo(ushort FlibHndl, ref MTC_RUNNING_INFO param1);
  697. [DllImport("NTIFDLL.dll", CharSet = CharSet.Ansi, ExactSpelling = true, SetLastError = true)]
  698. public static extern int MazGetToolDataNum(ushort FlibHndl, ushort head, ref int tdnum);
  699. [DllImport("NTIFDLL.dll")]
  700. public static extern int MazGetToolData(ushort FlibHndl, ushort head, ushort tlnum, ref MAZ_TDALL param3);
  701. [DllImport("NTIFDLL.dll")]
  702. public static extern int MazGetAllToolData(ushort FlibHndl, ushort param1, int param2, [In] [Out] MAZ_TD[] param3);
  703. [DllImport("NTIFDLL.dll")]
  704. public static extern int MazGetRapidOverRide(ushort FlibHndl, ushort head, ref ushort param2);
  705. [DllImport("NTIFDLL.dll")]
  706. public static extern int MazGetSpindleOverRide(ushort FlibHndl, ushort head, ref ushort param2);
  707. [DllImport("NTIFDLL.dll")]
  708. public static extern int MazGetMachineType(ushort FlibHndl, ref MAZ_MAC_TYPE param1);
  709. [DllImport("NTIFDLL.dll")]
  710. public static extern int MazGetCmnVarInfo(ushort FlibHndl, ref short param1);
  711. [DllImport("NTIFDLL.dll", CallingConvention = CallingConvention.StdCall)]
  712. public static extern int MazGetRangedCmnVar(ushort FlibHndl, short head, short cmnVarTop, short cmnVarEnd, double[] mcrData);
  713. [DllImport("NTIFDLL.dll")]
  714. public static extern int MazSetRangedCmnVar(ushort FlibHndl, short head, short cmnVarTop, short cmnVarEnd, double[] mcrData);
  715. [DllImport("NTIFDLL.dll")]
  716. public static extern int MazGetModal(ushort FlibHndl, ushort head, ref MAZ_MODAL_INFO modal);
  717. [DllImport("NTIFDLL.dll")]
  718. public static extern int GetNCLangKind(ushort FlibHndl, ref short param1);
  719. [DllImport("NTIFDLL.dll")]
  720. public static extern int MazGetMachinePos(ushort FlibHndl, ref MAZ_NCPOS param1);
  721. /// <summary>
  722. /// 向机床发送程序
  723. /// </summary>
  724. /// <param name="FlibHndl"></param>
  725. /// <param name="wno">内容 max 32 char</param>
  726. /// <param name="dir">路径 max 260 bytes</param>
  727. /// <param name="overwrite">1覆盖 0不覆盖</param>
  728. /// <returns></returns>
  729. [DllImport("NTIFDLL.dll")]
  730. public static extern int MazReceiveProgram(ushort FlibHndl, [In, MarshalAs(UnmanagedType.AsAny)] Object wno,
  731. [In, MarshalAs(UnmanagedType.AsAny)] Object dir, short overwrite);
  732. /// <summary>
  733. /// 向机床发送程序2
  734. /// </summary>
  735. /// <param name="FlibHndl"></param>
  736. /// <param name="wno">内容 max 32 char + null 1 char</param>
  737. /// <param name="dir">路径 max 260 bytes</param>
  738. /// <param name="overwrite">1覆盖 0不覆盖</param>
  739. /// <param name="area">标准区0,硬盘1</param>
  740. /// <returns></returns>
  741. [DllImport("NTIFDLL.dll")]
  742. public static extern int MazReceiveProgram2(ushort FlibHndl, [In, MarshalAs(UnmanagedType.AsAny)] Object wno,
  743. [In, MarshalAs(UnmanagedType.AsAny)] Object dir, short overwrite, short area);
  744. /// <summary>
  745. /// 向机床上传程序 文件名+路径 不能超过260 char
  746. /// </summary>
  747. /// <param name="FlibHndl"></param>
  748. /// <param name="wno">指定程序的文件名</param>
  749. /// <param name="dir">程序绝对路径</param>
  750. /// <param name="overwrite">1覆盖 0不覆盖</param>
  751. /// <returns></returns>
  752. [DllImport("NTIFDLL.dll")]
  753. public static extern int MazSendProgram(ushort FlibHndl, [In, MarshalAs(UnmanagedType.AsAny)] Object wno,
  754. [In, MarshalAs(UnmanagedType.AsAny)] Object dir, short overwrite);
  755. /// <summary>
  756. /// 向机床上传程序2
  757. /// </summary>
  758. /// <param name="FlibHndl"></param>
  759. /// <param name="wno">指定程序的文件名</param>
  760. /// <param name="dir">程序绝对路径</param>
  761. /// <param name="overwrite">1覆盖 0不覆盖</param>
  762. /// <param name="area">标准区0,硬盘1</param>
  763. /// <returns></returns>
  764. [DllImport("NTIFDLL.dll")]
  765. public static extern int MazSendProgram2(ushort FlibHndl, [In, MarshalAs(UnmanagedType.AsAny)] Object wno,
  766. [In, MarshalAs(UnmanagedType.AsAny)] Object dir, short overwrite, short area);
  767. [DllImport("NTIFDLL.dll")]
  768. public static extern int MazGetProgramFileList(ushort FlibHndl, int proNum, [Out] MAZ_PROFILE_INFO[] proFile);
  769. [DllImport("NTIFDLL.dll")]
  770. public static extern int MazGetProgramFileList2(ushort FlibHndl, int proNum, short overwrite, [Out] MAZ_PROFILE_INFO[] proFile);
  771. public class MAZ_PROFILE_INFO
  772. {
  773. public MAZ_PROINFO proInfo;
  774. public long proSize;
  775. public MAZ_PROGRAM_DATE createData;
  776. public MAZ_PROGRAM_DATE writeData;
  777. }
  778. public class MAZ_PROGRAM_DATE
  779. {
  780. public sbyte year;
  781. public sbyte month;
  782. public sbyte day;
  783. public sbyte hour;
  784. public sbyte min;
  785. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 2)]
  786. public string dummy;
  787. }
  788. }
  789. }