fwlib32.cs 499 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296
  1. /*-------------------------------------------------------------------*/
  2. /* fwlib32.cs */
  3. /* */
  4. /* CNC/PMC Data Window Library for FOCAS1/Ethernet */
  5. /* */
  6. /* Copyright (C) 2002-2011 by FANUC CORPORATION All rights reserved. */
  7. /* */
  8. /*-------------------------------------------------------------------*/
  9. using System;
  10. using System.Runtime.InteropServices;
  11. public class Focas1
  12. {
  13. /* Axis define */
  14. #if FS30D
  15. public const short MAX_AXIS = 32;
  16. #elif M_AXIS2
  17. public const short MAX_AXIS = 24;
  18. #elif FS15D
  19. public const short MAX_AXIS = 10;
  20. #else
  21. public const short MAX_AXIS = 8;
  22. #endif
  23. public const short ALL_AXES = (-1);
  24. public const short ALL_SPINDLES = (-1);
  25. public const short EW_OK = (short)focas_ret.EW_OK;
  26. /* Error Codes */
  27. public enum focas_ret {
  28. EW_PROTOCOL = (-17), /* protocol error */
  29. EW_SOCKET = (-16), /* Windows socket error */
  30. EW_NODLL = (-15), /* DLL not exist error */
  31. EW_BUS = (-11), /* bus error */
  32. EW_SYSTEM2 = (-10), /* system error */
  33. EW_HSSB = (-9) , /* hssb communication error */
  34. EW_HANDLE = (-8) , /* Windows library handle error */
  35. EW_VERSION = (-7) , /* CNC/PMC version missmatch */
  36. EW_UNEXP = (-6) , /* abnormal error */
  37. EW_SYSTEM = (-5) , /* system error */
  38. EW_PARITY = (-4) , /* shared RAM parity error */
  39. EW_MMCSYS = (-3) , /* emm386 or mmcsys install error */
  40. EW_RESET = (-2) , /* reset or stop occured error */
  41. EW_BUSY = (-1) , /* busy error */
  42. EW_OK = 0 , /* no problem */
  43. EW_FUNC = 1 , /* command prepare error */
  44. EW_NOPMC = 1 , /* pmc not exist */
  45. EW_LENGTH = 2 , /* data block length error */
  46. EW_NUMBER = 3 , /* data number error */
  47. EW_RANGE = 3 , /* address range error */
  48. EW_ATTRIB = 4 , /* data attribute error */
  49. EW_TYPE = 4 , /* data type error */
  50. EW_DATA = 5 , /* data error */
  51. EW_NOOPT = 6 , /* no option error */
  52. EW_PROT = 7 , /* write protect error */
  53. EW_OVRFLOW = 8 , /* memory overflow error */
  54. EW_PARAM = 9 , /* cnc parameter not correct error */
  55. EW_BUFFER = 10 , /* buffer error */
  56. EW_PATH = 11 , /* path error */
  57. EW_MODE = 12 , /* cnc mode error */
  58. EW_REJECT = 13 , /* execution rejected error */
  59. EW_DTSRVR = 14 , /* data server error */
  60. EW_ALARM = 15 , /* alarm has been occurred */
  61. EW_STOP = 16 , /* CNC is not running */
  62. EW_PASSWD = 17 , /* protection data error */
  63. /*
  64. Result codes of DNC operation
  65. */
  66. DNC_NORMAL = (-1) , /* normal completed */
  67. DNC_CANCEL = (-32768), /* DNC operation was canceled by CNC */
  68. DNC_OPENERR = (-514) , /* file open error */
  69. DNC_NOFILE = (-516) , /* file not found */
  70. DNC_READERR = (-517) /* read error */
  71. };
  72. /*--------------------*/
  73. /* */
  74. /* Structure Template */
  75. /* */
  76. /*--------------------*/
  77. /*-------------------------------------*/
  78. /* CNC: Control axis / spindle related */
  79. /*-------------------------------------*/
  80. /* cnc_actf:read actual axis feedrate(F) */
  81. /* cnc_acts:read actual spindle speed(S) */
  82. [StructLayout(LayoutKind.Sequential,Pack=4)]
  83. public class ODBACT
  84. {
  85. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  86. public short[] dummy; /* dummy */
  87. public int data ; /* actual feed / actual spindle */
  88. }
  89. /* cnc_acts2:read actual spindle speed(S) */
  90. /* (All or specified ) */
  91. [StructLayout(LayoutKind.Sequential,Pack=4)]
  92. public class ODBACT2
  93. {
  94. public short datano; /* spindle number */
  95. public short type; /* dummy */
  96. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  97. public int[] data; /* spindle data */
  98. }
  99. /* cnc_absolute:read absolute axis position */
  100. /* cnc_machine:read machine axis position */
  101. /* cnc_relative:read relative axis position */
  102. /* cnc_distance:read distance to go */
  103. /* cnc_skip:read skip position */
  104. /* cnc_srvdelay:read servo delay value */
  105. /* cnc_accdecdly:read acceleration/deceleration delay value */
  106. /* cnc_absolute2:read absolute axis position 2 */
  107. /* cnc_relative2:read relative axis position 2 */
  108. [StructLayout(LayoutKind.Sequential,Pack=4)]
  109. public class ODBAXIS
  110. {
  111. public short dummy ; /* dummy */
  112. public short type ; /* axis number */
  113. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  114. public int[] data; /* data value */
  115. }
  116. /* cnc_rddynamic:read all dynamic data */
  117. [StructLayout(LayoutKind.Sequential,Pack=4)]
  118. public class FAXIS
  119. {
  120. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  121. public int[] absolute; /* absolute position */
  122. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  123. public int[] machine; /* machine position */
  124. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  125. public int[] relative; /* relative position */
  126. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  127. public int[] distance; /* distance to go */
  128. }
  129. [StructLayout(LayoutKind.Sequential,Pack=4)]
  130. public class OAXIS
  131. {
  132. public int absolute ; /* absolute position */
  133. public int machine ; /* machine position */
  134. public int relative ; /* relative position */
  135. public int distance ; /* distance to go */
  136. }
  137. #if (!ONO8D)
  138. [StructLayout(LayoutKind.Sequential, Pack=4)]
  139. public class ODBDY_1
  140. {
  141. public short dummy ;
  142. public short axis ; /* axis number */
  143. public short alarm ; /* alarm status */
  144. public short prgnum ; /* current program number */
  145. public short prgmnum ; /* main program number */
  146. public int seqnum ; /* current sequence number */
  147. public int actf ; /* actual feedrate */
  148. public int acts ; /* actual spindle speed */
  149. public FAXIS pos = new FAXIS();
  150. }
  151. [StructLayout(LayoutKind.Sequential, Pack=4)]
  152. public class ODBDY_2
  153. {
  154. public short dummy ;
  155. public short axis ; /* axis number */
  156. public short alarm ; /* alarm status */
  157. public short prgnum ; /* current program number */
  158. public short prgmnum ; /* main program number */
  159. public int seqnum ; /* current sequence number */
  160. public int actf ; /* actual feedrate */
  161. public int acts ; /* actual spindle speed */
  162. public OAXIS pos = new OAXIS();
  163. }
  164. #else
  165. [StructLayout(LayoutKind.Sequential, Pack=4)]
  166. public class ODBDY_1
  167. {
  168. public short dummy ;
  169. public short axis ; /* axis number */
  170. public short alarm ; /* alarm status */
  171. public int prgnum ; /* current program number */
  172. public int prgmnum ; /* main program number */
  173. public int seqnum ; /* current sequence number */
  174. public int actf ; /* actual feedrate */
  175. public int acts ; /* actual spindle speed */
  176. public FAXIS pos = new FAXIS();
  177. }
  178. [StructLayout(LayoutKind.Sequential, Pack=4)]
  179. public class ODBDY_2
  180. {
  181. public short dummy ;
  182. public short axis ; /* axis number */
  183. public short alarm ; /* alarm status */
  184. public int prgnum ; /* current program number */
  185. public int prgmnum ; /* main program number */
  186. public int seqnum ; /* current sequence number */
  187. public int actf ; /* actual feedrate */
  188. public int acts ; /* actual spindle speed */
  189. public OAXIS pos = new OAXIS();
  190. }
  191. #endif
  192. /* cnc_rddynamic2:read all dynamic data */
  193. [StructLayout(LayoutKind.Sequential, Pack=4)]
  194. public class ODBDY2_1
  195. {
  196. public short dummy ;
  197. public short axis ; /* axis number */
  198. public int alarm ; /* alarm status */
  199. public int prgnum ; /* current program number */
  200. public int prgmnum ; /* main program number */
  201. public int seqnum ; /* current sequence number */
  202. public int actf ; /* actual feedrate */
  203. public int acts ; /* actual spindle speed */
  204. public FAXIS pos = new FAXIS();
  205. }
  206. [StructLayout(LayoutKind.Sequential, Pack=4)]
  207. public class ODBDY2_2
  208. {
  209. public short dummy;
  210. public short axis; /* axis number */
  211. public int alarm; /* alarm status */
  212. public int prgnum; /* current program number */
  213. public int prgmnum; /* main program number */
  214. public int seqnum; /* current sequence number */
  215. public int actf; /* actual feedrate */
  216. public int acts; /* actual spindle speed */
  217. public OAXIS pos = new OAXIS(); /* In case of 1 axis */
  218. }
  219. /* cnc_wrrelpos:set origin / preset relative axis position */
  220. [StructLayout(LayoutKind.Sequential, Pack=4)]
  221. public class IDBWRR
  222. {
  223. public short datano; /* dummy */
  224. public short type; /* axis number */
  225. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  226. public int[] data = new int[MAX_AXIS]; /* preset data */
  227. }
  228. /* cnc_prstwkcd:preset work coordinate */
  229. [StructLayout(LayoutKind.Sequential, Pack=4)]
  230. public class IDBWRA
  231. {
  232. public short datano; /* dummy */
  233. public short type; /* axis number */
  234. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  235. public int[] data = new int[MAX_AXIS]; /* preset data */
  236. }
  237. /* cnc_rdmovrlap:read manual overlapped motion value */
  238. [StructLayout(LayoutKind.Sequential, Pack=4)]
  239. public class IODBOVL
  240. {
  241. public short datano; /* dummy */
  242. public short type; /* axis number */
  243. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2*MAX_AXIS)]
  244. public int[] data; /* data value:[2][MAX_AXIS] */
  245. }
  246. /* cnc_rdspload:read load information of serial spindle */
  247. /* cnc_rdspmaxrpm:read maximum r.p.m. ratio of serial spindle */
  248. /* cnc_rdspgear:read gear ratio of serial spindle */
  249. [StructLayout(LayoutKind.Sequential, Pack=4)]
  250. public class ODBSPN
  251. {
  252. public short datano; /* dummy */
  253. public short type; /* axis number */
  254. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  255. public short[] data; /* preset data */
  256. }
  257. /* cnc_rdposition:read tool position */
  258. [StructLayout(LayoutKind.Sequential,Pack=4)]
  259. public class POSELM
  260. {
  261. public int data; /* position data */
  262. public short dec; /* place of decimal point of position data */
  263. public short unit; /* unit of position data */
  264. public short disp; /* status of display */
  265. public char name; /* axis name */
  266. public char suff; /* axis name preffix */
  267. }
  268. [StructLayout(LayoutKind.Sequential,Pack=4)]
  269. public class POSELMALL
  270. {
  271. public POSELM abs=new POSELM();
  272. public POSELM mach=new POSELM();
  273. public POSELM rel=new POSELM();
  274. public POSELM dist=new POSELM();
  275. }
  276. #if M_AXIS2
  277. [StructLayout(LayoutKind.Sequential,Pack=4)]
  278. public class ODBPOS
  279. {
  280. public POSELMALL p1=new POSELMALL();
  281. public POSELMALL p2=new POSELMALL();
  282. public POSELMALL p3=new POSELMALL();
  283. public POSELMALL p4=new POSELMALL();
  284. public POSELMALL p5=new POSELMALL();
  285. public POSELMALL p6=new POSELMALL();
  286. public POSELMALL p7=new POSELMALL();
  287. public POSELMALL p8=new POSELMALL();
  288. public POSELMALL p9=new POSELMALL();
  289. public POSELMALL p10=new POSELMALL();
  290. public POSELMALL p11=new POSELMALL();
  291. public POSELMALL p12=new POSELMALL();
  292. public POSELMALL p13=new POSELMALL();
  293. public POSELMALL p14=new POSELMALL();
  294. public POSELMALL p15=new POSELMALL();
  295. public POSELMALL p16=new POSELMALL();
  296. public POSELMALL p17=new POSELMALL();
  297. public POSELMALL p18=new POSELMALL();
  298. public POSELMALL p19=new POSELMALL();
  299. public POSELMALL p20=new POSELMALL();
  300. public POSELMALL p21=new POSELMALL();
  301. public POSELMALL p22=new POSELMALL();
  302. public POSELMALL p23=new POSELMALL();
  303. public POSELMALL p24=new POSELMALL();
  304. // In case of 24 axes.
  305. // if you need the more information, you must be add the member.
  306. }
  307. #elif FS15D
  308. [StructLayout(LayoutKind.Sequential,Pack=4)]
  309. public class ODBPOS
  310. {
  311. public POSELMALL p1=new POSELMALL();
  312. public POSELMALL p2=new POSELMALL();
  313. public POSELMALL p3=new POSELMALL();
  314. public POSELMALL p4=new POSELMALL();
  315. public POSELMALL p5=new POSELMALL();
  316. public POSELMALL p6=new POSELMALL();
  317. public POSELMALL p7=new POSELMALL();
  318. public POSELMALL p8=new POSELMALL();
  319. public POSELMALL p9=new POSELMALL();
  320. public POSELMALL p10=new POSELMALL();
  321. // In case of 10 axes.
  322. // if you need the more information, you must be add the member.
  323. }
  324. #else
  325. [StructLayout(LayoutKind.Sequential,Pack=4)]
  326. public class ODBPOS
  327. {
  328. public POSELMALL p1=new POSELMALL();
  329. public POSELMALL p2=new POSELMALL();
  330. public POSELMALL p3=new POSELMALL();
  331. public POSELMALL p4=new POSELMALL();
  332. public POSELMALL p5=new POSELMALL();
  333. public POSELMALL p6=new POSELMALL();
  334. public POSELMALL p7=new POSELMALL();
  335. public POSELMALL p8=new POSELMALL();
  336. // In case of 8 axes.
  337. // if you need the more information, you must be add the member.
  338. }
  339. #endif
  340. /* cnc_rdhndintrpt:read handle interruption */
  341. [StructLayout(LayoutKind.Sequential,Pack=4)]
  342. public class ODBHND_data
  343. {
  344. public POSELM input=new POSELM(); /* input unit */
  345. public POSELM output=new POSELM(); /* output unit */
  346. }
  347. #if M_AXIS2
  348. [StructLayout(LayoutKind.Sequential,Pack=4)]
  349. public class ODBHND
  350. {
  351. public ODBHND_data p1=new ODBHND_data();
  352. public ODBHND_data p2=new ODBHND_data();
  353. public ODBHND_data p3=new ODBHND_data();
  354. public ODBHND_data p4=new ODBHND_data();
  355. public ODBHND_data p5=new ODBHND_data();
  356. public ODBHND_data p6=new ODBHND_data();
  357. public ODBHND_data p7=new ODBHND_data();
  358. public ODBHND_data p8=new ODBHND_data();
  359. public ODBHND_data p9=new ODBHND_data();
  360. public ODBHND_data p10=new ODBHND_data();
  361. public ODBHND_data p11=new ODBHND_data();
  362. public ODBHND_data p12=new ODBHND_data();
  363. public ODBHND_data p13=new ODBHND_data();
  364. public ODBHND_data p14=new ODBHND_data();
  365. public ODBHND_data p15=new ODBHND_data();
  366. public ODBHND_data p16=new ODBHND_data();
  367. public ODBHND_data p17=new ODBHND_data();
  368. public ODBHND_data p18=new ODBHND_data();
  369. public ODBHND_data p19=new ODBHND_data();
  370. public ODBHND_data p20=new ODBHND_data();
  371. public ODBHND_data p21=new ODBHND_data();
  372. public ODBHND_data p22=new ODBHND_data();
  373. public ODBHND_data p23=new ODBHND_data();
  374. public ODBHND_data p24=new ODBHND_data();
  375. // In case of 24 axes.
  376. // if you need the more information, you must be add the member.
  377. }
  378. #elif FS15D
  379. [StructLayout(LayoutKind.Sequential,Pack=4)]
  380. public class ODBHND
  381. {
  382. public ODBHND_data p1=new ODBHND_data();
  383. public ODBHND_data p2=new ODBHND_data();
  384. public ODBHND_data p3=new ODBHND_data();
  385. public ODBHND_data p4=new ODBHND_data();
  386. public ODBHND_data p5=new ODBHND_data();
  387. public ODBHND_data p6=new ODBHND_data();
  388. public ODBHND_data p7=new ODBHND_data();
  389. public ODBHND_data p8=new ODBHND_data();
  390. public ODBHND_data p9=new ODBHND_data();
  391. public ODBHND_data p10=new ODBHND_data();
  392. // In case of 10 axes.
  393. // if you need the more information, you must be add the member.
  394. }
  395. #else
  396. [StructLayout(LayoutKind.Sequential,Pack=4)]
  397. public class ODBHND
  398. {
  399. public ODBHND_data p1=new ODBHND_data();
  400. public ODBHND_data p2=new ODBHND_data();
  401. public ODBHND_data p3=new ODBHND_data();
  402. public ODBHND_data p4=new ODBHND_data();
  403. public ODBHND_data p5=new ODBHND_data();
  404. public ODBHND_data p6=new ODBHND_data();
  405. public ODBHND_data p7=new ODBHND_data();
  406. public ODBHND_data p8=new ODBHND_data();
  407. // In case of 8 axes.
  408. // if you need the more information, you must be add the member.
  409. }
  410. #endif
  411. /* cnc_rdspeed:read current speed */
  412. [StructLayout(LayoutKind.Sequential,Pack=4)]
  413. public class SPEEDELM
  414. {
  415. public int data; /* speed data */
  416. public short dec; /* decimal position */
  417. public short unit; /* data unit */
  418. public short disp; /* display flag */
  419. public byte name; /* name of data */
  420. public byte suff; /* suffix */
  421. }
  422. [StructLayout(LayoutKind.Sequential,Pack=4)]
  423. public class ODBSPEED
  424. {
  425. public SPEEDELM actf=new SPEEDELM(); /* actual feed rate */
  426. public SPEEDELM acts=new SPEEDELM(); /* actual spindle speed */
  427. }
  428. /* cnc_rdsvmeter:read servo load meter */
  429. /* cnc_rdspmeter:read spindle load meter */
  430. [StructLayout(LayoutKind.Sequential,Pack=4)]
  431. public class LOADELM
  432. {
  433. public int data; /* load meter */
  434. public short dec; /* decimal position */
  435. public short unit; /* unit */
  436. public byte name; /* name of data */
  437. public byte suff1; /* suffix */
  438. public byte suff2; /* suffix */
  439. public byte reserve; /* reserve */
  440. }
  441. #if M_AXIS2
  442. [StructLayout(LayoutKind.Sequential,Pack=4)]
  443. public class ODBSVLOAD
  444. {
  445. public LOADELM svload1 = new LOADELM(); /* servo load meter */
  446. public LOADELM svload2 = new LOADELM(); /* servo load meter */
  447. public LOADELM svload3 = new LOADELM(); /* servo load meter */
  448. public LOADELM svload4 = new LOADELM(); /* servo load meter */
  449. public LOADELM svload5 = new LOADELM(); /* servo load meter */
  450. public LOADELM svload6 = new LOADELM(); /* servo load meter */
  451. public LOADELM svload7 = new LOADELM(); /* servo load meter */
  452. public LOADELM svload8 = new LOADELM(); /* servo load meter */
  453. public LOADELM svload9 = new LOADELM(); /* servo load meter */
  454. public LOADELM svload10= new LOADELM(); /* servo load meter */
  455. public LOADELM svload11= new LOADELM(); /* servo load meter */
  456. public LOADELM svload12= new LOADELM(); /* servo load meter */
  457. public LOADELM svload13= new LOADELM(); /* servo load meter */
  458. public LOADELM svload14= new LOADELM(); /* servo load meter */
  459. public LOADELM svload15= new LOADELM(); /* servo load meter */
  460. public LOADELM svload16= new LOADELM(); /* servo load meter */
  461. public LOADELM svload17= new LOADELM(); /* servo load meter */
  462. public LOADELM svload18= new LOADELM(); /* servo load meter */
  463. public LOADELM svload19= new LOADELM(); /* servo load meter */
  464. public LOADELM svload20= new LOADELM(); /* servo load meter */
  465. public LOADELM svload21= new LOADELM(); /* servo load meter */
  466. public LOADELM svload22= new LOADELM(); /* servo load meter */
  467. public LOADELM svload23= new LOADELM(); /* servo load meter */
  468. public LOADELM svload24= new LOADELM(); /* servo load meter */
  469. }
  470. #elif FS15D
  471. [StructLayout(LayoutKind.Sequential,Pack=4)]
  472. public class ODBSVLOAD
  473. {
  474. public LOADELM svload1 = new LOADELM(); /* servo load meter */
  475. public LOADELM svload2 = new LOADELM(); /* servo load meter */
  476. public LOADELM svload3 = new LOADELM(); /* servo load meter */
  477. public LOADELM svload4 = new LOADELM(); /* servo load meter */
  478. public LOADELM svload5 = new LOADELM(); /* servo load meter */
  479. public LOADELM svload6 = new LOADELM(); /* servo load meter */
  480. public LOADELM svload7 = new LOADELM(); /* servo load meter */
  481. public LOADELM svload8 = new LOADELM(); /* servo load meter */
  482. public LOADELM svload9 = new LOADELM(); /* servo load meter */
  483. public LOADELM svload10= new LOADELM(); /* servo load meter */
  484. }
  485. #else
  486. [StructLayout(LayoutKind.Sequential,Pack=4)]
  487. public class ODBSVLOAD
  488. {
  489. public LOADELM svload1 = new LOADELM(); /* servo load meter */
  490. public LOADELM svload2 = new LOADELM(); /* servo load meter */
  491. public LOADELM svload3 = new LOADELM(); /* servo load meter */
  492. public LOADELM svload4 = new LOADELM(); /* servo load meter */
  493. public LOADELM svload5 = new LOADELM(); /* servo load meter */
  494. public LOADELM svload6 = new LOADELM(); /* servo load meter */
  495. public LOADELM svload7 = new LOADELM(); /* servo load meter */
  496. public LOADELM svload8 = new LOADELM(); /* servo load meter */
  497. }
  498. #endif
  499. /* cnc_rdexecpt:read execution program pointer */
  500. [StructLayout(LayoutKind.Sequential,Pack=4)]
  501. public class PRGPNT
  502. {
  503. public int prog_no; /* program number */
  504. public int blk_no; /* block number */
  505. }
  506. [StructLayout(LayoutKind.Sequential,Pack=4)]
  507. public class ODBSPLOAD_data
  508. {
  509. public LOADELM spload=new LOADELM(); /* spindle load meter */
  510. public LOADELM spspeed=new LOADELM(); /* spindle speed */
  511. }
  512. [StructLayout(LayoutKind.Sequential,Pack=4)]
  513. public class ODBSPLOAD
  514. {
  515. public ODBSPLOAD_data spload1 = new ODBSPLOAD_data(); /* spindle load */
  516. public ODBSPLOAD_data spload2 = new ODBSPLOAD_data(); /* spindle load */
  517. public ODBSPLOAD_data spload3 = new ODBSPLOAD_data(); /* spindle load */
  518. public ODBSPLOAD_data spload4 = new ODBSPLOAD_data(); /* spindle load */
  519. }
  520. /* cnc_rd5axmandt:read manual feed for 5-axis machining */
  521. [StructLayout(LayoutKind.Sequential,Pack=4)]
  522. public class ODB5AXMAN
  523. {
  524. public short type1;
  525. public short type2;
  526. public short type3;
  527. public int data1;
  528. public int data2;
  529. public int data3;
  530. public int c1;
  531. public int c2;
  532. public int dummy;
  533. public int td;
  534. public int r1;
  535. public int r2;
  536. public int vr;
  537. public int h1;
  538. public int h2;
  539. }
  540. /*----------------------*/
  541. /* CNC: Program related */
  542. /*----------------------*/
  543. /* cnc_rddncdgndt:read the diagnosis data of DNC operation */
  544. [StructLayout(LayoutKind.Sequential,Pack=4)]
  545. public class ODBDNCDGN
  546. {
  547. public short ctrl_word;
  548. public short can_word;
  549. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  550. public char[] nc_file;
  551. public ushort read_ptr;
  552. public ushort write_ptr;
  553. public ushort empty_cnt;
  554. public uint total_size;
  555. }
  556. /* cnc_upload:upload NC program */
  557. /* cnc_cupload:upload NC program(conditional) */
  558. [StructLayout(LayoutKind.Sequential,Pack=4)]
  559. public class ODBUP
  560. {
  561. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  562. public short[] dummy; /* dummy */
  563. [MarshalAs(UnmanagedType.ByValArray,SizeConst=256)]
  564. public char[] data ; /* data */
  565. } /* In case that the number of data is 256 */
  566. /* cnc_buff:read buffer status for downloading/verification NC program */
  567. [StructLayout(LayoutKind.Sequential,Pack=4)]
  568. public class ODBBUF
  569. {
  570. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  571. public short[] dummy; /* dummy */
  572. public short data ; /* buffer status */
  573. }
  574. /* cnc_rdprogdir:read program directory */
  575. [StructLayout(LayoutKind.Sequential,Pack=4)]
  576. public class PRGDIR
  577. {
  578. [MarshalAs(UnmanagedType.ByValArray,SizeConst=256)]
  579. public char[] prg_data ; /* directory data */
  580. } /* In case that the number of data is 256 */
  581. /* cnc_rdproginfo:read program information */
  582. [StructLayout(LayoutKind.Sequential,Pack=4)]
  583. public class ODBNC_1
  584. {
  585. public short reg_prg ; /* registered program number */
  586. public short unreg_prg ; /* unregistered program number */
  587. public int used_mem ; /* used memory area */
  588. public int unused_mem ; /* unused memory area */
  589. }
  590. [StructLayout(LayoutKind.Sequential,Pack=4)]
  591. public class ODBNC_2
  592. {
  593. [MarshalAs(UnmanagedType.ByValArray,SizeConst=31)]
  594. public char[] asc; /* ASCII string type */
  595. }
  596. /* cnc_rdprgnum:read program number under execution */
  597. #if (!ONO8D)
  598. [StructLayout(LayoutKind.Sequential,Pack=4)]
  599. public class ODBPRO
  600. {
  601. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  602. public short[] dummy ; /* dummy */
  603. public short data ; /* running program number */
  604. public short mdata ; /* main program number */
  605. }
  606. #else
  607. [StructLayout(LayoutKind.Sequential,Pack=4)]
  608. public class ODBPRO
  609. {
  610. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  611. public short[] dummy ; /* dummy */
  612. public int data ; /* running program number */
  613. public int mdata ; /* main program number */
  614. }
  615. #endif
  616. /* cnc_exeprgname:read program name under execution */
  617. [StructLayout(LayoutKind.Sequential,Pack=4)]
  618. public class ODBEXEPRG
  619. {
  620. [MarshalAs(UnmanagedType.ByValArray,SizeConst=36)]
  621. public char[] name; /* running program name */
  622. public int o_num; /* running program number */
  623. }
  624. /* cnc_rdseqnum:read sequence number under execution */
  625. [StructLayout(LayoutKind.Sequential,Pack=4)]
  626. public class ODBSEQ
  627. {
  628. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  629. public short[] dummy; /* dummy */
  630. public int data; /* sequence number */
  631. }
  632. /* cnc_rdmdipntr:read execution pointer for MDI operation */
  633. #if (!ONO8D)
  634. [StructLayout(LayoutKind.Sequential,Pack=4)]
  635. public class ODBMDIP
  636. {
  637. public short mdiprog; /* exec. program number */
  638. public int mdipntr; /* exec. pointer */
  639. public short crntprog; /* prepare program number */
  640. public int crntpntr; /* prepare pointer */
  641. }
  642. #else
  643. [StructLayout(LayoutKind.Sequential,Pack=4)]
  644. public class ODBMDIP
  645. {
  646. public int mdiprog; /* exec. program number */
  647. public int mdipntr; /* exec. pointer */
  648. public int crntprog; /* prepare program number */
  649. public int crntpntr; /* prepare pointer */
  650. }
  651. #endif
  652. /* cnc_rdaxisdata:read various axis data */
  653. [StructLayout(LayoutKind.Sequential,Pack=4)]
  654. public class ODBAXDT_data
  655. {
  656. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  657. public string name = new string(' ',4); /* axis name */
  658. public int data; /* position data */
  659. public short dec; /* decimal position */
  660. public short unit; /* data unit */
  661. public short flag; /* flags */
  662. public short reserve; /* reserve */
  663. }
  664. [StructLayout(LayoutKind.Sequential,Pack=4)]
  665. public class ODBAXDT
  666. {
  667. public ODBAXDT_data data1 =new ODBAXDT_data();
  668. public ODBAXDT_data data2 =new ODBAXDT_data();
  669. public ODBAXDT_data data3 =new ODBAXDT_data();
  670. public ODBAXDT_data data4 =new ODBAXDT_data();
  671. public ODBAXDT_data data5 =new ODBAXDT_data();
  672. public ODBAXDT_data data6 =new ODBAXDT_data();
  673. public ODBAXDT_data data7 =new ODBAXDT_data();
  674. public ODBAXDT_data data8 =new ODBAXDT_data();
  675. public ODBAXDT_data data9 =new ODBAXDT_data();
  676. public ODBAXDT_data data10 =new ODBAXDT_data();
  677. public ODBAXDT_data data11 =new ODBAXDT_data();
  678. public ODBAXDT_data data12 =new ODBAXDT_data();
  679. public ODBAXDT_data data13 =new ODBAXDT_data();
  680. public ODBAXDT_data data14 =new ODBAXDT_data();
  681. public ODBAXDT_data data15 =new ODBAXDT_data();
  682. public ODBAXDT_data data16 =new ODBAXDT_data();
  683. public ODBAXDT_data data17 =new ODBAXDT_data();
  684. public ODBAXDT_data data18 =new ODBAXDT_data();
  685. public ODBAXDT_data data19 =new ODBAXDT_data();
  686. public ODBAXDT_data data20 =new ODBAXDT_data();
  687. public ODBAXDT_data data21 =new ODBAXDT_data();
  688. public ODBAXDT_data data22 =new ODBAXDT_data();
  689. public ODBAXDT_data data23 =new ODBAXDT_data();
  690. public ODBAXDT_data data24 =new ODBAXDT_data();
  691. public ODBAXDT_data data25 =new ODBAXDT_data();
  692. public ODBAXDT_data data26 =new ODBAXDT_data();
  693. public ODBAXDT_data data27 =new ODBAXDT_data();
  694. public ODBAXDT_data data28 =new ODBAXDT_data();
  695. public ODBAXDT_data data29 =new ODBAXDT_data();
  696. public ODBAXDT_data data30 =new ODBAXDT_data();
  697. public ODBAXDT_data data31 =new ODBAXDT_data();
  698. public ODBAXDT_data data32 =new ODBAXDT_data();
  699. public ODBAXDT_data data33 =new ODBAXDT_data();
  700. public ODBAXDT_data data34 =new ODBAXDT_data();
  701. public ODBAXDT_data data35 =new ODBAXDT_data();
  702. public ODBAXDT_data data36 =new ODBAXDT_data();
  703. public ODBAXDT_data data37 =new ODBAXDT_data();
  704. public ODBAXDT_data data38 =new ODBAXDT_data();
  705. public ODBAXDT_data data39 =new ODBAXDT_data();
  706. public ODBAXDT_data data40 =new ODBAXDT_data();
  707. public ODBAXDT_data data41 =new ODBAXDT_data();
  708. public ODBAXDT_data data42 =new ODBAXDT_data();
  709. public ODBAXDT_data data43 =new ODBAXDT_data();
  710. public ODBAXDT_data data44 =new ODBAXDT_data();
  711. public ODBAXDT_data data45 =new ODBAXDT_data();
  712. public ODBAXDT_data data46 =new ODBAXDT_data();
  713. public ODBAXDT_data data47 =new ODBAXDT_data();
  714. public ODBAXDT_data data48 =new ODBAXDT_data();
  715. public ODBAXDT_data data49 =new ODBAXDT_data();
  716. public ODBAXDT_data data50 =new ODBAXDT_data();
  717. public ODBAXDT_data data51 =new ODBAXDT_data();
  718. public ODBAXDT_data data52 =new ODBAXDT_data();
  719. public ODBAXDT_data data53 =new ODBAXDT_data();
  720. public ODBAXDT_data data54 =new ODBAXDT_data();
  721. public ODBAXDT_data data55 =new ODBAXDT_data();
  722. public ODBAXDT_data data56 =new ODBAXDT_data();
  723. public ODBAXDT_data data57 =new ODBAXDT_data();
  724. public ODBAXDT_data data58 =new ODBAXDT_data();
  725. public ODBAXDT_data data59 =new ODBAXDT_data();
  726. public ODBAXDT_data data60 =new ODBAXDT_data();
  727. public ODBAXDT_data data61 =new ODBAXDT_data();
  728. public ODBAXDT_data data62 =new ODBAXDT_data();
  729. public ODBAXDT_data data63 =new ODBAXDT_data();
  730. public ODBAXDT_data data64 =new ODBAXDT_data();
  731. public ODBAXDT_data data65 =new ODBAXDT_data();
  732. public ODBAXDT_data data66 =new ODBAXDT_data();
  733. public ODBAXDT_data data67 =new ODBAXDT_data();
  734. public ODBAXDT_data data68 =new ODBAXDT_data();
  735. public ODBAXDT_data data69 =new ODBAXDT_data();
  736. public ODBAXDT_data data70 =new ODBAXDT_data();
  737. public ODBAXDT_data data71 =new ODBAXDT_data();
  738. public ODBAXDT_data data72 =new ODBAXDT_data();
  739. public ODBAXDT_data data73 =new ODBAXDT_data();
  740. public ODBAXDT_data data74 =new ODBAXDT_data();
  741. public ODBAXDT_data data75 =new ODBAXDT_data();
  742. public ODBAXDT_data data76 =new ODBAXDT_data();
  743. public ODBAXDT_data data77 =new ODBAXDT_data();
  744. public ODBAXDT_data data78 =new ODBAXDT_data();
  745. public ODBAXDT_data data79 =new ODBAXDT_data();
  746. public ODBAXDT_data data80 =new ODBAXDT_data();
  747. public ODBAXDT_data data81 =new ODBAXDT_data();
  748. public ODBAXDT_data data82 =new ODBAXDT_data();
  749. public ODBAXDT_data data83 =new ODBAXDT_data();
  750. public ODBAXDT_data data84 =new ODBAXDT_data();
  751. public ODBAXDT_data data85 =new ODBAXDT_data();
  752. public ODBAXDT_data data86 =new ODBAXDT_data();
  753. public ODBAXDT_data data87 =new ODBAXDT_data();
  754. public ODBAXDT_data data88 =new ODBAXDT_data();
  755. public ODBAXDT_data data89 =new ODBAXDT_data();
  756. public ODBAXDT_data data90 =new ODBAXDT_data();
  757. public ODBAXDT_data data91 =new ODBAXDT_data();
  758. public ODBAXDT_data data92 =new ODBAXDT_data();
  759. public ODBAXDT_data data93 =new ODBAXDT_data();
  760. public ODBAXDT_data data94 =new ODBAXDT_data();
  761. public ODBAXDT_data data95 =new ODBAXDT_data();
  762. public ODBAXDT_data data96 =new ODBAXDT_data();
  763. public ODBAXDT_data data97 =new ODBAXDT_data();
  764. public ODBAXDT_data data98 =new ODBAXDT_data();
  765. public ODBAXDT_data data99 =new ODBAXDT_data();
  766. public ODBAXDT_data data100 =new ODBAXDT_data();
  767. public ODBAXDT_data data101 =new ODBAXDT_data();
  768. public ODBAXDT_data data102 =new ODBAXDT_data();
  769. public ODBAXDT_data data103 =new ODBAXDT_data();
  770. public ODBAXDT_data data104 =new ODBAXDT_data();
  771. public ODBAXDT_data data105 =new ODBAXDT_data();
  772. public ODBAXDT_data data106 =new ODBAXDT_data();
  773. public ODBAXDT_data data107 =new ODBAXDT_data();
  774. public ODBAXDT_data data108 =new ODBAXDT_data();
  775. public ODBAXDT_data data109 =new ODBAXDT_data();
  776. public ODBAXDT_data data110 =new ODBAXDT_data();
  777. public ODBAXDT_data data111 =new ODBAXDT_data();
  778. public ODBAXDT_data data112 =new ODBAXDT_data();
  779. public ODBAXDT_data data113 =new ODBAXDT_data();
  780. public ODBAXDT_data data114 =new ODBAXDT_data();
  781. public ODBAXDT_data data115 =new ODBAXDT_data();
  782. public ODBAXDT_data data116 =new ODBAXDT_data();
  783. public ODBAXDT_data data117 =new ODBAXDT_data();
  784. public ODBAXDT_data data118 =new ODBAXDT_data();
  785. public ODBAXDT_data data119 =new ODBAXDT_data();
  786. public ODBAXDT_data data120 =new ODBAXDT_data();
  787. public ODBAXDT_data data121 =new ODBAXDT_data();
  788. public ODBAXDT_data data122 =new ODBAXDT_data();
  789. public ODBAXDT_data data123 =new ODBAXDT_data();
  790. public ODBAXDT_data data124 =new ODBAXDT_data();
  791. public ODBAXDT_data data125 =new ODBAXDT_data();
  792. public ODBAXDT_data data126 =new ODBAXDT_data();
  793. public ODBAXDT_data data127 =new ODBAXDT_data();
  794. public ODBAXDT_data data128 =new ODBAXDT_data();
  795. }
  796. /* cnc_rdspcss:read constant surface speed data */
  797. [StructLayout(LayoutKind.Sequential,Pack=4)]
  798. public class ODBCSS
  799. {
  800. public int srpm; /* order spindle speed */
  801. public int sspm; /* order constant spindle speed */
  802. public int smax; /* order maximum spindle speed */
  803. }
  804. /* cnc_rdpdf_drive:read program drive directory */
  805. [StructLayout(LayoutKind.Sequential,Pack=4)]
  806. public class ODBPDFDRV
  807. {
  808. public short max_num; /* maximum drive number */
  809. public short dummy;
  810. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  811. public string drive1 = new string(' ',12) ;
  812. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  813. public string drive2 = new string(' ',12) ;
  814. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  815. public string drive3 = new string(' ',12) ;
  816. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  817. public string drive4 = new string(' ',12) ;
  818. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  819. public string drive5 = new string(' ',12) ;
  820. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  821. public string drive6 = new string(' ',12) ;
  822. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  823. public string drive7 = new string(' ',12) ;
  824. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  825. public string drive8 = new string(' ',12) ;
  826. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  827. public string drive9 = new string(' ',12) ;
  828. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  829. public string drive10 = new string(' ',12) ;
  830. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  831. public string drive11 = new string(' ',12) ;
  832. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  833. public string drive12 = new string(' ',12) ;
  834. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  835. public string drive13 = new string(' ',12) ;
  836. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  837. public string drive14 = new string(' ',12) ;
  838. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  839. public string drive15 = new string(' ',12) ;
  840. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  841. public string drive16 = new string(' ',12) ;
  842. }
  843. /* cnc_rdpdf_inf:read program drive information */
  844. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  845. public class ODBPDFINF
  846. {
  847. public int used_page; /* used capacity */
  848. public int all_page; /* all capacity */
  849. public int used_dir; /* used directory number */
  850. public int all_dir; /* all directory number */
  851. }
  852. /* cnc_rdpdf_subdir:read directory (sub directories) */
  853. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  854. public class IDBPDFSDIR
  855. {
  856. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=212)]
  857. public string path = new string(' ',212) ; /* path name */
  858. public short req_num; /* entry number */
  859. public short dummy;
  860. }
  861. /* cnc_rdpdf_subdir:read directory (sub directories) */
  862. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  863. public class ODBPDFSDIR
  864. {
  865. public short sub_exist; /* existence of sub directory */
  866. public short dummy;
  867. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=36)]
  868. public string d_f = new string(' ',36) ; /* path name */
  869. }
  870. /* cnc_rdpdf_alldir:read directory (all files) */
  871. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  872. public class IDBPDFADIR
  873. {
  874. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=212)]
  875. public string path = new string(' ',212) ; /* path name */
  876. public short req_num; /* entry number */
  877. public short size_kind; /* kind of size */
  878. public short type; /* kind of format */
  879. public short dummy;
  880. }
  881. /* cnc_rdpdf_alldir:read directory (all files) */
  882. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  883. public class ODBPDFADIR
  884. {
  885. public short data_kind; /* kinf of data */
  886. public short year; /* last date and time */
  887. public short mon; /* last date and time */
  888. public short day; /* last date and time */
  889. public short hour; /* last date and time */
  890. public short min; /* last date and time */
  891. public short sec; /* last date and time */
  892. public short dummy;
  893. public int dummy2;
  894. public int size; /* size */
  895. public int attr; /* attribute */
  896. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=36)]
  897. public string d_f = new string(' ',36) ; /* path name */
  898. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=52)]
  899. public string comment = new string(' ',52) ; /* comment */
  900. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  901. public string o_time = new string(' ',12) ; /* machining time stamp */
  902. }
  903. /* cnc_rdpdf_subdirn:read file count the directory has */
  904. [StructLayout(LayoutKind.Sequential,Pack=4)]
  905. public class ODBPDFNFIL
  906. {
  907. public short dir_num; /* directory */
  908. public short file_num; /* file */
  909. }
  910. /* cnc_wrpdf_attr:change attribute of program file and directory */
  911. [StructLayout(LayoutKind.Sequential,Pack=4)]
  912. public class IDBPDFTDIR
  913. {
  914. public uint slct; /* selection */
  915. public uint attr; /* data */
  916. }
  917. /*---------------------------*/
  918. /* CNC: NC file data related */
  919. /*---------------------------*/
  920. /* cnc_rdtofs:read tool offset value */
  921. [StructLayout(LayoutKind.Sequential,Pack=4)]
  922. public class ODBTOFS
  923. {
  924. public short datano; /* data number */
  925. public short type; /* data type */
  926. public int data; /* data */
  927. }
  928. /* cnc_rdtofsr:read tool offset value(area specified) */
  929. /* cnc_wrtofsr:write tool offset value(area specified) */
  930. [StructLayout(LayoutKind.Explicit)]
  931. public class OFS_1
  932. {
  933. [ FieldOffset( 0 ),
  934. MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  935. public int[] m_ofs = new int[5]; /* M Each */
  936. [ FieldOffset( 0 ),
  937. MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  938. public int[] m_ofs_a = new int[5] ; /* M-A All */
  939. [ FieldOffset( 0 ),
  940. MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  941. public short[] t_tip = new short[5] ; /* T Each, 2-byte */
  942. [ FieldOffset( 0 ),
  943. MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  944. public int[] t_ofs = new int[5]; /* T Each, 4-byte */
  945. } /* In case that the number of data is 5 */
  946. [StructLayout(LayoutKind.Sequential,Pack=4)]
  947. public class OFS_2
  948. {
  949. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2*5)]
  950. public int[] m_ofs_b = new int[10] ; /* M-B All */
  951. } /* In case that the number of data is 5 */
  952. [StructLayout(LayoutKind.Sequential,Pack=4)]
  953. public class OFS_3
  954. {
  955. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4*5)]
  956. public int[] m_ofs_c = new int[20]; /* M-C All */
  957. } /* In case that the number of data is 5 */
  958. [StructLayout(LayoutKind.Sequential,Pack=4)]
  959. public class T_OFS_A
  960. {
  961. public short tip ;
  962. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  963. public int[] data ;
  964. } /* T-A All */
  965. [StructLayout(LayoutKind.Sequential,Pack=4)]
  966. public class T_OFS_A_data
  967. {
  968. public T_OFS_A data1 = new T_OFS_A();
  969. public T_OFS_A data2 = new T_OFS_A();
  970. public T_OFS_A data3 = new T_OFS_A();
  971. public T_OFS_A data4 = new T_OFS_A();
  972. public T_OFS_A data5 = new T_OFS_A();
  973. } /* In case that the number of data is 5 */
  974. [StructLayout(LayoutKind.Sequential,Pack=4)]
  975. public class T_OFS_B
  976. {
  977. public short tip ;
  978. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  979. public int[] data ;
  980. } /* T-B All */
  981. [StructLayout(LayoutKind.Sequential,Pack=4)]
  982. public class T_OFS_B_data
  983. {
  984. public T_OFS_B data1 = new T_OFS_B();
  985. public T_OFS_B data2 = new T_OFS_B();
  986. public T_OFS_B data3 = new T_OFS_B();
  987. public T_OFS_B data4 = new T_OFS_B();
  988. public T_OFS_B data5 = new T_OFS_B();
  989. } /* In case that the number of data is 5 */
  990. [StructLayout(LayoutKind.Sequential,Pack=4)]
  991. public class IODBTO_1_1
  992. {
  993. public short datano_s ; /* start offset number */
  994. public short type ; /* offset type */
  995. public short datano_e ; /* end offset number */
  996. public OFS_1 ofs = new OFS_1();
  997. }
  998. [StructLayout(LayoutKind.Sequential,Pack=4)]
  999. public class IODBTO_1_2
  1000. {
  1001. public short datano_s ; /* start offset number */
  1002. public short type ; /* offset type */
  1003. public short datano_e ; /* end offset number */
  1004. public OFS_2 ofs = new OFS_2();
  1005. }
  1006. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1007. public class IODBTO_1_3
  1008. {
  1009. public short datano_s ; /* start offset number */
  1010. public short type ; /* offset type */
  1011. public short datano_e ; /* end offset number */
  1012. public OFS_3 ofs = new OFS_3();
  1013. }
  1014. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1015. public class IODBTO_2
  1016. {
  1017. public short datano_s ; /* start offset number */
  1018. public short type ; /* offset type */
  1019. public short datano_e ; /* end offset number */
  1020. public T_OFS_A_data tofsa = new T_OFS_A_data();
  1021. }
  1022. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1023. public class IODBTO_3
  1024. {
  1025. public short datano_s ; /* start offset number */
  1026. public short type ; /* offset type */
  1027. public short datano_e ; /* end offset number */
  1028. public T_OFS_B_data tofsb = new T_OFS_B_data();
  1029. }
  1030. /* cnc_rdzofs:read work zero offset value */
  1031. /* cnc_wrzofs:write work zero offset value */
  1032. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1033. public class IODBZOFS
  1034. {
  1035. public short datano ; /* offset NO. */
  1036. public short type ; /* axis number */
  1037. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1038. public int[] data = new int[MAX_AXIS]; /* data value */
  1039. }
  1040. /* cnc_rdzofsr:read work zero offset value(area specified) */
  1041. /* cnc_wrzofsr:write work zero offset value(area specified) */
  1042. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1043. public class IODBZOR
  1044. {
  1045. public short datano_s ; /* start offset number */
  1046. public short type ; /* axis number */
  1047. public short datano_e ; /* end offset number */
  1048. [MarshalAs(UnmanagedType.ByValArray,SizeConst=7*MAX_AXIS)]
  1049. public int[] data = new int[7*MAX_AXIS] ; /* offset value */
  1050. } /* In case that the number of axes is MAX_AXIS, the number of data is 7 */
  1051. /* cnc_rdmsptype:read mesured point value */
  1052. /* cnc_wrmsptype:write mesured point value */
  1053. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1054. public class IODBMSTP
  1055. {
  1056. public short datano_s ; /* start offset number */
  1057. public short dummy ; /* dummy */
  1058. public short datano_e ; /* end offset number */
  1059. [MarshalAs(UnmanagedType.ByValArray,SizeConst=7)]
  1060. public sbyte[] data = new sbyte[7]; /* mesured point value */
  1061. }
  1062. /* cnc_rdparam:read parameter */
  1063. /* cnc_wrparam:write parameter */
  1064. /* cnc_rdset:read setting data */
  1065. /* cnc_wrset:write setting data */
  1066. /* cnc_rdparar:read parameter(area specified) */
  1067. /* cnc_wrparas:write parameter(plural specified) */
  1068. /* cnc_rdsetr:read setting data(area specified) */
  1069. /* cnc_wrsets:write setting data(plural specified) */
  1070. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1071. public class REALPRM
  1072. {
  1073. public int prm_val; /* data of real parameter */
  1074. public int dec_val; /* decimal point of real parameter */
  1075. }
  1076. #if M_AXIS2
  1077. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1078. public class REALPRMS
  1079. {
  1080. public REALPRM rdata1=new REALPRM();
  1081. public REALPRM rdata2=new REALPRM();
  1082. public REALPRM rdata3=new REALPRM();
  1083. public REALPRM rdata4=new REALPRM();
  1084. public REALPRM rdata5=new REALPRM();
  1085. public REALPRM rdata6=new REALPRM();
  1086. public REALPRM rdata7=new REALPRM();
  1087. public REALPRM rdata8=new REALPRM();
  1088. public REALPRM rdata9=new REALPRM();
  1089. public REALPRM rdata10=new REALPRM();
  1090. public REALPRM rdata11=new REALPRM();
  1091. public REALPRM rdata12=new REALPRM();
  1092. public REALPRM rdata13=new REALPRM();
  1093. public REALPRM rdata14=new REALPRM();
  1094. public REALPRM rdata15=new REALPRM();
  1095. public REALPRM rdata16=new REALPRM();
  1096. public REALPRM rdata17=new REALPRM();
  1097. public REALPRM rdata18=new REALPRM();
  1098. public REALPRM rdata19=new REALPRM();
  1099. public REALPRM rdata20=new REALPRM();
  1100. public REALPRM rdata21=new REALPRM();
  1101. public REALPRM rdata22=new REALPRM();
  1102. public REALPRM rdata23=new REALPRM();
  1103. public REALPRM rdata24=new REALPRM();
  1104. } /* In case that the number of alarm is 24 */
  1105. #elif FS15D
  1106. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1107. public class REALPRMS
  1108. {
  1109. public REALPRM rdata1=new REALPRM();
  1110. public REALPRM rdata2=new REALPRM();
  1111. public REALPRM rdata3=new REALPRM();
  1112. public REALPRM rdata4=new REALPRM();
  1113. public REALPRM rdata5=new REALPRM();
  1114. public REALPRM rdata6=new REALPRM();
  1115. public REALPRM rdata7=new REALPRM();
  1116. public REALPRM rdata8=new REALPRM();
  1117. public REALPRM rdata9=new REALPRM();
  1118. public REALPRM rdata10=new REALPRM();
  1119. } /* In case that the number of alarm is 10 */
  1120. #else
  1121. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1122. public class REALPRMS
  1123. {
  1124. public REALPRM rdata1=new REALPRM();
  1125. public REALPRM rdata2=new REALPRM();
  1126. public REALPRM rdata3=new REALPRM();
  1127. public REALPRM rdata4=new REALPRM();
  1128. public REALPRM rdata5=new REALPRM();
  1129. public REALPRM rdata6=new REALPRM();
  1130. public REALPRM rdata7=new REALPRM();
  1131. public REALPRM rdata8=new REALPRM();
  1132. } /* In case that the number of alarm is 8 */
  1133. #endif
  1134. [StructLayout(LayoutKind.Explicit)]
  1135. public class IODBPSD_1
  1136. {
  1137. [ FieldOffset( 0 )]
  1138. public short datano ; /* data number */
  1139. [ FieldOffset( 2 )]
  1140. public short type ; /* axis number */
  1141. [ FieldOffset( 4 )]
  1142. public byte cdata; /* parameter / setting data */
  1143. [ FieldOffset( 4 )]
  1144. public short idata;
  1145. [ FieldOffset( 4 )]
  1146. public int ldata;
  1147. }
  1148. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1149. public class IODBPSD_2
  1150. {
  1151. public short datano ; /* data number */
  1152. public short type ; /* axis number */
  1153. public REALPRM rdata=new REALPRM();
  1154. }
  1155. [StructLayout(LayoutKind.Explicit)]
  1156. public class IODBPSD_3
  1157. {
  1158. [ FieldOffset( 0 )]
  1159. public short datano ; /* data number */
  1160. [ FieldOffset( 2 )]
  1161. public short type ; /* axis number */
  1162. [ FieldOffset( 4 ),
  1163. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1164. public byte[] cdatas = new byte[MAX_AXIS];
  1165. [ FieldOffset( 4 ),
  1166. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1167. public short[] idatas = new short[MAX_AXIS];
  1168. [ FieldOffset( 4 ),
  1169. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1170. public int[] ldatas = new int[MAX_AXIS];
  1171. }
  1172. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1173. public class IODBPSD_4
  1174. {
  1175. public short datano ; /* data number */
  1176. public short type ; /* axis number */
  1177. public REALPRMS rdatas=new REALPRMS();
  1178. }
  1179. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1180. public class IODBPSD_A
  1181. {
  1182. public IODBPSD_1 data1=new IODBPSD_1();
  1183. public IODBPSD_1 data2=new IODBPSD_1();
  1184. public IODBPSD_1 data3=new IODBPSD_1();
  1185. public IODBPSD_1 data4=new IODBPSD_1();
  1186. public IODBPSD_1 data5=new IODBPSD_1();
  1187. public IODBPSD_1 data6=new IODBPSD_1();
  1188. public IODBPSD_1 data7=new IODBPSD_1();
  1189. } /* (sample) must be modified */
  1190. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1191. public class IODBPSD_B
  1192. {
  1193. public IODBPSD_2 data1=new IODBPSD_2();
  1194. public IODBPSD_2 data2=new IODBPSD_2();
  1195. public IODBPSD_2 data3=new IODBPSD_2();
  1196. public IODBPSD_2 data4=new IODBPSD_2();
  1197. public IODBPSD_2 data5=new IODBPSD_2();
  1198. public IODBPSD_2 data6=new IODBPSD_2();
  1199. public IODBPSD_2 data7=new IODBPSD_2();
  1200. } /* (sample) must be modified */
  1201. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1202. public class IODBPSD_C
  1203. {
  1204. public IODBPSD_3 data1=new IODBPSD_3();
  1205. public IODBPSD_3 data2=new IODBPSD_3();
  1206. public IODBPSD_3 data3=new IODBPSD_3();
  1207. public IODBPSD_3 data4=new IODBPSD_3();
  1208. public IODBPSD_3 data5=new IODBPSD_3();
  1209. public IODBPSD_3 data6=new IODBPSD_3();
  1210. public IODBPSD_3 data7=new IODBPSD_3();
  1211. } /* (sample) must be modified */
  1212. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1213. public class IODBPSD_D
  1214. {
  1215. public IODBPSD_4 data1=new IODBPSD_4();
  1216. public IODBPSD_4 data2=new IODBPSD_4();
  1217. public IODBPSD_4 data3=new IODBPSD_4();
  1218. public IODBPSD_4 data4=new IODBPSD_4();
  1219. public IODBPSD_4 data5=new IODBPSD_4();
  1220. public IODBPSD_4 data6=new IODBPSD_4();
  1221. public IODBPSD_4 data7=new IODBPSD_4();
  1222. } /* (sample) must be modified */
  1223. /* cnc_rdparam_ext:read parameters */
  1224. /* cnc_rddiag_ext:read diagnosis data */
  1225. /* cnc_start_async_wrparam:async parameter write start */
  1226. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1227. public class IODBPRMNO
  1228. {
  1229. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  1230. public int[] prm = new int[10];
  1231. }
  1232. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1233. public class IODBPRM_data
  1234. {
  1235. public int prm_val ; /* parameter / setting data */
  1236. public int dec_val ;
  1237. }
  1238. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1239. public class IODBPRM1
  1240. {
  1241. public IODBPRM_data data1=new IODBPRM_data();
  1242. public IODBPRM_data data2=new IODBPRM_data();
  1243. public IODBPRM_data data3=new IODBPRM_data();
  1244. public IODBPRM_data data4=new IODBPRM_data();
  1245. public IODBPRM_data data5=new IODBPRM_data();
  1246. public IODBPRM_data data6=new IODBPRM_data();
  1247. public IODBPRM_data data7=new IODBPRM_data();
  1248. public IODBPRM_data data8=new IODBPRM_data();
  1249. public IODBPRM_data data9=new IODBPRM_data();
  1250. public IODBPRM_data data10=new IODBPRM_data();
  1251. public IODBPRM_data data11=new IODBPRM_data();
  1252. public IODBPRM_data data12=new IODBPRM_data();
  1253. public IODBPRM_data data13=new IODBPRM_data();
  1254. public IODBPRM_data data14=new IODBPRM_data();
  1255. public IODBPRM_data data15=new IODBPRM_data();
  1256. public IODBPRM_data data16=new IODBPRM_data();
  1257. public IODBPRM_data data17=new IODBPRM_data();
  1258. public IODBPRM_data data18=new IODBPRM_data();
  1259. public IODBPRM_data data19=new IODBPRM_data();
  1260. public IODBPRM_data data20=new IODBPRM_data();
  1261. public IODBPRM_data data21=new IODBPRM_data();
  1262. public IODBPRM_data data22=new IODBPRM_data();
  1263. public IODBPRM_data data23=new IODBPRM_data();
  1264. public IODBPRM_data data24=new IODBPRM_data();
  1265. public IODBPRM_data data25=new IODBPRM_data();
  1266. public IODBPRM_data data26=new IODBPRM_data();
  1267. public IODBPRM_data data27=new IODBPRM_data();
  1268. public IODBPRM_data data28=new IODBPRM_data();
  1269. public IODBPRM_data data29=new IODBPRM_data();
  1270. public IODBPRM_data data30=new IODBPRM_data();
  1271. public IODBPRM_data data31=new IODBPRM_data();
  1272. public IODBPRM_data data32=new IODBPRM_data();
  1273. }
  1274. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1275. public class IODBPRM2
  1276. {
  1277. public int datano ; /* data number */
  1278. public short type ; /* data type */
  1279. public short axis ; /* axis information */
  1280. public short info ; /* misc information */
  1281. public short unit ; /* unit information */
  1282. public IODBPRM1 data = new IODBPRM1();
  1283. }
  1284. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1285. public class IODBPRM
  1286. {
  1287. public IODBPRM2 prm1 = new IODBPRM2();
  1288. public IODBPRM2 prm2 = new IODBPRM2();
  1289. public IODBPRM2 prm3 = new IODBPRM2();
  1290. public IODBPRM2 prm4 = new IODBPRM2();
  1291. public IODBPRM2 prm5 = new IODBPRM2();
  1292. public IODBPRM2 prm6 = new IODBPRM2();
  1293. public IODBPRM2 prm7 = new IODBPRM2();
  1294. public IODBPRM2 prm8 = new IODBPRM2();
  1295. public IODBPRM2 prm9 = new IODBPRM2();
  1296. public IODBPRM2 prm10= new IODBPRM2();
  1297. } /* In case that the number of alarm is 10 */
  1298. /* cnc_rdpitchr:read pitch error compensation data(area specified) */
  1299. /* cnc_wrpitchr:write pitch error compensation data(area specified) */
  1300. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1301. public class IODBPI
  1302. {
  1303. public short datano_s ; /* start pitch number */
  1304. public short dummy ; /* dummy */
  1305. public short datano_e ; /* end pitch number */
  1306. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  1307. public sbyte[] data = new sbyte[5]; /* offset value */
  1308. } /* In case that the number of data is 5 */
  1309. /* cnc_rdmacro:read custom macro variable */
  1310. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1311. public class ODBM
  1312. {
  1313. public short datano ; /* variable number */
  1314. public short dummy ; /* dummy */
  1315. public int mcr_val ; /* macro variable */
  1316. public short dec_val ; /* decimal point */
  1317. }
  1318. /* cnc_rdmacror:read custom macro variables(area specified) */
  1319. /* cnc_wrmacror:write custom macro variables(area specified) */
  1320. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1321. public class IODBMR_data
  1322. {
  1323. public int mcr_val ; /* macro variable */
  1324. public short dec_val ; /* decimal point */
  1325. }
  1326. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1327. public class IODBMR1
  1328. {
  1329. public IODBMR_data data1=new IODBMR_data();
  1330. public IODBMR_data data2=new IODBMR_data();
  1331. public IODBMR_data data3=new IODBMR_data();
  1332. public IODBMR_data data4=new IODBMR_data();
  1333. public IODBMR_data data5=new IODBMR_data();
  1334. } /* In case that the number of data is 5 */
  1335. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1336. public class IODBMR
  1337. {
  1338. public short datano_s ; /* start macro number */
  1339. public short dummy ; /* dummy */
  1340. public short datano_e ; /* end macro number */
  1341. public IODBMR1 data = new IODBMR1();
  1342. }
  1343. /* cnc_rdpmacro:read P code macro variable */
  1344. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1345. public class ODBPM
  1346. {
  1347. public int datano ; /* variable number */
  1348. public short dummy ; /* dummy */
  1349. public int mcr_val ; /* macro variable */
  1350. public short dec_val ; /* decimal point */
  1351. }
  1352. /* cnc_rdpmacror:read P code macro variables(area specified) */
  1353. /* cnc_wrpmacror:write P code macro variables(area specified) */
  1354. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1355. public class IODBPR_data
  1356. {
  1357. public int mcr_val ; /* macro variable */
  1358. public short dec_val ; /* decimal point */
  1359. }
  1360. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1361. public class IODBPR1
  1362. {
  1363. public IODBPR_data data1=new IODBPR_data();
  1364. public IODBPR_data data2=new IODBPR_data();
  1365. public IODBPR_data data3=new IODBPR_data();
  1366. public IODBPR_data data4=new IODBPR_data();
  1367. public IODBPR_data data5=new IODBPR_data();
  1368. } /* In case that the number of data is 5 */
  1369. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1370. public class IODBPR
  1371. {
  1372. public int datano_s ; /* start macro number */
  1373. public short dummy ; /* dummy */
  1374. public int datano_e ; /* end macro number */
  1375. public IODBPR1 data = new IODBPR1();
  1376. }
  1377. /* cnc_rdtofsinfo:read tool offset information */
  1378. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1379. public class ODBTLINF
  1380. {
  1381. public short ofs_type;
  1382. public short use_no;
  1383. }
  1384. /* cnc_rdtofsinfo2:read tool offset information(2) */
  1385. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1386. public class ODBTLINF2
  1387. {
  1388. public short ofs_type;
  1389. public short use_no;
  1390. public short ofs_enable;
  1391. }
  1392. /* cnc_rdmacroinfo:read custom macro variable information */
  1393. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1394. public class ODBMVINF
  1395. {
  1396. public short use_no1;
  1397. public short use_no2;
  1398. }
  1399. /* cnc_rdpmacroinfo:read P code macro variable information */
  1400. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1401. public class ODBPMINF
  1402. {
  1403. public short use_no1;
  1404. #if PCD_UWORD
  1405. public ushort use_no2;
  1406. #else
  1407. public short use_no2;
  1408. #endif
  1409. public short v2_type;
  1410. }
  1411. /* cnc_tofs_rnge:read validity of tool offset */
  1412. /* cnc_zofs_rnge:read validity of work zero offset */
  1413. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1414. public class ODBDATRNG
  1415. {
  1416. public int data_min; /* lower limit */
  1417. public int data_max; /* upper limit */
  1418. public int status; /* status of setting */
  1419. }
  1420. /* cnc_rdhsprminfo:read the information for function cnc_rdhsparam() */
  1421. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1422. public class HSPINFO_data
  1423. {
  1424. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  1425. public byte[] data1 = new byte[16];
  1426. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  1427. public byte[] data2 = new byte[16];
  1428. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  1429. public byte[] data3 = new byte[16];
  1430. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  1431. public byte[] data4 = new byte[16];
  1432. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  1433. public byte[] data5 = new byte[16];
  1434. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  1435. public byte[] data6 = new byte[16];
  1436. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  1437. public byte[] data7 = new byte[16];
  1438. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  1439. public byte[] data8 = new byte[16];
  1440. }
  1441. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1442. public class HSPINFO
  1443. {
  1444. public HSPINFO_data prminfo1 = new HSPINFO_data();
  1445. public HSPINFO_data prminfo2 = new HSPINFO_data();
  1446. public HSPINFO_data prminfo3 = new HSPINFO_data();
  1447. public HSPINFO_data prminfo4 = new HSPINFO_data();
  1448. public HSPINFO_data prminfo5 = new HSPINFO_data();
  1449. public HSPINFO_data prminfo6 = new HSPINFO_data();
  1450. public HSPINFO_data prminfo7 = new HSPINFO_data();
  1451. public HSPINFO_data prminfo8 = new HSPINFO_data();
  1452. public HSPINFO_data prminfo9 = new HSPINFO_data();
  1453. public HSPINFO_data prminfo10 = new HSPINFO_data();
  1454. }
  1455. /* cnc_rdhsparam:read parameters at the high speed */
  1456. [StructLayout(LayoutKind.Explicit)]
  1457. public class HSPDATA_1
  1458. {
  1459. [ FieldOffset( 0 ),
  1460. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1461. public byte[] cdatas1 = new byte[MAX_AXIS];
  1462. [ FieldOffset( 4*MAX_AXIS ),
  1463. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1464. public byte[] cdatas2 = new byte[MAX_AXIS];
  1465. [ FieldOffset( 4*2*MAX_AXIS ),
  1466. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1467. public byte[] cdatas3 = new byte[MAX_AXIS];
  1468. [ FieldOffset( 4*3*MAX_AXIS ),
  1469. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1470. public byte[] cdatas4 = new byte[MAX_AXIS];
  1471. [ FieldOffset( 4*4*MAX_AXIS ),
  1472. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1473. public byte[] cdatas5 = new byte[MAX_AXIS];
  1474. [ FieldOffset( 4*5*MAX_AXIS ),
  1475. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1476. public byte[] cdatas6 = new byte[MAX_AXIS];
  1477. [ FieldOffset( 4*6*MAX_AXIS ),
  1478. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1479. public byte[] cdatas7 = new byte[MAX_AXIS];
  1480. [ FieldOffset( 4*7*MAX_AXIS ),
  1481. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1482. public byte[] cdatas8 = new byte[MAX_AXIS];
  1483. [ FieldOffset( 4*8*MAX_AXIS ),
  1484. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1485. public byte[] cdatas9 = new byte[MAX_AXIS];
  1486. [ FieldOffset( 4*9*MAX_AXIS ),
  1487. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1488. public byte[] cdatas10 = new byte[MAX_AXIS];
  1489. }
  1490. [StructLayout(LayoutKind.Explicit)]
  1491. public class HSPDATA_2
  1492. {
  1493. [ FieldOffset( 0 ),
  1494. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1495. public short[] idatas1 = new short[MAX_AXIS];
  1496. [ FieldOffset( 2*MAX_AXIS ),
  1497. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1498. public short[] idatas2 = new short[MAX_AXIS];
  1499. [ FieldOffset( 2*2*MAX_AXIS ),
  1500. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1501. public short[] idatas3 = new short[MAX_AXIS];
  1502. [ FieldOffset( 2*3*MAX_AXIS ),
  1503. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1504. public short[] idatas4 = new short[MAX_AXIS];
  1505. [ FieldOffset( 2*4*MAX_AXIS ),
  1506. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1507. public short[] idatas5 = new short[MAX_AXIS];
  1508. [ FieldOffset( 2*5*MAX_AXIS ),
  1509. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1510. public short[] idatas6 = new short[MAX_AXIS];
  1511. [ FieldOffset( 2*6*MAX_AXIS ),
  1512. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1513. public short[] idatas7 = new short[MAX_AXIS];
  1514. [ FieldOffset( 2*7*MAX_AXIS ),
  1515. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1516. public short[] idatas8 = new short[MAX_AXIS];
  1517. [ FieldOffset( 2*8*MAX_AXIS ),
  1518. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1519. public short[] idatas9 = new short[MAX_AXIS];
  1520. [ FieldOffset( 2*9*MAX_AXIS ),
  1521. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1522. public short[] idatas10 = new short[MAX_AXIS];
  1523. }
  1524. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1525. public class HSPDATA_3
  1526. {
  1527. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1528. public int[] ldatas1 = new int[MAX_AXIS];
  1529. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1530. public int[] ldatas2 = new int[MAX_AXIS];
  1531. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1532. public int[] ldatas3 = new int[MAX_AXIS];
  1533. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1534. public int[] ldatas4 = new int[MAX_AXIS];
  1535. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1536. public int[] ldatas5 = new int[MAX_AXIS];
  1537. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1538. public int[] ldatas6 = new int[MAX_AXIS];
  1539. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1540. public int[] ldatas7 = new int[MAX_AXIS];
  1541. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1542. public int[] ldatas8 = new int[MAX_AXIS];
  1543. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1544. public int[] ldatas9 = new int[MAX_AXIS];
  1545. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  1546. public int[] ldatas10 = new int[MAX_AXIS];
  1547. }
  1548. /*----------------------------------------*/
  1549. /* CNC: Tool life management data related */
  1550. /*----------------------------------------*/
  1551. /* cnc_rdgrpid:read tool life management data(tool group number) */
  1552. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1553. public class ODBTLIFE1
  1554. {
  1555. public short dummy ; /* dummy */
  1556. public short type ; /* data type */
  1557. public int data ; /* data */
  1558. }
  1559. /* cnc_rdngrp:read tool life management data(number of tool groups) */
  1560. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1561. public class ODBTLIFE2
  1562. {
  1563. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  1564. public short[] dummy; /* dummy */
  1565. public int data; /* data */
  1566. }
  1567. /* cnc_rdntool:read tool life management data(number of tools) */
  1568. /* cnc_rdlife:read tool life management data(tool life) */
  1569. /* cnc_rdcount:read tool life management data(tool lift counter) */
  1570. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1571. public class ODBTLIFE3
  1572. {
  1573. public short datano ; /* data number */
  1574. public short dummy ; /* dummy */
  1575. public int data ; /* data */
  1576. }
  1577. /* cnc_rd1length:read tool life management data(tool length number-1) */
  1578. /* cnc_rd2length:read tool life management data(tool length number-2) */
  1579. /* cnc_rd1radius:read tool life management data(cutter compensation no.-1) */
  1580. /* cnc_rd2radius:read tool life management data(cutter compensation no.-2) */
  1581. /* cnc_t1info:read tool life management data(tool information-1) */
  1582. /* cnc_t2info:read tool life management data(tool information-2) */
  1583. /* cnc_toolnum:read tool life management data(tool number) */
  1584. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1585. public class ODBTLIFE4
  1586. {
  1587. public short datano ; /* data number */
  1588. public short type ; /* data type */
  1589. public int data ; /* data */
  1590. }
  1591. /* cnc_rdgrpid2:read tool life management data(tool group number) 2 */
  1592. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1593. public class ODBTLIFE5
  1594. {
  1595. public int dummy ; /* dummy */
  1596. public int type ; /* data type */
  1597. public int data ; /* data */
  1598. }
  1599. /* cnc_rdtoolrng:read tool life management data(tool number, tool life, tool life counter)(area specified) */
  1600. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1601. public class IODBTR_data
  1602. {
  1603. public int ntool ; /* tool number */
  1604. public int life ; /* tool life */
  1605. public int count ; /* tool life counter */
  1606. }
  1607. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1608. public class IODBTR1
  1609. {
  1610. public IODBTR_data data1 = new IODBTR_data();
  1611. public IODBTR_data data2 = new IODBTR_data();
  1612. public IODBTR_data data3 = new IODBTR_data();
  1613. public IODBTR_data data4 = new IODBTR_data();
  1614. public IODBTR_data data5 = new IODBTR_data();
  1615. } /* In case that the number of data is 5 */
  1616. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1617. public class IODBTR
  1618. {
  1619. public short datano_s ; /* start group number */
  1620. public short dummy ; /* dummy */
  1621. public short datano_e ; /* end group number */
  1622. public IODBTR1 data = new IODBTR1();
  1623. }
  1624. /* cnc_rdtoolgrp:read tool life management data(all data within group) */
  1625. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1626. public class ODBTG_data
  1627. {
  1628. public int tuse_num ; /* tool number */
  1629. public int tool_num ; /* tool life */
  1630. public int length_num ; /* tool life counter */
  1631. public int radius_num ; /* tool life counter */
  1632. public int tinfo ; /* tool life counter */
  1633. }
  1634. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1635. public class ODBTG1
  1636. {
  1637. public ODBTG_data data1 = new ODBTG_data();
  1638. public ODBTG_data data2 = new ODBTG_data();
  1639. public ODBTG_data data3 = new ODBTG_data();
  1640. public ODBTG_data data4 = new ODBTG_data();
  1641. public ODBTG_data data5 = new ODBTG_data();
  1642. } /* In case that the number of data is 5 */
  1643. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1644. public class ODBTG
  1645. {
  1646. public short grp_num ; /* start group number */
  1647. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  1648. public short[] dummy ; /* dummy */
  1649. public int ntool ; /* tool number */
  1650. public int life ; /* tool life */
  1651. public int count ; /* tool life counter */
  1652. public ODBTG1 data = new ODBTG1();
  1653. }
  1654. /* cnc_wrcountr:write tool life management data(tool life counter) (area specified) */
  1655. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1656. public class IDBWRC_data
  1657. {
  1658. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  1659. public int[] dummy ; /* dummy */
  1660. public int count ; /* tool life counter */
  1661. }
  1662. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1663. public class IDBWRC1
  1664. {
  1665. public IDBWRC_data data1 = new IDBWRC_data();
  1666. public IDBWRC_data data2 = new IDBWRC_data();
  1667. public IDBWRC_data data3 = new IDBWRC_data();
  1668. public IDBWRC_data data4 = new IDBWRC_data();
  1669. public IDBWRC_data data5 = new IDBWRC_data();
  1670. } /* In case that the number of data is 5 */
  1671. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1672. public class IDBWRC
  1673. {
  1674. public short datano_s ; /* start group number */
  1675. public short dummy ; /* dummy */
  1676. public short datano_e ; /* end group number */
  1677. public IDBWRC1 data = new IDBWRC1();
  1678. }
  1679. /* cnc_rdusegrpid:read tool life management data(used tool group number) */
  1680. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1681. public class ODBUSEGR
  1682. {
  1683. public short datano; /* dummy */
  1684. public short type; /* dummy */
  1685. public int next; /* next use group number */
  1686. public int use; /* using group number */
  1687. public int slct; /* selecting group number */
  1688. }
  1689. /* cnc_rdmaxgrp:read tool life management data(max. number of tool groups) */
  1690. /* cnc_rdmaxtool:read tool life management data(maximum number of tool within group) */
  1691. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1692. public class ODBLFNO
  1693. {
  1694. public short datano; /* dummy */
  1695. public short type; /* dummy */
  1696. public short data; /* number of data */
  1697. }
  1698. /* cnc_rdusetlno:read tool life management data(used tool no within group) */
  1699. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1700. public class ODBTLUSE
  1701. {
  1702. public short s_grp; /* start group number */
  1703. public short dummy; /* dummy */
  1704. public short e_grp; /* end group number */
  1705. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  1706. public int[] data; /* tool using number */
  1707. } /* In case that the number of group is 5 */
  1708. /* cnc_rd1tlifedata:read tool life management data(tool data1) */
  1709. /* cnc_rd2tlifedata:read tool life management data(tool data2) */
  1710. /* cnc_wr1tlifedata:write tool life management data(tool data1) */
  1711. /* cnc_wr2tlifedata:write tool life management data(tool data2) */
  1712. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1713. public class IODBTD
  1714. {
  1715. public short datano; /* tool group number */
  1716. public short type; /* tool using number */
  1717. public int tool_num; /* tool number */
  1718. public int h_code; /* H code */
  1719. public int d_code; /* D code */
  1720. public int tool_inf; /* tool information */
  1721. }
  1722. /* cnc_rd1tlifedat2:read tool life management data(tool data1) 2 */
  1723. /* cnc_wr1tlifedat2:write tool life management data(tool data1) 2 */
  1724. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1725. public class IODBTD2
  1726. {
  1727. public short datano; /* tool group number */
  1728. public short dummy; /* dummy */
  1729. public int type; /* tool using number */
  1730. public int tool_num; /* tool number */
  1731. public int h_code; /* H code */
  1732. public int d_code; /* D code */
  1733. public int tool_inf; /* tool information */
  1734. }
  1735. /* cnc_rdgrpinfo:read tool life management data(tool group information) */
  1736. /* cnc_wrgrpinfo:write tool life management data(tool group information) */
  1737. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1738. public class IODBTGI_data
  1739. {
  1740. public int n_tool; /* number of tool */
  1741. public int count_value; /* tool life */
  1742. public int counter; /* tool life counter */
  1743. public int count_type; /* tool life counter type */
  1744. }
  1745. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1746. public class IODBTGI1
  1747. {
  1748. public IODBTGI_data data1 = new IODBTGI_data();
  1749. public IODBTGI_data data2 = new IODBTGI_data();
  1750. public IODBTGI_data data3 = new IODBTGI_data();
  1751. public IODBTGI_data data4 = new IODBTGI_data();
  1752. public IODBTGI_data data5 = new IODBTGI_data();
  1753. } /* In case that the number of data is 5 */
  1754. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1755. public class IODBTGI
  1756. {
  1757. public short s_grp; /* start group number */
  1758. public short dummy; /* dummy */
  1759. public short e_grp; /* end group number */
  1760. public IODBTGI1 data = new IODBTGI1();
  1761. }
  1762. /* cnc_rdgrpinfo2:read tool life management data(tool group information 2) */
  1763. /* cnc_wrgrpinfo2:write tool life management data(tool group information 2) */
  1764. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1765. public class IODBTGI2
  1766. {
  1767. public short s_grp; /* start group number */
  1768. public short dummy; /* dummy */
  1769. public short e_grp; /* end group number */
  1770. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  1771. public int[] opt_grpno = new int[5]; /* optional group number of tool */
  1772. } /* In case that the number of group is 5 */
  1773. /* cnc_rdgrpinfo3:read tool life management data(tool group information 3) */
  1774. /* cnc_wrgrpinfo3:write tool life management data(tool group information 3) */
  1775. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1776. public class IODBTGI3
  1777. {
  1778. public short s_grp; /* start group number */
  1779. public short dummy; /* dummy */
  1780. public short e_grp; /* end group number */
  1781. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  1782. public int[] life_rest = new int[5]; /* tool life rest count */
  1783. } /* In case that the number of group is 5 */
  1784. /* cnc_rdgrpinfo4:read tool life management data(tool group information 4) */
  1785. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1786. public class IODBTGI4
  1787. {
  1788. public short grp_no;
  1789. public int n_tool;
  1790. public int count_value;
  1791. public int counter;
  1792. public int count_type;
  1793. public int opt_grpno;
  1794. public int life_rest;
  1795. }
  1796. /* cnc_instlifedt:insert tool life management data(tool data) */
  1797. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1798. public class IDBITD
  1799. {
  1800. public short datano; /* tool group number */
  1801. public short type; /* tool using number */
  1802. public int data; /* tool number */
  1803. }
  1804. /* cnc_rdtlinfo:read tool life management data */
  1805. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1806. public class ODBTLINFO
  1807. {
  1808. public int max_group; /* maximum number of tool groups */
  1809. public int max_tool; /* maximum number of tool within group */
  1810. public int max_minute; /* maximum number of life count (minutes) */
  1811. public int max_cycle; /* maximum number of life count (cycles) */
  1812. }
  1813. /* cnc_rdtlusegrp:read tool life management data(used tool group number) */
  1814. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1815. public class ODBUSEGRP
  1816. {
  1817. public int next; /* next use group number */
  1818. public int use; /* using group number */
  1819. public int slct; /* selecting group number */
  1820. public int opt_next; /* next use optional group number */
  1821. public int opt_use; /* using optional group number */
  1822. public int opt_slct; /* selecting optional group number */
  1823. }
  1824. /* cnc_rdtlgrp:read tool life management data(tool group information 2) */
  1825. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1826. public class IODBTLGRP_data
  1827. {
  1828. public int ntool; /* number of all tool */
  1829. public int nfree; /* number of free tool */
  1830. public int life; /* tool life */
  1831. public int count; /* tool life counter */
  1832. public int use_tool; /* using tool number */
  1833. public int opt_grpno; /* optional group number */
  1834. public int life_rest; /* tool life rest count */
  1835. public short rest_sig; /* tool life rest signal */
  1836. public short count_type; /* tool life counter type */
  1837. }
  1838. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1839. public class IODBTLGRP
  1840. {
  1841. public IODBTLGRP_data data1 = new IODBTLGRP_data();
  1842. public IODBTLGRP_data data2 = new IODBTLGRP_data();
  1843. public IODBTLGRP_data data3 = new IODBTLGRP_data();
  1844. public IODBTLGRP_data data4 = new IODBTLGRP_data();
  1845. public IODBTLGRP_data data5 = new IODBTLGRP_data();
  1846. } /* In case that the number of group is 5 */
  1847. /* cnc_rdtltool:read tool life management data (tool data1) */
  1848. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1849. public class IODBTLTOOL_data
  1850. {
  1851. public int tool_num; /* tool number */
  1852. public int h_code; /* H code */
  1853. public int d_code; /* D code */
  1854. public int tool_inf; /* tool information */
  1855. }
  1856. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1857. public class IODBTLTOOL
  1858. {
  1859. public IODBTLTOOL_data data1 = new IODBTLTOOL_data();
  1860. public IODBTLTOOL_data data2 = new IODBTLTOOL_data();
  1861. public IODBTLTOOL_data data3 = new IODBTLTOOL_data();
  1862. public IODBTLTOOL_data data4 = new IODBTLTOOL_data();
  1863. public IODBTLTOOL_data data5 = new IODBTLTOOL_data();
  1864. } /* In case that the number of group is 5 */
  1865. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1866. public class ODBEXGP_data
  1867. {
  1868. public int grp_no; /* group number */
  1869. public int opt_grpno; /* optional group number */
  1870. }
  1871. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1872. public class ODBEXGP
  1873. {
  1874. public ODBEXGP_data data1 = new ODBEXGP_data();
  1875. public ODBEXGP_data data2 = new ODBEXGP_data();
  1876. public ODBEXGP_data data3 = new ODBEXGP_data();
  1877. public ODBEXGP_data data4 = new ODBEXGP_data();
  1878. public ODBEXGP_data data5 = new ODBEXGP_data();
  1879. public ODBEXGP_data data6 = new ODBEXGP_data();
  1880. public ODBEXGP_data data7 = new ODBEXGP_data();
  1881. public ODBEXGP_data data8 = new ODBEXGP_data();
  1882. public ODBEXGP_data data9 = new ODBEXGP_data();
  1883. public ODBEXGP_data data10 = new ODBEXGP_data();
  1884. public ODBEXGP_data data11 = new ODBEXGP_data();
  1885. public ODBEXGP_data data12 = new ODBEXGP_data();
  1886. public ODBEXGP_data data13 = new ODBEXGP_data();
  1887. public ODBEXGP_data data14 = new ODBEXGP_data();
  1888. public ODBEXGP_data data15 = new ODBEXGP_data();
  1889. public ODBEXGP_data data16 = new ODBEXGP_data();
  1890. public ODBEXGP_data data17 = new ODBEXGP_data();
  1891. public ODBEXGP_data data18 = new ODBEXGP_data();
  1892. public ODBEXGP_data data19 = new ODBEXGP_data();
  1893. public ODBEXGP_data data20 = new ODBEXGP_data();
  1894. public ODBEXGP_data data21 = new ODBEXGP_data();
  1895. public ODBEXGP_data data22 = new ODBEXGP_data();
  1896. public ODBEXGP_data data23 = new ODBEXGP_data();
  1897. public ODBEXGP_data data24 = new ODBEXGP_data();
  1898. public ODBEXGP_data data25 = new ODBEXGP_data();
  1899. public ODBEXGP_data data26 = new ODBEXGP_data();
  1900. public ODBEXGP_data data27 = new ODBEXGP_data();
  1901. public ODBEXGP_data data28 = new ODBEXGP_data();
  1902. public ODBEXGP_data data29 = new ODBEXGP_data();
  1903. public ODBEXGP_data data30 = new ODBEXGP_data();
  1904. public ODBEXGP_data data31 = new ODBEXGP_data();
  1905. public ODBEXGP_data data32 = new ODBEXGP_data();
  1906. }
  1907. /*-----------------------------------*/
  1908. /* CNC: Tool management data related */
  1909. /*-----------------------------------*/
  1910. /* cnc_regtool:new registration of tool management data */
  1911. /* cnc_rdtool:lead of tool management data */
  1912. /* cnc_wrtool:write of tool management data */
  1913. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1914. public class IODBTLMNG_data
  1915. {
  1916. public int T_code;
  1917. public int life_count;
  1918. public int max_life;
  1919. public int rest_life;
  1920. public byte life_stat;
  1921. public byte cust_bits;
  1922. public ushort tool_info;
  1923. public short H_code;
  1924. public short D_code;
  1925. public int spindle_speed;
  1926. public int feedrate;
  1927. public short magazine;
  1928. public short pot;
  1929. public short gno;
  1930. public short m_ofs;
  1931. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  1932. public int[] reserved = new int[4];
  1933. public int custom1;
  1934. public int custom2;
  1935. public int custom3;
  1936. public int custom4;
  1937. public int custom5;
  1938. public int custom6;
  1939. public int custom7;
  1940. public int custom8;
  1941. public int custom9;
  1942. public int custom10;
  1943. public int custom11;
  1944. public int custom12;
  1945. public int custom13;
  1946. public int custom14;
  1947. public int custom15;
  1948. public int custom16;
  1949. public int custom17;
  1950. public int custom18;
  1951. public int custom19;
  1952. public int custom20;
  1953. }
  1954. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1955. public class IODBTLMNG
  1956. {
  1957. public IODBTLMNG_data data1 = new IODBTLMNG_data();
  1958. public IODBTLMNG_data data2 = new IODBTLMNG_data();
  1959. public IODBTLMNG_data data3 = new IODBTLMNG_data();
  1960. public IODBTLMNG_data data4 = new IODBTLMNG_data();
  1961. public IODBTLMNG_data data5 = new IODBTLMNG_data();
  1962. } /* In case that the number of group is 5 */
  1963. [StructLayout(LayoutKind.Sequential,Pack=4)]
  1964. public class IODBTLMNG_F2_data
  1965. {
  1966. public int T_code;
  1967. public int life_count;
  1968. public int max_life;
  1969. public int rest_life;
  1970. public byte life_stat;
  1971. public byte cust_bits;
  1972. public ushort tool_info;
  1973. public short H_code;
  1974. public short D_code;
  1975. public int spindle_speed;
  1976. public int feedrate;
  1977. public short magazine;
  1978. public short pot;
  1979. public short G_code;
  1980. public short W_code;
  1981. public short gno;
  1982. public short m_ofs;
  1983. [MarshalAs(UnmanagedType.ByValArray,SizeConst=3)]
  1984. public int[] reserved;
  1985. public int custom1;
  1986. public int custom2;
  1987. public int custom3;
  1988. public int custom4;
  1989. public int custom5;
  1990. public int custom6;
  1991. public int custom7;
  1992. public int custom8;
  1993. public int custom9;
  1994. public int custom10;
  1995. public int custom11;
  1996. public int custom12;
  1997. public int custom13;
  1998. public int custom14;
  1999. public int custom15;
  2000. public int custom16;
  2001. public int custom17;
  2002. public int custom18;
  2003. public int custom19;
  2004. public int custom20;
  2005. public int custom21;
  2006. public int custom22;
  2007. public int custom23;
  2008. public int custom24;
  2009. public int custom25;
  2010. public int custom26;
  2011. public int custom27;
  2012. public int custom28;
  2013. public int custom29;
  2014. public int custom30;
  2015. public int custom31;
  2016. public int custom32;
  2017. public int custom33;
  2018. public int custom34;
  2019. public int custom35;
  2020. public int custom36;
  2021. public int custom37;
  2022. public int custom38;
  2023. public int custom39;
  2024. public int custom40;
  2025. }
  2026. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2027. public class IODBTLMNG_F2
  2028. {
  2029. public IODBTLMNG_F2_data data1 = new IODBTLMNG_F2_data();
  2030. public IODBTLMNG_F2_data data2 = new IODBTLMNG_F2_data();
  2031. public IODBTLMNG_F2_data data3 = new IODBTLMNG_F2_data();
  2032. public IODBTLMNG_F2_data data4 = new IODBTLMNG_F2_data();
  2033. public IODBTLMNG_F2_data data5 = new IODBTLMNG_F2_data();
  2034. } /* In case that the number of group is 5 */
  2035. /* cnc_wrtool2:write of individual data of tool management data */
  2036. [StructLayout(LayoutKind.Explicit)]
  2037. public class IDBTLM_item
  2038. {
  2039. [ FieldOffset( 0 )]
  2040. public sbyte data1;
  2041. [ FieldOffset( 0 )]
  2042. public short data2;
  2043. [ FieldOffset( 0 )]
  2044. public int data4;
  2045. }
  2046. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2047. public class IDBTLM
  2048. {
  2049. public short data_id;
  2050. public IDBTLM_item item = new IDBTLM_item();
  2051. }
  2052. /* cnc_regmagazine:new registration of magazine management data */
  2053. /* cnc_rdmagazine:lead of magazine management data */
  2054. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2055. public class IODBTLMAG_data
  2056. {
  2057. public short magazine;
  2058. public short pot;
  2059. public short tool_index;
  2060. }
  2061. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2062. public class IODBTLMAG
  2063. {
  2064. public IODBTLMAG_data data1 = new IODBTLMAG_data();
  2065. public IODBTLMAG_data data2 = new IODBTLMAG_data();
  2066. public IODBTLMAG_data data3 = new IODBTLMAG_data();
  2067. public IODBTLMAG_data data4 = new IODBTLMAG_data();
  2068. public IODBTLMAG_data data5 = new IODBTLMAG_data();
  2069. } /* In case that the number of group is 5 */
  2070. /* cnc_delmagazine:deletion of magazine management data */
  2071. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2072. public class IODBTLMAG2_data
  2073. {
  2074. public short magazine;
  2075. public short pot;
  2076. }
  2077. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2078. public class IODBTLMAG2
  2079. {
  2080. public IODBTLMAG2_data data1 = new IODBTLMAG2_data();
  2081. public IODBTLMAG2_data data2 = new IODBTLMAG2_data();
  2082. public IODBTLMAG2_data data3 = new IODBTLMAG2_data();
  2083. public IODBTLMAG2_data data4 = new IODBTLMAG2_data();
  2084. public IODBTLMAG2_data data5 = new IODBTLMAG2_data();
  2085. } /* In case that the number of group is 5 */
  2086. /*-------------------------------------*/
  2087. /* CNC: Operation history data related */
  2088. /*-------------------------------------*/
  2089. /* cnc_rdophistry:read operation history data */
  2090. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2091. public class REC_ALM
  2092. {
  2093. public short rec_type; /* record type */
  2094. public short alm_grp; /* alarm group */
  2095. public short alm_no; /* alarm number */
  2096. public sbyte axis_no; /* axis number */
  2097. public sbyte dummy;
  2098. }
  2099. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2100. public class REC_MDI
  2101. {
  2102. public short rec_type; /* record type */
  2103. public byte key_code; /* key code */
  2104. public byte pw_flag; /* power on flag */
  2105. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  2106. public sbyte[] dummy;
  2107. }
  2108. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2109. public class REC_SGN
  2110. {
  2111. public short rec_type; /* record type */
  2112. public sbyte sig_name; /* signal name */
  2113. public byte sig_old; /* old signal bit pattern */
  2114. public byte sig_new; /* new signal bit pattern */
  2115. public sbyte dummy;
  2116. public short sig_no; /* signal number */
  2117. }
  2118. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2119. public class REC_DATE
  2120. {
  2121. public short rec_type; /* record type */
  2122. public sbyte year; /* year */
  2123. public sbyte month; /* month */
  2124. public sbyte day; /* day */
  2125. public sbyte pw_flag; /* power on flag */
  2126. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  2127. public sbyte[] dummy;
  2128. }
  2129. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2130. public class REC_TIME
  2131. {
  2132. public short rec_type; /* record flag */
  2133. public sbyte hour; /* hour */
  2134. public sbyte minute; /* minute */
  2135. public sbyte second; /* second */
  2136. public sbyte pw_flag; /* power on flag */
  2137. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  2138. public sbyte[] dummy;
  2139. }
  2140. [StructLayout(LayoutKind.Explicit,Size=8)]
  2141. public class ODBHIS_data
  2142. {
  2143. // record type
  2144. [ FieldOffset( 0 )]
  2145. public short rec_type; /* record type */
  2146. // alarm record
  2147. [ FieldOffset( 0 )]
  2148. public short alm_rec_type; /* record type */
  2149. [ FieldOffset( 2 )]
  2150. public short alm_alm_grp; /* alarm group */
  2151. [ FieldOffset( 4 )]
  2152. public short alm_alm_no; /* alarm number */
  2153. [ FieldOffset( 6 )]
  2154. public sbyte alm_axis_no; /* axis number */
  2155. [ FieldOffset( 7 )]
  2156. public sbyte alm_dummy;
  2157. // mdi record
  2158. [ FieldOffset( 0 )]
  2159. public short mdi_rec_type; /* record type */
  2160. [ FieldOffset( 2 )]
  2161. public byte mdi_key_code; /* key code */
  2162. [ FieldOffset( 3 )]
  2163. public byte mdi_pw_flag; /* power on flag */
  2164. [ FieldOffset( 4 )]
  2165. public sbyte mdi_dummy1;
  2166. [ FieldOffset( 5 )]
  2167. public sbyte mdi_dummy2;
  2168. [ FieldOffset( 6 )]
  2169. public sbyte mdi_dummy3;
  2170. [ FieldOffset( 7 )]
  2171. public sbyte mdi_dummy4;
  2172. // sign record
  2173. [ FieldOffset( 0 )]
  2174. public short sgn_rec_type; /* record type */
  2175. [ FieldOffset( 2 )]
  2176. public sbyte sgn_sig_name; /* signal name */
  2177. [ FieldOffset( 3 )]
  2178. public byte sgn_sig_old; /* old signal bit pattern */
  2179. [ FieldOffset( 4 )]
  2180. public byte sgn_sig_new; /* new signal bit pattern */
  2181. [ FieldOffset( 5 )]
  2182. public sbyte sgn_dummy;
  2183. [ FieldOffset( 6 )]
  2184. public short sgn_sig_no; /* signal number */
  2185. // date record
  2186. [ FieldOffset( 0 )]
  2187. public short date_rec_type; /* record type */
  2188. [ FieldOffset( 2 )]
  2189. public sbyte date_year; /* year */
  2190. [ FieldOffset( 3 )]
  2191. public sbyte date_month; /* month */
  2192. [ FieldOffset( 4 )]
  2193. public sbyte date_day; /* day */
  2194. [ FieldOffset( 5 )]
  2195. public sbyte date_pw_flag; /* power on flag */
  2196. [ FieldOffset( 6 )]
  2197. public sbyte date_dummy1;
  2198. [ FieldOffset( 7 )]
  2199. public sbyte date_dummy2;
  2200. // time record
  2201. [ FieldOffset( 0 )]
  2202. public short time_rec_type; /* record flag */
  2203. [ FieldOffset( 2 )]
  2204. public sbyte time_hour; /* hour */
  2205. [ FieldOffset( 3 )]
  2206. public sbyte time_minute; /* minute */
  2207. [ FieldOffset( 4 )]
  2208. public sbyte time_second; /* second */
  2209. [ FieldOffset( 5 )]
  2210. public sbyte time_pw_flag; /* power on flag */
  2211. [ FieldOffset( 6 )]
  2212. public sbyte time_dummy1;
  2213. [ FieldOffset( 7 )]
  2214. public sbyte time_dummy2;
  2215. }
  2216. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2217. public class ODBHIS1
  2218. {
  2219. public ODBHIS_data data1 = new ODBHIS_data();
  2220. public ODBHIS_data data2 = new ODBHIS_data();
  2221. public ODBHIS_data data3 = new ODBHIS_data();
  2222. public ODBHIS_data data4 = new ODBHIS_data();
  2223. public ODBHIS_data data5 = new ODBHIS_data();
  2224. public ODBHIS_data data6 = new ODBHIS_data();
  2225. public ODBHIS_data data7 = new ODBHIS_data();
  2226. public ODBHIS_data data8 = new ODBHIS_data();
  2227. public ODBHIS_data data9 = new ODBHIS_data();
  2228. public ODBHIS_data data10= new ODBHIS_data();
  2229. } /* In case that the number of data is 10 */
  2230. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2231. public class ODBHIS
  2232. {
  2233. public ushort s_no; /* start number */
  2234. public short type; /* dummy */
  2235. public ushort e_no; /* end number */
  2236. public ODBHIS1 data = new ODBHIS1();
  2237. }
  2238. /* cnc_rdophistry2:read operation history data */
  2239. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2240. public class REC_MDI2
  2241. {
  2242. public byte key_code; /* key code */
  2243. public byte pw_flag; /* power on flag */
  2244. public short dummy;
  2245. }
  2246. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2247. public class REC_MDI2_data
  2248. {
  2249. public short rec_len; /* length */
  2250. public short rec_type; /* record type */
  2251. public REC_MDI2 data = new REC_MDI2();
  2252. }
  2253. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2254. public class REC_SGN2
  2255. {
  2256. public short sig_name; /* signal name */
  2257. public short sig_no; /* signal number */
  2258. public byte sig_old; /* old signal bit pattern */
  2259. public byte sig_new; /* new signal bit pattern */
  2260. public short dummy;
  2261. }
  2262. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2263. public class REC_SGN2_data
  2264. {
  2265. public short rec_len; /* length */
  2266. public short rec_type; /* record type */
  2267. public REC_SGN2 data = new REC_SGN2();
  2268. }
  2269. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2270. public class REC_ALM2
  2271. {
  2272. public short alm_grp; /* alarm group */
  2273. public short alm_no; /* alarm number */
  2274. public short axis_no; /* axis number */
  2275. public short year; /* year */
  2276. public short month; /* month */
  2277. public short day; /* day */
  2278. public short hour; /* hour */
  2279. public short minute; /* minute */
  2280. public short second; /* second */
  2281. public short dummy;
  2282. }
  2283. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2284. public class REC_ALM2_data
  2285. {
  2286. public short rec_len; /* length */
  2287. public short rec_type; /* record type */
  2288. public REC_ALM2 data = new REC_ALM2();
  2289. }
  2290. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2291. public class REC_DATE2
  2292. {
  2293. public short evnt_type; /* event type */
  2294. public short year; /* year */
  2295. public short month; /* month */
  2296. public short day; /* day */
  2297. public short hour; /* hour */
  2298. public short minute; /* minute */
  2299. public short second; /* second */
  2300. public short dummy;
  2301. }
  2302. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2303. public class REC_DATE2_data
  2304. {
  2305. public short rec_len; /* length */
  2306. public short rec_type; /* record type */
  2307. public REC_DATE2 data = new REC_DATE2();
  2308. }
  2309. [StructLayout(LayoutKind.Explicit)]
  2310. public class ODBOPHIS
  2311. {
  2312. [ FieldOffset( 0 )]
  2313. public REC_MDI2_data rec_mdi = new REC_MDI2_data();
  2314. [ FieldOffset( 0 )]
  2315. public REC_SGN2_data rec_sgn = new REC_SGN2_data();
  2316. [ FieldOffset( 0 )]
  2317. public REC_ALM2_data rec_alm = new REC_ALM2_data();
  2318. [ FieldOffset( 0 )]
  2319. public REC_DATE2_data rec_date = new REC_DATE2_data();
  2320. }
  2321. /* cnc_rdophistry4:read operation history data */
  2322. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2323. public class REC_MDI4
  2324. {
  2325. public char key_code; /* key code */
  2326. public char pw_flag; /* power on flag */
  2327. public short pth_no; /* path index */
  2328. public short ex_flag; /* kxternal key flag */
  2329. public short hour; /* hour */
  2330. public short minute; /* minute */
  2331. public short second; /* second */
  2332. }
  2333. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2334. public class REC_MDI4_data
  2335. {
  2336. public short rec_len; /* length */
  2337. public short rec_type; /* record type */
  2338. public REC_MDI4 data = new REC_MDI4();
  2339. }
  2340. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2341. public class REC_SGN4
  2342. {
  2343. public short sig_name; /* signal name */
  2344. public short sig_no; /* signal number */
  2345. public char sig_old; /* old signal bit pattern */
  2346. public char sig_new; /* new signal bit pattern */
  2347. public short pmc_no; /* pmc index */
  2348. public short hour; /* hour */
  2349. public short minute; /* minute */
  2350. public short second; /* second */
  2351. public short dummy;
  2352. }
  2353. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2354. public class REC_SGN4_data
  2355. {
  2356. public short rec_len; /* length */
  2357. public short rec_type; /* record type */
  2358. public REC_SGN4 data = new REC_SGN4();
  2359. }
  2360. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2361. public class REC_ALM4
  2362. {
  2363. public short alm_grp; /* alarm group */
  2364. public short alm_no; /* alarm number */
  2365. public short axis_no; /* axis number */
  2366. public short year; /* year */
  2367. public short month; /* month */
  2368. public short day; /* day */
  2369. public short hour; /* hour */
  2370. public short minute; /* minute */
  2371. public short second; /* second */
  2372. public short pth_no; /* path index */
  2373. }
  2374. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2375. public class REC_ALM4_data
  2376. {
  2377. public short rec_len; /* length */
  2378. public short rec_type; /* record type */
  2379. public REC_ALM4 data = new REC_ALM4();
  2380. }
  2381. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2382. public class REC_DATE4
  2383. {
  2384. public short evnt_type; /* event type */
  2385. public short year; /* year */
  2386. public short month; /* month */
  2387. public short day; /* day */
  2388. public short hour; /* hour */
  2389. public short minute; /* minute */
  2390. public short second; /* second */
  2391. public short dummy;
  2392. }
  2393. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2394. public class REC_DATE4_data
  2395. {
  2396. public short rec_len; /* length */
  2397. public short rec_type; /* record type */
  2398. public REC_DATE4 data = new REC_DATE4();
  2399. }
  2400. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2401. public class REC_IAL4
  2402. {
  2403. public short alm_grp; /* alarm group */
  2404. public short alm_no; /* alarm number */
  2405. public short axis_no; /* axis number */
  2406. public short year; /* year */
  2407. public short month; /* month */
  2408. public short day; /* day */
  2409. public short hour; /* hour */
  2410. public short minute; /* minute */
  2411. public short second; /* second */
  2412. public short pth_no; /* path index */
  2413. public short sys_alm; /* sys alarm */
  2414. public short dsp_flg; /* message dsp flag */
  2415. public short axis_num; /* axis num */
  2416. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2417. public int[] g_modal; /* G code Modal */
  2418. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2419. public char[] g_dp; /* #7:1 Block */
  2420. /* #6�`#0 dp*/
  2421. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2422. public int[] a_modal; /* B,D,E,F,H,M,N,O,S,T code Modal */
  2423. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2424. public char[] a_dp; /* #7:1 Block */
  2425. /* 6�`#0 dp*/
  2426. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2427. public int[] abs_pos; /* Abs pos */
  2428. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2429. public char[] abs_dp; /* Abs dp */
  2430. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2431. public int[] mcn_pos; /* Mcn pos */
  2432. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2433. public char[] mcn_dp; /* Mcn dp */
  2434. }
  2435. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2436. public class REC_IAL4_data
  2437. {
  2438. public short rec_len; /* length */
  2439. public short rec_type; /* record type */
  2440. public REC_IAL4 data = new REC_IAL4();
  2441. }
  2442. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  2443. public class REC_MAL4
  2444. {
  2445. public short alm_grp; /* alarm group */
  2446. public short alm_no; /* alarm number */
  2447. public short axis_no; /* axis number */
  2448. public short year; /* year */
  2449. public short month; /* month */
  2450. public short day; /* day */
  2451. public short hour; /* hour */
  2452. public short minute; /* minute */
  2453. public short second; /* second */
  2454. public short pth_no; /* path index */
  2455. public short sys_alm; /* sys alarm */
  2456. public short dsp_flg; /* message dsp flag */
  2457. public short axis_num; /* axis num */
  2458. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=64)]
  2459. public string alm_msg = new string(' ',64) ; /* alarm message */
  2460. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2461. public int[] g_modal; /* G code Modal */
  2462. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2463. public char[] g_dp; /* #7:1 Block */
  2464. /* #6�`#0 dp*/
  2465. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2466. public int[] a_modal; /* B,D,E,F,H,M,N,O,S,T code Modal */
  2467. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2468. public char[] a_dp; /* #7:1 Block */
  2469. /* 6�`#0 dp*/
  2470. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2471. public int[] abs_pos; /* Abs pos */
  2472. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2473. public char[] abs_dp; /* Abs dp */
  2474. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2475. public int[] mcn_pos; /* Mcn pos */
  2476. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2477. public char[] mcn_dp; /* Mcn dp */
  2478. }
  2479. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2480. public class REC_MAL4_data
  2481. {
  2482. public short rec_len; /* length */
  2483. public short rec_type; /* record type */
  2484. public REC_MAL4 data = new REC_MAL4();
  2485. }
  2486. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2487. public class REC_OPM4
  2488. {
  2489. public short dsp_flg; /* Dysplay flag(ON/OFF) */
  2490. public short om_no; /* message number */
  2491. public short year; /* year */
  2492. public short month; /* month */
  2493. public short day; /* day */
  2494. public short hour; /* Hour */
  2495. public short minute; /* Minute */
  2496. public short second; /* Second */
  2497. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=256)]
  2498. public string ope_msg = new string(' ',256) ; /* Messege */
  2499. }
  2500. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2501. public class REC_OPM4_data
  2502. {
  2503. public short rec_len; /* length */
  2504. public short rec_type; /* record type */
  2505. public REC_OPM4 data = new REC_OPM4();
  2506. }
  2507. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2508. public class REC_OFS4
  2509. {
  2510. public short ofs_grp; /* Tool offset group */
  2511. public short ofs_no; /* Tool offset number */
  2512. public short hour; /* hour */
  2513. public short minute; /* minute */
  2514. public short second; /* second */
  2515. public short pth_no; /* path index */
  2516. public int ofs_old; /* old data */
  2517. public int ofs_new; /* new data */
  2518. public short old_dp; /* old data decimal point */
  2519. public short new_dp; /* new data decimal point */
  2520. }
  2521. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2522. public class REC_OFS4_data
  2523. {
  2524. public short rec_len; /* length */
  2525. public short rec_type; /* record type */
  2526. public REC_OFS4 data = new REC_OFS4();
  2527. }
  2528. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2529. public class REC_PRM4
  2530. {
  2531. public short prm_grp; /* paramater group */
  2532. public short prm_num; /* paramater number */
  2533. public short hour; /* hour */
  2534. public short minute; /* minute */
  2535. public short second; /* second */
  2536. public short prm_len; /* paramater data length */
  2537. public int prm_no; /* paramater no */
  2538. public int prm_old; /* old data */
  2539. public int prm_new; /* new data */
  2540. public short old_dp; /* old data decimal point */
  2541. public short new_dp; /* new data decimal point */
  2542. }
  2543. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2544. public class REC_PRM4_data
  2545. {
  2546. public short rec_len; /* length */
  2547. public short rec_type; /* record type */
  2548. public REC_PRM4 data = new REC_PRM4();
  2549. }
  2550. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2551. public class REC_WOF4
  2552. {
  2553. public short ofs_grp; /* Work offset group */
  2554. public short ofs_no; /* Work offset number */
  2555. public short hour; /* hour */
  2556. public short minute; /* minute */
  2557. public short second; /* second */
  2558. public short pth_no; /* path index */
  2559. public short axis_no; /* path axis num $*/
  2560. public short dummy;
  2561. public int ofs_old; /* old data */
  2562. public int ofs_new; /* new data */
  2563. public short old_dp; /* old data decimal point */
  2564. public short new_dp; /* new data decimal point */
  2565. }
  2566. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2567. public class REC_WOF4_data
  2568. {
  2569. public short rec_len; /* length */
  2570. public short rec_type; /* record type */
  2571. public REC_WOF4 data = new REC_WOF4();
  2572. }
  2573. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2574. public class REC_MAC4
  2575. {
  2576. public short mac_no; /* macro val number */
  2577. public short hour; /* hour */
  2578. public short minute; /* minute */
  2579. public short second; /* second */
  2580. public short pth_no; /* path index */
  2581. public int mac_old; /* old data */
  2582. public int mac_new; /* new data */
  2583. public short old_dp; /* old data decimal point */
  2584. public short new_dp; /* old data decimal point */
  2585. }
  2586. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2587. public class REC_MAC4_data
  2588. {
  2589. public short rec_len; /* length */
  2590. public short rec_type; /* record type */
  2591. public REC_MAC4 data = new REC_MAC4();
  2592. }
  2593. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2594. public class ODBOPHIS4_1
  2595. {
  2596. public REC_MDI4_data rec_mdi1 = new REC_MDI4_data();
  2597. public REC_MDI4_data rec_mdi2 = new REC_MDI4_data();
  2598. public REC_MDI4_data rec_mdi3 = new REC_MDI4_data();
  2599. public REC_MDI4_data rec_mdi4 = new REC_MDI4_data();
  2600. public REC_MDI4_data rec_mdi5 = new REC_MDI4_data();
  2601. public REC_MDI4_data rec_mdi6 = new REC_MDI4_data();
  2602. public REC_MDI4_data rec_mdi7 = new REC_MDI4_data();
  2603. public REC_MDI4_data rec_mdi8 = new REC_MDI4_data();
  2604. public REC_MDI4_data rec_mdi9 = new REC_MDI4_data();
  2605. public REC_MDI4_data rec_mdi10 = new REC_MDI4_data();
  2606. } /* In case that the number of data is 10 */
  2607. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2608. public class ODBOPHIS4_2
  2609. {
  2610. public REC_SGN4_data rec_sgn1 = new REC_SGN4_data();
  2611. public REC_SGN4_data rec_sgn2 = new REC_SGN4_data();
  2612. public REC_SGN4_data rec_sgn3 = new REC_SGN4_data();
  2613. public REC_SGN4_data rec_sgn4 = new REC_SGN4_data();
  2614. public REC_SGN4_data rec_sgn5 = new REC_SGN4_data();
  2615. public REC_SGN4_data rec_sgn6 = new REC_SGN4_data();
  2616. public REC_SGN4_data rec_sgn7 = new REC_SGN4_data();
  2617. public REC_SGN4_data rec_sgn8 = new REC_SGN4_data();
  2618. public REC_SGN4_data rec_sgn9 = new REC_SGN4_data();
  2619. public REC_SGN4_data rec_sgn10 = new REC_SGN4_data();
  2620. } /* In case that the number of data is 10 */
  2621. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2622. public class ODBOPHIS4_3
  2623. {
  2624. public REC_ALM4_data rec_alm1 = new REC_ALM4_data();
  2625. public REC_ALM4_data rec_alm2 = new REC_ALM4_data();
  2626. public REC_ALM4_data rec_alm3 = new REC_ALM4_data();
  2627. public REC_ALM4_data rec_alm4 = new REC_ALM4_data();
  2628. public REC_ALM4_data rec_alm5 = new REC_ALM4_data();
  2629. public REC_ALM4_data rec_alm6 = new REC_ALM4_data();
  2630. public REC_ALM4_data rec_alm7 = new REC_ALM4_data();
  2631. public REC_ALM4_data rec_alm8 = new REC_ALM4_data();
  2632. public REC_ALM4_data rec_alm9 = new REC_ALM4_data();
  2633. public REC_ALM4_data rec_alm10 = new REC_ALM4_data();
  2634. } /* In case that the number of data is 10 */
  2635. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2636. public class ODBOPHIS4_4
  2637. {
  2638. public REC_DATE4_data rec_date1 = new REC_DATE4_data();
  2639. public REC_DATE4_data rec_date2 = new REC_DATE4_data();
  2640. public REC_DATE4_data rec_date3 = new REC_DATE4_data();
  2641. public REC_DATE4_data rec_date4 = new REC_DATE4_data();
  2642. public REC_DATE4_data rec_date5 = new REC_DATE4_data();
  2643. public REC_DATE4_data rec_date6 = new REC_DATE4_data();
  2644. public REC_DATE4_data rec_date7 = new REC_DATE4_data();
  2645. public REC_DATE4_data rec_date8 = new REC_DATE4_data();
  2646. public REC_DATE4_data rec_date9 = new REC_DATE4_data();
  2647. public REC_DATE4_data rec_date10 = new REC_DATE4_data();
  2648. } /* In case that the number of data is 10 */
  2649. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2650. public class ODBOPHIS4_5
  2651. {
  2652. public REC_IAL4_data rec_ial1 = new REC_IAL4_data();
  2653. public REC_IAL4_data rec_ial2 = new REC_IAL4_data();
  2654. public REC_IAL4_data rec_ial3 = new REC_IAL4_data();
  2655. public REC_IAL4_data rec_ial4 = new REC_IAL4_data();
  2656. public REC_IAL4_data rec_ial5 = new REC_IAL4_data();
  2657. public REC_IAL4_data rec_ial6 = new REC_IAL4_data();
  2658. public REC_IAL4_data rec_ial7 = new REC_IAL4_data();
  2659. public REC_IAL4_data rec_ial8 = new REC_IAL4_data();
  2660. public REC_IAL4_data rec_ial9 = new REC_IAL4_data();
  2661. public REC_IAL4_data rec_ial10 = new REC_IAL4_data();
  2662. } /* In case that the number of data is 10 */
  2663. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2664. public class ODBOPHIS4_6
  2665. {
  2666. public REC_MAL4_data rec_mal1 = new REC_MAL4_data();
  2667. public REC_MAL4_data rec_mal2 = new REC_MAL4_data();
  2668. public REC_MAL4_data rec_mal3 = new REC_MAL4_data();
  2669. public REC_MAL4_data rec_mal4 = new REC_MAL4_data();
  2670. public REC_MAL4_data rec_mal5 = new REC_MAL4_data();
  2671. public REC_MAL4_data rec_mal6 = new REC_MAL4_data();
  2672. public REC_MAL4_data rec_mal7 = new REC_MAL4_data();
  2673. public REC_MAL4_data rec_mal8 = new REC_MAL4_data();
  2674. public REC_MAL4_data rec_mal9 = new REC_MAL4_data();
  2675. public REC_MAL4_data rec_mal10 = new REC_MAL4_data();
  2676. } /* In case that the number of data is 10 */
  2677. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2678. public class ODBOPHIS4_7
  2679. {
  2680. public REC_OPM4_data rec_opm1 = new REC_OPM4_data();
  2681. public REC_OPM4_data rec_opm2 = new REC_OPM4_data();
  2682. public REC_OPM4_data rec_opm3 = new REC_OPM4_data();
  2683. public REC_OPM4_data rec_opm4 = new REC_OPM4_data();
  2684. public REC_OPM4_data rec_opm5 = new REC_OPM4_data();
  2685. public REC_OPM4_data rec_opm6 = new REC_OPM4_data();
  2686. public REC_OPM4_data rec_opm7 = new REC_OPM4_data();
  2687. public REC_OPM4_data rec_opm8 = new REC_OPM4_data();
  2688. public REC_OPM4_data rec_opm9 = new REC_OPM4_data();
  2689. public REC_OPM4_data rec_opm10 = new REC_OPM4_data();
  2690. } /* In case that the number of data is 10 */
  2691. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2692. public class ODBOPHIS4_8
  2693. {
  2694. public REC_OFS4_data rec_ofs1 = new REC_OFS4_data();
  2695. public REC_OFS4_data rec_ofs2 = new REC_OFS4_data();
  2696. public REC_OFS4_data rec_ofs3 = new REC_OFS4_data();
  2697. public REC_OFS4_data rec_ofs4 = new REC_OFS4_data();
  2698. public REC_OFS4_data rec_ofs5 = new REC_OFS4_data();
  2699. public REC_OFS4_data rec_ofs6 = new REC_OFS4_data();
  2700. public REC_OFS4_data rec_ofs7 = new REC_OFS4_data();
  2701. public REC_OFS4_data rec_ofs8 = new REC_OFS4_data();
  2702. public REC_OFS4_data rec_ofs9 = new REC_OFS4_data();
  2703. public REC_OFS4_data rec_ofs10 = new REC_OFS4_data();
  2704. } /* In case that the number of data is 10 */
  2705. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2706. public class ODBOPHIS4_9
  2707. {
  2708. public REC_PRM4_data rec_prm1 = new REC_PRM4_data();
  2709. public REC_PRM4_data rec_prm2 = new REC_PRM4_data();
  2710. public REC_PRM4_data rec_prm3 = new REC_PRM4_data();
  2711. public REC_PRM4_data rec_prm4 = new REC_PRM4_data();
  2712. public REC_PRM4_data rec_prm5 = new REC_PRM4_data();
  2713. public REC_PRM4_data rec_prm6 = new REC_PRM4_data();
  2714. public REC_PRM4_data rec_prm7 = new REC_PRM4_data();
  2715. public REC_PRM4_data rec_prm8 = new REC_PRM4_data();
  2716. public REC_PRM4_data rec_prm9 = new REC_PRM4_data();
  2717. public REC_PRM4_data rec_prm10 = new REC_PRM4_data();
  2718. } /* In case that the number of data is 10 */
  2719. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2720. public class ODBOPHIS4_10
  2721. {
  2722. public REC_WOF4_data rec_wof1 = new REC_WOF4_data();
  2723. public REC_WOF4_data rec_wof2 = new REC_WOF4_data();
  2724. public REC_WOF4_data rec_wof3 = new REC_WOF4_data();
  2725. public REC_WOF4_data rec_wof4 = new REC_WOF4_data();
  2726. public REC_WOF4_data rec_wof5 = new REC_WOF4_data();
  2727. public REC_WOF4_data rec_wof6 = new REC_WOF4_data();
  2728. public REC_WOF4_data rec_wof7 = new REC_WOF4_data();
  2729. public REC_WOF4_data rec_wof8 = new REC_WOF4_data();
  2730. public REC_WOF4_data rec_wof9 = new REC_WOF4_data();
  2731. public REC_WOF4_data rec_wof10 = new REC_WOF4_data();
  2732. } /* In case that the number of data is 10 */
  2733. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2734. public class ODBOPHIS4_11
  2735. {
  2736. public REC_MAC4_data rec_mac1 = new REC_MAC4_data();
  2737. public REC_MAC4_data rec_mac2 = new REC_MAC4_data();
  2738. public REC_MAC4_data rec_mac3 = new REC_MAC4_data();
  2739. public REC_MAC4_data rec_mac4 = new REC_MAC4_data();
  2740. public REC_MAC4_data rec_mac5 = new REC_MAC4_data();
  2741. public REC_MAC4_data rec_mac6 = new REC_MAC4_data();
  2742. public REC_MAC4_data rec_mac7 = new REC_MAC4_data();
  2743. public REC_MAC4_data rec_mac8 = new REC_MAC4_data();
  2744. public REC_MAC4_data rec_mac9 = new REC_MAC4_data();
  2745. public REC_MAC4_data rec_mac10 = new REC_MAC4_data();
  2746. } /* In case that the number of data is 10 */
  2747. /* cnc_rdalmhistry:read alarm history data */
  2748. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  2749. public class ALM_HIS_data
  2750. {
  2751. public short dummy;
  2752. public short alm_grp; /* alarm group */
  2753. public short alm_no; /* alarm number */
  2754. public byte axis_no; /* axis number */
  2755. public byte year; /* year */
  2756. public byte month; /* month */
  2757. public byte day; /* day */
  2758. public byte hour; /* hour */
  2759. public byte minute; /* minute */
  2760. public byte second; /* second */
  2761. public byte dummy2;
  2762. public short len_msg; /* alarm message length */
  2763. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  2764. public string alm_msg = new string(' ',32) ; /* alarm message */
  2765. }
  2766. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2767. public class ALM_HIS1
  2768. {
  2769. public ALM_HIS_data data1 = new ALM_HIS_data();
  2770. public ALM_HIS_data data2 = new ALM_HIS_data();
  2771. public ALM_HIS_data data3 = new ALM_HIS_data();
  2772. public ALM_HIS_data data4 = new ALM_HIS_data();
  2773. public ALM_HIS_data data5 = new ALM_HIS_data();
  2774. public ALM_HIS_data data6 = new ALM_HIS_data();
  2775. public ALM_HIS_data data7 = new ALM_HIS_data();
  2776. public ALM_HIS_data data8 = new ALM_HIS_data();
  2777. public ALM_HIS_data data9 = new ALM_HIS_data();
  2778. public ALM_HIS_data data10= new ALM_HIS_data();
  2779. } /* In case that the number of data is 10 */
  2780. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2781. public class ODBAHIS
  2782. {
  2783. public ushort s_no; /* start number */
  2784. public short type; /* dummy */
  2785. public ushort e_no; /* end number */
  2786. public ALM_HIS1 alm_his = new ALM_HIS1();
  2787. }
  2788. /* cnc_rdalmhistry2:read alarm history data */
  2789. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  2790. public class ALM_HIS2_data
  2791. {
  2792. public short alm_grp; /* alarm group */
  2793. public short alm_no; /* alarm number */
  2794. public short axis_no; /* axis number */
  2795. public short year; /* year */
  2796. public short month; /* month */
  2797. public short day; /* day */
  2798. public short hour; /* hour */
  2799. public short minute; /* minute */
  2800. public short second; /* second */
  2801. public short len_msg; /* alarm message length */
  2802. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  2803. public string alm_msg = new string(' ',32) ; /* alarm message */
  2804. }
  2805. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2806. public class ALM_HIS2
  2807. {
  2808. public ALM_HIS2_data data1 = new ALM_HIS2_data();
  2809. public ALM_HIS2_data data2 = new ALM_HIS2_data();
  2810. public ALM_HIS2_data data3 = new ALM_HIS2_data();
  2811. public ALM_HIS2_data data4 = new ALM_HIS2_data();
  2812. public ALM_HIS2_data data5 = new ALM_HIS2_data();
  2813. public ALM_HIS2_data data6 = new ALM_HIS2_data();
  2814. public ALM_HIS2_data data7 = new ALM_HIS2_data();
  2815. public ALM_HIS2_data data8 = new ALM_HIS2_data();
  2816. public ALM_HIS2_data data9 = new ALM_HIS2_data();
  2817. public ALM_HIS2_data data10= new ALM_HIS2_data();
  2818. } /* In case that the number of data is 10 */
  2819. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2820. public class ODBAHIS2
  2821. {
  2822. public ushort s_no; /* start number */
  2823. public ushort e_no; /* end number */
  2824. public ALM_HIS2 alm_his = new ALM_HIS2();
  2825. }
  2826. /* cnc_rdalmhistry3:read alarm history data */
  2827. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  2828. public class ALM_HIS3_data
  2829. {
  2830. public short alm_grp; /* alarm group */
  2831. public short alm_no; /* alarm number */
  2832. public short axis_no; /* axis number */
  2833. public short year; /* year */
  2834. public short month; /* month */
  2835. public short day; /* day */
  2836. public short hour; /* hour */
  2837. public short minute; /* minute */
  2838. public short second; /* second */
  2839. public short len_msg; /* alarm message length */
  2840. public short pth_no; /* path index */
  2841. public short dummy;
  2842. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  2843. public string alm_msg = new string(' ',32) ; /* alarm message */
  2844. }
  2845. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2846. public class ALM_HIS3
  2847. {
  2848. public ALM_HIS3_data data1 = new ALM_HIS3_data();
  2849. public ALM_HIS3_data data2 = new ALM_HIS3_data();
  2850. public ALM_HIS3_data data3 = new ALM_HIS3_data();
  2851. public ALM_HIS3_data data4 = new ALM_HIS3_data();
  2852. public ALM_HIS3_data data5 = new ALM_HIS3_data();
  2853. public ALM_HIS3_data data6 = new ALM_HIS3_data();
  2854. public ALM_HIS3_data data7 = new ALM_HIS3_data();
  2855. public ALM_HIS3_data data8 = new ALM_HIS3_data();
  2856. public ALM_HIS3_data data9 = new ALM_HIS3_data();
  2857. public ALM_HIS3_data data10= new ALM_HIS3_data();
  2858. } /* In case that the number of data is 10 */
  2859. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2860. public class ODBAHIS3
  2861. {
  2862. public ushort s_no; /* start number */
  2863. public ushort e_no; /* end number */
  2864. public ALM_HIS3 alm_his = new ALM_HIS3();
  2865. }
  2866. /* cnc_rdalmhistry5:read alarm history data */
  2867. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  2868. public class ALM_HIS5_data
  2869. {
  2870. public short alm_grp; /* alarm group */
  2871. public short alm_no; /* alarm number */
  2872. public short axis_no; /* axis number */
  2873. public short year; /* year */
  2874. public short month; /* month */
  2875. public short day; /* day */
  2876. public short hour; /* hour */
  2877. public short minute; /* minute */
  2878. public short second; /* second */
  2879. public short len_msg; /* alarm message length */
  2880. public short pth_no; /* path index */
  2881. public short dummy; /* dummy */
  2882. public short dsp_flg; /* Flag for displaying */
  2883. public short axis_num; /* Total axis number */
  2884. [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
  2885. public string alm_msg = new string(' ', 64); /* alarm message */
  2886. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2887. public int[] g_modal; /* G code Modal */
  2888. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2889. public byte[] g_dp; /* #7:1 Block #6�`#0 dp */
  2890. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2891. public int[] a_modal; /* B,D,E,F,H,M,N,O,S,T code Modal */
  2892. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  2893. public byte[] a_dp; /* #7:1 Block #6�`#0 dp */
  2894. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2895. public int[] abs_pos; /* Abs pos */
  2896. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2897. public byte[] abs_dp; /* Abs dp */
  2898. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2899. public int[] mcn_pos; /* Mcn pos */
  2900. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  2901. public byte[] mcn_dp; /* Mcn dp */
  2902. }
  2903. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2904. public class ALM_HIS5
  2905. {
  2906. public ALM_HIS5_data data1 = new ALM_HIS5_data();
  2907. public ALM_HIS5_data data2 = new ALM_HIS5_data();
  2908. public ALM_HIS5_data data3 = new ALM_HIS5_data();
  2909. public ALM_HIS5_data data4 = new ALM_HIS5_data();
  2910. public ALM_HIS5_data data5 = new ALM_HIS5_data();
  2911. public ALM_HIS5_data data6 = new ALM_HIS5_data();
  2912. public ALM_HIS5_data data7 = new ALM_HIS5_data();
  2913. public ALM_HIS5_data data8 = new ALM_HIS5_data();
  2914. public ALM_HIS5_data data9 = new ALM_HIS5_data();
  2915. public ALM_HIS5_data data10= new ALM_HIS5_data();
  2916. } /* In case that the number of data is 10 */
  2917. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2918. public class ODBAHIS5
  2919. {
  2920. public ushort s_no; /* start number */
  2921. public ushort e_no; /* end number */
  2922. public ALM_HIS5 alm_his = new ALM_HIS5();
  2923. }
  2924. /* cnc_rdomhistry2:read operater message history data */
  2925. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  2926. public class ODBOMHIS2_data
  2927. {
  2928. public short dsp_flg; /* Dysplay flag(ON/OFF) */
  2929. public short om_no; /* operater message number */
  2930. public short year; /* year */
  2931. public short month; /* month */
  2932. public short day; /* day */
  2933. public short hour; /* Hour */
  2934. public short minute; /* Minute */
  2935. public short second; /* Second */
  2936. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=256)]
  2937. public string alm_msg = new string(' ',256) ; /* alarm message */
  2938. }
  2939. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2940. public class OPM_HIS
  2941. {
  2942. public ODBOMHIS2_data data1 = new ODBOMHIS2_data();
  2943. public ODBOMHIS2_data data2 = new ODBOMHIS2_data();
  2944. public ODBOMHIS2_data data3 = new ODBOMHIS2_data();
  2945. public ODBOMHIS2_data data4 = new ODBOMHIS2_data();
  2946. public ODBOMHIS2_data data5 = new ODBOMHIS2_data();
  2947. public ODBOMHIS2_data data6 = new ODBOMHIS2_data();
  2948. public ODBOMHIS2_data data7 = new ODBOMHIS2_data();
  2949. public ODBOMHIS2_data data8 = new ODBOMHIS2_data();
  2950. public ODBOMHIS2_data data9 = new ODBOMHIS2_data();
  2951. public ODBOMHIS2_data data10 = new ODBOMHIS2_data();
  2952. } /* In case that the number of data is 10 */
  2953. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2954. public class ODBOMHIS2
  2955. {
  2956. public ushort s_no; /* start number */
  2957. public ushort e_no; /* end number */
  2958. public OPM_HIS opm_his = new OPM_HIS();
  2959. }
  2960. /* cnc_rdhissgnl:read signals related operation history */
  2961. /* cnc_wrhissgnl:write signals related operation history */
  2962. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  2963. public class IODBSIG_data
  2964. {
  2965. public short ent_no; /* entry number */
  2966. public short sig_no; /* signal number */
  2967. public byte sig_name; /* signal name */
  2968. public byte mask_pat; /* signal mask pattern */
  2969. }
  2970. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2971. public class IODBSIG1
  2972. {
  2973. public IODBSIG_data data1 = new IODBSIG_data();
  2974. public IODBSIG_data data2 = new IODBSIG_data();
  2975. public IODBSIG_data data3 = new IODBSIG_data();
  2976. public IODBSIG_data data4 = new IODBSIG_data();
  2977. public IODBSIG_data data5 = new IODBSIG_data();
  2978. public IODBSIG_data data6 = new IODBSIG_data();
  2979. public IODBSIG_data data7 = new IODBSIG_data();
  2980. public IODBSIG_data data8 = new IODBSIG_data();
  2981. public IODBSIG_data data9 = new IODBSIG_data();
  2982. public IODBSIG_data data10= new IODBSIG_data();
  2983. public IODBSIG_data data11= new IODBSIG_data();
  2984. public IODBSIG_data data12= new IODBSIG_data();
  2985. public IODBSIG_data data13= new IODBSIG_data();
  2986. public IODBSIG_data data14= new IODBSIG_data();
  2987. public IODBSIG_data data15= new IODBSIG_data();
  2988. public IODBSIG_data data16= new IODBSIG_data();
  2989. public IODBSIG_data data17= new IODBSIG_data();
  2990. public IODBSIG_data data18= new IODBSIG_data();
  2991. public IODBSIG_data data19= new IODBSIG_data();
  2992. public IODBSIG_data data20= new IODBSIG_data();
  2993. }
  2994. [StructLayout(LayoutKind.Sequential,Pack=4)]
  2995. public class IODBSIG
  2996. {
  2997. public short datano; /* dummy */
  2998. public short type; /* dummy */
  2999. public IODBSIG1 data = new IODBSIG1();
  3000. }
  3001. /* cnc_rdhissgnl2:read signals related operation history 2 */
  3002. /* cnc_wrhissgnl2:write signals related operation history 2 */
  3003. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3004. public class _IODBSIG2_data
  3005. {
  3006. public short ent_no; /* entry number */
  3007. public short sig_no; /* signal number */
  3008. public byte sig_name; /* signal name */
  3009. public byte mask_pat; /* signal mask pattern */
  3010. }
  3011. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3012. public class IODBSIG2_data
  3013. {
  3014. public _IODBSIG2_data data1 = new _IODBSIG2_data();
  3015. public _IODBSIG2_data data2 = new _IODBSIG2_data();
  3016. public _IODBSIG2_data data3 = new _IODBSIG2_data();
  3017. public _IODBSIG2_data data4 = new _IODBSIG2_data();
  3018. public _IODBSIG2_data data5 = new _IODBSIG2_data();
  3019. public _IODBSIG2_data data6 = new _IODBSIG2_data();
  3020. public _IODBSIG2_data data7 = new _IODBSIG2_data();
  3021. public _IODBSIG2_data data8 = new _IODBSIG2_data();
  3022. public _IODBSIG2_data data9 = new _IODBSIG2_data();
  3023. public _IODBSIG2_data data10= new _IODBSIG2_data();
  3024. public _IODBSIG2_data data11= new _IODBSIG2_data();
  3025. public _IODBSIG2_data data12= new _IODBSIG2_data();
  3026. public _IODBSIG2_data data13= new _IODBSIG2_data();
  3027. public _IODBSIG2_data data14= new _IODBSIG2_data();
  3028. public _IODBSIG2_data data15= new _IODBSIG2_data();
  3029. public _IODBSIG2_data data16= new _IODBSIG2_data();
  3030. public _IODBSIG2_data data17= new _IODBSIG2_data();
  3031. public _IODBSIG2_data data18= new _IODBSIG2_data();
  3032. public _IODBSIG2_data data19= new _IODBSIG2_data();
  3033. public _IODBSIG2_data data20= new _IODBSIG2_data();
  3034. public _IODBSIG2_data data31= new _IODBSIG2_data();
  3035. public _IODBSIG2_data data32= new _IODBSIG2_data();
  3036. public _IODBSIG2_data data33= new _IODBSIG2_data();
  3037. public _IODBSIG2_data data34= new _IODBSIG2_data();
  3038. public _IODBSIG2_data data35= new _IODBSIG2_data();
  3039. public _IODBSIG2_data data36= new _IODBSIG2_data();
  3040. public _IODBSIG2_data data37= new _IODBSIG2_data();
  3041. public _IODBSIG2_data data38= new _IODBSIG2_data();
  3042. public _IODBSIG2_data data39= new _IODBSIG2_data();
  3043. public _IODBSIG2_data data40= new _IODBSIG2_data();
  3044. public _IODBSIG2_data data41= new _IODBSIG2_data();
  3045. public _IODBSIG2_data data42= new _IODBSIG2_data();
  3046. public _IODBSIG2_data data43= new _IODBSIG2_data();
  3047. public _IODBSIG2_data data44= new _IODBSIG2_data();
  3048. public _IODBSIG2_data data45= new _IODBSIG2_data();
  3049. }
  3050. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3051. public class IODBSIG2
  3052. {
  3053. public short datano; /* dummy */
  3054. public short type; /* dummy */
  3055. public IODBSIG2_data data = new IODBSIG2_data();
  3056. }
  3057. /* cnc_rdhissgnl3:read signals related operation history */
  3058. /* cnc_wrhissgnl3:write signals related operation history */
  3059. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3060. public class _IODBSIG3_data
  3061. {
  3062. public short ent_no; /* entry number */
  3063. public short pmc_no; /* pmc number */
  3064. public short sig_no; /* signal number */
  3065. public byte sig_name; /* signal name */
  3066. public byte mask_pat; /* signal mask pattern */
  3067. }
  3068. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3069. public class IODBSIG3_data
  3070. {
  3071. public _IODBSIG3_data data1 = new _IODBSIG3_data();
  3072. public _IODBSIG3_data data2 = new _IODBSIG3_data();
  3073. public _IODBSIG3_data data3 = new _IODBSIG3_data();
  3074. public _IODBSIG3_data data4 = new _IODBSIG3_data();
  3075. public _IODBSIG3_data data5 = new _IODBSIG3_data();
  3076. public _IODBSIG3_data data6 = new _IODBSIG3_data();
  3077. public _IODBSIG3_data data7 = new _IODBSIG3_data();
  3078. public _IODBSIG3_data data8 = new _IODBSIG3_data();
  3079. public _IODBSIG3_data data9 = new _IODBSIG3_data();
  3080. public _IODBSIG3_data data10= new _IODBSIG3_data();
  3081. public _IODBSIG3_data data11= new _IODBSIG3_data();
  3082. public _IODBSIG3_data data12= new _IODBSIG3_data();
  3083. public _IODBSIG3_data data13= new _IODBSIG3_data();
  3084. public _IODBSIG3_data data14= new _IODBSIG3_data();
  3085. public _IODBSIG3_data data15= new _IODBSIG3_data();
  3086. public _IODBSIG3_data data16= new _IODBSIG3_data();
  3087. public _IODBSIG3_data data17= new _IODBSIG3_data();
  3088. public _IODBSIG3_data data18= new _IODBSIG3_data();
  3089. public _IODBSIG3_data data19= new _IODBSIG3_data();
  3090. public _IODBSIG3_data data20= new _IODBSIG3_data();
  3091. public _IODBSIG3_data data21= new _IODBSIG3_data();
  3092. public _IODBSIG3_data data22= new _IODBSIG3_data();
  3093. public _IODBSIG3_data data23= new _IODBSIG3_data();
  3094. public _IODBSIG3_data data24= new _IODBSIG3_data();
  3095. public _IODBSIG3_data data25= new _IODBSIG3_data();
  3096. public _IODBSIG3_data data26= new _IODBSIG3_data();
  3097. public _IODBSIG3_data data27= new _IODBSIG3_data();
  3098. public _IODBSIG3_data data28= new _IODBSIG3_data();
  3099. public _IODBSIG3_data data29= new _IODBSIG3_data();
  3100. public _IODBSIG3_data data30= new _IODBSIG3_data();
  3101. public _IODBSIG3_data data31= new _IODBSIG3_data();
  3102. public _IODBSIG3_data data32= new _IODBSIG3_data();
  3103. public _IODBSIG3_data data33= new _IODBSIG3_data();
  3104. public _IODBSIG3_data data34= new _IODBSIG3_data();
  3105. public _IODBSIG3_data data35= new _IODBSIG3_data();
  3106. public _IODBSIG3_data data36= new _IODBSIG3_data();
  3107. public _IODBSIG3_data data37= new _IODBSIG3_data();
  3108. public _IODBSIG3_data data38= new _IODBSIG3_data();
  3109. public _IODBSIG3_data data39= new _IODBSIG3_data();
  3110. public _IODBSIG3_data data40= new _IODBSIG3_data();
  3111. public _IODBSIG3_data data41= new _IODBSIG3_data();
  3112. public _IODBSIG3_data data42= new _IODBSIG3_data();
  3113. public _IODBSIG3_data data43= new _IODBSIG3_data();
  3114. public _IODBSIG3_data data44= new _IODBSIG3_data();
  3115. public _IODBSIG3_data data45= new _IODBSIG3_data();
  3116. public _IODBSIG3_data data46= new _IODBSIG3_data();
  3117. public _IODBSIG3_data data47= new _IODBSIG3_data();
  3118. public _IODBSIG3_data data48= new _IODBSIG3_data();
  3119. public _IODBSIG3_data data49= new _IODBSIG3_data();
  3120. public _IODBSIG3_data data50= new _IODBSIG3_data();
  3121. public _IODBSIG3_data data51= new _IODBSIG3_data();
  3122. public _IODBSIG3_data data52= new _IODBSIG3_data();
  3123. public _IODBSIG3_data data53= new _IODBSIG3_data();
  3124. public _IODBSIG3_data data54= new _IODBSIG3_data();
  3125. public _IODBSIG3_data data55= new _IODBSIG3_data();
  3126. public _IODBSIG3_data data56= new _IODBSIG3_data();
  3127. public _IODBSIG3_data data57= new _IODBSIG3_data();
  3128. public _IODBSIG3_data data58= new _IODBSIG3_data();
  3129. public _IODBSIG3_data data59= new _IODBSIG3_data();
  3130. public _IODBSIG3_data data60= new _IODBSIG3_data();
  3131. }
  3132. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3133. public class IODBSIG3
  3134. {
  3135. public short datano; /* dummy */
  3136. public short type; /* dummy */
  3137. public IODBSIG3_data data = new IODBSIG3_data();
  3138. }
  3139. /*-------------*/
  3140. /* CNC: Others */
  3141. /*-------------*/
  3142. /* cnc_sysinfo:read CNC system information */
  3143. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3144. public class ODBSYS
  3145. {
  3146. public short addinfo;
  3147. public short max_axis;
  3148. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  3149. public char[] cnc_type;
  3150. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  3151. public char[] mt_type;
  3152. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  3153. public char[] series;
  3154. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  3155. public char[] version;
  3156. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  3157. public char[] axes;
  3158. }
  3159. #if FS15D
  3160. /* cnc_statinfo:read CNC status information */
  3161. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3162. public class ODBST
  3163. {
  3164. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  3165. public short[] dummy; /* dummy */
  3166. public short aut; /* selected automatic mode */
  3167. public short manual; /* selected manual mode */
  3168. public short run; /* running status */
  3169. public short edit; /* editting status */
  3170. public short motion; /* axis, dwell status */
  3171. public short mstb; /* m, s, t, b status */
  3172. public short emergency; /* emergency stop status */
  3173. public short write; /* writting status */
  3174. public short labelskip; /* label skip status */
  3175. public short alarm; /* alarm status */
  3176. public short warning; /* warning status */
  3177. public short battery; /* battery status */
  3178. }
  3179. #else
  3180. /* cnc_statinfo:read CNC status information */
  3181. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3182. public class ODBST
  3183. {
  3184. public short dummy ; /* dummy */
  3185. public short tmmode ; /* T/M mode */
  3186. public short aut ; /* selected automatic mode */
  3187. public short run ; /* running status */
  3188. public short motion ; /* axis, dwell status */
  3189. public short mstb ; /* m, s, t, b status */
  3190. public short emergency ; /* emergency stop status */
  3191. public short alarm ; /* alarm status */
  3192. public short edit ; /* editting status */
  3193. }
  3194. #endif
  3195. /* cnc_alarm:read alarm status */
  3196. [StructLayout(LayoutKind.Sequential, Pack=4)]
  3197. public class ODBALM
  3198. {
  3199. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  3200. public short[] dummy={0,0};
  3201. public ushort data=0;
  3202. }
  3203. /* cnc_rdalminfo:read alarm information */
  3204. #if M_AXIS2
  3205. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3206. public class ALMINFO1_data
  3207. {
  3208. public int axis;
  3209. public short alm_no;
  3210. }
  3211. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3212. public class ALMINFO2_data
  3213. {
  3214. public int axis=0 ;
  3215. public short alm_no=0 ;
  3216. public short msg_len=0 ;
  3217. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  3218. public string alm_msg= new string(' ',32) ;
  3219. }
  3220. #else
  3221. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3222. public class ALMINFO1_data
  3223. {
  3224. public short axis;
  3225. public short alm_no;
  3226. }
  3227. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3228. public class ALMINFO2_data
  3229. {
  3230. public short axis=0 ;
  3231. public short alm_no=0 ;
  3232. public short msg_len=0 ;
  3233. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  3234. public string alm_msg= new string(' ',32) ;
  3235. }
  3236. #endif
  3237. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3238. public class ALMINFO_1
  3239. {
  3240. public ALMINFO1_data msg1=new ALMINFO1_data();
  3241. public ALMINFO1_data msg2=new ALMINFO1_data();
  3242. public ALMINFO1_data msg3=new ALMINFO1_data();
  3243. public ALMINFO1_data msg4=new ALMINFO1_data();
  3244. public ALMINFO1_data msg5=new ALMINFO1_data();
  3245. public short data_end ;
  3246. } /* In case that the number of alarm is 5 */
  3247. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3248. public class ALMINFO_2
  3249. {
  3250. public ALMINFO2_data msg1=new ALMINFO2_data();
  3251. public ALMINFO2_data msg2=new ALMINFO2_data();
  3252. public ALMINFO2_data msg3=new ALMINFO2_data();
  3253. public ALMINFO2_data msg4=new ALMINFO2_data();
  3254. public ALMINFO2_data msg5=new ALMINFO2_data();
  3255. public short dataend=0;
  3256. } /* In case that the number of alarm is 5 */
  3257. /* cnc_rdalmmsg:read alarm messages */
  3258. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3259. public class ODBALMMSG_data
  3260. {
  3261. public int alm_no;
  3262. public short type;
  3263. public short axis;
  3264. public short dummy;
  3265. public short msg_len;
  3266. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  3267. public string alm_msg= new string(' ',32) ;
  3268. }
  3269. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3270. public class ODBALMMSG
  3271. {
  3272. public ODBALMMSG_data msg1 = new ODBALMMSG_data();
  3273. public ODBALMMSG_data msg2 = new ODBALMMSG_data();
  3274. public ODBALMMSG_data msg3 = new ODBALMMSG_data();
  3275. public ODBALMMSG_data msg4 = new ODBALMMSG_data();
  3276. public ODBALMMSG_data msg5 = new ODBALMMSG_data();
  3277. public ODBALMMSG_data msg6 = new ODBALMMSG_data();
  3278. public ODBALMMSG_data msg7 = new ODBALMMSG_data();
  3279. public ODBALMMSG_data msg8 = new ODBALMMSG_data();
  3280. public ODBALMMSG_data msg9 = new ODBALMMSG_data();
  3281. public ODBALMMSG_data msg10= new ODBALMMSG_data();
  3282. } /* In case that the number of alarm is 10 */
  3283. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3284. public class ODBALMMSG2_data
  3285. {
  3286. public int alm_no;
  3287. public short type;
  3288. public short axis;
  3289. public short dummy;
  3290. public short msg_len;
  3291. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=64)]
  3292. public string alm_msg= new string(' ',64) ;
  3293. }
  3294. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3295. public class ODBALMMSG2
  3296. {
  3297. public ODBALMMSG2_data msg1 = new ODBALMMSG2_data();
  3298. public ODBALMMSG2_data msg2 = new ODBALMMSG2_data();
  3299. public ODBALMMSG2_data msg3 = new ODBALMMSG2_data();
  3300. public ODBALMMSG2_data msg4 = new ODBALMMSG2_data();
  3301. public ODBALMMSG2_data msg5 = new ODBALMMSG2_data();
  3302. public ODBALMMSG2_data msg6 = new ODBALMMSG2_data();
  3303. public ODBALMMSG2_data msg7 = new ODBALMMSG2_data();
  3304. public ODBALMMSG2_data msg8 = new ODBALMMSG2_data();
  3305. public ODBALMMSG2_data msg9 = new ODBALMMSG2_data();
  3306. public ODBALMMSG2_data msg10= new ODBALMMSG2_data();
  3307. } /* In case that the number of alarm is 10 */
  3308. /* cnc_modal:read modal data */
  3309. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3310. public class MODAL_AUX_data
  3311. {
  3312. public int aux_data;
  3313. public byte flag1;
  3314. public byte flag2;
  3315. }
  3316. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3317. public class MODAL_RAUX1_data
  3318. {
  3319. public MODAL_AUX_data data1 = new MODAL_AUX_data();
  3320. public MODAL_AUX_data data2 = new MODAL_AUX_data();
  3321. public MODAL_AUX_data data3 = new MODAL_AUX_data();
  3322. public MODAL_AUX_data data4 = new MODAL_AUX_data();
  3323. public MODAL_AUX_data data5 = new MODAL_AUX_data();
  3324. public MODAL_AUX_data data6 = new MODAL_AUX_data();
  3325. public MODAL_AUX_data data7 = new MODAL_AUX_data();
  3326. public MODAL_AUX_data data8 = new MODAL_AUX_data();
  3327. public MODAL_AUX_data data9 = new MODAL_AUX_data();
  3328. public MODAL_AUX_data data10= new MODAL_AUX_data();
  3329. public MODAL_AUX_data data11= new MODAL_AUX_data();
  3330. public MODAL_AUX_data data12= new MODAL_AUX_data();
  3331. public MODAL_AUX_data data13= new MODAL_AUX_data();
  3332. public MODAL_AUX_data data14= new MODAL_AUX_data();
  3333. public MODAL_AUX_data data15= new MODAL_AUX_data();
  3334. public MODAL_AUX_data data16= new MODAL_AUX_data();
  3335. public MODAL_AUX_data data17= new MODAL_AUX_data();
  3336. public MODAL_AUX_data data18= new MODAL_AUX_data();
  3337. public MODAL_AUX_data data19= new MODAL_AUX_data();
  3338. public MODAL_AUX_data data20= new MODAL_AUX_data();
  3339. public MODAL_AUX_data data21= new MODAL_AUX_data();
  3340. public MODAL_AUX_data data22= new MODAL_AUX_data();
  3341. public MODAL_AUX_data data23= new MODAL_AUX_data();
  3342. public MODAL_AUX_data data24= new MODAL_AUX_data();
  3343. public MODAL_AUX_data data25= new MODAL_AUX_data();
  3344. public MODAL_AUX_data data26= new MODAL_AUX_data();
  3345. public MODAL_AUX_data data27= new MODAL_AUX_data();
  3346. }
  3347. #if M_AXIS2
  3348. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3349. public class MODAL_RAUX2_data
  3350. {
  3351. public MODAL_AUX_data data1 = new MODAL_AUX_data();
  3352. public MODAL_AUX_data data2 = new MODAL_AUX_data();
  3353. public MODAL_AUX_data data3 = new MODAL_AUX_data();
  3354. public MODAL_AUX_data data4 = new MODAL_AUX_data();
  3355. public MODAL_AUX_data data5 = new MODAL_AUX_data();
  3356. public MODAL_AUX_data data6 = new MODAL_AUX_data();
  3357. public MODAL_AUX_data data7 = new MODAL_AUX_data();
  3358. public MODAL_AUX_data data8 = new MODAL_AUX_data();
  3359. public MODAL_AUX_data data9 = new MODAL_AUX_data();
  3360. public MODAL_AUX_data data10= new MODAL_AUX_data();
  3361. public MODAL_AUX_data data11= new MODAL_AUX_data();
  3362. public MODAL_AUX_data data12= new MODAL_AUX_data();
  3363. public MODAL_AUX_data data13= new MODAL_AUX_data();
  3364. public MODAL_AUX_data data14= new MODAL_AUX_data();
  3365. public MODAL_AUX_data data15= new MODAL_AUX_data();
  3366. public MODAL_AUX_data data16= new MODAL_AUX_data();
  3367. public MODAL_AUX_data data17= new MODAL_AUX_data();
  3368. public MODAL_AUX_data data18= new MODAL_AUX_data();
  3369. public MODAL_AUX_data data19= new MODAL_AUX_data();
  3370. public MODAL_AUX_data data20= new MODAL_AUX_data();
  3371. public MODAL_AUX_data data21= new MODAL_AUX_data();
  3372. public MODAL_AUX_data data22= new MODAL_AUX_data();
  3373. public MODAL_AUX_data data23= new MODAL_AUX_data();
  3374. public MODAL_AUX_data data24= new MODAL_AUX_data();
  3375. }
  3376. #elif FS15D
  3377. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3378. public class MODAL_RAUX2_data
  3379. {
  3380. public MODAL_AUX_data data1 = new MODAL_AUX_data();
  3381. public MODAL_AUX_data data2 = new MODAL_AUX_data();
  3382. public MODAL_AUX_data data3 = new MODAL_AUX_data();
  3383. public MODAL_AUX_data data4 = new MODAL_AUX_data();
  3384. public MODAL_AUX_data data5 = new MODAL_AUX_data();
  3385. public MODAL_AUX_data data6 = new MODAL_AUX_data();
  3386. public MODAL_AUX_data data7 = new MODAL_AUX_data();
  3387. public MODAL_AUX_data data8 = new MODAL_AUX_data();
  3388. public MODAL_AUX_data data9 = new MODAL_AUX_data();
  3389. public MODAL_AUX_data data10= new MODAL_AUX_data();
  3390. }
  3391. #else
  3392. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3393. public class MODAL_RAUX2_data
  3394. {
  3395. public MODAL_AUX_data data1 = new MODAL_AUX_data();
  3396. public MODAL_AUX_data data2 = new MODAL_AUX_data();
  3397. public MODAL_AUX_data data3 = new MODAL_AUX_data();
  3398. public MODAL_AUX_data data4 = new MODAL_AUX_data();
  3399. public MODAL_AUX_data data5 = new MODAL_AUX_data();
  3400. public MODAL_AUX_data data6 = new MODAL_AUX_data();
  3401. public MODAL_AUX_data data7 = new MODAL_AUX_data();
  3402. public MODAL_AUX_data data8 = new MODAL_AUX_data();
  3403. }
  3404. #endif
  3405. [StructLayout(LayoutKind.Explicit)]
  3406. public class ODBMDL_1
  3407. {
  3408. [ FieldOffset( 0 )]
  3409. public short datano;
  3410. [ FieldOffset( 2 )]
  3411. public short type;
  3412. [ FieldOffset( 4 )]
  3413. public byte g_data;
  3414. }
  3415. [StructLayout(LayoutKind.Explicit)]
  3416. public class ODBMDL_2
  3417. {
  3418. [ FieldOffset( 0 )]
  3419. public short datano;
  3420. [ FieldOffset( 2 )]
  3421. public short type;
  3422. [ FieldOffset( 4 ),
  3423. MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  3424. public byte[] g_1shot = new byte[4];
  3425. [ FieldOffset( 4 ),
  3426. MarshalAs(UnmanagedType.ByValArray,SizeConst=35)]
  3427. public byte[] g_rdata = new byte[35];
  3428. }
  3429. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3430. public class ODBMDL_3
  3431. {
  3432. public short datano;
  3433. public short type;
  3434. public MODAL_AUX_data aux = new MODAL_AUX_data();
  3435. }
  3436. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3437. public class ODBMDL_4
  3438. {
  3439. public short datano;
  3440. public short type;
  3441. public MODAL_RAUX1_data raux1 = new MODAL_RAUX1_data();
  3442. }
  3443. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3444. public class ODBMDL_5
  3445. {
  3446. public short datano;
  3447. public short type;
  3448. public MODAL_RAUX2_data raux2 = new MODAL_RAUX2_data();
  3449. }
  3450. /* cnc_rdgcode: read G code */
  3451. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3452. public class ODBGCD_data
  3453. {
  3454. public short group ;
  3455. public short flag ;
  3456. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=8)]
  3457. public string code= new string(' ',8) ;
  3458. }
  3459. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3460. public class ODBGCD
  3461. {
  3462. public ODBGCD_data gcd0 =new ODBGCD_data();
  3463. public ODBGCD_data gcd1 =new ODBGCD_data();
  3464. public ODBGCD_data gcd2 =new ODBGCD_data();
  3465. public ODBGCD_data gcd3 =new ODBGCD_data();
  3466. public ODBGCD_data gcd4 =new ODBGCD_data();
  3467. public ODBGCD_data gcd5 =new ODBGCD_data();
  3468. public ODBGCD_data gcd6 =new ODBGCD_data();
  3469. public ODBGCD_data gcd7 =new ODBGCD_data();
  3470. public ODBGCD_data gcd8 =new ODBGCD_data();
  3471. public ODBGCD_data gcd9 =new ODBGCD_data();
  3472. public ODBGCD_data gcd10=new ODBGCD_data();
  3473. public ODBGCD_data gcd11=new ODBGCD_data();
  3474. public ODBGCD_data gcd12=new ODBGCD_data();
  3475. public ODBGCD_data gcd13=new ODBGCD_data();
  3476. public ODBGCD_data gcd14=new ODBGCD_data();
  3477. public ODBGCD_data gcd15=new ODBGCD_data();
  3478. public ODBGCD_data gcd16=new ODBGCD_data();
  3479. public ODBGCD_data gcd17=new ODBGCD_data();
  3480. public ODBGCD_data gcd18=new ODBGCD_data();
  3481. public ODBGCD_data gcd19=new ODBGCD_data();
  3482. public ODBGCD_data gcd20=new ODBGCD_data();
  3483. public ODBGCD_data gcd21=new ODBGCD_data();
  3484. public ODBGCD_data gcd22=new ODBGCD_data();
  3485. public ODBGCD_data gcd23=new ODBGCD_data();
  3486. public ODBGCD_data gcd24=new ODBGCD_data();
  3487. public ODBGCD_data gcd25=new ODBGCD_data();
  3488. public ODBGCD_data gcd26=new ODBGCD_data();
  3489. public ODBGCD_data gcd27=new ODBGCD_data();
  3490. }
  3491. /* cnc_rdcommand: read command value */
  3492. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3493. public class ODBCMD_data
  3494. {
  3495. public byte adrs ;
  3496. public byte num ;
  3497. public short flag ;
  3498. public int cmd_val ;
  3499. public int dec_val ;
  3500. }
  3501. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3502. public class ODBCMD
  3503. {
  3504. public ODBCMD_data cmd0 =new ODBCMD_data();
  3505. public ODBCMD_data cmd1 =new ODBCMD_data();
  3506. public ODBCMD_data cmd2 =new ODBCMD_data();
  3507. public ODBCMD_data cmd3 =new ODBCMD_data();
  3508. public ODBCMD_data cmd4 =new ODBCMD_data();
  3509. public ODBCMD_data cmd5 =new ODBCMD_data();
  3510. public ODBCMD_data cmd6 =new ODBCMD_data();
  3511. public ODBCMD_data cmd7 =new ODBCMD_data();
  3512. public ODBCMD_data cmd8 =new ODBCMD_data();
  3513. public ODBCMD_data cmd9 =new ODBCMD_data();
  3514. public ODBCMD_data cmd10=new ODBCMD_data();
  3515. public ODBCMD_data cmd11=new ODBCMD_data();
  3516. public ODBCMD_data cmd12=new ODBCMD_data();
  3517. public ODBCMD_data cmd13=new ODBCMD_data();
  3518. public ODBCMD_data cmd14=new ODBCMD_data();
  3519. public ODBCMD_data cmd15=new ODBCMD_data();
  3520. public ODBCMD_data cmd16=new ODBCMD_data();
  3521. public ODBCMD_data cmd17=new ODBCMD_data();
  3522. public ODBCMD_data cmd18=new ODBCMD_data();
  3523. public ODBCMD_data cmd19=new ODBCMD_data();
  3524. public ODBCMD_data cmd20=new ODBCMD_data();
  3525. public ODBCMD_data cmd21=new ODBCMD_data();
  3526. public ODBCMD_data cmd22=new ODBCMD_data();
  3527. public ODBCMD_data cmd23=new ODBCMD_data();
  3528. public ODBCMD_data cmd24=new ODBCMD_data();
  3529. public ODBCMD_data cmd25=new ODBCMD_data();
  3530. public ODBCMD_data cmd26=new ODBCMD_data();
  3531. public ODBCMD_data cmd27=new ODBCMD_data();
  3532. public ODBCMD_data cmd28=new ODBCMD_data();
  3533. public ODBCMD_data cmd29=new ODBCMD_data();
  3534. }
  3535. /* cnc_diagnoss:read diagnosis data */
  3536. /* cnc_diagnosr:read diagnosis data(area specified) */
  3537. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3538. public class REALDGN
  3539. {
  3540. public int dgn_val; /* data of real diagnoss */
  3541. public int dec_val; /* decimal point of real diagnoss */
  3542. }
  3543. #if M_AXIS2
  3544. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3545. public class REALDGNS
  3546. {
  3547. public REALDGN rdata1=new REALDGN();
  3548. public REALDGN rdata2=new REALDGN();
  3549. public REALDGN rdata3=new REALDGN();
  3550. public REALDGN rdata4=new REALDGN();
  3551. public REALDGN rdata5=new REALDGN();
  3552. public REALDGN rdata6=new REALDGN();
  3553. public REALDGN rdata7=new REALDGN();
  3554. public REALDGN rdata8=new REALDGN();
  3555. public REALDGN rdata9=new REALDGN();
  3556. public REALDGN rdata10=new REALDGN();
  3557. public REALDGN rdata11=new REALDGN();
  3558. public REALDGN rdata12=new REALDGN();
  3559. public REALDGN rdata13=new REALDGN();
  3560. public REALDGN rdata14=new REALDGN();
  3561. public REALDGN rdata15=new REALDGN();
  3562. public REALDGN rdata16=new REALDGN();
  3563. public REALDGN rdata17=new REALDGN();
  3564. public REALDGN rdata18=new REALDGN();
  3565. public REALDGN rdata19=new REALDGN();
  3566. public REALDGN rdata20=new REALDGN();
  3567. public REALDGN rdata21=new REALDGN();
  3568. public REALDGN rdata22=new REALDGN();
  3569. public REALDGN rdata23=new REALDGN();
  3570. public REALDGN rdata24=new REALDGN();
  3571. } /* In case that the number of alarm is 24 */
  3572. #elif FS15D
  3573. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3574. public class REALDGNS
  3575. {
  3576. public REALDGN rdata1=new REALDGN();
  3577. public REALDGN rdata2=new REALDGN();
  3578. public REALDGN rdata3=new REALDGN();
  3579. public REALDGN rdata4=new REALDGN();
  3580. public REALDGN rdata5=new REALDGN();
  3581. public REALDGN rdata6=new REALDGN();
  3582. public REALDGN rdata7=new REALDGN();
  3583. public REALDGN rdata8=new REALDGN();
  3584. public REALDGN rdata9=new REALDGN();
  3585. public REALDGN rdata10=new REALDGN();
  3586. } /* In case that the number of alarm is 10 */
  3587. #else
  3588. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3589. public class REALDGNS
  3590. {
  3591. public REALDGN rdata1=new REALDGN();
  3592. public REALDGN rdata2=new REALDGN();
  3593. public REALDGN rdata3=new REALDGN();
  3594. public REALDGN rdata4=new REALDGN();
  3595. public REALDGN rdata5=new REALDGN();
  3596. public REALDGN rdata6=new REALDGN();
  3597. public REALDGN rdata7=new REALDGN();
  3598. public REALDGN rdata8=new REALDGN();
  3599. } /* In case that the number of alarm is 8 */
  3600. #endif
  3601. [StructLayout(LayoutKind.Explicit)]
  3602. public class ODBDGN_1
  3603. {
  3604. [ FieldOffset( 0 )]
  3605. public short datano ; /* data number */
  3606. [ FieldOffset( 2 )]
  3607. public short type ; /* axis number */
  3608. [ FieldOffset( 4 )]
  3609. public byte cdata; /* parameter / setting data */
  3610. [ FieldOffset( 4 )]
  3611. public short idata;
  3612. [ FieldOffset( 4 )]
  3613. public int ldata;
  3614. }
  3615. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3616. public class ODBDGN_2
  3617. {
  3618. public short datano ; /* data number */
  3619. public short type ; /* axis number */
  3620. public REALDGN rdata=new REALDGN();
  3621. }
  3622. [StructLayout(LayoutKind.Explicit)]
  3623. public class ODBDGN_3
  3624. {
  3625. [ FieldOffset( 0 )]
  3626. public short datano ; /* data number */
  3627. [ FieldOffset( 2 )]
  3628. public short type ; /* axis number */
  3629. [ FieldOffset( 4 ),
  3630. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  3631. public byte[] cdatas;
  3632. [ FieldOffset( 4 ),
  3633. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  3634. public short[] idatas;
  3635. [ FieldOffset( 4 ),
  3636. MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  3637. public int[] ldatas;
  3638. }
  3639. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3640. public class ODBDGN_4
  3641. {
  3642. public short datano ; /* data number */
  3643. public short type ; /* axis number */
  3644. public REALDGNS rdatas=new REALDGNS();
  3645. }
  3646. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3647. public class ODBDGN_A
  3648. {
  3649. public ODBDGN_1 data1=new ODBDGN_1();
  3650. public ODBDGN_1 data2=new ODBDGN_1();
  3651. public ODBDGN_1 data3=new ODBDGN_1();
  3652. public ODBDGN_1 data4=new ODBDGN_1();
  3653. public ODBDGN_1 data5=new ODBDGN_1();
  3654. public ODBDGN_1 data6=new ODBDGN_1();
  3655. public ODBDGN_1 data7=new ODBDGN_1();
  3656. } /* (sample) must be modified */
  3657. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3658. public class ODBDGN_B
  3659. {
  3660. public ODBDGN_2 data1=new ODBDGN_2();
  3661. public ODBDGN_2 data2=new ODBDGN_2();
  3662. public ODBDGN_2 data3=new ODBDGN_2();
  3663. public ODBDGN_2 data4=new ODBDGN_2();
  3664. public ODBDGN_2 data5=new ODBDGN_2();
  3665. public ODBDGN_2 data6=new ODBDGN_2();
  3666. public ODBDGN_2 data7=new ODBDGN_2();
  3667. } /* (sample) must be modified */
  3668. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3669. public class ODBDGN_C
  3670. {
  3671. public ODBDGN_3 data1=new ODBDGN_3();
  3672. public ODBDGN_3 data2=new ODBDGN_3();
  3673. public ODBDGN_3 data3=new ODBDGN_3();
  3674. public ODBDGN_3 data4=new ODBDGN_3();
  3675. public ODBDGN_3 data5=new ODBDGN_3();
  3676. public ODBDGN_3 data6=new ODBDGN_3();
  3677. public ODBDGN_3 data7=new ODBDGN_3();
  3678. } /* (sample) must be modified */
  3679. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3680. public class ODBDGN_D
  3681. {
  3682. public ODBDGN_4 data1=new ODBDGN_4();
  3683. public ODBDGN_4 data2=new ODBDGN_4();
  3684. public ODBDGN_4 data3=new ODBDGN_4();
  3685. public ODBDGN_4 data4=new ODBDGN_4();
  3686. public ODBDGN_4 data5=new ODBDGN_4();
  3687. public ODBDGN_4 data6=new ODBDGN_4();
  3688. public ODBDGN_4 data7=new ODBDGN_4();
  3689. } /* (sample) must be modified */
  3690. /* cnc_adcnv:read A/D conversion data */
  3691. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3692. public class ODBAD
  3693. {
  3694. public short datano ; /* input analog voltage type */
  3695. public short type ; /* analog voltage type */
  3696. public short data ; /* digital voltage data */
  3697. }
  3698. #if FS15D
  3699. /* cnc_rdopmsg:read operator's message */
  3700. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3701. public class OPMSG_data
  3702. {
  3703. public short datano ; /* operator's message number */
  3704. public short type ; /* operator's message type */
  3705. public short char_num ; /* message string length */
  3706. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=129)]
  3707. public string data= new string(' ',129) ; /* operator's message string */
  3708. } /* In case that the data length is 129 */
  3709. #else
  3710. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3711. public class OPMSG_data
  3712. {
  3713. public short datano ; /* operator's message number */
  3714. public short type ; /* operator's message type */
  3715. public short char_num ; /* message string length */
  3716. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=256)]
  3717. public string data= new string(' ',256) ; /* operator's message string */
  3718. } /* In case that the data length is 256 */
  3719. #endif
  3720. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3721. public class OPMSG
  3722. {
  3723. public OPMSG_data msg1 =new OPMSG_data();
  3724. public OPMSG_data msg2 =new OPMSG_data();
  3725. public OPMSG_data msg3 =new OPMSG_data();
  3726. public OPMSG_data msg4 =new OPMSG_data();
  3727. public OPMSG_data msg5 =new OPMSG_data();
  3728. }
  3729. /* cnc_rdopmsg2:read operator's message */
  3730. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3731. public class OPMSG2_data
  3732. {
  3733. public short datano ; /* operator's message number */
  3734. public short type ; /* operator's message type */
  3735. public short char_num ; /* message string length */
  3736. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=64)]
  3737. public string data= new string(' ',64) ; /* operator's message string */
  3738. } /* In case that the data length is 64 */
  3739. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3740. public class OPMSG2
  3741. {
  3742. public OPMSG2_data msg1 =new OPMSG2_data();
  3743. public OPMSG2_data msg2 =new OPMSG2_data();
  3744. public OPMSG2_data msg3 =new OPMSG2_data();
  3745. public OPMSG2_data msg4 =new OPMSG2_data();
  3746. public OPMSG2_data msg5 =new OPMSG2_data();
  3747. }
  3748. /* cnc_rdopmsg3:read operator's message */
  3749. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3750. public class OPMSG3_data
  3751. {
  3752. public short datano ; /* operator's message number */
  3753. public short type ; /* operator's message type */
  3754. public short char_num ; /* message string length */
  3755. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=256)]
  3756. public string data= new string(' ',256) ; /* operator's message string */
  3757. } /* In case that the data length is 256 */
  3758. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3759. public class OPMSG3
  3760. {
  3761. public OPMSG3_data msg1 =new OPMSG3_data();
  3762. public OPMSG3_data msg2 =new OPMSG3_data();
  3763. public OPMSG3_data msg3 =new OPMSG3_data();
  3764. public OPMSG3_data msg4 =new OPMSG3_data();
  3765. public OPMSG3_data msg5 =new OPMSG3_data();
  3766. }
  3767. /* cnc_sysconfig:read CNC configuration information */
  3768. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3769. public class ODBSYSC
  3770. {
  3771. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  3772. public byte[] slot_no_p;
  3773. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  3774. public byte[] slot_no_l;
  3775. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  3776. public short[] mod_id;
  3777. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  3778. public short[] soft_id;
  3779. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3780. public string s_series1 = new string(' ',5) ;
  3781. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3782. public string s_series2 = new string(' ',5) ;
  3783. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3784. public string s_series3 = new string(' ',5) ;
  3785. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3786. public string s_series4 = new string(' ',5) ;
  3787. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3788. public string s_series5 = new string(' ',5) ;
  3789. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3790. public string s_series6 = new string(' ',5) ;
  3791. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3792. public string s_series7 = new string(' ',5) ;
  3793. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3794. public string s_series8 = new string(' ',5) ;
  3795. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3796. public string s_series9 = new string(' ',5) ;
  3797. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3798. public string s_series10= new string(' ',5) ;
  3799. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3800. public string s_series11= new string(' ',5) ;
  3801. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3802. public string s_series12= new string(' ',5) ;
  3803. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3804. public string s_series13= new string(' ',5) ;
  3805. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3806. public string s_series14= new string(' ',5) ;
  3807. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3808. public string s_series15= new string(' ',5) ;
  3809. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3810. public string s_series16= new string(' ',5) ;
  3811. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3812. public string s_version1 = new string(' ',5) ;
  3813. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3814. public string s_version2 = new string(' ',5) ;
  3815. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3816. public string s_version3 = new string(' ',5) ;
  3817. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3818. public string s_version4 = new string(' ',5) ;
  3819. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3820. public string s_version5 = new string(' ',5) ;
  3821. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3822. public string s_version6 = new string(' ',5) ;
  3823. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3824. public string s_version7 = new string(' ',5) ;
  3825. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3826. public string s_version8 = new string(' ',5) ;
  3827. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3828. public string s_version9 = new string(' ',5) ;
  3829. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3830. public string s_version10= new string(' ',5) ;
  3831. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3832. public string s_version11= new string(' ',5) ;
  3833. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3834. public string s_version12= new string(' ',5) ;
  3835. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3836. public string s_version13= new string(' ',5) ;
  3837. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3838. public string s_version14= new string(' ',5) ;
  3839. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3840. public string s_version15= new string(' ',5) ;
  3841. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  3842. public string s_version16= new string(' ',5) ;
  3843. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  3844. public byte[] dummy;
  3845. public short m_rom;
  3846. public short s_rom;
  3847. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  3848. public char[] svo_soft;
  3849. [MarshalAs(UnmanagedType.ByValArray,SizeConst=6)]
  3850. public char[] pmc_soft;
  3851. [MarshalAs(UnmanagedType.ByValArray,SizeConst=6)]
  3852. public char[] lad_soft;
  3853. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  3854. public char[] mcr_soft;
  3855. [MarshalAs(UnmanagedType.ByValArray,SizeConst=6)]
  3856. public char[] spl1_soft;
  3857. [MarshalAs(UnmanagedType.ByValArray,SizeConst=6)]
  3858. public char[] spl2_soft;
  3859. public short frmmin;
  3860. public short drmmin;
  3861. public short srmmin;
  3862. public short pmcmin;
  3863. public short crtmin;
  3864. public short sv1min;
  3865. public short sv3min;
  3866. public short sicmin;
  3867. public short posmin;
  3868. public short drmmrc;
  3869. public short drmarc;
  3870. public short pmcmrc;
  3871. public short dmaarc;
  3872. public short iopt;
  3873. public short hdiio;
  3874. public short frmsub;
  3875. public short drmsub;
  3876. public short srmsub;
  3877. public short sv5sub;
  3878. public short sv7sub;
  3879. public short sicsub;
  3880. public short possub;
  3881. public short hamsub;
  3882. public short gm2gr1;
  3883. public short crtgr2;
  3884. public short gm1gr2;
  3885. public short gm2gr2;
  3886. public short cmmrb;
  3887. public short sv5axs;
  3888. public short sv7axs;
  3889. public short sicaxs;
  3890. public short posaxs;
  3891. public short hanaxs;
  3892. public short romr64;
  3893. public short srmr64;
  3894. public short dr1r64;
  3895. public short dr2r64;
  3896. public short iopio2;
  3897. public short hdiio2;
  3898. public short cmmrb2;
  3899. public short romfap;
  3900. public short srmfap;
  3901. public short drmfap;
  3902. }
  3903. /* cnc_rdprstrinfo:read program restart information */
  3904. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3905. public class ODBPRS
  3906. {
  3907. public short datano; /* dummy */
  3908. public short type; /* dummy */
  3909. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  3910. public short[] data_info; /* data setting information */
  3911. public int rstr_bc; /* block counter */
  3912. [MarshalAs(UnmanagedType.ByValArray,SizeConst=35)]
  3913. public int[] rstr_m; /* M code value */
  3914. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  3915. public int[] rstr_t; /* T code value */
  3916. public int rstr_s; /* S code value */
  3917. public int rstr_b; /* B code value */
  3918. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  3919. public int[] dest; /* program re-start position */
  3920. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  3921. public int[] dist; /* program re-start distance */
  3922. }
  3923. #if FS15D
  3924. /* cnc_rdopnlsgnl:read output signal image of software operator's panel */
  3925. /* cnc_wropnlsgnl:write output signal of software operator's panel */
  3926. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3927. public class IODBSGNL
  3928. {
  3929. public short datano; /* dummy */
  3930. public short type; /* data select flag */
  3931. public short mode; /* mode signal */
  3932. public short hndl_ax; /* Manual handle feed axis selection signal */
  3933. public short hndl_mv; /* Manual handle feed travel distance selection signal */
  3934. public short rpd_ovrd; /* rapid traverse override signal */
  3935. public short jog_ovrd; /* manual feedrate override signal */
  3936. public short feed_ovrd; /* feedrate override signal */
  3937. public short spdl_ovrd; /* spindle override signal */
  3938. public short blck_del; /* optional block skip signal */
  3939. public short sngl_blck; /* single block signal */
  3940. public short machn_lock; /* machine lock signal */
  3941. public short dry_run; /* dry run signal */
  3942. public short mem_prtct; /* memory protection signal */
  3943. public short feed_hold; /* automatic operation halt signal */
  3944. public short manual_rpd; /* (not used) */
  3945. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  3946. public short[] dummy; /* (not used) */
  3947. }
  3948. #else
  3949. /* cnc_rdopnlsgnl:read output signal image of software operator's panel */
  3950. /* cnc_wropnlsgnl:write output signal of software operator's panel */
  3951. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3952. public class IODBSGNL
  3953. {
  3954. public short datano; /* dummy */
  3955. public short type; /* data select flag */
  3956. public short mode; /* mode signal */
  3957. public short hndl_ax; /* Manual handle feed axis selection signal */
  3958. public short hndl_mv; /* Manual handle feed travel distance selection signal */
  3959. public short rpd_ovrd; /* rapid traverse override signal */
  3960. public short jog_ovrd; /* manual feedrate override signal */
  3961. public short feed_ovrd; /* feedrate override signal */
  3962. public short spdl_ovrd; /* (not used) */
  3963. public short blck_del; /* optional block skip signal */
  3964. public short sngl_blck; /* single block signal */
  3965. public short machn_lock; /* machine lock signal */
  3966. public short dry_run; /* dry run signal */
  3967. public short mem_prtct; /* memory protection signal */
  3968. public short feed_hold; /* automatic operation halt signal */
  3969. }
  3970. #endif
  3971. /* cnc_rdopnlgnrl:read general signal image of software operator's panel */
  3972. /* cnc_wropnlgnrl:write general signal image of software operator's panel */
  3973. [StructLayout(LayoutKind.Sequential,Pack=4)]
  3974. public class IODBGNRL
  3975. {
  3976. public short datano; /* dummy */
  3977. public short type; /* data select flag */
  3978. public byte sgnal; /* general signal */
  3979. }
  3980. /* cnc_rdopnlgsname:read general signal name of software operator's panel */
  3981. /* cnc_wropnlgsname:write general signal name of software operator's panel*/
  3982. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  3983. public class IODBRDNA
  3984. {
  3985. public short datano; /* dummy */
  3986. public short type; /* data select flag */
  3987. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=9)]
  3988. public string sgnl1_name= new string(' ',9) ; /* general signal 1 name */
  3989. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=9)]
  3990. public string sgnl2_name= new string(' ',9) ; /* general signal 2 name */
  3991. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=9)]
  3992. public string sgnl3_name= new string(' ',9) ; /* general signal 3 name */
  3993. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=9)]
  3994. public string sgnl4_name= new string(' ',9) ; /* general signal 4 name */
  3995. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=9)]
  3996. public string sgnl5_name= new string(' ',9) ; /* general signal 5 name */
  3997. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=9)]
  3998. public string sgnl6_name= new string(' ',9) ; /* general signal 6 name */
  3999. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=9)]
  4000. public string sgnl7_name= new string(' ',9) ; /* general signal 7 name */
  4001. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=9)]
  4002. public string sgnl8_name= new string(' ',9) ; /* general signal 8 name */
  4003. }
  4004. /* cnc_getdtailerr:get detail error */
  4005. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4006. public class ODBERR
  4007. {
  4008. public short err_no ;
  4009. public short err_dtno ;
  4010. }
  4011. /* cnc_rdparainfo:read informations of CNC parameter */
  4012. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4013. public class ODBPARAIF_info
  4014. {
  4015. public short prm_no ;
  4016. public short prm_type ;
  4017. }
  4018. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4019. public class ODBPARAIF1
  4020. {
  4021. public ODBPARAIF_info info1 = new ODBPARAIF_info();
  4022. public ODBPARAIF_info info2 = new ODBPARAIF_info();
  4023. public ODBPARAIF_info info3 = new ODBPARAIF_info();
  4024. public ODBPARAIF_info info4 = new ODBPARAIF_info();
  4025. public ODBPARAIF_info info5 = new ODBPARAIF_info();
  4026. public ODBPARAIF_info info6 = new ODBPARAIF_info();
  4027. public ODBPARAIF_info info7 = new ODBPARAIF_info();
  4028. public ODBPARAIF_info info8 = new ODBPARAIF_info();
  4029. public ODBPARAIF_info info9 = new ODBPARAIF_info();
  4030. public ODBPARAIF_info info10= new ODBPARAIF_info();
  4031. } /* In case that the number of data is 10 */
  4032. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4033. public class ODBPARAIF
  4034. {
  4035. public ushort info_no ;
  4036. public short prev_no ;
  4037. public short next_no ;
  4038. public ODBPARAIF1 info = new ODBPARAIF1();
  4039. }
  4040. /* cnc_rdsetinfo:read informations of CNC setting data */
  4041. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4042. public class ODBSETIF_info
  4043. {
  4044. public short set_no ;
  4045. public short set_type ;
  4046. }
  4047. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4048. public class ODBSETIF1
  4049. {
  4050. public ODBSETIF_info info1 = new ODBSETIF_info();
  4051. public ODBSETIF_info info2 = new ODBSETIF_info();
  4052. public ODBSETIF_info info3 = new ODBSETIF_info();
  4053. public ODBSETIF_info info4 = new ODBSETIF_info();
  4054. public ODBSETIF_info info5 = new ODBSETIF_info();
  4055. public ODBSETIF_info info6 = new ODBSETIF_info();
  4056. public ODBSETIF_info info7 = new ODBSETIF_info();
  4057. public ODBSETIF_info info8 = new ODBSETIF_info();
  4058. public ODBSETIF_info info9 = new ODBSETIF_info();
  4059. public ODBSETIF_info info10= new ODBSETIF_info();
  4060. } /* In case that the number of data is 10 */
  4061. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4062. public class ODBSETIF
  4063. {
  4064. public ushort info_no ;
  4065. public short prev_no ;
  4066. public short next_no ;
  4067. public ODBSETIF1 info = new ODBSETIF1();
  4068. }
  4069. /* cnc_rddiaginfo:read informations of CNC diagnose data */
  4070. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4071. public class ODBDIAGIF_info
  4072. {
  4073. public short diag_no ;
  4074. public short diag_type ;
  4075. }
  4076. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4077. public class ODBDIAGIF1
  4078. {
  4079. public ODBDIAGIF_info info1 = new ODBDIAGIF_info();
  4080. public ODBDIAGIF_info info2 = new ODBDIAGIF_info();
  4081. public ODBDIAGIF_info info3 = new ODBDIAGIF_info();
  4082. public ODBDIAGIF_info info4 = new ODBDIAGIF_info();
  4083. public ODBDIAGIF_info info5 = new ODBDIAGIF_info();
  4084. public ODBDIAGIF_info info6 = new ODBDIAGIF_info();
  4085. public ODBDIAGIF_info info7 = new ODBDIAGIF_info();
  4086. public ODBDIAGIF_info info8 = new ODBDIAGIF_info();
  4087. public ODBDIAGIF_info info9 = new ODBDIAGIF_info();
  4088. public ODBDIAGIF_info info10= new ODBDIAGIF_info();
  4089. } /* In case that the number of data is 10 */
  4090. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4091. public class ODBDIAGIF
  4092. {
  4093. public ushort info_no ;
  4094. public short prev_no ;
  4095. public short next_no ;
  4096. public ODBDIAGIF1 info = new ODBDIAGIF1();
  4097. }
  4098. /* cnc_rdparanum:read maximum, minimum and total number of CNC parameter */
  4099. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4100. public class ODBPARANUM
  4101. {
  4102. public ushort para_min ;
  4103. public ushort para_max ;
  4104. public ushort total_no ;
  4105. }
  4106. /* cnc_rdsetnum:read maximum, minimum and total number of CNC setting data */
  4107. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4108. public class ODBSETNUM
  4109. {
  4110. public ushort set_min ;
  4111. public ushort set_max ;
  4112. public ushort total_no ;
  4113. }
  4114. /* cnc_rddiagnum:read maximum, minimum and total number of CNC diagnose data */
  4115. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4116. public class ODBDIAGNUM
  4117. {
  4118. public ushort diag_min ;
  4119. public ushort diag_max ;
  4120. public ushort total_no ;
  4121. }
  4122. /* cnc_rdfrominfo:read F-ROM information on CNC */
  4123. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4124. public class ODBFINFO_info
  4125. {
  4126. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  4127. public string sysname= new string(' ',12) ; /* F-ROM SYSTEM data Name */
  4128. public int fromsize; /* F-ROM Size */
  4129. }
  4130. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4131. public class ODBFINFO1
  4132. {
  4133. public ODBFINFO_info info1 = new ODBFINFO_info();
  4134. public ODBFINFO_info info2 = new ODBFINFO_info();
  4135. public ODBFINFO_info info3 = new ODBFINFO_info();
  4136. public ODBFINFO_info info4 = new ODBFINFO_info();
  4137. public ODBFINFO_info info5 = new ODBFINFO_info();
  4138. public ODBFINFO_info info6 = new ODBFINFO_info();
  4139. public ODBFINFO_info info7 = new ODBFINFO_info();
  4140. public ODBFINFO_info info8 = new ODBFINFO_info();
  4141. public ODBFINFO_info info9 = new ODBFINFO_info();
  4142. public ODBFINFO_info info10= new ODBFINFO_info();
  4143. public ODBFINFO_info info11= new ODBFINFO_info();
  4144. public ODBFINFO_info info12= new ODBFINFO_info();
  4145. public ODBFINFO_info info13= new ODBFINFO_info();
  4146. public ODBFINFO_info info14= new ODBFINFO_info();
  4147. public ODBFINFO_info info15= new ODBFINFO_info();
  4148. public ODBFINFO_info info16= new ODBFINFO_info();
  4149. public ODBFINFO_info info17= new ODBFINFO_info();
  4150. public ODBFINFO_info info18= new ODBFINFO_info();
  4151. public ODBFINFO_info info19= new ODBFINFO_info();
  4152. public ODBFINFO_info info20= new ODBFINFO_info();
  4153. public ODBFINFO_info info21= new ODBFINFO_info();
  4154. public ODBFINFO_info info22= new ODBFINFO_info();
  4155. public ODBFINFO_info info23= new ODBFINFO_info();
  4156. public ODBFINFO_info info24= new ODBFINFO_info();
  4157. public ODBFINFO_info info25= new ODBFINFO_info();
  4158. public ODBFINFO_info info26= new ODBFINFO_info();
  4159. public ODBFINFO_info info27= new ODBFINFO_info();
  4160. public ODBFINFO_info info28= new ODBFINFO_info();
  4161. public ODBFINFO_info info29= new ODBFINFO_info();
  4162. public ODBFINFO_info info30= new ODBFINFO_info();
  4163. public ODBFINFO_info info31= new ODBFINFO_info();
  4164. public ODBFINFO_info info32= new ODBFINFO_info();
  4165. }
  4166. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4167. public class ODBFINFO
  4168. {
  4169. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  4170. public string slotname= new string(' ',12) ; /* Slot Name */
  4171. public int fromnum; /* Number of F-ROM SYSTEM data */
  4172. public ODBFINFO1 info = new ODBFINFO1();
  4173. }
  4174. /* cnc_getfrominfo:read F-ROM information on CNC */
  4175. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4176. public class ODBFINFORM_info
  4177. {
  4178. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  4179. public string sysname= new string(' ',12) ; /* F-ROM SYSTEM data Name */
  4180. public int fromsize; /* F-ROM Size */
  4181. public int fromattrib; /* F-ROM data attribute */
  4182. }
  4183. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4184. public class ODBFINFORM1
  4185. {
  4186. public ODBFINFORM_info info1 = new ODBFINFORM_info();
  4187. public ODBFINFORM_info info2 = new ODBFINFORM_info();
  4188. public ODBFINFORM_info info3 = new ODBFINFORM_info();
  4189. public ODBFINFORM_info info4 = new ODBFINFORM_info();
  4190. public ODBFINFORM_info info5 = new ODBFINFORM_info();
  4191. public ODBFINFORM_info info6 = new ODBFINFORM_info();
  4192. public ODBFINFORM_info info7 = new ODBFINFORM_info();
  4193. public ODBFINFORM_info info8 = new ODBFINFORM_info();
  4194. public ODBFINFORM_info info9 = new ODBFINFORM_info();
  4195. public ODBFINFORM_info info10= new ODBFINFORM_info();
  4196. public ODBFINFORM_info info11= new ODBFINFORM_info();
  4197. public ODBFINFORM_info info12= new ODBFINFORM_info();
  4198. public ODBFINFORM_info info13= new ODBFINFORM_info();
  4199. public ODBFINFORM_info info14= new ODBFINFORM_info();
  4200. public ODBFINFORM_info info15= new ODBFINFORM_info();
  4201. public ODBFINFORM_info info16= new ODBFINFORM_info();
  4202. public ODBFINFORM_info info17= new ODBFINFORM_info();
  4203. public ODBFINFORM_info info18= new ODBFINFORM_info();
  4204. public ODBFINFORM_info info19= new ODBFINFORM_info();
  4205. public ODBFINFORM_info info20= new ODBFINFORM_info();
  4206. public ODBFINFORM_info info21= new ODBFINFORM_info();
  4207. public ODBFINFORM_info info22= new ODBFINFORM_info();
  4208. public ODBFINFORM_info info23= new ODBFINFORM_info();
  4209. public ODBFINFORM_info info24= new ODBFINFORM_info();
  4210. public ODBFINFORM_info info25= new ODBFINFORM_info();
  4211. public ODBFINFORM_info info26= new ODBFINFORM_info();
  4212. public ODBFINFORM_info info27= new ODBFINFORM_info();
  4213. public ODBFINFORM_info info28= new ODBFINFORM_info();
  4214. public ODBFINFORM_info info29= new ODBFINFORM_info();
  4215. public ODBFINFORM_info info30= new ODBFINFORM_info();
  4216. public ODBFINFORM_info info31= new ODBFINFORM_info();
  4217. public ODBFINFORM_info info32= new ODBFINFORM_info();
  4218. }
  4219. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4220. public class ODBFINFORM
  4221. {
  4222. public int slotno; /* Slot Number */
  4223. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  4224. public string slotname= new string(' ',12) ; /* Slot Name */
  4225. public int fromnum; /* Number of F-ROM SYSTEM data */
  4226. public ODBFINFORM1 info = new ODBFINFORM1();
  4227. }
  4228. /* cnc_rdsraminfo:read S-RAM information on CNC */
  4229. /* cnc_getsraminfo:read S-RAM information on CNC */
  4230. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4231. public class ODBSINFO_info
  4232. {
  4233. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  4234. public string sramname= new string(' ',12) ; /* S-RAM data Name */
  4235. public int sramsize; /* S-RAM data Size */
  4236. public short divnumber; /* Division number of S-RAM file */
  4237. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4238. public string fname1= new string(' ',16) ; /* S-RAM data Name1 */
  4239. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4240. public string fname2= new string(' ',16) ; /* S-RAM data Name2 */
  4241. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4242. public string fname3= new string(' ',16) ; /* S-RAM data Name3 */
  4243. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4244. public string fname4= new string(' ',16) ; /* S-RAM data Name4 */
  4245. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4246. public string fname5= new string(' ',16) ; /* S-RAM data Name5 */
  4247. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4248. public string fname6= new string(' ',16) ; /* S-RAM data Name6 */
  4249. }
  4250. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4251. public class ODBSINFO1
  4252. {
  4253. public ODBSINFO_info info1 = new ODBSINFO_info();
  4254. public ODBSINFO_info info2 = new ODBSINFO_info();
  4255. public ODBSINFO_info info3 = new ODBSINFO_info();
  4256. public ODBSINFO_info info4 = new ODBSINFO_info();
  4257. public ODBSINFO_info info5 = new ODBSINFO_info();
  4258. public ODBSINFO_info info6 = new ODBSINFO_info();
  4259. public ODBSINFO_info info7 = new ODBSINFO_info();
  4260. public ODBSINFO_info info8 = new ODBSINFO_info();
  4261. }
  4262. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4263. public class ODBSINFO
  4264. {
  4265. public int sramnum; /* Number of S-RAM data */
  4266. public ODBSINFO1 info = new ODBSINFO1();
  4267. }
  4268. /* cnc_rdsramaddr:read S-RAM address on CNC */
  4269. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4270. public class SRAMADDR
  4271. {
  4272. public short type ; /* SRAM data type */
  4273. public int size ; /* SRAM data size */
  4274. public int offset ; /* offset from top address of SRAM */
  4275. }
  4276. /* cnc_dtsvrdpgdir:read file directory in Data Server */
  4277. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4278. public class ODBDSDIR_data
  4279. {
  4280. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4281. public string file_name= new string(' ',16) ;
  4282. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=64)]
  4283. public string comment= new string(' ',64) ;
  4284. public int size;
  4285. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4286. public string date= new string(' ',16) ;
  4287. }
  4288. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4289. public class ODBDSDIR1
  4290. {
  4291. public ODBDSDIR_data data1 = new ODBDSDIR_data();
  4292. public ODBDSDIR_data data2 = new ODBDSDIR_data();
  4293. public ODBDSDIR_data data3 = new ODBDSDIR_data();
  4294. public ODBDSDIR_data data4 = new ODBDSDIR_data();
  4295. public ODBDSDIR_data data5 = new ODBDSDIR_data();
  4296. public ODBDSDIR_data data6 = new ODBDSDIR_data();
  4297. public ODBDSDIR_data data7 = new ODBDSDIR_data();
  4298. public ODBDSDIR_data data8 = new ODBDSDIR_data();
  4299. public ODBDSDIR_data data9 = new ODBDSDIR_data();
  4300. public ODBDSDIR_data data10= new ODBDSDIR_data();
  4301. public ODBDSDIR_data data11= new ODBDSDIR_data();
  4302. public ODBDSDIR_data data12= new ODBDSDIR_data();
  4303. public ODBDSDIR_data data13= new ODBDSDIR_data();
  4304. public ODBDSDIR_data data14= new ODBDSDIR_data();
  4305. public ODBDSDIR_data data15= new ODBDSDIR_data();
  4306. public ODBDSDIR_data data16= new ODBDSDIR_data();
  4307. public ODBDSDIR_data data17= new ODBDSDIR_data();
  4308. public ODBDSDIR_data data18= new ODBDSDIR_data();
  4309. public ODBDSDIR_data data19= new ODBDSDIR_data();
  4310. public ODBDSDIR_data data20= new ODBDSDIR_data();
  4311. public ODBDSDIR_data data21= new ODBDSDIR_data();
  4312. public ODBDSDIR_data data22= new ODBDSDIR_data();
  4313. public ODBDSDIR_data data23= new ODBDSDIR_data();
  4314. public ODBDSDIR_data data24= new ODBDSDIR_data();
  4315. public ODBDSDIR_data data25= new ODBDSDIR_data();
  4316. public ODBDSDIR_data data26= new ODBDSDIR_data();
  4317. public ODBDSDIR_data data27= new ODBDSDIR_data();
  4318. public ODBDSDIR_data data28= new ODBDSDIR_data();
  4319. public ODBDSDIR_data data29= new ODBDSDIR_data();
  4320. public ODBDSDIR_data data30= new ODBDSDIR_data();
  4321. public ODBDSDIR_data data31= new ODBDSDIR_data();
  4322. public ODBDSDIR_data data32= new ODBDSDIR_data();
  4323. }
  4324. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4325. public class ODBDSDIR
  4326. {
  4327. public int file_num ;
  4328. public int remainder ;
  4329. public short data_num ;
  4330. public ODBDSDIR1 data = new ODBDSDIR1();
  4331. }
  4332. /* cnc_dtsvrdset:read setting data for Data Server */
  4333. /* cnc_dtsvwrset:write setting data for Data Server */
  4334. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4335. public class IODBDSSET
  4336. {
  4337. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4338. public string host_ip= new string(' ',16) ;
  4339. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  4340. public string host_uname= new string(' ',32) ;
  4341. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  4342. public string host_passwd= new string(' ',32) ;
  4343. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=128)]
  4344. public string host_dir= new string(' ',128) ;
  4345. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=13)]
  4346. public string dtsv_mac= new string(' ',13) ;
  4347. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4348. public string dtsv_ip= new string(' ',16) ;
  4349. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  4350. public string dtsv_mask= new string(' ',16) ;
  4351. }
  4352. /* cnc_dtsvmntinfo:read maintenance information for Data Server */
  4353. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4354. public class ODBDSMNT
  4355. {
  4356. public int empty_cnt ;
  4357. public int total_size ;
  4358. public int read_ptr ;
  4359. public int write_ptr ;
  4360. }
  4361. /* cnc_rdposerrs2:read the position deviation S1 and S2 */
  4362. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4363. public class ODBPSER
  4364. {
  4365. public int poserr1 ;
  4366. public int poserr2 ;
  4367. }
  4368. /* cnc_rdctrldi:read the control input signal */
  4369. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4370. public class ODBSPDI_data
  4371. {
  4372. public byte sgnl1 ;
  4373. public byte sgnl2 ;
  4374. public byte sgnl3 ;
  4375. public byte sgnl4 ;
  4376. }
  4377. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4378. public class ODBSPDI
  4379. {
  4380. public ODBSPDI_data di1 = new ODBSPDI_data();
  4381. public ODBSPDI_data di2 = new ODBSPDI_data();
  4382. public ODBSPDI_data di3 = new ODBSPDI_data();
  4383. public ODBSPDI_data di4 = new ODBSPDI_data();
  4384. }
  4385. /* cnc_rdctrldo:read the control output signal */
  4386. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4387. public class ODBSPDO_data
  4388. {
  4389. public byte sgnl1 ;
  4390. public byte sgnl2 ;
  4391. public byte sgnl3 ;
  4392. public byte sgnl4 ;
  4393. }
  4394. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4395. public class ODBSPDO
  4396. {
  4397. public ODBSPDO_data do1 = new ODBSPDO_data();
  4398. public ODBSPDO_data do2 = new ODBSPDO_data();
  4399. public ODBSPDO_data do3 = new ODBSPDO_data();
  4400. public ODBSPDO_data do4 = new ODBSPDO_data();
  4401. }
  4402. /* cnc_rdwaveprm:read the parameter of wave diagnosis */
  4403. /* cnc_wrwaveprm:write the parameter of wave diagnosis */
  4404. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4405. public class IODBWAVE_io
  4406. {
  4407. public byte adr ;
  4408. public byte bit ;
  4409. public short no ;
  4410. }
  4411. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4412. public class IODBWAVE_axis
  4413. {
  4414. public short axis ;
  4415. }
  4416. [StructLayout(LayoutKind.Explicit)]
  4417. public class IODBWAVE_u
  4418. {
  4419. [ FieldOffset( 0 )]
  4420. public IODBWAVE_io io = new IODBWAVE_io();
  4421. [ FieldOffset( 0 )]
  4422. public IODBWAVE_axis axis = new IODBWAVE_axis();
  4423. }
  4424. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4425. public class IODBWAVE_ch_data
  4426. {
  4427. public short kind ;
  4428. public IODBWAVE_u u = new IODBWAVE_u();
  4429. }
  4430. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4431. public class IODBWAVE_ch
  4432. {
  4433. public IODBWAVE_ch_data ch1 = new IODBWAVE_ch_data();
  4434. public IODBWAVE_ch_data ch2 = new IODBWAVE_ch_data();
  4435. public IODBWAVE_ch_data ch3 = new IODBWAVE_ch_data();
  4436. public IODBWAVE_ch_data ch4 = new IODBWAVE_ch_data();
  4437. public IODBWAVE_ch_data ch5 = new IODBWAVE_ch_data();
  4438. public IODBWAVE_ch_data ch6 = new IODBWAVE_ch_data();
  4439. public IODBWAVE_ch_data ch7 = new IODBWAVE_ch_data();
  4440. public IODBWAVE_ch_data ch8 = new IODBWAVE_ch_data();
  4441. public IODBWAVE_ch_data ch9 = new IODBWAVE_ch_data();
  4442. public IODBWAVE_ch_data ch10= new IODBWAVE_ch_data();
  4443. public IODBWAVE_ch_data ch11= new IODBWAVE_ch_data();
  4444. public IODBWAVE_ch_data ch12= new IODBWAVE_ch_data();
  4445. }
  4446. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4447. public class IODBWAVE
  4448. {
  4449. public short condition ;
  4450. public char trg_adr ;
  4451. public byte trg_bit ;
  4452. public short trg_no ;
  4453. public short delay ;
  4454. public short t_range ;
  4455. public IODBWAVE_ch ch = new IODBWAVE_ch();
  4456. }
  4457. /* cnc_rdwaveprm2:read the parameter of wave diagnosis 2 */
  4458. /* cnc_wrwaveprm2:write the parameter of wave diagnosis 2 */
  4459. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4460. public class IODBWVPRM_io
  4461. {
  4462. public byte adr ;
  4463. public byte bit ;
  4464. public short no ;
  4465. }
  4466. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4467. public class IODBWVPRM_axis
  4468. {
  4469. public short axis ;
  4470. }
  4471. [StructLayout(LayoutKind.Explicit)]
  4472. public class IODBWVPRM_u
  4473. {
  4474. [ FieldOffset( 0 )]
  4475. public IODBWVPRM_io io = new IODBWVPRM_io();
  4476. [ FieldOffset( 0 )]
  4477. public IODBWVPRM_axis axis = new IODBWVPRM_axis();
  4478. }
  4479. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4480. public class IODBWVPRM_ch_data
  4481. {
  4482. public short kind ;
  4483. public IODBWVPRM_u u = new IODBWVPRM_u();
  4484. public int reserve2 ;
  4485. }
  4486. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4487. public class IODBWVPRM_ch
  4488. {
  4489. public IODBWVPRM_ch_data ch1 = new IODBWVPRM_ch_data();
  4490. public IODBWVPRM_ch_data ch2 = new IODBWVPRM_ch_data();
  4491. public IODBWVPRM_ch_data ch3 = new IODBWVPRM_ch_data();
  4492. public IODBWVPRM_ch_data ch4 = new IODBWVPRM_ch_data();
  4493. public IODBWVPRM_ch_data ch5 = new IODBWVPRM_ch_data();
  4494. public IODBWVPRM_ch_data ch6 = new IODBWVPRM_ch_data();
  4495. public IODBWVPRM_ch_data ch7 = new IODBWVPRM_ch_data();
  4496. public IODBWVPRM_ch_data ch8 = new IODBWVPRM_ch_data();
  4497. public IODBWVPRM_ch_data ch9 = new IODBWVPRM_ch_data();
  4498. public IODBWVPRM_ch_data ch10= new IODBWVPRM_ch_data();
  4499. public IODBWVPRM_ch_data ch11= new IODBWVPRM_ch_data();
  4500. public IODBWVPRM_ch_data ch12= new IODBWVPRM_ch_data();
  4501. }
  4502. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4503. public class IODBWVPRM
  4504. {
  4505. public short condition ;
  4506. public byte trg_adr ;
  4507. public byte trg_bit ;
  4508. public short trg_no ;
  4509. public short reserve1 ;
  4510. public int delay ;
  4511. public int t_range ;
  4512. public IODBWVPRM_ch ch = new IODBWVPRM_ch();
  4513. }
  4514. /* cnc_rdwavedata:read the data of wave diagnosis */
  4515. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4516. public class ODBWVDT_io
  4517. {
  4518. public byte adr ;
  4519. public byte bit ;
  4520. public short no ;
  4521. }
  4522. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4523. public class ODBWVDT_axis
  4524. {
  4525. public short axis ;
  4526. }
  4527. [StructLayout(LayoutKind.Explicit)]
  4528. public class ODBWVDT_u
  4529. {
  4530. [ FieldOffset( 0 )]
  4531. public ODBWVDT_io io = new ODBWVDT_io();
  4532. [ FieldOffset( 0 )]
  4533. public ODBWVDT_axis axis = new ODBWVDT_axis();
  4534. }
  4535. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4536. public class ODBWVDT
  4537. {
  4538. public short channel ;
  4539. public short kind ;
  4540. public ODBWVDT_u u = new ODBWVDT_u();
  4541. public byte year ;
  4542. public byte month ;
  4543. public byte day ;
  4544. public byte hour ;
  4545. public byte minute ;
  4546. public byte second ;
  4547. public short t_cycle ;
  4548. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8192)]
  4549. public short[] data ;
  4550. }
  4551. /* cnc_rdrmtwaveprm:read the parameter of wave diagnosis for remort diagnosis */
  4552. /* cnc_wrrmtwaveprm:write the parameter of wave diagnosis for remort diagnosis */
  4553. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4554. public class IODBRMTPRM_alm
  4555. {
  4556. public short no ;
  4557. public sbyte axis ;
  4558. public byte type ;
  4559. }
  4560. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4561. public class IODBRMTPRM_io
  4562. {
  4563. public char adr ;
  4564. public byte bit ;
  4565. public short no ;
  4566. }
  4567. [StructLayout(LayoutKind.Explicit)]
  4568. public class IODBRMTPRM_trg
  4569. {
  4570. [ FieldOffset( 0 )]
  4571. public IODBRMTPRM_alm alm = new IODBRMTPRM_alm();
  4572. [ FieldOffset( 0 )]
  4573. public IODBRMTPRM_io io = new IODBRMTPRM_io();
  4574. }
  4575. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4576. public class IODBRMTPRM_smpl
  4577. {
  4578. public char adr ;
  4579. public byte bit ;
  4580. public short no ;
  4581. }
  4582. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4583. public class IODBRMTPRM1
  4584. {
  4585. public IODBRMTPRM_smpl ampl1 = new IODBRMTPRM_smpl();
  4586. public IODBRMTPRM_smpl ampl2 = new IODBRMTPRM_smpl();
  4587. public IODBRMTPRM_smpl ampl3 = new IODBRMTPRM_smpl();
  4588. public IODBRMTPRM_smpl ampl4 = new IODBRMTPRM_smpl();
  4589. public IODBRMTPRM_smpl ampl5 = new IODBRMTPRM_smpl();
  4590. public IODBRMTPRM_smpl ampl6 = new IODBRMTPRM_smpl();
  4591. public IODBRMTPRM_smpl ampl7 = new IODBRMTPRM_smpl();
  4592. public IODBRMTPRM_smpl ampl8 = new IODBRMTPRM_smpl();
  4593. public IODBRMTPRM_smpl ampl9 = new IODBRMTPRM_smpl();
  4594. public IODBRMTPRM_smpl ampl10= new IODBRMTPRM_smpl();
  4595. public IODBRMTPRM_smpl ampl11= new IODBRMTPRM_smpl();
  4596. public IODBRMTPRM_smpl ampl12= new IODBRMTPRM_smpl();
  4597. public IODBRMTPRM_smpl ampl13= new IODBRMTPRM_smpl();
  4598. public IODBRMTPRM_smpl ampl14= new IODBRMTPRM_smpl();
  4599. public IODBRMTPRM_smpl ampl15= new IODBRMTPRM_smpl();
  4600. public IODBRMTPRM_smpl ampl16= new IODBRMTPRM_smpl();
  4601. public IODBRMTPRM_smpl ampl17= new IODBRMTPRM_smpl();
  4602. public IODBRMTPRM_smpl ampl18= new IODBRMTPRM_smpl();
  4603. public IODBRMTPRM_smpl ampl19= new IODBRMTPRM_smpl();
  4604. public IODBRMTPRM_smpl ampl20= new IODBRMTPRM_smpl();
  4605. public IODBRMTPRM_smpl ampl21= new IODBRMTPRM_smpl();
  4606. public IODBRMTPRM_smpl ampl22= new IODBRMTPRM_smpl();
  4607. public IODBRMTPRM_smpl ampl23= new IODBRMTPRM_smpl();
  4608. public IODBRMTPRM_smpl ampl24= new IODBRMTPRM_smpl();
  4609. public IODBRMTPRM_smpl ampl25= new IODBRMTPRM_smpl();
  4610. public IODBRMTPRM_smpl ampl26= new IODBRMTPRM_smpl();
  4611. public IODBRMTPRM_smpl ampl27= new IODBRMTPRM_smpl();
  4612. public IODBRMTPRM_smpl ampl28= new IODBRMTPRM_smpl();
  4613. public IODBRMTPRM_smpl ampl29= new IODBRMTPRM_smpl();
  4614. public IODBRMTPRM_smpl ampl30= new IODBRMTPRM_smpl();
  4615. public IODBRMTPRM_smpl ampl31= new IODBRMTPRM_smpl();
  4616. public IODBRMTPRM_smpl ampl32= new IODBRMTPRM_smpl();
  4617. }
  4618. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4619. public class IODBRMTPRM
  4620. {
  4621. public short condition ;
  4622. public short reserve ;
  4623. public IODBRMTPRM_trg trg = new IODBRMTPRM_trg();
  4624. public int delay ;
  4625. public short wv_intrvl ;
  4626. public short io_intrvl ;
  4627. public short kind1 ;
  4628. public short kind2 ;
  4629. public IODBRMTPRM1 ampl= new IODBRMTPRM1();
  4630. }
  4631. /* cnc_rdrmtwavedt:read the data of wave diagnosis for remort diagnosis */
  4632. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4633. public class ODBRMTDT
  4634. {
  4635. public short channel ;
  4636. public short kind ;
  4637. public byte year ;
  4638. public byte month ;
  4639. public byte day ;
  4640. public byte hour ;
  4641. public byte minute ;
  4642. public byte second ;
  4643. public short t_intrvl ;
  4644. public short trg_data;
  4645. public int ins_ptr;
  4646. public short t_delta;
  4647. [MarshalAs(UnmanagedType.ByValArray,SizeConst=1917)]
  4648. public short[] data;
  4649. }
  4650. /* cnc_rdsavsigadr:read of address for PMC signal batch save */
  4651. /* cnc_wrsavsigadr:write of address for PMC signal batch save */
  4652. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4653. public class IODBSIGAD
  4654. {
  4655. public byte adr ;
  4656. public byte reserve ;
  4657. public short no ;
  4658. public short size ;
  4659. }
  4660. /* cnc_rdmgrpdata:read M-code group data */
  4661. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4662. public class ODBMGRP_data
  4663. {
  4664. public int m_code ;
  4665. public short grp_no ;
  4666. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=21)]
  4667. public string m_name= new string(' ',21) ;
  4668. public byte dummy ;
  4669. }
  4670. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4671. public class ODBMGRP
  4672. {
  4673. public ODBMGRP_data mgrp1 = new ODBMGRP_data();
  4674. public ODBMGRP_data mgrp2 = new ODBMGRP_data();
  4675. public ODBMGRP_data mgrp3 = new ODBMGRP_data();
  4676. public ODBMGRP_data mgrp4 = new ODBMGRP_data();
  4677. public ODBMGRP_data mgrp5 = new ODBMGRP_data();
  4678. public ODBMGRP_data mgrp6 = new ODBMGRP_data();
  4679. public ODBMGRP_data mgrp7 = new ODBMGRP_data();
  4680. public ODBMGRP_data mgrp8 = new ODBMGRP_data();
  4681. public ODBMGRP_data mgrp9 = new ODBMGRP_data();
  4682. public ODBMGRP_data mgrp10= new ODBMGRP_data();
  4683. }
  4684. /* cnc_wrmgrpdata:write M-code group data */
  4685. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4686. public class IDBMGRP
  4687. {
  4688. public short s_no ;
  4689. public short dummy ;
  4690. public short num ;
  4691. [MarshalAs(UnmanagedType.ByValArray,SizeConst=500)]
  4692. public short[] group = new short[500];
  4693. }
  4694. /* cnc_rdexecmcode:read executing M-code group data */
  4695. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4696. public class ODBEXEM_data
  4697. {
  4698. public int no;
  4699. public short flag;
  4700. }
  4701. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4702. public class ODBEXEM1
  4703. {
  4704. public ODBEXEM_data m_code1 = new ODBEXEM_data();
  4705. public ODBEXEM_data m_code2 = new ODBEXEM_data();
  4706. public ODBEXEM_data m_code3 = new ODBEXEM_data();
  4707. public ODBEXEM_data m_code4 = new ODBEXEM_data();
  4708. public ODBEXEM_data m_code5 = new ODBEXEM_data();
  4709. }
  4710. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4711. public class ODBEXEM
  4712. {
  4713. public short grp_no;
  4714. public short mem_no;
  4715. public ODBEXEM1 m_code = new ODBEXEM1();
  4716. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=21)]
  4717. public string m_name= new string(' ',21) ;
  4718. public byte dummy;
  4719. }
  4720. /* cnc_rdrstrmcode:read program restart M-code group data */
  4721. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4722. public class M_CODE_data
  4723. {
  4724. public int no;
  4725. public short flag;
  4726. }
  4727. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4728. public class M_CODE1
  4729. {
  4730. public M_CODE_data m_code1 = new M_CODE_data();
  4731. public M_CODE_data m_code2 = new M_CODE_data();
  4732. public M_CODE_data m_code3 = new M_CODE_data();
  4733. public M_CODE_data m_code4 = new M_CODE_data();
  4734. public M_CODE_data m_code5 = new M_CODE_data();
  4735. }
  4736. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4737. public class ODBRSTRM
  4738. {
  4739. public short grp_no;
  4740. public short mem_no;
  4741. public M_CODE1 m_code = new M_CODE1();
  4742. }
  4743. /* cnc_rdproctime:read processing time stamp data */
  4744. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4745. public class ODBPTIME_data
  4746. {
  4747. public int prg_no;
  4748. public short hour;
  4749. public byte minute;
  4750. public byte second;
  4751. }
  4752. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4753. public class ODBPTIME1
  4754. {
  4755. public ODBPTIME_data data1 = new ODBPTIME_data();
  4756. public ODBPTIME_data data2 = new ODBPTIME_data();
  4757. public ODBPTIME_data data3 = new ODBPTIME_data();
  4758. public ODBPTIME_data data4 = new ODBPTIME_data();
  4759. public ODBPTIME_data data5 = new ODBPTIME_data();
  4760. public ODBPTIME_data data6 = new ODBPTIME_data();
  4761. public ODBPTIME_data data7 = new ODBPTIME_data();
  4762. public ODBPTIME_data data8 = new ODBPTIME_data();
  4763. public ODBPTIME_data data9 = new ODBPTIME_data();
  4764. public ODBPTIME_data data10= new ODBPTIME_data();
  4765. } /* In case that the number of data is 10 */
  4766. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4767. public class ODBPTIME
  4768. {
  4769. public short num;
  4770. public ODBPTIME1 data = new ODBPTIME1();
  4771. }
  4772. /* cnc_rdprgdirtime:read program directory for processing time data */
  4773. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4774. public class PRGDIRTM_data
  4775. {
  4776. public int prg_no;
  4777. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=51)]
  4778. public string comment= new string(' ',51) ;
  4779. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=13)]
  4780. public string cuttime= new string(' ',13) ;
  4781. }
  4782. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4783. public class PRGDIRTM
  4784. {
  4785. public PRGDIRTM_data data1 = new PRGDIRTM_data();
  4786. public PRGDIRTM_data data2 = new PRGDIRTM_data();
  4787. public PRGDIRTM_data data3 = new PRGDIRTM_data();
  4788. public PRGDIRTM_data data4 = new PRGDIRTM_data();
  4789. public PRGDIRTM_data data5 = new PRGDIRTM_data();
  4790. public PRGDIRTM_data data6 = new PRGDIRTM_data();
  4791. public PRGDIRTM_data data7 = new PRGDIRTM_data();
  4792. public PRGDIRTM_data data8 = new PRGDIRTM_data();
  4793. public PRGDIRTM_data data9 = new PRGDIRTM_data();
  4794. public PRGDIRTM_data data10= new PRGDIRTM_data();
  4795. } /* In case that the number of data is 10 */
  4796. /* cnc_rdprogdir2:read program directory 2 */
  4797. #if (!ONO8D)
  4798. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4799. public class PRGDIR2_data
  4800. {
  4801. public short number ;
  4802. public int length ;
  4803. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=51)]
  4804. public string comment= new string(' ',51) ;
  4805. public byte dummy ;
  4806. }
  4807. #else
  4808. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4809. public class PRGDIR2_data
  4810. {
  4811. public int number ;
  4812. public int length ;
  4813. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=51)]
  4814. public string comment= new string(' ',51) ;
  4815. public byte dummy ;
  4816. }
  4817. #endif
  4818. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4819. public class PRGDIR2
  4820. {
  4821. public PRGDIR2_data dir1 = new PRGDIR2_data();
  4822. public PRGDIR2_data dir2 = new PRGDIR2_data();
  4823. public PRGDIR2_data dir3 = new PRGDIR2_data();
  4824. public PRGDIR2_data dir4 = new PRGDIR2_data();
  4825. public PRGDIR2_data dir5 = new PRGDIR2_data();
  4826. public PRGDIR2_data dir6 = new PRGDIR2_data();
  4827. public PRGDIR2_data dir7 = new PRGDIR2_data();
  4828. public PRGDIR2_data dir8 = new PRGDIR2_data();
  4829. public PRGDIR2_data dir9 = new PRGDIR2_data();
  4830. public PRGDIR2_data dir10= new PRGDIR2_data();
  4831. } /* In case that the number of data is 10 */
  4832. /* cnc_rdprogdir3:read program directory 3 */
  4833. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4834. public class DIR3_MDATE
  4835. {
  4836. public short year;
  4837. public short month;
  4838. public short day;
  4839. public short hour;
  4840. public short minute;
  4841. public short dummy;
  4842. }
  4843. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4844. public class DIR3_CDATE
  4845. {
  4846. public short year;
  4847. public short month;
  4848. public short day;
  4849. public short hour;
  4850. public short minute;
  4851. public short dummy;
  4852. }
  4853. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4854. public class PRGDIR3_data
  4855. {
  4856. public int number ;
  4857. public int length ;
  4858. public int page ;
  4859. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=52)]
  4860. public string comment= new string(' ',52) ;
  4861. public DIR3_MDATE mdate = new DIR3_MDATE();
  4862. public DIR3_CDATE cdate = new DIR3_CDATE();
  4863. }
  4864. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4865. public class PRGDIR3
  4866. {
  4867. public PRGDIR3_data dir1 = new PRGDIR3_data();
  4868. public PRGDIR3_data dir2 = new PRGDIR3_data();
  4869. public PRGDIR3_data dir3 = new PRGDIR3_data();
  4870. public PRGDIR3_data dir4 = new PRGDIR3_data();
  4871. public PRGDIR3_data dir5 = new PRGDIR3_data();
  4872. public PRGDIR3_data dir6 = new PRGDIR3_data();
  4873. public PRGDIR3_data dir7 = new PRGDIR3_data();
  4874. public PRGDIR3_data dir8 = new PRGDIR3_data();
  4875. public PRGDIR3_data dir9 = new PRGDIR3_data();
  4876. public PRGDIR3_data dir10= new PRGDIR3_data();
  4877. } /* In case that the number of data is 10 */
  4878. /* cnc_rdprogdir4:read program directory 4 */
  4879. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4880. public class DIR4_MDATE
  4881. {
  4882. public short year;
  4883. public short month;
  4884. public short day;
  4885. public short hour;
  4886. public short minute;
  4887. public short dummy;
  4888. }
  4889. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4890. public class DIR4_CDATE
  4891. {
  4892. public short year;
  4893. public short month;
  4894. public short day;
  4895. public short hour;
  4896. public short minute;
  4897. public short dummy;
  4898. }
  4899. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4900. public class PRGDIR4_data
  4901. {
  4902. public int number ;
  4903. public int length ;
  4904. public int page ;
  4905. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=52)]
  4906. public string comment= new string(' ',52) ;
  4907. public DIR4_MDATE mdate = new DIR4_MDATE();
  4908. public DIR4_CDATE cdate = new DIR4_CDATE();
  4909. }
  4910. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4911. public class PRGDIR4
  4912. {
  4913. public PRGDIR4_data dir1 = new PRGDIR4_data();
  4914. public PRGDIR4_data dir2 = new PRGDIR4_data();
  4915. public PRGDIR4_data dir3 = new PRGDIR4_data();
  4916. public PRGDIR4_data dir4 = new PRGDIR4_data();
  4917. public PRGDIR4_data dir5 = new PRGDIR4_data();
  4918. public PRGDIR4_data dir6 = new PRGDIR4_data();
  4919. public PRGDIR4_data dir7 = new PRGDIR4_data();
  4920. public PRGDIR4_data dir8 = new PRGDIR4_data();
  4921. public PRGDIR4_data dir9 = new PRGDIR4_data();
  4922. public PRGDIR4_data dir10= new PRGDIR4_data();
  4923. } /* In case that the number of data is 10 */
  4924. /* cnc_rdcomparam:read communication parameter for DNC1, DNC2, OSI-Ethernet */
  4925. /* cnc_wrcomparam:write communication parameter for DNC1, DNC2, OSI-Ethernet */
  4926. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4927. public class IODBCPRM
  4928. {
  4929. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=65)]
  4930. public string NcApli= new string(' ',65) ;
  4931. public byte Dummy1 ;
  4932. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=65)]
  4933. public string HostApli= new string(' ',65) ;
  4934. public byte Dummy2 ;
  4935. public uint StatPstv ;
  4936. public uint StatNgtv ;
  4937. public uint Statmask ;
  4938. public uint AlarmStat ;
  4939. public uint PsclHaddr ;
  4940. public uint PsclLaddr ;
  4941. public ushort SvcMode1 ;
  4942. public ushort SvcMode2 ;
  4943. public int FileTout ;
  4944. public int RemTout ;
  4945. }
  4946. /* cnc_rdintchk:read interference check */
  4947. /* cnc_wrintchk:write interference check */
  4948. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4949. public class IODBINT
  4950. {
  4951. public short datano_s; /* start offset No. */
  4952. public short type; /* kind of position */
  4953. public short datano_e; /* end offset No. */
  4954. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8*3)]
  4955. public int[] data = new int[8*3]; /* position value of area for not attach */
  4956. }
  4957. /* cnc_rdwkcdshft:read work coordinate shift */
  4958. /* cnc_wrwkcdshft:write work coordinate shift */
  4959. /* cnc_rdwkcdsfms:read work coordinate shift measure */
  4960. /* cnc_wrwkcdsfms:write work coordinate shift measure */
  4961. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4962. public class IODBWCSF
  4963. {
  4964. public short datano; /* datano */
  4965. public short type; /* axis number */
  4966. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  4967. public int[] data = new int[MAX_AXIS]; /* data */
  4968. }
  4969. /* cnc_rdomhisinfo:read operator message history information */
  4970. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4971. public class ODBOMIF
  4972. {
  4973. public ushort om_max ; /* maximum operator message history */
  4974. public ushort om_sum ; /* actually operator message history */
  4975. public ushort om_char ; /* maximum character (include NULL) */
  4976. }
  4977. /* cnc_rdomhistry:read operator message history */
  4978. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  4979. public class ODBOMHIS_data
  4980. {
  4981. public short om_no; /* operator message number */
  4982. public short year; /* year */
  4983. public short month; /* month */
  4984. public short day; /* day */
  4985. public short hour; /* hour */
  4986. public short minute; /* mimute */
  4987. public short second; /* second */
  4988. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=256)]
  4989. public string om_msg= new string(' ',256) ;
  4990. }
  4991. [StructLayout(LayoutKind.Sequential,Pack=4)]
  4992. public class ODBOMHIS
  4993. {
  4994. public ODBOMHIS_data omhis1 = new ODBOMHIS_data();
  4995. public ODBOMHIS_data omhis2 = new ODBOMHIS_data();
  4996. public ODBOMHIS_data omhis3 = new ODBOMHIS_data();
  4997. public ODBOMHIS_data omhis4 = new ODBOMHIS_data();
  4998. public ODBOMHIS_data omhis5 = new ODBOMHIS_data();
  4999. public ODBOMHIS_data omhis6 = new ODBOMHIS_data();
  5000. public ODBOMHIS_data omhis7 = new ODBOMHIS_data();
  5001. public ODBOMHIS_data omhis8 = new ODBOMHIS_data();
  5002. public ODBOMHIS_data omhis9 = new ODBOMHIS_data();
  5003. public ODBOMHIS_data omhis10= new ODBOMHIS_data();
  5004. } /* In case that the number of data is 10 */
  5005. /* cnc_rdbtofsr:read b-axis tool offset value(area specified) */
  5006. /* cnc_wrbtofsr:write b-axis tool offset value(area specified) */
  5007. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5008. public class IODBBTO
  5009. {
  5010. public short datano_s; /* start offset number */
  5011. public short type; /* offset type */
  5012. public short datano_e; /* end offset number */
  5013. [MarshalAs(UnmanagedType.ByValArray,SizeConst=18)]
  5014. public int[] ofs = new int [18]; /* offset */
  5015. } /* In case that the number of data is 9 (B type) */
  5016. /* cnc_rdbtofsinfo:read b-axis tool offset information */
  5017. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5018. public class ODBBTLINF
  5019. {
  5020. public short ofs_type; /* memory type */
  5021. public short use_no; /* sum of b-axis offset */
  5022. public short sub_no; /* sub function number of offset cancel */
  5023. }
  5024. /* cnc_rdbaxis:read b-axis command */
  5025. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5026. public class ODBBAXIS
  5027. {
  5028. public short flag ; /* b-axis command exist or not */
  5029. public short command ; /* b-axis command */
  5030. public ushort speed ; /* b-axis speed */
  5031. public int sub_data ; /* b-axis sub data */
  5032. }
  5033. /* cnc_rdsyssoft:read CNC system soft series and version */
  5034. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  5035. public class ODBSYSS
  5036. {
  5037. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  5038. public byte[] slot_no_p;
  5039. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  5040. public byte[] slot_no_l;
  5041. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  5042. public short[] module_id;
  5043. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  5044. public short[] soft_id;
  5045. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5046. public string soft_series1 = new string(' ',5) ;
  5047. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5048. public string soft_series2 = new string(' ',5) ;
  5049. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5050. public string soft_series3 = new string(' ',5) ;
  5051. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5052. public string soft_series4 = new string(' ',5) ;
  5053. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5054. public string soft_series5 = new string(' ',5) ;
  5055. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5056. public string soft_series6 = new string(' ',5) ;
  5057. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5058. public string soft_series7 = new string(' ',5) ;
  5059. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5060. public string soft_series8 = new string(' ',5) ;
  5061. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5062. public string soft_series9 = new string(' ',5) ;
  5063. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5064. public string soft_series10= new string(' ',5) ;
  5065. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5066. public string soft_series11= new string(' ',5) ;
  5067. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5068. public string soft_series12= new string(' ',5) ;
  5069. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5070. public string soft_series13= new string(' ',5) ;
  5071. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5072. public string soft_series14= new string(' ',5) ;
  5073. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5074. public string soft_series15= new string(' ',5) ;
  5075. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5076. public string soft_series16= new string(' ',5) ;
  5077. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5078. public string soft_version1 = new string(' ',5) ;
  5079. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5080. public string soft_version2 = new string(' ',5) ;
  5081. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5082. public string soft_version3 = new string(' ',5) ;
  5083. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5084. public string soft_version4 = new string(' ',5) ;
  5085. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5086. public string soft_version5 = new string(' ',5) ;
  5087. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5088. public string soft_version6 = new string(' ',5) ;
  5089. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5090. public string soft_version7 = new string(' ',5) ;
  5091. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5092. public string soft_version8 = new string(' ',5) ;
  5093. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5094. public string soft_version9 = new string(' ',5) ;
  5095. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5096. public string soft_version10= new string(' ',5) ;
  5097. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5098. public string soft_version11= new string(' ',5) ;
  5099. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5100. public string soft_version12= new string(' ',5) ;
  5101. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5102. public string soft_version13= new string(' ',5) ;
  5103. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5104. public string soft_version14= new string(' ',5) ;
  5105. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5106. public string soft_version15= new string(' ',5) ;
  5107. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5108. public string soft_version16= new string(' ',5) ;
  5109. public short soft_inst;
  5110. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5111. public string boot_ser= new string(' ',5) ;
  5112. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5113. public string boot_ver= new string(' ',5) ;
  5114. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5115. public string servo_ser= new string(' ',5) ;
  5116. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5117. public string servo_ver= new string(' ',5) ;
  5118. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5119. public string pmc_ser= new string(' ',5) ;
  5120. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5121. public string pmc_ver= new string(' ',5) ;
  5122. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5123. public string ladder_ser= new string(' ',5) ;
  5124. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5125. public string ladder_ver= new string(' ',5) ;
  5126. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5127. public string mcrlib_ser= new string(' ',5) ;
  5128. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5129. public string mcrlib_ver= new string(' ',5) ;
  5130. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5131. public string mcrapl_ser= new string(' ',5) ;
  5132. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5133. public string mcrapl_ver= new string(' ',5) ;
  5134. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5135. public string spl1_ser= new string(' ',5) ;
  5136. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5137. public string spl1_ver= new string(' ',5) ;
  5138. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5139. public string spl2_ser= new string(' ',5) ;
  5140. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5141. public string spl2_ver= new string(' ',5) ;
  5142. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5143. public string spl3_ser= new string(' ',5) ;
  5144. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5145. public string spl3_ver= new string(' ',5) ;
  5146. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5147. public string c_exelib_ser= new string(' ',5) ;
  5148. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5149. public string c_exelib_ver= new string(' ',5) ;
  5150. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5151. public string c_exeapl_ser= new string(' ',5) ;
  5152. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5153. public string c_exeapl_ver= new string(' ',5) ;
  5154. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5155. public string int_vga_ser= new string(' ',5) ;
  5156. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5157. public string int_vga_ver= new string(' ',5) ;
  5158. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5159. public string out_vga_ser= new string(' ',5) ;
  5160. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5161. public string out_vga_ver= new string(' ',5) ;
  5162. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5163. public string pmm_ser= new string(' ',5) ;
  5164. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5165. public string pmm_ver= new string(' ',5) ;
  5166. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5167. public string pmc_mng_ser= new string(' ',5) ;
  5168. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5169. public string pmc_mng_ver= new string(' ',5) ;
  5170. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5171. public string pmc_shin_ser= new string(' ',5) ;
  5172. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5173. public string pmc_shin_ver= new string(' ',5) ;
  5174. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5175. public string pmc_shout_ser= new string(' ',5) ;
  5176. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5177. public string pmc_shout_ver= new string(' ',5) ;
  5178. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5179. public string pmc_c_ser= new string(' ',5) ;
  5180. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5181. public string pmc_c_ver= new string(' ',5) ;
  5182. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5183. public string pmc_edit_ser= new string(' ',5) ;
  5184. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5185. public string pmc_edit_ver= new string(' ',5) ;
  5186. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5187. public string lddr_mng_ser= new string(' ',5) ;
  5188. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5189. public string lddr_mng_ver= new string(' ',5) ;
  5190. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5191. public string lddr_apl_ser= new string(' ',5) ;
  5192. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5193. public string lddr_apl_ver= new string(' ',5) ;
  5194. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5195. public string spl4_ser= new string(' ',5) ;
  5196. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5197. public string spl4_ver= new string(' ',5) ;
  5198. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5199. public string mcr2_ser= new string(' ',5) ;
  5200. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5201. public string mcr2_ver= new string(' ',5) ;
  5202. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5203. public string mcr3_ser= new string(' ',5) ;
  5204. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5205. public string mcr3_ver= new string(' ',5) ;
  5206. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5207. public string eth_boot_ser= new string(' ',5) ;
  5208. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5209. public string eth_boot_ver= new string(' ',5) ;
  5210. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8*5)]
  5211. public byte[] reserve;
  5212. }
  5213. /* cnc_rdsyssoft2:read CNC system soft series and version (2) */
  5214. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  5215. public class ODBSYSS2
  5216. {
  5217. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  5218. public byte[] slot_no_p;
  5219. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  5220. public byte[] slot_no_l;
  5221. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  5222. public short[] module_id;
  5223. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  5224. public short[] soft_id;
  5225. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5226. public string soft_series1 = new string(' ',5) ;
  5227. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5228. public string soft_series2 = new string(' ',5) ;
  5229. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5230. public string soft_series3 = new string(' ',5) ;
  5231. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5232. public string soft_series4 = new string(' ',5) ;
  5233. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5234. public string soft_series5 = new string(' ',5) ;
  5235. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5236. public string soft_series6 = new string(' ',5) ;
  5237. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5238. public string soft_series7 = new string(' ',5) ;
  5239. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5240. public string soft_series8 = new string(' ',5) ;
  5241. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5242. public string soft_series9 = new string(' ',5) ;
  5243. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5244. public string soft_series10= new string(' ',5) ;
  5245. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5246. public string soft_series11= new string(' ',5) ;
  5247. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5248. public string soft_series12= new string(' ',5) ;
  5249. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5250. public string soft_series13= new string(' ',5) ;
  5251. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5252. public string soft_series14= new string(' ',5) ;
  5253. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5254. public string soft_series15= new string(' ',5) ;
  5255. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5256. public string soft_series16= new string(' ',5) ;
  5257. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5258. public string soft_version1 = new string(' ',5) ;
  5259. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5260. public string soft_version2 = new string(' ',5) ;
  5261. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5262. public string soft_version3 = new string(' ',5) ;
  5263. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5264. public string soft_version4 = new string(' ',5) ;
  5265. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5266. public string soft_version5 = new string(' ',5) ;
  5267. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5268. public string soft_version6 = new string(' ',5) ;
  5269. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5270. public string soft_version7 = new string(' ',5) ;
  5271. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5272. public string soft_version8 = new string(' ',5) ;
  5273. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5274. public string soft_version9 = new string(' ',5) ;
  5275. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5276. public string soft_version10= new string(' ',5) ;
  5277. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5278. public string soft_version11= new string(' ',5) ;
  5279. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5280. public string soft_version12= new string(' ',5) ;
  5281. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5282. public string soft_version13= new string(' ',5) ;
  5283. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5284. public string soft_version14= new string(' ',5) ;
  5285. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5286. public string soft_version15= new string(' ',5) ;
  5287. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5288. public string soft_version16= new string(' ',5) ;
  5289. public short soft_inst;
  5290. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5291. public string boot_ser= new string(' ',5) ;
  5292. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5293. public string boot_ver= new string(' ',5) ;
  5294. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5295. public string servo_ser= new string(' ',5) ;
  5296. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5297. public string servo_ver= new string(' ',5) ;
  5298. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5299. public string pmc_ser= new string(' ',5) ;
  5300. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5301. public string pmc_ver= new string(' ',5) ;
  5302. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5303. public string ladder_ser= new string(' ',5) ;
  5304. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5305. public string ladder_ver= new string(' ',5) ;
  5306. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5307. public string mcrlib_ser= new string(' ',5) ;
  5308. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5309. public string mcrlib_ver= new string(' ',5) ;
  5310. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5311. public string mcrapl_ser= new string(' ',5) ;
  5312. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5313. public string mcrapl_ver= new string(' ',5) ;
  5314. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5315. public string spl1_ser= new string(' ',5) ;
  5316. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5317. public string spl1_ver= new string(' ',5) ;
  5318. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5319. public string spl2_ser= new string(' ',5) ;
  5320. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5321. public string spl2_ver= new string(' ',5) ;
  5322. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5323. public string spl3_ser= new string(' ',5) ;
  5324. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5325. public string spl3_ver= new string(' ',5) ;
  5326. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5327. public string c_exelib_ser= new string(' ',5) ;
  5328. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5329. public string c_exelib_ver= new string(' ',5) ;
  5330. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5331. public string c_exeapl_ser= new string(' ',5) ;
  5332. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5333. public string c_exeapl_ver= new string(' ',5) ;
  5334. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5335. public string int_vga_ser= new string(' ',5) ;
  5336. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5337. public string int_vga_ver= new string(' ',5) ;
  5338. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5339. public string out_vga_ser= new string(' ',5) ;
  5340. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5341. public string out_vga_ver= new string(' ',5) ;
  5342. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5343. public string pmm_ser= new string(' ',5) ;
  5344. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5345. public string pmm_ver= new string(' ',5) ;
  5346. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5347. public string pmc_mng_ser= new string(' ',5) ;
  5348. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5349. public string pmc_mng_ver= new string(' ',5) ;
  5350. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5351. public string pmc_shin_ser= new string(' ',5) ;
  5352. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5353. public string pmc_shin_ver= new string(' ',5) ;
  5354. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5355. public string pmc_shout_ser= new string(' ',5) ;
  5356. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5357. public string pmc_shout_ver= new string(' ',5) ;
  5358. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5359. public string pmc_c_ser= new string(' ',5) ;
  5360. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5361. public string pmc_c_ver= new string(' ',5) ;
  5362. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5363. public string pmc_edit_ser= new string(' ',5) ;
  5364. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5365. public string pmc_edit_ver= new string(' ',5) ;
  5366. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5367. public string lddr_mng_ser= new string(' ',5) ;
  5368. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5369. public string lddr_mng_ver= new string(' ',5) ;
  5370. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5371. public string lddr_apl_ser= new string(' ',5) ;
  5372. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5373. public string lddr_apl_ver= new string(' ',5) ;
  5374. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5375. public string spl4_ser= new string(' ',5) ;
  5376. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5377. public string spl4_ver= new string(' ',5) ;
  5378. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5379. public string mcr2_ser= new string(' ',5) ;
  5380. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5381. public string mcr2_ver= new string(' ',5) ;
  5382. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5383. public string mcr3_ser= new string(' ',5) ;
  5384. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5385. public string mcr3_ver= new string(' ',5) ;
  5386. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5387. public string eth_boot_ser= new string(' ',5) ;
  5388. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5389. public string eth_boot_ver= new string(' ',5) ;
  5390. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8*5)]
  5391. public byte[] reserve;
  5392. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5393. public string embEthe_ser= new string(' ',5) ;
  5394. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  5395. public string embEthe_ver= new string(' ',5) ;
  5396. [MarshalAs(UnmanagedType.ByValArray,SizeConst=38*5)]
  5397. public byte[] reserve2;
  5398. }
  5399. /* cnc_rdsyssoft3:read CNC system soft series and version (3) */
  5400. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5401. public class ODBSYSS3_data
  5402. {
  5403. public short soft_id;
  5404. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  5405. public char[] soft_series;
  5406. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  5407. public char[] soft_edition;
  5408. }
  5409. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5410. public class ODBSYSS3
  5411. {
  5412. public ODBSYSS3_data p1 =new ODBSYSS3_data();
  5413. public ODBSYSS3_data p2 =new ODBSYSS3_data();
  5414. public ODBSYSS3_data p3 =new ODBSYSS3_data();
  5415. public ODBSYSS3_data p4 =new ODBSYSS3_data();
  5416. public ODBSYSS3_data p5 =new ODBSYSS3_data();
  5417. public ODBSYSS3_data p6 =new ODBSYSS3_data();
  5418. public ODBSYSS3_data p7 =new ODBSYSS3_data();
  5419. public ODBSYSS3_data p8 =new ODBSYSS3_data();
  5420. public ODBSYSS3_data p9 =new ODBSYSS3_data();
  5421. public ODBSYSS3_data p10 =new ODBSYSS3_data();
  5422. public ODBSYSS3_data p11 =new ODBSYSS3_data();
  5423. public ODBSYSS3_data p12 =new ODBSYSS3_data();
  5424. public ODBSYSS3_data p13 =new ODBSYSS3_data();
  5425. public ODBSYSS3_data p14 =new ODBSYSS3_data();
  5426. public ODBSYSS3_data p15 =new ODBSYSS3_data();
  5427. public ODBSYSS3_data p16 =new ODBSYSS3_data();
  5428. public ODBSYSS3_data p17 =new ODBSYSS3_data();
  5429. public ODBSYSS3_data p18 =new ODBSYSS3_data();
  5430. public ODBSYSS3_data p19 =new ODBSYSS3_data();
  5431. public ODBSYSS3_data p20 =new ODBSYSS3_data();
  5432. public ODBSYSS3_data p21 =new ODBSYSS3_data();
  5433. public ODBSYSS3_data p22 =new ODBSYSS3_data();
  5434. public ODBSYSS3_data p23 =new ODBSYSS3_data();
  5435. public ODBSYSS3_data p24 =new ODBSYSS3_data();
  5436. public ODBSYSS3_data p25 =new ODBSYSS3_data();
  5437. public ODBSYSS3_data p26 =new ODBSYSS3_data();
  5438. public ODBSYSS3_data p27 =new ODBSYSS3_data();
  5439. public ODBSYSS3_data p28 =new ODBSYSS3_data();
  5440. public ODBSYSS3_data p29 =new ODBSYSS3_data();
  5441. public ODBSYSS3_data p30 =new ODBSYSS3_data();
  5442. public ODBSYSS3_data p31 =new ODBSYSS3_data();
  5443. public ODBSYSS3_data p32 =new ODBSYSS3_data();
  5444. public ODBSYSS3_data p33 =new ODBSYSS3_data();
  5445. public ODBSYSS3_data p34 =new ODBSYSS3_data();
  5446. public ODBSYSS3_data p35 =new ODBSYSS3_data();
  5447. public ODBSYSS3_data p36 =new ODBSYSS3_data();
  5448. public ODBSYSS3_data p37 =new ODBSYSS3_data();
  5449. public ODBSYSS3_data p38 =new ODBSYSS3_data();
  5450. public ODBSYSS3_data p39 =new ODBSYSS3_data();
  5451. public ODBSYSS3_data p40 =new ODBSYSS3_data();
  5452. }
  5453. /* cnc_rdsyshard:read CNC system hard info */
  5454. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5455. public class ODBSYSH_data
  5456. {
  5457. public uint id1 ;
  5458. public uint id2 ;
  5459. public short group_id ;
  5460. public short hard_id ;
  5461. public short hard_num ;
  5462. public short slot_no ;
  5463. public short id1_format ;
  5464. public short id2_format ;
  5465. }
  5466. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5467. public class ODBSYSH
  5468. {
  5469. public ODBSYSH_data data1 = new ODBSYSH_data();
  5470. public ODBSYSH_data data2 = new ODBSYSH_data();
  5471. public ODBSYSH_data data3 = new ODBSYSH_data();
  5472. public ODBSYSH_data data4 = new ODBSYSH_data();
  5473. public ODBSYSH_data data5 = new ODBSYSH_data();
  5474. public ODBSYSH_data data6 = new ODBSYSH_data();
  5475. public ODBSYSH_data data7 = new ODBSYSH_data();
  5476. public ODBSYSH_data data8 = new ODBSYSH_data();
  5477. public ODBSYSH_data data9 = new ODBSYSH_data();
  5478. public ODBSYSH_data data10 = new ODBSYSH_data();
  5479. public ODBSYSH_data data11 = new ODBSYSH_data();
  5480. public ODBSYSH_data data12 = new ODBSYSH_data();
  5481. public ODBSYSH_data data13 = new ODBSYSH_data();
  5482. public ODBSYSH_data data14 = new ODBSYSH_data();
  5483. public ODBSYSH_data data15 = new ODBSYSH_data();
  5484. public ODBSYSH_data data16 = new ODBSYSH_data();
  5485. public ODBSYSH_data data17 = new ODBSYSH_data();
  5486. public ODBSYSH_data data18 = new ODBSYSH_data();
  5487. public ODBSYSH_data data19 = new ODBSYSH_data();
  5488. public ODBSYSH_data data20 = new ODBSYSH_data();
  5489. public ODBSYSH_data data21 = new ODBSYSH_data();
  5490. public ODBSYSH_data data22 = new ODBSYSH_data();
  5491. public ODBSYSH_data data23 = new ODBSYSH_data();
  5492. public ODBSYSH_data data24 = new ODBSYSH_data();
  5493. public ODBSYSH_data data25 = new ODBSYSH_data();
  5494. }
  5495. /* cnc_rdmdlconfig:read CNC module configuration information */
  5496. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5497. public class ODBMDLC
  5498. {
  5499. public short from;
  5500. public short dram;
  5501. public short sram;
  5502. public short pmc;
  5503. public short crtc;
  5504. public short servo12;
  5505. public short servo34;
  5506. public short servo56;
  5507. public short servo78;
  5508. public short sic;
  5509. public short pos_lsi;
  5510. public short hi_aio;
  5511. [MarshalAs(UnmanagedType.ByValArray,SizeConst=12)]
  5512. public short[] reserve;
  5513. public short drmmrc;
  5514. public short drmarc;
  5515. public short pmcmrc;
  5516. public short dmaarc;
  5517. public short iopt;
  5518. public short hdiio;
  5519. public short gm2gr1;
  5520. public short crtgr2;
  5521. public short gm1gr2;
  5522. public short gm2gr2;
  5523. public short cmmrb;
  5524. public short sv5axs;
  5525. public short sv7axs;
  5526. public short sicaxs;
  5527. public short posaxs;
  5528. public short hamaxs;
  5529. public short romr64;
  5530. public short srmr64;
  5531. public short dr1r64;
  5532. public short dr2r64;
  5533. public short iopio2;
  5534. public short hdiio2;
  5535. public short cmmrb2;
  5536. public short romfap;
  5537. public short srmfap;
  5538. public short drmfap;
  5539. public short drmare;
  5540. public short pmcmre;
  5541. public short dmaare;
  5542. public short frmbgg;
  5543. public short drmbgg;
  5544. public short asrbgg;
  5545. public short edtpsc;
  5546. public short slcpsc;
  5547. [MarshalAs(UnmanagedType.ByValArray,SizeConst=34)]
  5548. public short[] reserve2;
  5549. }
  5550. /* cnc_rdpscdproc:read processing condition file (processing data) */
  5551. /* cnc_wrpscdproc:write processing condition file (processing data) */
  5552. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5553. public class IODBPSCD_data
  5554. {
  5555. public short slct;
  5556. public int feed;
  5557. public short power;
  5558. public short freq;
  5559. public short duty;
  5560. public short g_press;
  5561. public short g_kind;
  5562. public short g_ready_t;
  5563. public short displace;
  5564. public int supple;
  5565. public short edge_slt;
  5566. public short appr_slt;
  5567. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  5568. public short[] reserve = new short[5];
  5569. }
  5570. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5571. public class IODBPSCD
  5572. {
  5573. public IODBPSCD_data data1 = new IODBPSCD_data();
  5574. public IODBPSCD_data data2 = new IODBPSCD_data();
  5575. public IODBPSCD_data data3 = new IODBPSCD_data();
  5576. public IODBPSCD_data data4 = new IODBPSCD_data();
  5577. public IODBPSCD_data data5 = new IODBPSCD_data();
  5578. public IODBPSCD_data data6 = new IODBPSCD_data();
  5579. public IODBPSCD_data data7 = new IODBPSCD_data();
  5580. public IODBPSCD_data data8 = new IODBPSCD_data();
  5581. public IODBPSCD_data data9 = new IODBPSCD_data();
  5582. public IODBPSCD_data data10= new IODBPSCD_data();
  5583. } /* In case that the number of data is 10 */
  5584. /* cnc_rdpscdpirc:read processing condition file (piercing data) */
  5585. /* cnc_wrpscdpirc:write processing condition file (piercing data) */
  5586. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5587. public class IODBPIRC_data
  5588. {
  5589. public short slct;
  5590. public short power;
  5591. public short freq;
  5592. public short duty;
  5593. public short i_freq;
  5594. public short i_duty;
  5595. public short step_t;
  5596. public short step_sum;
  5597. public int pier_t;
  5598. public short g_press;
  5599. public short g_kind;
  5600. public short g_time;
  5601. public short def_pos;
  5602. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  5603. public short[] reserve = new short[4];
  5604. }
  5605. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5606. public class IODBPIRC
  5607. {
  5608. public IODBPIRC_data data1 = new IODBPIRC_data();
  5609. public IODBPIRC_data data2 = new IODBPIRC_data();
  5610. public IODBPIRC_data data3 = new IODBPIRC_data();
  5611. }
  5612. /* cnc_rdpscdedge:read processing condition file (edging data) */
  5613. /* cnc_wrpscdedge:write processing condition file (edging data) */
  5614. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5615. public class IODBEDGE_data
  5616. {
  5617. public short slct;
  5618. public short angle;
  5619. public short power;
  5620. public short freq;
  5621. public short duty;
  5622. public int pier_t;
  5623. public short g_press;
  5624. public short g_kind;
  5625. public int r_len;
  5626. public short r_feed;
  5627. public short r_freq;
  5628. public short r_duty;
  5629. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  5630. public short[] reserve = new short[5];
  5631. }
  5632. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5633. public class IODBEDGE
  5634. {
  5635. public IODBEDGE_data data1 = new IODBEDGE_data();
  5636. public IODBEDGE_data data2 = new IODBEDGE_data();
  5637. public IODBEDGE_data data3 = new IODBEDGE_data();
  5638. public IODBEDGE_data data4 = new IODBEDGE_data();
  5639. public IODBEDGE_data data5 = new IODBEDGE_data();
  5640. }
  5641. /* cnc_rdpscdslop:read processing condition file (slope data) */
  5642. /* cnc_wrpscdslop:write processing condition file (slope data) */
  5643. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5644. public class IODBSLOP_data
  5645. {
  5646. public int slct;
  5647. public int upleng;
  5648. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  5649. public short[] upsp = new short[10];
  5650. public int dwleng;
  5651. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  5652. public short[] dwsp = new short[10];
  5653. [MarshalAs(UnmanagedType.ByValArray,SizeConst=10)]
  5654. public short[] reserve = new short[10];
  5655. }
  5656. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5657. public class IODBSLOP
  5658. {
  5659. public IODBSLOP_data data1 = new IODBSLOP_data();
  5660. public IODBSLOP_data data2 = new IODBSLOP_data();
  5661. public IODBSLOP_data data3 = new IODBSLOP_data();
  5662. public IODBSLOP_data data4 = new IODBSLOP_data();
  5663. public IODBSLOP_data data5 = new IODBSLOP_data();
  5664. }
  5665. /* cnc_rdlpwrdty:read power controll duty data */
  5666. /* cnc_wrlpwrdty:write power controll duty data */
  5667. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5668. public class IODBLPWDT
  5669. {
  5670. public short slct;
  5671. public short dty_const;
  5672. public short dty_min;
  5673. [MarshalAs(UnmanagedType.ByValArray,SizeConst=6)]
  5674. public short[] reserve = new short[6];
  5675. }
  5676. /* cnc_rdlpwrdat:read laser power data */
  5677. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5678. public class ODBLOPDT
  5679. {
  5680. public short slct;
  5681. public short pwr_mon;
  5682. public short pwr_ofs;
  5683. public short pwr_act;
  5684. public int feed_act;
  5685. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  5686. public short[] reserve;
  5687. }
  5688. /* cnc_rdlagslt:read laser assist gas selection */
  5689. /* cnc_wrlagslt:write laser assist gas selection */
  5690. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5691. public class IODBLAGSL
  5692. {
  5693. public short slct;
  5694. public short ag_slt;
  5695. public short agflow_slt;
  5696. [MarshalAs(UnmanagedType.ByValArray,SizeConst=6)]
  5697. public short[] reserve = new short[6];
  5698. }
  5699. /* cnc_rdlagst:read laser assist gas flow */
  5700. /* cnc_wrlagst:write laser assist gas flow */
  5701. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5702. public class GASFLOW
  5703. {
  5704. public short slct;
  5705. public short pre_time;
  5706. public short pre_press;
  5707. public short proc_press;
  5708. public short end_time;
  5709. public short end_press;
  5710. [MarshalAs(UnmanagedType.ByValArray,SizeConst=3)]
  5711. public short[] reserve = new short[3];
  5712. }
  5713. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5714. public class IODBLAGST
  5715. {
  5716. public GASFLOW data1 = new GASFLOW();
  5717. public GASFLOW data2 = new GASFLOW();
  5718. public GASFLOW data3 = new GASFLOW();
  5719. }
  5720. /* cnc_rdledgprc:read laser power for edge processing */
  5721. /* cnc_wrledgprc:write laser power for edge processing */
  5722. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5723. public class IODBLEGPR
  5724. {
  5725. public short slct;
  5726. public short power;
  5727. public short freq;
  5728. public short duty;
  5729. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  5730. public short[] reserve = new short[5];
  5731. }
  5732. /* cnc_rdlprcprc:read laser power for piercing */
  5733. /* cnc_wrlprcprc:write laser power for piercing */
  5734. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5735. public class IODBLPCPR
  5736. {
  5737. public short slct;
  5738. public short power;
  5739. public short freq;
  5740. public short duty;
  5741. public int time;
  5742. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  5743. public short[] reserve = new short[4];
  5744. }
  5745. /* cnc_rdlcmddat:read laser command data */
  5746. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5747. public class ODBLCMDT
  5748. {
  5749. public short slct;
  5750. public int feed;
  5751. public short power;
  5752. public short freq;
  5753. public short duty;
  5754. public short g_kind;
  5755. public short g_ready_t;
  5756. public short g_press;
  5757. public short error;
  5758. public int dsplc;
  5759. [MarshalAs(UnmanagedType.ByValArray,SizeConst=7)]
  5760. public short[] reserve = new short[7];
  5761. }
  5762. /* cnc_rdlactnum:read active number */
  5763. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5764. public class ODBLACTN
  5765. {
  5766. public short slct;
  5767. public short act_proc;
  5768. public short act_pirce;
  5769. public short act_slop;
  5770. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  5771. public short[] reserve = new short[5];
  5772. }
  5773. /* cnc_rdlcmmt:read laser comment */
  5774. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  5775. public class ODBLCMMT
  5776. {
  5777. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=25)]
  5778. public string comment= new string(' ',25) ;
  5779. }
  5780. /* cnc_rdpwofsthis:read power correction factor history data */
  5781. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5782. public class ODBPWOFST_data
  5783. {
  5784. public int pwratio;
  5785. public int rfvolt;
  5786. public ushort year;
  5787. public ushort month;
  5788. public ushort day;
  5789. public ushort hour;
  5790. public ushort minute;
  5791. public ushort second;
  5792. }
  5793. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5794. public class ODBPWOFST
  5795. {
  5796. public ODBPWOFST_data data1 = new ODBPWOFST_data();
  5797. public ODBPWOFST_data data2 = new ODBPWOFST_data();
  5798. public ODBPWOFST_data data3 = new ODBPWOFST_data();
  5799. public ODBPWOFST_data data4 = new ODBPWOFST_data();
  5800. public ODBPWOFST_data data5 = new ODBPWOFST_data();
  5801. public ODBPWOFST_data data6 = new ODBPWOFST_data();
  5802. public ODBPWOFST_data data7 = new ODBPWOFST_data();
  5803. public ODBPWOFST_data data8 = new ODBPWOFST_data();
  5804. public ODBPWOFST_data data9 = new ODBPWOFST_data();
  5805. public ODBPWOFST_data data10= new ODBPWOFST_data();
  5806. public ODBPWOFST_data data11= new ODBPWOFST_data();
  5807. public ODBPWOFST_data data12= new ODBPWOFST_data();
  5808. public ODBPWOFST_data data13= new ODBPWOFST_data();
  5809. public ODBPWOFST_data data14= new ODBPWOFST_data();
  5810. public ODBPWOFST_data data15= new ODBPWOFST_data();
  5811. public ODBPWOFST_data data16= new ODBPWOFST_data();
  5812. public ODBPWOFST_data data17= new ODBPWOFST_data();
  5813. public ODBPWOFST_data data18= new ODBPWOFST_data();
  5814. public ODBPWOFST_data data19= new ODBPWOFST_data();
  5815. public ODBPWOFST_data data20= new ODBPWOFST_data();
  5816. public ODBPWOFST_data data21= new ODBPWOFST_data();
  5817. public ODBPWOFST_data data22= new ODBPWOFST_data();
  5818. public ODBPWOFST_data data23= new ODBPWOFST_data();
  5819. public ODBPWOFST_data data24= new ODBPWOFST_data();
  5820. public ODBPWOFST_data data25= new ODBPWOFST_data();
  5821. public ODBPWOFST_data data26= new ODBPWOFST_data();
  5822. public ODBPWOFST_data data27= new ODBPWOFST_data();
  5823. public ODBPWOFST_data data28= new ODBPWOFST_data();
  5824. public ODBPWOFST_data data29= new ODBPWOFST_data();
  5825. public ODBPWOFST_data data30= new ODBPWOFST_data();
  5826. }
  5827. /* cnc_rdmngtime:read management time */
  5828. /* cnc_wrmngtime:write management time */
  5829. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5830. public class IODBMNGTIME_data
  5831. {
  5832. public uint life;
  5833. public uint total;
  5834. }
  5835. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5836. public class IODBMNGTIME
  5837. {
  5838. public IODBMNGTIME_data data1 = new IODBMNGTIME_data();
  5839. public IODBMNGTIME_data data2 = new IODBMNGTIME_data();
  5840. public IODBMNGTIME_data data3 = new IODBMNGTIME_data();
  5841. public IODBMNGTIME_data data4 = new IODBMNGTIME_data();
  5842. public IODBMNGTIME_data data5 = new IODBMNGTIME_data();
  5843. public IODBMNGTIME_data data6 = new IODBMNGTIME_data();
  5844. public IODBMNGTIME_data data7 = new IODBMNGTIME_data();
  5845. public IODBMNGTIME_data data8 = new IODBMNGTIME_data();
  5846. public IODBMNGTIME_data data9 = new IODBMNGTIME_data();
  5847. public IODBMNGTIME_data data10= new IODBMNGTIME_data();
  5848. } /* In case that the number of data is 10 */
  5849. /* cnc_rddischarge:read data related to electrical discharge at power correction ends */
  5850. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5851. public class ODBDISCHRG
  5852. {
  5853. public ushort aps;
  5854. public ushort year;
  5855. public ushort month;
  5856. public ushort day;
  5857. public ushort hour;
  5858. public ushort minute;
  5859. public ushort second;
  5860. public short hpc;
  5861. public short hfq;
  5862. public short hdt;
  5863. public short hpa;
  5864. public int hce;
  5865. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5866. public int[] rfi;
  5867. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5868. public int[] rfv;
  5869. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5870. public int[] dci;
  5871. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5872. public int[] dcv;
  5873. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5874. public int[] dcw;
  5875. }
  5876. /* cnc_rddischrgalm:read alarm history data related to electrical discharg */
  5877. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5878. public class ODBDISCHRGALM_data
  5879. {
  5880. public ushort year;
  5881. public ushort month;
  5882. public ushort day;
  5883. public ushort hour;
  5884. public ushort minute;
  5885. public ushort second;
  5886. public int almnum;
  5887. public uint psec;
  5888. public short hpc;
  5889. public short hfq;
  5890. public short hdt;
  5891. public short hpa;
  5892. public int hce;
  5893. public ushort asq;
  5894. public ushort psu;
  5895. public ushort aps;
  5896. public short dummy;
  5897. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5898. public int[] rfi;
  5899. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5900. public int[] rfv;
  5901. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5902. public int[] dci;
  5903. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5904. public int[] dcv;
  5905. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5906. public int[] dcw;
  5907. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  5908. public short[] almcd;
  5909. }
  5910. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5911. public class ODBDISCHRGALM
  5912. {
  5913. public ODBDISCHRGALM_data data1 = new ODBDISCHRGALM_data();
  5914. public ODBDISCHRGALM_data data2 = new ODBDISCHRGALM_data();
  5915. public ODBDISCHRGALM_data data3 = new ODBDISCHRGALM_data();
  5916. public ODBDISCHRGALM_data data4 = new ODBDISCHRGALM_data();
  5917. public ODBDISCHRGALM_data data5 = new ODBDISCHRGALM_data();
  5918. }
  5919. /* cnc_gettimer:get date and time from cnc */
  5920. /* cnc_settimer:set date and time for cnc */
  5921. [StructLayout(LayoutKind.Sequential, Pack = 4)]
  5922. public struct TIMER_DATE
  5923. {
  5924. public short year;
  5925. public short month;
  5926. public short date;
  5927. }
  5928. [StructLayout(LayoutKind.Sequential, Pack = 4)]
  5929. public struct TIMER_TIME
  5930. {
  5931. public short hour;
  5932. public short minute;
  5933. public short second;
  5934. }
  5935. [StructLayout(LayoutKind.Explicit)]
  5936. public class IODBTIMER
  5937. {
  5938. [FieldOffset(0)]
  5939. public short type;
  5940. [FieldOffset(2)]
  5941. public short dummy;
  5942. [FieldOffset(4)]
  5943. public TIMER_DATE date;
  5944. [FieldOffset(4)]
  5945. public TIMER_TIME time;
  5946. }
  5947. /* cnc_rdtimer:read timer data from cnc */
  5948. /* cnc_wrtimer:write timer data for cnc */
  5949. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5950. public class IODBTIME
  5951. {
  5952. public int minute ;
  5953. public int msec ;
  5954. }
  5955. /* cnc_rdtlctldata: read tool controll data */
  5956. /* cnc_wrtlctldata: write tool controll data */
  5957. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5958. public class IODBTLCTL
  5959. {
  5960. public short slct;
  5961. public short used_tool;
  5962. public short turret_indx;
  5963. public int zero_tl_no;
  5964. public int t_axis_move;
  5965. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  5966. public int[] total_punch = new int[2];
  5967. [MarshalAs(UnmanagedType.ByValArray,SizeConst=11)]
  5968. public short[] reserve = new short[11];
  5969. }
  5970. /* cnc_rdtooldata: read tool data */
  5971. /* cnc_wrtooldata: read tool data */
  5972. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5973. public class IODBTLDT_data
  5974. {
  5975. public short slct;
  5976. public int tool_no;
  5977. public int x_axis_ofs;
  5978. public int y_axis_ofs;
  5979. public int turret_pos;
  5980. public int chg_tl_no;
  5981. public int punch_count;
  5982. public int tool_life;
  5983. public int m_tl_radius;
  5984. public int m_tl_angle;
  5985. public byte tl_shape;
  5986. public int tl_size_i;
  5987. public int tl_size_j;
  5988. public int tl_angle;
  5989. [MarshalAs(UnmanagedType.ByValArray,SizeConst=3)]
  5990. public int[] reserve = new int[3];
  5991. }
  5992. [StructLayout(LayoutKind.Sequential,Pack=4)]
  5993. public class IODBTLDT
  5994. {
  5995. public IODBTLDT_data data1 = new IODBTLDT_data();
  5996. public IODBTLDT_data data2 = new IODBTLDT_data();
  5997. public IODBTLDT_data data3 = new IODBTLDT_data();
  5998. public IODBTLDT_data data4 = new IODBTLDT_data();
  5999. public IODBTLDT_data data5 = new IODBTLDT_data();
  6000. public IODBTLDT_data data6 = new IODBTLDT_data();
  6001. public IODBTLDT_data data7 = new IODBTLDT_data();
  6002. public IODBTLDT_data data8 = new IODBTLDT_data();
  6003. public IODBTLDT_data data9 = new IODBTLDT_data();
  6004. public IODBTLDT_data data10= new IODBTLDT_data();
  6005. } /* In case that the number of data is 10 */
  6006. /* cnc_rdmultitldt: read multi tool data */
  6007. /* cnc_wrmultitldt: write multi tool data */
  6008. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6009. public class IODBMLTTL_data
  6010. {
  6011. public short slct;
  6012. public short m_tl_no;
  6013. public int m_tl_radius;
  6014. public int m_tl_angle;
  6015. public int x_axis_ofs;
  6016. public int y_axis_ofs;
  6017. public byte tl_shape;
  6018. public int tl_size_i;
  6019. public int tl_size_j;
  6020. public int tl_angle;
  6021. [MarshalAs(UnmanagedType.ByValArray,SizeConst=7)]
  6022. public int[] reserve = new int[7];
  6023. }
  6024. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6025. public class IODBMLTTL
  6026. {
  6027. public IODBMLTTL_data data1 = new IODBMLTTL_data();
  6028. public IODBMLTTL_data data2 = new IODBMLTTL_data();
  6029. public IODBMLTTL_data data3 = new IODBMLTTL_data();
  6030. public IODBMLTTL_data data4 = new IODBMLTTL_data();
  6031. public IODBMLTTL_data data5 = new IODBMLTTL_data();
  6032. public IODBMLTTL_data data6 = new IODBMLTTL_data();
  6033. public IODBMLTTL_data data7 = new IODBMLTTL_data();
  6034. public IODBMLTTL_data data8 = new IODBMLTTL_data();
  6035. public IODBMLTTL_data data9 = new IODBMLTTL_data();
  6036. public IODBMLTTL_data data10= new IODBMLTTL_data();
  6037. } /* In case that the number of data is 10 */
  6038. /* cnc_rdmtapdata: read multi tap data */
  6039. /* cnc_wrmtapdata: write multi tap data */
  6040. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6041. public class IODBMTAP_data
  6042. {
  6043. public short slct;
  6044. public int tool_no;
  6045. public int x_axis_ofs;
  6046. public int y_axis_ofs;
  6047. public int punch_count;
  6048. public int tool_life;
  6049. [MarshalAs(UnmanagedType.ByValArray,SizeConst=11)]
  6050. public int[] reserve = new int[11];
  6051. }
  6052. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6053. public class IODBMTAP
  6054. {
  6055. public IODBMTAP_data data1 = new IODBMTAP_data();
  6056. public IODBMTAP_data data2 = new IODBMTAP_data();
  6057. public IODBMTAP_data data3 = new IODBMTAP_data();
  6058. public IODBMTAP_data data4 = new IODBMTAP_data();
  6059. public IODBMTAP_data data5 = new IODBMTAP_data();
  6060. public IODBMTAP_data data6 = new IODBMTAP_data();
  6061. public IODBMTAP_data data7 = new IODBMTAP_data();
  6062. public IODBMTAP_data data8 = new IODBMTAP_data();
  6063. public IODBMTAP_data data9 = new IODBMTAP_data();
  6064. public IODBMTAP_data data10= new IODBMTAP_data();
  6065. }
  6066. /* cnc_rdtoolinfo: read tool information */
  6067. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6068. public class ODBPTLINF
  6069. {
  6070. public short tld_max;
  6071. public short mlt_max;
  6072. public short reserve;
  6073. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  6074. public short[] tld_size;
  6075. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  6076. public short[] mlt_size;
  6077. [MarshalAs(UnmanagedType.ByValArray,SizeConst=16)]
  6078. public short[] reserves;
  6079. }
  6080. /* cnc_rdsafetyzone: read safetyzone data */
  6081. /* cnc_wrsafetyzone: write safetyzone data */
  6082. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6083. public class IODBSAFE_data
  6084. {
  6085. public short slct;
  6086. [MarshalAs(UnmanagedType.ByValArray,SizeConst=3)]
  6087. public int[] data = new int[3];
  6088. }
  6089. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6090. public class IODBSAFE
  6091. {
  6092. public IODBSAFE_data data1 = new IODBSAFE_data();
  6093. public IODBSAFE_data data2 = new IODBSAFE_data();
  6094. public IODBSAFE_data data3 = new IODBSAFE_data();
  6095. public IODBSAFE_data data4 = new IODBSAFE_data();
  6096. } /* In case that the number of data is 4 */
  6097. /* cnc_rdtoolzone: read toolzone data */
  6098. /* cnc_wrtoolzone: write toolzone data */
  6099. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6100. public class IODBTLZN_data
  6101. {
  6102. public short slct;
  6103. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  6104. public int[] data = new int[12];
  6105. }
  6106. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6107. public class IODBTLZN
  6108. {
  6109. public IODBTLZN_data data1 = new IODBTLZN_data();
  6110. public IODBTLZN_data data2 = new IODBTLZN_data();
  6111. public IODBTLZN_data data3 = new IODBTLZN_data();
  6112. public IODBTLZN_data data4 = new IODBTLZN_data();
  6113. public IODBTLZN_data data5 = new IODBTLZN_data();
  6114. public IODBTLZN_data data6 = new IODBTLZN_data();
  6115. public IODBTLZN_data data7 = new IODBTLZN_data();
  6116. public IODBTLZN_data data8 = new IODBTLZN_data();
  6117. public IODBTLZN_data data9 = new IODBTLZN_data();
  6118. public IODBTLZN_data data10= new IODBTLZN_data();
  6119. public IODBTLZN_data data11= new IODBTLZN_data();
  6120. public IODBTLZN_data data12= new IODBTLZN_data();
  6121. } /* In case that the number of data is 12 */
  6122. /* cnc_rdacttlzone: read active toolzone data */
  6123. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6124. public class ODBACTTLZN
  6125. {
  6126. public short act_no;
  6127. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  6128. public int[] data;
  6129. }
  6130. /* cnc_rdbrstrinfo:read block restart information */
  6131. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6132. public class ODBBRS
  6133. {
  6134. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  6135. public int[] dest;
  6136. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  6137. public int[] dist;
  6138. } /* In case that the number of axes is MAX_AXIS */
  6139. /* cnc_rdradofs:read tool radius offset for position data */
  6140. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6141. public class ODBROFS
  6142. {
  6143. public short mode;
  6144. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  6145. public short[] pln_axes;
  6146. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  6147. public int[] ofsvct;
  6148. }
  6149. /* cnc_rdlenofs:read tool length offset for position data */
  6150. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6151. public class ODBLOFS
  6152. {
  6153. public short mode;
  6154. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  6155. public int[] ofsvct;
  6156. } /* In case that the number of axes is MAX_AXIS */
  6157. /* cnc_rdfixcycle:read fixed cycle for position data */
  6158. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6159. public class ODBFIX
  6160. {
  6161. public short mode;
  6162. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  6163. public short[] pln_axes;
  6164. public short drl_axes;
  6165. public int i_pos;
  6166. public int r_pos;
  6167. public int z_pos;
  6168. public int cmd_cnt;
  6169. public int act_cnt;
  6170. public int cut;
  6171. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  6172. public int[] shift;
  6173. }
  6174. /* cnc_rdcdrotate:read coordinate rotate for position data */
  6175. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6176. public class ODBROT
  6177. {
  6178. public short mode;
  6179. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  6180. public short[] pln_axes;
  6181. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  6182. public int[] center;
  6183. public int angle;
  6184. }
  6185. /* cnc_rd3dcdcnv:read 3D coordinate convert for position data */
  6186. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6187. public class ODB3DCD
  6188. {
  6189. public short mode;
  6190. public short dno;
  6191. [MarshalAs(UnmanagedType.ByValArray,SizeConst=3)]
  6192. public short[] cd_axes;
  6193. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2*3)]
  6194. public int[] center;
  6195. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2*3)]
  6196. public int[] direct;
  6197. [MarshalAs(UnmanagedType.ByValArray,SizeConst=2)]
  6198. public int[] angle;
  6199. }
  6200. /* cnc_rdmirimage:read programable mirror image for position data */
  6201. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6202. public class ODBMIR
  6203. {
  6204. public short mode;
  6205. public int mir_flag;
  6206. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  6207. public int[] mir_pos;
  6208. } /* In case that the number of axes is MAX_AXIS */
  6209. /* cnc_rdscaling:read scaling data for position data */
  6210. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6211. public class ODBSCL
  6212. {
  6213. public short mode;
  6214. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  6215. public int[] center;
  6216. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  6217. public int[] magnif;
  6218. } /* In case that the number of axes is MAX_AXIS */
  6219. /* cnc_rd3dtofs:read 3D tool offset for position data */
  6220. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6221. public class ODB3DTO
  6222. {
  6223. public short mode;
  6224. [MarshalAs(UnmanagedType.ByValArray,SizeConst=3)]
  6225. public short[] ofs_axes;
  6226. [MarshalAs(UnmanagedType.ByValArray,SizeConst=3)]
  6227. public int[] ofsvct;
  6228. }
  6229. /* cnc_rdposofs:read tool position offset for position data */
  6230. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6231. public class ODBPOFS
  6232. {
  6233. public short mode;
  6234. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  6235. public int[] ofsvct;
  6236. } /* In case that the number of axes is MAX_AXIS */
  6237. /* cnc_rdhpccset:read hpcc setting data */
  6238. /* cnc_wrhpccset:write hpcc setting data */
  6239. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6240. public class IODBHPST
  6241. {
  6242. public short slct ;
  6243. public short hpcc ;
  6244. public short multi ;
  6245. public short ovr1 ;
  6246. public short ign_f ;
  6247. public short foward ;
  6248. public int max_f ;
  6249. public short ovr2 ;
  6250. public short ovr3 ;
  6251. public short ovr4 ;
  6252. [MarshalAs(UnmanagedType.ByValArray,SizeConst=7)]
  6253. public int[] reserve = new int[7];
  6254. }
  6255. /* cnc_rdhpcctupr:read hpcc tuning data ( parameter input ) */
  6256. /* cnc_wrhpcctupr:write hpcc tuning data ( parameter input ) */
  6257. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6258. public class IODBHPPR_tune
  6259. {
  6260. public short slct ;
  6261. public short diff ;
  6262. public short fine ;
  6263. public short acc_lv ;
  6264. public int max_f ;
  6265. public short bipl ;
  6266. public short aipl ;
  6267. public int corner ;
  6268. public short clamp ;
  6269. public int radius ;
  6270. public int max_cf ;
  6271. public int min_cf ;
  6272. public int foward ;
  6273. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  6274. public int[] reserve = new int[5] ;
  6275. }
  6276. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6277. public class IODBHPPR
  6278. {
  6279. public IODBHPPR_tune tune1 = new IODBHPPR_tune();
  6280. public IODBHPPR_tune tune2 = new IODBHPPR_tune();
  6281. public IODBHPPR_tune tune3 = new IODBHPPR_tune();
  6282. }
  6283. /* cnc_rdhpcctuac:read hpcc tuning data ( acc input ) */
  6284. /* cnc_wrhpcctuac:write hpcc tuning data ( acc input ) */
  6285. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6286. public class IODBHPAC_tune
  6287. {
  6288. public short slct ;
  6289. public short diff ;
  6290. public short fine ;
  6291. public short acc_lv ;
  6292. public int bipl ;
  6293. public short aipl ;
  6294. public int corner ;
  6295. public int clamp ;
  6296. public int c_acc ;
  6297. public int foward ;
  6298. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  6299. public int[] reserve = new int[8];
  6300. }
  6301. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6302. public class IODBHPAC
  6303. {
  6304. public IODBHPAC_tune tune1 = new IODBHPAC_tune();
  6305. public IODBHPAC_tune tune2 = new IODBHPAC_tune();
  6306. public IODBHPAC_tune tune3 = new IODBHPAC_tune();
  6307. }
  6308. /* cnc_rd3dtooltip:read tip of tool for 3D handle */
  6309. /* cnc_rd3dmovrlap:read move overrlap of tool for 3D handle */
  6310. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6311. public class ODB3DHDL_data
  6312. {
  6313. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  6314. public short[] axes ;
  6315. [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  6316. public int[] data ;
  6317. }
  6318. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6319. public class ODB3DHDL
  6320. {
  6321. public ODB3DHDL_data data1 = new ODB3DHDL_data();
  6322. public ODB3DHDL_data data2 = new ODB3DHDL_data();
  6323. }
  6324. /* cnc_rd3dpulse:read pulse for 3D handle */
  6325. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6326. public class ODB3DPLS_data
  6327. {
  6328. public int right_angle_x ;
  6329. public int right_angle_y ;
  6330. public int tool_axis ;
  6331. public int tool_tip_a_b ;
  6332. public int tool_tip_c ;
  6333. }
  6334. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6335. public class ODB3DPLS
  6336. {
  6337. public ODB3DPLS_data pls1 = new ODB3DPLS_data();
  6338. public ODB3DPLS_data pls2 = new ODB3DPLS_data();
  6339. }
  6340. /* cnc_rdaxisname: read axis name */
  6341. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6342. public class ODBAXISNAME_data
  6343. {
  6344. public byte name; /* axis name */
  6345. public byte suff; /* suffix */
  6346. }
  6347. #if M_AXIS2
  6348. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6349. public class ODBAXISNAME
  6350. {
  6351. public ODBAXISNAME_data data1 = new ODBAXISNAME_data();
  6352. public ODBAXISNAME_data data2 = new ODBAXISNAME_data();
  6353. public ODBAXISNAME_data data3 = new ODBAXISNAME_data();
  6354. public ODBAXISNAME_data data4 = new ODBAXISNAME_data();
  6355. public ODBAXISNAME_data data5 = new ODBAXISNAME_data();
  6356. public ODBAXISNAME_data data6 = new ODBAXISNAME_data();
  6357. public ODBAXISNAME_data data7 = new ODBAXISNAME_data();
  6358. public ODBAXISNAME_data data8 = new ODBAXISNAME_data();
  6359. public ODBAXISNAME_data data9 = new ODBAXISNAME_data();
  6360. public ODBAXISNAME_data data10= new ODBAXISNAME_data();
  6361. public ODBAXISNAME_data data11= new ODBAXISNAME_data();
  6362. public ODBAXISNAME_data data12= new ODBAXISNAME_data();
  6363. public ODBAXISNAME_data data13= new ODBAXISNAME_data();
  6364. public ODBAXISNAME_data data14= new ODBAXISNAME_data();
  6365. public ODBAXISNAME_data data15= new ODBAXISNAME_data();
  6366. public ODBAXISNAME_data data16= new ODBAXISNAME_data();
  6367. public ODBAXISNAME_data data17= new ODBAXISNAME_data();
  6368. public ODBAXISNAME_data data18= new ODBAXISNAME_data();
  6369. public ODBAXISNAME_data data19= new ODBAXISNAME_data();
  6370. public ODBAXISNAME_data data20= new ODBAXISNAME_data();
  6371. public ODBAXISNAME_data data21= new ODBAXISNAME_data();
  6372. public ODBAXISNAME_data data22= new ODBAXISNAME_data();
  6373. public ODBAXISNAME_data data23= new ODBAXISNAME_data();
  6374. public ODBAXISNAME_data data24= new ODBAXISNAME_data();
  6375. }
  6376. #elif FS15D
  6377. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6378. public class ODBAXISNAME
  6379. {
  6380. public ODBAXISNAME_data data1 = new ODBAXISNAME_data();
  6381. public ODBAXISNAME_data data2 = new ODBAXISNAME_data();
  6382. public ODBAXISNAME_data data3 = new ODBAXISNAME_data();
  6383. public ODBAXISNAME_data data4 = new ODBAXISNAME_data();
  6384. public ODBAXISNAME_data data5 = new ODBAXISNAME_data();
  6385. public ODBAXISNAME_data data6 = new ODBAXISNAME_data();
  6386. public ODBAXISNAME_data data7 = new ODBAXISNAME_data();
  6387. public ODBAXISNAME_data data8 = new ODBAXISNAME_data();
  6388. public ODBAXISNAME_data data9 = new ODBAXISNAME_data();
  6389. public ODBAXISNAME_data data10= new ODBAXISNAME_data();
  6390. }
  6391. #else
  6392. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6393. public class ODBAXISNAME
  6394. {
  6395. public ODBAXISNAME_data data1 = new ODBAXISNAME_data();
  6396. public ODBAXISNAME_data data2 = new ODBAXISNAME_data();
  6397. public ODBAXISNAME_data data3 = new ODBAXISNAME_data();
  6398. public ODBAXISNAME_data data4 = new ODBAXISNAME_data();
  6399. public ODBAXISNAME_data data5 = new ODBAXISNAME_data();
  6400. public ODBAXISNAME_data data6 = new ODBAXISNAME_data();
  6401. public ODBAXISNAME_data data7 = new ODBAXISNAME_data();
  6402. public ODBAXISNAME_data data8 = new ODBAXISNAME_data();
  6403. }
  6404. #endif
  6405. /* cnc_rdspdlname: read spindle name */
  6406. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6407. public class ODBSPDLNAME_data
  6408. {
  6409. public byte name; /* spindle name */
  6410. public byte suff1; /* suffix */
  6411. public byte suff2; /* suffix */
  6412. public byte suff3; /* suffix */
  6413. }
  6414. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6415. public class ODBSPDLNAME
  6416. {
  6417. public ODBSPDLNAME_data data1 = new ODBSPDLNAME_data();
  6418. public ODBSPDLNAME_data data2 = new ODBSPDLNAME_data();
  6419. public ODBSPDLNAME_data data3 = new ODBSPDLNAME_data();
  6420. public ODBSPDLNAME_data data4 = new ODBSPDLNAME_data();
  6421. }
  6422. /* cnc_exaxisname: read extended axis name */
  6423. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6424. public class ODBEXAXISNAME
  6425. {
  6426. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6427. public string axname1 = new string(' ',4) ;
  6428. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6429. public string axname2 = new string(' ',4) ;
  6430. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6431. public string axname3 = new string(' ',4) ;
  6432. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6433. public string axname4 = new string(' ',4) ;
  6434. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6435. public string axname5 = new string(' ',4) ;
  6436. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6437. public string axname6 = new string(' ',4) ;
  6438. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6439. public string axname7 = new string(' ',4) ;
  6440. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6441. public string axname8 = new string(' ',4) ;
  6442. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6443. public string axname9 = new string(' ',4) ;
  6444. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6445. public string axname10 = new string(' ',4) ;
  6446. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6447. public string axname11 = new string(' ',4) ;
  6448. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6449. public string axname12 = new string(' ',4) ;
  6450. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6451. public string axname13 = new string(' ',4) ;
  6452. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6453. public string axname14 = new string(' ',4) ;
  6454. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6455. public string axname15 = new string(' ',4) ;
  6456. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6457. public string axname16 = new string(' ',4) ;
  6458. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6459. public string axname17 = new string(' ',4) ;
  6460. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6461. public string axname18 = new string(' ',4) ;
  6462. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6463. public string axname19 = new string(' ',4) ;
  6464. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6465. public string axname20 = new string(' ',4) ;
  6466. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6467. public string axname21 = new string(' ',4) ;
  6468. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6469. public string axname22 = new string(' ',4) ;
  6470. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6471. public string axname23 = new string(' ',4) ;
  6472. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6473. public string axname24 = new string(' ',4) ;
  6474. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6475. public string axname25 = new string(' ',4) ;
  6476. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6477. public string axname26 = new string(' ',4) ;
  6478. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6479. public string axname27 = new string(' ',4) ;
  6480. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6481. public string axname28 = new string(' ',4) ;
  6482. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6483. public string axname29 = new string(' ',4) ;
  6484. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6485. public string axname30 = new string(' ',4) ;
  6486. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6487. public string axname31 = new string(' ',4) ;
  6488. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  6489. public string axname32 = new string(' ',4) ;
  6490. }
  6491. /* cnc_wrunsolicprm: Set the unsolicited message parameters */
  6492. /* cnc_rdunsolicprm: Get the unsolicited message parameters */
  6493. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6494. public struct IODBUNSOLIC_pmc
  6495. {
  6496. public short type ;
  6497. public short rdaddr ;
  6498. public short rdno ;
  6499. public short rdsize ;
  6500. private int dummy ;
  6501. }
  6502. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  6503. public class IODBUNSOLIC
  6504. {
  6505. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  6506. public string ipaddr= new string(' ',16) ;
  6507. public ushort port ;
  6508. public short reqaddr ;
  6509. public short pmcno ;
  6510. public short retry ;
  6511. public short timeout ;
  6512. public short alivetime;
  6513. public short setno ;
  6514. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)]
  6515. public IODBUNSOLIC_pmc[] rddata = new IODBUNSOLIC_pmc[3];
  6516. }
  6517. /* cnc_rdunsolicmsg: Reads the unsolicited message data */
  6518. [StructLayout(LayoutKind.Sequential, Pack = 4)]
  6519. public struct IDBUNSOLICMSG_msg
  6520. {
  6521. public short rdsize;
  6522. public IntPtr data;
  6523. }
  6524. [StructLayout(LayoutKind.Sequential, Pack = 4)]
  6525. public class IDBUNSOLICMSG
  6526. {
  6527. public short getno ;
  6528. [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)]
  6529. public IDBUNSOLICMSG_msg[] msg = new IDBUNSOLICMSG_msg[3];
  6530. }
  6531. /* cnc_rdpm_cncitem: read cnc maintenance item */
  6532. /* cnc_rdpm_mcnitem: read machine specific maintenance item */
  6533. /* cnc_wrpm_mcnitem: write machine specific maintenance item */
  6534. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6535. public class IODBITEM
  6536. {
  6537. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6538. public string name1 = new string(' ',62) ;
  6539. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6540. public string name2 = new string(' ',62) ;
  6541. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6542. public string name3 = new string(' ',62) ;
  6543. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6544. public string name4 = new string(' ',62) ;
  6545. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6546. public string name5 = new string(' ',62) ;
  6547. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6548. public string name6 = new string(' ',62) ;
  6549. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6550. public string name7 = new string(' ',62) ;
  6551. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6552. public string name8 = new string(' ',62) ;
  6553. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6554. public string name9 = new string(' ',62) ;
  6555. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6556. public string name10 = new string(' ',62) ;
  6557. }
  6558. /* cnc_rdpm_item:read maintenance item status */
  6559. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6560. public class IODBPMAINTE_data
  6561. {
  6562. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=62)]
  6563. public string name = new string(' ',62) ; /* name */
  6564. public int type; /* life count type */
  6565. public int total; /* total life time (minite basis) */
  6566. public int remain; /* life rest time */
  6567. public int stat; /* life state */
  6568. }
  6569. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6570. public class IODBPMAINTE
  6571. {
  6572. public IODBPMAINTE_data data1 = new IODBPMAINTE_data();
  6573. public IODBPMAINTE_data data2 = new IODBPMAINTE_data();
  6574. public IODBPMAINTE_data data3 = new IODBPMAINTE_data();
  6575. public IODBPMAINTE_data data4 = new IODBPMAINTE_data();
  6576. public IODBPMAINTE_data data5 = new IODBPMAINTE_data();
  6577. public IODBPMAINTE_data data6 = new IODBPMAINTE_data();
  6578. public IODBPMAINTE_data data7 = new IODBPMAINTE_data();
  6579. public IODBPMAINTE_data data8 = new IODBPMAINTE_data();
  6580. public IODBPMAINTE_data data9 = new IODBPMAINTE_data();
  6581. public IODBPMAINTE_data data10 = new IODBPMAINTE_data();
  6582. }
  6583. /* cnc_sysinfo_ex:read CNC system path information */
  6584. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6585. public class ODBSYSEX_path
  6586. {
  6587. public short system;
  6588. public short group;
  6589. public short attrib;
  6590. public short ctrl_axis;
  6591. public short ctrl_srvo;
  6592. public short ctrl_spdl;
  6593. public short mchn_no;
  6594. public short reserved;
  6595. }
  6596. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6597. public class ODBSYSEX_data
  6598. {
  6599. public ODBSYSEX_path data1 = new ODBSYSEX_path();
  6600. public ODBSYSEX_path data2 = new ODBSYSEX_path();
  6601. public ODBSYSEX_path data3 = new ODBSYSEX_path();
  6602. public ODBSYSEX_path data4 = new ODBSYSEX_path();
  6603. public ODBSYSEX_path data5 = new ODBSYSEX_path();
  6604. public ODBSYSEX_path data6 = new ODBSYSEX_path();
  6605. public ODBSYSEX_path data7 = new ODBSYSEX_path();
  6606. public ODBSYSEX_path data8 = new ODBSYSEX_path();
  6607. public ODBSYSEX_path data9 = new ODBSYSEX_path();
  6608. public ODBSYSEX_path data10 = new ODBSYSEX_path();
  6609. }
  6610. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6611. public class ODBSYSEX
  6612. {
  6613. public short max_axis;
  6614. public short max_spdl;
  6615. public short max_path;
  6616. public short max_mchn;
  6617. public short ctrl_axis;
  6618. public short ctrl_srvo;
  6619. public short ctrl_spdl;
  6620. public short ctrl_path;
  6621. public short ctrl_mchn;
  6622. [MarshalAs(UnmanagedType.ByValArray,SizeConst=3)]
  6623. public short[] reserved = new short[3];
  6624. public ODBSYSEX_data path = new ODBSYSEX_data();
  6625. }
  6626. /*------------------*/
  6627. /* CNC : SERCOS I/F */
  6628. /*------------------*/
  6629. /* cnc_srcsrdidinfo:Read ID information of SERCOS I/F */
  6630. /* cnc_srcswridinfo:Write ID information of SERCOS I/F */
  6631. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  6632. public class IODBIDINF
  6633. {
  6634. public int id_no;
  6635. public short drv_no;
  6636. public short acc_element;
  6637. public short err_general;
  6638. public short err_id_no;
  6639. public short err_id_name;
  6640. public short err_attr;
  6641. public short err_unit;
  6642. public short err_min_val;
  6643. public short err_max_val;
  6644. public short id_name_len;
  6645. public short id_name_max;
  6646. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=60)]
  6647. public string id_name= new string(' ',60) ;
  6648. public int attr;
  6649. public short unit_len;
  6650. public short unit_max;
  6651. [MarshalAs(UnmanagedType.ByValArray,SizeConst=12)]
  6652. public byte[] unit = new byte[12];
  6653. public int min_val;
  6654. public int max_val;
  6655. }
  6656. /* cnc_srcsrdexstat:Get execution status of reading/writing operation data of SERCOS I/F */
  6657. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6658. public class ODBSRCSST
  6659. {
  6660. public short acc_element;
  6661. public short err_general;
  6662. public short err_id_no;
  6663. public short err_attr;
  6664. public short err_op_data;
  6665. }
  6666. /* cnc_srcsrdlayout:Read drive assign of SERCOS I/F */
  6667. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  6668. public class ODBSRCSLYT
  6669. {
  6670. [MarshalAs(UnmanagedType.ByValArray,SizeConst=4)]
  6671. public short[] spndl;
  6672. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  6673. public short[] servo;
  6674. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=8)]
  6675. public string axis_name= new string(' ',8) ;
  6676. }
  6677. /*----------------------------*/
  6678. /* CNC : Servo Guide */
  6679. /*----------------------------*/
  6680. /* cnc_sdsetchnl:Servo Guide (Channel data set) */
  6681. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6682. public class IDBCHAN_data
  6683. {
  6684. public byte chno;
  6685. public sbyte axis;
  6686. public int datanum;
  6687. public ushort datainf;
  6688. public short dataadr;
  6689. }
  6690. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6691. public class IDBCHAN
  6692. {
  6693. public IDBCHAN_data data1 = new IDBCHAN_data();
  6694. public IDBCHAN_data data2 = new IDBCHAN_data();
  6695. public IDBCHAN_data data3 = new IDBCHAN_data();
  6696. public IDBCHAN_data data4 = new IDBCHAN_data();
  6697. public IDBCHAN_data data5 = new IDBCHAN_data();
  6698. public IDBCHAN_data data6 = new IDBCHAN_data();
  6699. public IDBCHAN_data data7 = new IDBCHAN_data();
  6700. public IDBCHAN_data data8 = new IDBCHAN_data();
  6701. }
  6702. /* cnc_sdsetchnl:Servo Guide (read Sampling data) */
  6703. /* cnc_sfbreadsmpl:Servo feedback data (read Sampling data) */
  6704. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6705. public class ODBSD
  6706. {
  6707. public IntPtr chadata;
  6708. public IntPtr count;
  6709. }
  6710. /* cnc_sfbsetchnl:Servo feedback data (Channel data set) */
  6711. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6712. public class IDBSFBCHAN
  6713. {
  6714. public byte chno;
  6715. public sbyte axis;
  6716. public ushort shift;
  6717. }
  6718. /*-------------------------*/
  6719. /* CNC : FS18-LN function */
  6720. /*-------------------------*/
  6721. /* cnc_allowcnd:read allowanced state */
  6722. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6723. public class ODBCAXIS
  6724. {
  6725. public short dummy ; /* dummy */
  6726. public short type ; /* axis number */
  6727. [MarshalAs(UnmanagedType.ByValArray,SizeConst=MAX_AXIS)]
  6728. public sbyte[] data ; /* data value */
  6729. }
  6730. /*---------------------------------*/
  6731. /* CNC : C-EXE SRAM file function */
  6732. /*---------------------------------*/
  6733. /* read C-EXE SRAM disk directory */
  6734. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  6735. public class CFILEINFO_data
  6736. {
  6737. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=12)]
  6738. public string fname= new string(' ',12) ; /* file name */
  6739. public int file_size ; /* file size (bytes) */
  6740. public int file_attr ; /* attribute */
  6741. public short year; /* year */
  6742. public short month; /* month */
  6743. public short day; /* day */
  6744. public short hour; /* hour */
  6745. public short minute; /* mimute */
  6746. public short second; /* second */
  6747. }
  6748. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6749. public class CFILEINFO
  6750. {
  6751. public CFILEINFO_data data1 = new CFILEINFO_data();
  6752. public CFILEINFO_data data2 = new CFILEINFO_data();
  6753. public CFILEINFO_data data3 = new CFILEINFO_data();
  6754. public CFILEINFO_data data4 = new CFILEINFO_data();
  6755. public CFILEINFO_data data5 = new CFILEINFO_data();
  6756. public CFILEINFO_data data6 = new CFILEINFO_data();
  6757. public CFILEINFO_data data7 = new CFILEINFO_data();
  6758. public CFILEINFO_data data8 = new CFILEINFO_data();
  6759. public CFILEINFO_data data9 = new CFILEINFO_data();
  6760. public CFILEINFO_data data10= new CFILEINFO_data();
  6761. }
  6762. /*-----*/
  6763. /* PMC */
  6764. /*-----*/
  6765. /* pmc_rdpmcrng:read PMC data(area specified) */
  6766. /* pmc_wrpmcrng:write PMC data(area specified) */
  6767. [StructLayout(LayoutKind.Explicit)]
  6768. public class IODBPMC0
  6769. {
  6770. [ FieldOffset( 0 )]
  6771. public short type_a ; /* PMC address type */
  6772. [ FieldOffset( 2 )]
  6773. public short type_d ; /* PMC data type */
  6774. [ FieldOffset( 4 )]
  6775. public short datano_s ; /* start PMC address */
  6776. [ FieldOffset( 6 )]
  6777. public short datano_e ; /* end PMC address */
  6778. [ FieldOffset( 8 ),
  6779. MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  6780. public byte[] cdata; /* PMC data */
  6781. } /* In case that the number of data is 5 */
  6782. [StructLayout(LayoutKind.Explicit)]
  6783. public class IODBPMC1
  6784. {
  6785. [ FieldOffset( 0 )]
  6786. public short type_a ; /* PMC address type */
  6787. [ FieldOffset( 2 )]
  6788. public short type_d ; /* PMC data type */
  6789. [ FieldOffset( 4 )]
  6790. public short datano_s ; /* start PMC address */
  6791. [ FieldOffset( 6 )]
  6792. public short datano_e ; /* end PMC address */
  6793. [ FieldOffset( 8 ),
  6794. MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  6795. public short[] idata;
  6796. } /* In case that the number of data is 5 */
  6797. [StructLayout(LayoutKind.Explicit)]
  6798. public class IODBPMC2
  6799. {
  6800. [ FieldOffset( 0 )]
  6801. public short type_a ; /* PMC address type */
  6802. [ FieldOffset( 2 )]
  6803. public short type_d ; /* PMC data type */
  6804. [ FieldOffset( 4 )]
  6805. public short datano_s ; /* start PMC address */
  6806. [ FieldOffset( 6 )]
  6807. public short datano_e ; /* end PMC address */
  6808. [ FieldOffset( 8 ),
  6809. MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]
  6810. public int[] ldata;
  6811. } /* In case that the number of data is 5 */
  6812. /* pmc_rdpmcinfo:read informations of PMC data */
  6813. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6814. public class ODBPMCINF_info
  6815. {
  6816. public char pmc_adr ;
  6817. public byte adr_attr ;
  6818. public ushort top_num ;
  6819. public ushort last_num ;
  6820. }
  6821. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6822. public class ODBPMCINF1
  6823. {
  6824. public ODBPMCINF_info info1 = new ODBPMCINF_info();
  6825. public ODBPMCINF_info info2 = new ODBPMCINF_info();
  6826. public ODBPMCINF_info info3 = new ODBPMCINF_info();
  6827. public ODBPMCINF_info info4 = new ODBPMCINF_info();
  6828. public ODBPMCINF_info info5 = new ODBPMCINF_info();
  6829. public ODBPMCINF_info info6 = new ODBPMCINF_info();
  6830. public ODBPMCINF_info info7 = new ODBPMCINF_info();
  6831. public ODBPMCINF_info info8 = new ODBPMCINF_info();
  6832. public ODBPMCINF_info info9 = new ODBPMCINF_info();
  6833. public ODBPMCINF_info info10= new ODBPMCINF_info();
  6834. public ODBPMCINF_info info11= new ODBPMCINF_info();
  6835. public ODBPMCINF_info info12= new ODBPMCINF_info();
  6836. public ODBPMCINF_info info13= new ODBPMCINF_info();
  6837. public ODBPMCINF_info info14= new ODBPMCINF_info();
  6838. public ODBPMCINF_info info15= new ODBPMCINF_info();
  6839. public ODBPMCINF_info info16= new ODBPMCINF_info();
  6840. public ODBPMCINF_info info17= new ODBPMCINF_info();
  6841. public ODBPMCINF_info info18= new ODBPMCINF_info();
  6842. public ODBPMCINF_info info19= new ODBPMCINF_info();
  6843. public ODBPMCINF_info info20= new ODBPMCINF_info();
  6844. public ODBPMCINF_info info21= new ODBPMCINF_info();
  6845. public ODBPMCINF_info info22= new ODBPMCINF_info();
  6846. public ODBPMCINF_info info23= new ODBPMCINF_info();
  6847. public ODBPMCINF_info info24= new ODBPMCINF_info();
  6848. public ODBPMCINF_info info25= new ODBPMCINF_info();
  6849. public ODBPMCINF_info info26= new ODBPMCINF_info();
  6850. public ODBPMCINF_info info27= new ODBPMCINF_info();
  6851. public ODBPMCINF_info info28= new ODBPMCINF_info();
  6852. public ODBPMCINF_info info29= new ODBPMCINF_info();
  6853. public ODBPMCINF_info info30= new ODBPMCINF_info();
  6854. public ODBPMCINF_info info31= new ODBPMCINF_info();
  6855. public ODBPMCINF_info info32= new ODBPMCINF_info();
  6856. public ODBPMCINF_info info33= new ODBPMCINF_info();
  6857. public ODBPMCINF_info info34= new ODBPMCINF_info();
  6858. public ODBPMCINF_info info35= new ODBPMCINF_info();
  6859. public ODBPMCINF_info info36= new ODBPMCINF_info();
  6860. public ODBPMCINF_info info37= new ODBPMCINF_info();
  6861. public ODBPMCINF_info info38= new ODBPMCINF_info();
  6862. public ODBPMCINF_info info39= new ODBPMCINF_info();
  6863. public ODBPMCINF_info info40= new ODBPMCINF_info();
  6864. public ODBPMCINF_info info41= new ODBPMCINF_info();
  6865. public ODBPMCINF_info info42= new ODBPMCINF_info();
  6866. public ODBPMCINF_info info43= new ODBPMCINF_info();
  6867. public ODBPMCINF_info info44= new ODBPMCINF_info();
  6868. public ODBPMCINF_info info45= new ODBPMCINF_info();
  6869. public ODBPMCINF_info info46= new ODBPMCINF_info();
  6870. public ODBPMCINF_info info47= new ODBPMCINF_info();
  6871. public ODBPMCINF_info info48= new ODBPMCINF_info();
  6872. public ODBPMCINF_info info49= new ODBPMCINF_info();
  6873. public ODBPMCINF_info info50= new ODBPMCINF_info();
  6874. public ODBPMCINF_info info51= new ODBPMCINF_info();
  6875. public ODBPMCINF_info info52= new ODBPMCINF_info();
  6876. public ODBPMCINF_info info53= new ODBPMCINF_info();
  6877. public ODBPMCINF_info info54= new ODBPMCINF_info();
  6878. public ODBPMCINF_info info55= new ODBPMCINF_info();
  6879. public ODBPMCINF_info info56= new ODBPMCINF_info();
  6880. public ODBPMCINF_info info57= new ODBPMCINF_info();
  6881. public ODBPMCINF_info info58= new ODBPMCINF_info();
  6882. public ODBPMCINF_info info59= new ODBPMCINF_info();
  6883. public ODBPMCINF_info info60= new ODBPMCINF_info();
  6884. public ODBPMCINF_info info61= new ODBPMCINF_info();
  6885. public ODBPMCINF_info info62= new ODBPMCINF_info();
  6886. public ODBPMCINF_info info63= new ODBPMCINF_info();
  6887. public ODBPMCINF_info info64= new ODBPMCINF_info();
  6888. }
  6889. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6890. public class ODBPMCINF
  6891. {
  6892. public short datano ;
  6893. public ODBPMCINF1 info = new ODBPMCINF1();
  6894. }
  6895. /* pmc_rdcntldata:read PMC parameter data table control data */
  6896. /* pmc_wrcntldata:write PMC parameter data table control data */
  6897. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6898. public class IODBPMCCNTL_info
  6899. {
  6900. public byte tbl_prm ;
  6901. public byte data_type ;
  6902. public ushort data_size ;
  6903. public ushort data_dsp ;
  6904. public short dummy ;
  6905. }
  6906. [StructLayout(LayoutKind.Sequential,Pack=4)]
  6907. public class IODBPMCCNTL1
  6908. {
  6909. public IODBPMCCNTL_info info1 = new IODBPMCCNTL_info();
  6910. public IODBPMCCNTL_info info2 = new IODBPMCCNTL_info();
  6911. public IODBPMCCNTL_info info3 = new IODBPMCCNTL_info();
  6912. public IODBPMCCNTL_info info4 = new IODBPMCCNTL_info();
  6913. public IODBPMCCNTL_info info5 = new IODBPMCCNTL_info();
  6914. public IODBPMCCNTL_info info6 = new IODBPMCCNTL_info();
  6915. public IODBPMCCNTL_info info7 = new IODBPMCCNTL_info();
  6916. public IODBPMCCNTL_info info8 = new IODBPMCCNTL_info();
  6917. public IODBPMCCNTL_info info9 = new IODBPMCCNTL_info();
  6918. public IODBPMCCNTL_info info10= new IODBPMCCNTL_info();
  6919. public IODBPMCCNTL_info info11= new IODBPMCCNTL_info();
  6920. public IODBPMCCNTL_info info12= new IODBPMCCNTL_info();
  6921. public IODBPMCCNTL_info info13= new IODBPMCCNTL_info();
  6922. public IODBPMCCNTL_info info14= new IODBPMCCNTL_info();
  6923. public IODBPMCCNTL_info info15= new IODBPMCCNTL_info();
  6924. public IODBPMCCNTL_info info16= new IODBPMCCNTL_info();
  6925. public IODBPMCCNTL_info info17= new IODBPMCCNTL_info();
  6926. public IODBPMCCNTL_info info18= new IODBPMCCNTL_info();
  6927. public IODBPMCCNTL_info info19= new IODBPMCCNTL_info();
  6928. public IODBPMCCNTL_info info20= new IODBPMCCNTL_info();
  6929. public IODBPMCCNTL_info info21= new IODBPMCCNTL_info();
  6930. public IODBPMCCNTL_info info22= new IODBPMCCNTL_info();
  6931. public IODBPMCCNTL_info info23= new IODBPMCCNTL_info();
  6932. public IODBPMCCNTL_info info24= new IODBPMCCNTL_info();
  6933. public IODBPMCCNTL_info info25= new IODBPMCCNTL_info();
  6934. public IODBPMCCNTL_info info26= new IODBPMCCNTL_info();
  6935. public IODBPMCCNTL_info info27= new IODBPMCCNTL_info();
  6936. public IODBPMCCNTL_info info28= new IODBPMCCNTL_info();
  6937. public IODBPMCCNTL_info info29= new IODBPMCCNTL_info();
  6938. public IODBPMCCNTL_info info30= new IODBPMCCNTL_info();
  6939. public IODBPMCCNTL_info info31= new IODBPMCCNTL_info();
  6940. public IODBPMCCNTL_info info32= new IODBPMCCNTL_info();
  6941. public IODBPMCCNTL_info info33= new IODBPMCCNTL_info();
  6942. public IODBPMCCNTL_info info34= new IODBPMCCNTL_info();
  6943. public IODBPMCCNTL_info info35= new IODBPMCCNTL_info();
  6944. public IODBPMCCNTL_info info36= new IODBPMCCNTL_info();
  6945. public IODBPMCCNTL_info info37= new IODBPMCCNTL_info();
  6946. public IODBPMCCNTL_info info38= new IODBPMCCNTL_info();
  6947. public IODBPMCCNTL_info info39= new IODBPMCCNTL_info();
  6948. public IODBPMCCNTL_info info40= new IODBPMCCNTL_info();
  6949. public IODBPMCCNTL_info info41= new IODBPMCCNTL_info();
  6950. public IODBPMCCNTL_info info42= new IODBPMCCNTL_info();
  6951. public IODBPMCCNTL_info info43= new IODBPMCCNTL_info();
  6952. public IODBPMCCNTL_info info44= new IODBPMCCNTL_info();
  6953. public IODBPMCCNTL_info info45= new IODBPMCCNTL_info();
  6954. public IODBPMCCNTL_info info46= new IODBPMCCNTL_info();
  6955. public IODBPMCCNTL_info info47= new IODBPMCCNTL_info();
  6956. public IODBPMCCNTL_info info48= new IODBPMCCNTL_info();
  6957. public IODBPMCCNTL_info info49= new IODBPMCCNTL_info();
  6958. public IODBPMCCNTL_info info50= new IODBPMCCNTL_info();
  6959. public IODBPMCCNTL_info info51= new IODBPMCCNTL_info();
  6960. public IODBPMCCNTL_info info52= new IODBPMCCNTL_info();
  6961. public IODBPMCCNTL_info info53= new IODBPMCCNTL_info();
  6962. public IODBPMCCNTL_info info54= new IODBPMCCNTL_info();
  6963. public IODBPMCCNTL_info info55= new IODBPMCCNTL_info();
  6964. public IODBPMCCNTL_info info56= new IODBPMCCNTL_info();
  6965. public IODBPMCCNTL_info info57= new IODBPMCCNTL_info();
  6966. public IODBPMCCNTL_info info58= new IODBPMCCNTL_info();
  6967. public IODBPMCCNTL_info info59= new IODBPMCCNTL_info();
  6968. public IODBPMCCNTL_info info60= new IODBPMCCNTL_info();
  6969. public IODBPMCCNTL_info info61= new IODBPMCCNTL_info();
  6970. public IODBPMCCNTL_info info62= new IODBPMCCNTL_info();
  6971. public IODBPMCCNTL_info info63= new IODBPMCCNTL_info();
  6972. public IODBPMCCNTL_info info64= new IODBPMCCNTL_info();
  6973. public IODBPMCCNTL_info info65= new IODBPMCCNTL_info();
  6974. public IODBPMCCNTL_info info66= new IODBPMCCNTL_info();
  6975. public IODBPMCCNTL_info info67= new IODBPMCCNTL_info();
  6976. public IODBPMCCNTL_info info68= new IODBPMCCNTL_info();
  6977. public IODBPMCCNTL_info info69= new IODBPMCCNTL_info();
  6978. public IODBPMCCNTL_info info70= new IODBPMCCNTL_info();
  6979. public IODBPMCCNTL_info info71= new IODBPMCCNTL_info();
  6980. public IODBPMCCNTL_info info72= new IODBPMCCNTL_info();
  6981. public IODBPMCCNTL_info info73= new IODBPMCCNTL_info();
  6982. public IODBPMCCNTL_info info74= new IODBPMCCNTL_info();
  6983. public IODBPMCCNTL_info info75= new IODBPMCCNTL_info();
  6984. public IODBPMCCNTL_info info76= new IODBPMCCNTL_info();
  6985. public IODBPMCCNTL_info info77= new IODBPMCCNTL_info();
  6986. public IODBPMCCNTL_info info78= new IODBPMCCNTL_info();
  6987. public IODBPMCCNTL_info info79= new IODBPMCCNTL_info();
  6988. public IODBPMCCNTL_info info80= new IODBPMCCNTL_info();
  6989. public IODBPMCCNTL_info info81= new IODBPMCCNTL_info();
  6990. public IODBPMCCNTL_info info82= new IODBPMCCNTL_info();
  6991. public IODBPMCCNTL_info info83= new IODBPMCCNTL_info();
  6992. public IODBPMCCNTL_info info84= new IODBPMCCNTL_info();
  6993. public IODBPMCCNTL_info info85= new IODBPMCCNTL_info();
  6994. public IODBPMCCNTL_info info86= new IODBPMCCNTL_info();
  6995. public IODBPMCCNTL_info info87= new IODBPMCCNTL_info();
  6996. public IODBPMCCNTL_info info88= new IODBPMCCNTL_info();
  6997. public IODBPMCCNTL_info info89= new IODBPMCCNTL_info();
  6998. public IODBPMCCNTL_info info90= new IODBPMCCNTL_info();
  6999. public IODBPMCCNTL_info info91= new IODBPMCCNTL_info();
  7000. public IODBPMCCNTL_info info92= new IODBPMCCNTL_info();
  7001. public IODBPMCCNTL_info info93= new IODBPMCCNTL_info();
  7002. public IODBPMCCNTL_info info94= new IODBPMCCNTL_info();
  7003. public IODBPMCCNTL_info info95= new IODBPMCCNTL_info();
  7004. public IODBPMCCNTL_info info96= new IODBPMCCNTL_info();
  7005. public IODBPMCCNTL_info info97= new IODBPMCCNTL_info();
  7006. public IODBPMCCNTL_info info98= new IODBPMCCNTL_info();
  7007. public IODBPMCCNTL_info info99= new IODBPMCCNTL_info();
  7008. public IODBPMCCNTL_info info100= new IODBPMCCNTL_info();
  7009. }
  7010. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7011. public class IODBPMCCNTL
  7012. {
  7013. public short datano_s ;
  7014. public short dummy ;
  7015. public short datano_e ;
  7016. public IODBPMCCNTL1 info = new IODBPMCCNTL1();
  7017. }
  7018. /* pmc_rdalmmsg:read PMC alarm message */
  7019. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  7020. public class ODBPMCALM_data
  7021. {
  7022. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=128)]
  7023. public string almmsg= new string(' ',128) ; /* alarm message */
  7024. }
  7025. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7026. public class ODBPMCALM
  7027. {
  7028. public ODBPMCALM_data msg1 = new ODBPMCALM_data();
  7029. public ODBPMCALM_data msg2 = new ODBPMCALM_data();
  7030. public ODBPMCALM_data msg3 = new ODBPMCALM_data();
  7031. public ODBPMCALM_data msg4 = new ODBPMCALM_data();
  7032. public ODBPMCALM_data msg5 = new ODBPMCALM_data();
  7033. public ODBPMCALM_data msg6 = new ODBPMCALM_data();
  7034. public ODBPMCALM_data msg7 = new ODBPMCALM_data();
  7035. public ODBPMCALM_data msg8 = new ODBPMCALM_data();
  7036. public ODBPMCALM_data msg9 = new ODBPMCALM_data();
  7037. public ODBPMCALM_data msg10= new ODBPMCALM_data();
  7038. } /* In case that the number of data is 10 */
  7039. /* pmc_getdtailerr:get detail error for pmc */
  7040. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7041. public class ODBPMCERR
  7042. {
  7043. public short err_no ;
  7044. public short err_dtno ;
  7045. }
  7046. /* pmc_rdpmctitle:read pmc title data */
  7047. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  7048. public class ODBPMCTITLE
  7049. {
  7050. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=48)]
  7051. public string mtb= new string(' ',48) ;
  7052. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=48)]
  7053. public string machine= new string(' ',48) ;
  7054. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=48)]
  7055. public string type= new string(' ',48) ;
  7056. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=8)]
  7057. public string prgno= new string(' ',8) ;
  7058. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=4)]
  7059. public string prgvers= new string(' ',4) ;
  7060. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=48)]
  7061. public string prgdraw= new string(' ',48) ;
  7062. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  7063. public string date= new string(' ',32) ;
  7064. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=48)]
  7065. public string design= new string(' ',48) ;
  7066. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=48)]
  7067. public string written= new string(' ',48) ;
  7068. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=48)]
  7069. public string remarks= new string(' ',48) ;
  7070. }
  7071. /* pmc_rdpmcrng_ext:read PMC data */
  7072. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7073. public class IODBPMCEXT
  7074. {
  7075. public short type_a ; /* PMC address type */
  7076. public short type_d ; /* PMC data type */
  7077. public short datano_s ; /* start PMC address */
  7078. public short datano_e ; /* end PMC address */
  7079. public short err_code ; /* error code */
  7080. public short reserved ; /* reserved */
  7081. [MarshalAs(UnmanagedType.AsAny)]
  7082. public object data ; /* pointer to buffer */
  7083. }
  7084. /* pmc_rdpmcaddr:read PMC address information */
  7085. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7086. public class ODBPMCADR_info
  7087. {
  7088. public byte pmc_adr ;
  7089. public byte adr_attr ;
  7090. public ushort offset ;
  7091. public ushort top ;
  7092. public ushort num ;
  7093. }
  7094. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7095. public class ODBPMCADR1
  7096. {
  7097. public ODBPMCADR_info info1 = new ODBPMCADR_info();
  7098. public ODBPMCADR_info info2 = new ODBPMCADR_info();
  7099. public ODBPMCADR_info info3 = new ODBPMCADR_info();
  7100. public ODBPMCADR_info info4 = new ODBPMCADR_info();
  7101. public ODBPMCADR_info info5 = new ODBPMCADR_info();
  7102. public ODBPMCADR_info info6 = new ODBPMCADR_info();
  7103. public ODBPMCADR_info info7 = new ODBPMCADR_info();
  7104. public ODBPMCADR_info info8 = new ODBPMCADR_info();
  7105. public ODBPMCADR_info info9 = new ODBPMCADR_info();
  7106. public ODBPMCADR_info info10= new ODBPMCADR_info();
  7107. public ODBPMCADR_info info11= new ODBPMCADR_info();
  7108. public ODBPMCADR_info info12= new ODBPMCADR_info();
  7109. public ODBPMCADR_info info13= new ODBPMCADR_info();
  7110. public ODBPMCADR_info info14= new ODBPMCADR_info();
  7111. public ODBPMCADR_info info15= new ODBPMCADR_info();
  7112. public ODBPMCADR_info info16= new ODBPMCADR_info();
  7113. public ODBPMCADR_info info17= new ODBPMCADR_info();
  7114. public ODBPMCADR_info info18= new ODBPMCADR_info();
  7115. public ODBPMCADR_info info19= new ODBPMCADR_info();
  7116. public ODBPMCADR_info info20= new ODBPMCADR_info();
  7117. public ODBPMCADR_info info21= new ODBPMCADR_info();
  7118. public ODBPMCADR_info info22= new ODBPMCADR_info();
  7119. public ODBPMCADR_info info23= new ODBPMCADR_info();
  7120. public ODBPMCADR_info info24= new ODBPMCADR_info();
  7121. public ODBPMCADR_info info25= new ODBPMCADR_info();
  7122. public ODBPMCADR_info info26= new ODBPMCADR_info();
  7123. public ODBPMCADR_info info27= new ODBPMCADR_info();
  7124. public ODBPMCADR_info info28= new ODBPMCADR_info();
  7125. public ODBPMCADR_info info29= new ODBPMCADR_info();
  7126. public ODBPMCADR_info info30= new ODBPMCADR_info();
  7127. public ODBPMCADR_info info31= new ODBPMCADR_info();
  7128. public ODBPMCADR_info info32= new ODBPMCADR_info();
  7129. public ODBPMCADR_info info33= new ODBPMCADR_info();
  7130. public ODBPMCADR_info info34= new ODBPMCADR_info();
  7131. public ODBPMCADR_info info35= new ODBPMCADR_info();
  7132. public ODBPMCADR_info info36= new ODBPMCADR_info();
  7133. public ODBPMCADR_info info37= new ODBPMCADR_info();
  7134. public ODBPMCADR_info info38= new ODBPMCADR_info();
  7135. public ODBPMCADR_info info39= new ODBPMCADR_info();
  7136. public ODBPMCADR_info info40= new ODBPMCADR_info();
  7137. public ODBPMCADR_info info41= new ODBPMCADR_info();
  7138. public ODBPMCADR_info info42= new ODBPMCADR_info();
  7139. public ODBPMCADR_info info43= new ODBPMCADR_info();
  7140. public ODBPMCADR_info info44= new ODBPMCADR_info();
  7141. public ODBPMCADR_info info45= new ODBPMCADR_info();
  7142. public ODBPMCADR_info info46= new ODBPMCADR_info();
  7143. public ODBPMCADR_info info47= new ODBPMCADR_info();
  7144. public ODBPMCADR_info info48= new ODBPMCADR_info();
  7145. public ODBPMCADR_info info49= new ODBPMCADR_info();
  7146. public ODBPMCADR_info info50= new ODBPMCADR_info();
  7147. public ODBPMCADR_info info51= new ODBPMCADR_info();
  7148. public ODBPMCADR_info info52= new ODBPMCADR_info();
  7149. public ODBPMCADR_info info53= new ODBPMCADR_info();
  7150. public ODBPMCADR_info info54= new ODBPMCADR_info();
  7151. public ODBPMCADR_info info55= new ODBPMCADR_info();
  7152. public ODBPMCADR_info info56= new ODBPMCADR_info();
  7153. public ODBPMCADR_info info57= new ODBPMCADR_info();
  7154. public ODBPMCADR_info info58= new ODBPMCADR_info();
  7155. public ODBPMCADR_info info59= new ODBPMCADR_info();
  7156. public ODBPMCADR_info info60= new ODBPMCADR_info();
  7157. public ODBPMCADR_info info61= new ODBPMCADR_info();
  7158. public ODBPMCADR_info info62= new ODBPMCADR_info();
  7159. public ODBPMCADR_info info63= new ODBPMCADR_info();
  7160. public ODBPMCADR_info info64= new ODBPMCADR_info();
  7161. }
  7162. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7163. public class ODBPMCADR
  7164. {
  7165. public uint io_adr ;
  7166. public short datano ;
  7167. public ODBPMCADR1 info = new ODBPMCADR1();
  7168. }
  7169. /*--------------------------*/
  7170. /* PROFIBUS function */
  7171. /*--------------------------*/
  7172. /* pmc_prfrdconfig:read PROFIBUS configration data */
  7173. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  7174. public class ODBPRFCNF
  7175. {
  7176. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  7177. public string master_ser= new string(' ',5) ;
  7178. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=3)]
  7179. public string master_ver= new string(' ',3) ;
  7180. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  7181. public string slave_ser= new string(' ',5) ;
  7182. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=3)]
  7183. public string slave_ver= new string(' ',3) ;
  7184. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=5)]
  7185. public string cntl_ser= new string(' ',5) ;
  7186. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=3)]
  7187. public string cntl_ver= new string(' ',3) ;
  7188. }
  7189. /* pmc_prfrdbusprm:read bus parameter for master function */
  7190. /* pmc_prfwrbusprm:write bus parameter for master function */
  7191. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7192. public class IODBBUSPRM
  7193. {
  7194. public sbyte fdl_add ;
  7195. public sbyte baudrate ;
  7196. public ushort tsl ;
  7197. public ushort min_tsdr ;
  7198. public ushort max_tsdr ;
  7199. public byte tqui ;
  7200. public byte tset ;
  7201. public int ttr ;
  7202. public sbyte gap ;
  7203. public sbyte hsa ;
  7204. public sbyte max_retry ;
  7205. public byte bp_flag ;
  7206. public ushort min_slv_int ;
  7207. public ushort poll_tout ;
  7208. public ushort data_cntl ;
  7209. [MarshalAs(UnmanagedType.ByValArray,SizeConst=6)]
  7210. public byte[] reserve1 = new byte[6] ;
  7211. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  7212. public byte[] cls2_name = new byte[32] ;
  7213. public short user_dlen ;
  7214. [MarshalAs(UnmanagedType.ByValArray,SizeConst=62)]
  7215. public byte[] user_data = new byte[62] ;
  7216. [MarshalAs(UnmanagedType.ByValArray,SizeConst=96)]
  7217. public byte[] reserve2 = new byte[96] ;
  7218. }
  7219. /* pmc_prfrdslvprm:read slave parameter for master function */
  7220. /* pmc_prfwrslvprm:write slave parameter for master function */
  7221. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7222. public class IODBSLVPRM
  7223. {
  7224. public short dis_enb ;
  7225. public ushort ident_no ;
  7226. public byte slv_flag ;
  7227. public byte slv_type ;
  7228. [MarshalAs(UnmanagedType.ByValArray,SizeConst=12)]
  7229. public byte[] reserve1 = new byte[12];
  7230. public byte slv_stat ;
  7231. public byte wd_fact1 ;
  7232. public byte wd_fact2 ;
  7233. public byte min_tsdr ;
  7234. public char reserve2 ;
  7235. public byte grp_ident ;
  7236. public short user_plen ;
  7237. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  7238. public byte[] user_pdata = new byte[32];
  7239. public short cnfg_dlen ;
  7240. [MarshalAs(UnmanagedType.ByValArray,SizeConst=126)]
  7241. public byte[] cnfg_data = new byte[126];
  7242. public short slv_ulen ;
  7243. [MarshalAs(UnmanagedType.ByValArray,SizeConst=30)]
  7244. public byte[] slv_udata = new byte[30];
  7245. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  7246. public byte[] reserve3 = new byte[8];
  7247. }
  7248. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7249. public class IODBSLVPRM2
  7250. {
  7251. public short dis_enb ;
  7252. public ushort ident_no ;
  7253. public byte slv_flag ;
  7254. public byte slv_type ;
  7255. [MarshalAs(UnmanagedType.ByValArray,SizeConst=12)]
  7256. public byte[] reserve1 = new byte[12] ;
  7257. public byte slv_stat ;
  7258. public byte wd_fact1 ;
  7259. public byte wd_fact2 ;
  7260. public byte min_tsdr ;
  7261. public sbyte reserve2 ;
  7262. public byte grp_ident ;
  7263. public short user_plen ;
  7264. [MarshalAs(UnmanagedType.ByValArray,SizeConst=206)]
  7265. public byte[] user_pdata = new byte[206];
  7266. public short cnfg_dlen ;
  7267. [MarshalAs(UnmanagedType.ByValArray,SizeConst=126)]
  7268. public byte[] cnfg_data = new byte[126] ;
  7269. public short slv_ulen ;
  7270. [MarshalAs(UnmanagedType.ByValArray,SizeConst=30)]
  7271. public byte[] slv_udata = new byte[30] ;
  7272. [MarshalAs(UnmanagedType.ByValArray,SizeConst=8)]
  7273. public byte[] reserve3 = new byte[8];
  7274. }
  7275. /* pmc_prfrdallcadr:read allocation address for master function */
  7276. /* pmc_prfwrallcadr:set allocation address for master function */
  7277. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7278. public class IODBPRFADR
  7279. {
  7280. public byte di_size ;
  7281. public byte di_type ;
  7282. public ushort di_addr ;
  7283. public short reserve1;
  7284. public byte do_size ;
  7285. public byte do_type ;
  7286. public ushort do_addr ;
  7287. public short reserve2;
  7288. public byte dgn_size ;
  7289. public byte dgn_type ;
  7290. public ushort dgn_addr ;
  7291. }
  7292. /* pmc_prfrdslvaddr:read allocation address for slave function */
  7293. /* pmc_prfwrslvaddr:set allocation address for slave function */
  7294. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7295. public class IODBSLVADR
  7296. {
  7297. public byte slave_no ;
  7298. public byte di_size ;
  7299. public byte di_type ;
  7300. public ushort di_addr ;
  7301. public byte do_size ;
  7302. public byte do_type ;
  7303. public ushort do_addr ;
  7304. [MarshalAs(UnmanagedType.ByValArray,SizeConst=7)]
  7305. public byte[] reserve = new byte[7];
  7306. }
  7307. /* pmc_prfrdslvstat:read status for slave function */
  7308. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7309. public class ODBSLVST
  7310. {
  7311. public byte cnfg_stat ;
  7312. public byte prm_stat ;
  7313. public sbyte wdg_stat ;
  7314. public byte live_stat ;
  7315. public short ident_no ;
  7316. }
  7317. /* pmc_prfrdslvid:Reads slave index data of master function */
  7318. /* pmc_prfwrslvid:Writes slave index data of master function */
  7319. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7320. public class IODBSLVID
  7321. {
  7322. public short dis_enb ;
  7323. public short slave_no ;
  7324. public short nsl ;
  7325. public byte dgn_size ;
  7326. public char dgn_type ;
  7327. public ushort dgn_addr ;
  7328. }
  7329. /* pmc_prfrdslvprm2:Reads slave parameter of master function(2) */
  7330. /* pmc_prfwrslvprm2:Writes slave parameter of master function(2) */
  7331. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7332. public class IODBSLVPRM3
  7333. {
  7334. public ushort ident_no ;
  7335. public byte slv_flag ;
  7336. public byte slv_type ;
  7337. [MarshalAs(UnmanagedType.ByValArray,SizeConst=12)]
  7338. public char[] reserve1 = new char[12];
  7339. public byte slv_stat ;
  7340. public byte wd_fact1 ;
  7341. public byte wd_fact2 ;
  7342. public byte min_tsdr ;
  7343. public char reserve2 ;
  7344. public byte grp_ident ;
  7345. public short user_plen ;
  7346. [MarshalAs(UnmanagedType.ByValArray,SizeConst=206)]
  7347. public char[] user_pdata = new char[206];
  7348. public short slv_ulen ;
  7349. [MarshalAs(UnmanagedType.ByValArray,SizeConst=30)]
  7350. public char[] slv_udata = new char[30];
  7351. }
  7352. /* pmc_prfrddido:Reads DI/DO parameter of master function */
  7353. /* pmc_prfwrdido:Writes DI/DO parameter of master function */
  7354. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7355. public class IODBDIDO
  7356. {
  7357. public short slave_no ;
  7358. public short slot_no ;
  7359. public byte di_size ;
  7360. public char di_type ;
  7361. public ushort di_addr ;
  7362. public byte do_size ;
  7363. public char do_type ;
  7364. public ushort do_addr ;
  7365. public short shift;
  7366. public byte module_dlen ;
  7367. [MarshalAs(UnmanagedType.ByValArray,SizeConst=128)]
  7368. public char[] module_data = new char[128];
  7369. }
  7370. /* pmc_prfrdindiadr:Reads indication address of master function */
  7371. /* pmc_prfwrindiadr:Writes indication address of master function */
  7372. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7373. public class IODBINDEADR
  7374. {
  7375. public byte dummy ;
  7376. public char indi_type ;
  7377. public ushort indi_addr ;
  7378. }
  7379. /*-----------------------------------------------*/
  7380. /* DS : Data server & Ethernet board function */
  7381. /*-----------------------------------------------*/
  7382. /* etb_rdparam : read�@the parameter of the Ethernet board */
  7383. /* etb_wrparam : write the parameter of the Ethernet board */
  7384. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7385. public class TCPPRM
  7386. {
  7387. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  7388. public string OwnIPAddress = new string(' ',16);
  7389. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  7390. public string SubNetMask = new string(' ',16);
  7391. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  7392. public string RouterIPAddress = new string(' ',16);
  7393. }
  7394. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7395. public class HOSTPRM
  7396. {
  7397. public short DataServerPort ;
  7398. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  7399. public string DataServerIPAddress = new string(' ',16);
  7400. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  7401. public string DataServerUserName = new string(' ',32);
  7402. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  7403. public string DataServerPassword = new string(' ',32);
  7404. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=128)]
  7405. public string DataServerLoginDirectory = new string(' ',128);
  7406. }
  7407. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7408. public class FTPPRM
  7409. {
  7410. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  7411. public string FTPServerUserName = new string(' ',32);
  7412. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=32)]
  7413. public string FTPServerPassword = new string(' ',32);
  7414. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=128)]
  7415. public string FTPServerLoginDirectory = new string(' ',128);
  7416. }
  7417. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7418. public class ETBPRM
  7419. {
  7420. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=13)]
  7421. public string OwnMACAddress = new string(' ',128);
  7422. public short MaximumChannel ;
  7423. public short HDDExistence;
  7424. public short NumberOfScreens;
  7425. }
  7426. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7427. public class IODBETP
  7428. {
  7429. public short Dummy_ParameterType ;
  7430. [MarshalAs(UnmanagedType.ByValArray,SizeConst=210)]
  7431. public byte[] prm = new byte[210];
  7432. }
  7433. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7434. public class IODBETP_TCP
  7435. {
  7436. public short ParameterType ;
  7437. public TCPPRM tcp ;
  7438. }
  7439. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7440. public class IODBETP_HOST
  7441. {
  7442. public short ParameterType ;
  7443. public HOSTPRM host ;
  7444. }
  7445. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7446. public class IODBETP_FTP
  7447. {
  7448. public short ParameterType ;
  7449. public FTPPRM ftp ;
  7450. }
  7451. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7452. public class IODBETP_ETB
  7453. {
  7454. public short ParameterType ;
  7455. public ETBPRM etb ;
  7456. }
  7457. /* etb_rderrmsg : read the error message of the Ethernet board */
  7458. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7459. public class ODBETMSG
  7460. {
  7461. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=33)]
  7462. public string title = new string(' ',33);
  7463. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=390)]
  7464. public string message = new string(' ',390);
  7465. }
  7466. /* ds_rdhddinfo : read information of the Data Server's HDD */
  7467. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7468. public class ODBHDDINF
  7469. {
  7470. public int file_num;
  7471. public int remainder_l;
  7472. public int remainder_h;
  7473. [MarshalAs(UnmanagedType.ByValArray,SizeConst=32)]
  7474. public char[] current_dir = new char[32];
  7475. }
  7476. /* ds_rdhdddir : read the file list of the Data Server's HDD */
  7477. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7478. public class ODBHDDDIR_data
  7479. {
  7480. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=64)]
  7481. public string file_name = new string(' ',64);
  7482. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=80)]
  7483. public string comment = new string(' ',80);
  7484. public short attribute;
  7485. public short reserved;
  7486. public int size;
  7487. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=16)]
  7488. public string date = new string(' ',16);
  7489. }
  7490. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7491. public class ODBHDDDIR
  7492. {
  7493. public ODBHDDDIR_data data1 =new ODBHDDDIR_data();
  7494. public ODBHDDDIR_data data2 =new ODBHDDDIR_data();
  7495. public ODBHDDDIR_data data3 =new ODBHDDDIR_data();
  7496. public ODBHDDDIR_data data4 =new ODBHDDDIR_data();
  7497. public ODBHDDDIR_data data5 =new ODBHDDDIR_data();
  7498. public ODBHDDDIR_data data6 =new ODBHDDDIR_data();
  7499. public ODBHDDDIR_data data7 =new ODBHDDDIR_data();
  7500. public ODBHDDDIR_data data8 =new ODBHDDDIR_data();
  7501. public ODBHDDDIR_data data9 =new ODBHDDDIR_data();
  7502. public ODBHDDDIR_data data10 =new ODBHDDDIR_data();
  7503. public ODBHDDDIR_data data11 =new ODBHDDDIR_data();
  7504. public ODBHDDDIR_data data12 =new ODBHDDDIR_data();
  7505. public ODBHDDDIR_data data13 =new ODBHDDDIR_data();
  7506. public ODBHDDDIR_data data14 =new ODBHDDDIR_data();
  7507. public ODBHDDDIR_data data15 =new ODBHDDDIR_data();
  7508. public ODBHDDDIR_data data16 =new ODBHDDDIR_data();
  7509. public ODBHDDDIR_data data17 =new ODBHDDDIR_data();
  7510. public ODBHDDDIR_data data18 =new ODBHDDDIR_data();
  7511. public ODBHDDDIR_data data19 =new ODBHDDDIR_data();
  7512. public ODBHDDDIR_data data20 =new ODBHDDDIR_data();
  7513. public ODBHDDDIR_data data21 =new ODBHDDDIR_data();
  7514. public ODBHDDDIR_data data22 =new ODBHDDDIR_data();
  7515. public ODBHDDDIR_data data23 =new ODBHDDDIR_data();
  7516. public ODBHDDDIR_data data24 =new ODBHDDDIR_data();
  7517. public ODBHDDDIR_data data25 =new ODBHDDDIR_data();
  7518. public ODBHDDDIR_data data26 =new ODBHDDDIR_data();
  7519. public ODBHDDDIR_data data27 =new ODBHDDDIR_data();
  7520. public ODBHDDDIR_data data28 =new ODBHDDDIR_data();
  7521. public ODBHDDDIR_data data29 =new ODBHDDDIR_data();
  7522. public ODBHDDDIR_data data30 =new ODBHDDDIR_data();
  7523. public ODBHDDDIR_data data31 =new ODBHDDDIR_data();
  7524. public ODBHDDDIR_data data32 =new ODBHDDDIR_data();
  7525. }
  7526. /* ds_rdhostdir : read the file list of the host */
  7527. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7528. public class ODBHOSTDIR_data
  7529. {
  7530. [MarshalAs(UnmanagedType.ByValArray,SizeConst=128)]
  7531. public char[] host_file = new char[128];
  7532. }
  7533. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7534. public class ODBHOSTDIR
  7535. {
  7536. public ODBHOSTDIR_data data1 =new ODBHOSTDIR_data();
  7537. public ODBHOSTDIR_data data2 =new ODBHOSTDIR_data();
  7538. public ODBHOSTDIR_data data3 =new ODBHOSTDIR_data();
  7539. public ODBHOSTDIR_data data4 =new ODBHOSTDIR_data();
  7540. public ODBHOSTDIR_data data5 =new ODBHOSTDIR_data();
  7541. public ODBHOSTDIR_data data6 =new ODBHOSTDIR_data();
  7542. public ODBHOSTDIR_data data7 =new ODBHOSTDIR_data();
  7543. public ODBHOSTDIR_data data8 =new ODBHOSTDIR_data();
  7544. public ODBHOSTDIR_data data9 =new ODBHOSTDIR_data();
  7545. public ODBHOSTDIR_data data10 =new ODBHOSTDIR_data();
  7546. public ODBHOSTDIR_data data11 =new ODBHOSTDIR_data();
  7547. public ODBHOSTDIR_data data12 =new ODBHOSTDIR_data();
  7548. public ODBHOSTDIR_data data13 =new ODBHOSTDIR_data();
  7549. public ODBHOSTDIR_data data14 =new ODBHOSTDIR_data();
  7550. public ODBHOSTDIR_data data15 =new ODBHOSTDIR_data();
  7551. public ODBHOSTDIR_data data16 =new ODBHOSTDIR_data();
  7552. public ODBHOSTDIR_data data17 =new ODBHOSTDIR_data();
  7553. public ODBHOSTDIR_data data18 =new ODBHOSTDIR_data();
  7554. public ODBHOSTDIR_data data19 =new ODBHOSTDIR_data();
  7555. public ODBHOSTDIR_data data20 =new ODBHOSTDIR_data();
  7556. public ODBHOSTDIR_data data21 =new ODBHOSTDIR_data();
  7557. public ODBHOSTDIR_data data22 =new ODBHOSTDIR_data();
  7558. public ODBHOSTDIR_data data23 =new ODBHOSTDIR_data();
  7559. public ODBHOSTDIR_data data24 =new ODBHOSTDIR_data();
  7560. public ODBHOSTDIR_data data25 =new ODBHOSTDIR_data();
  7561. public ODBHOSTDIR_data data26 =new ODBHOSTDIR_data();
  7562. public ODBHOSTDIR_data data27 =new ODBHOSTDIR_data();
  7563. public ODBHOSTDIR_data data28 =new ODBHOSTDIR_data();
  7564. public ODBHOSTDIR_data data29 =new ODBHOSTDIR_data();
  7565. public ODBHOSTDIR_data data30 =new ODBHOSTDIR_data();
  7566. public ODBHOSTDIR_data data31 =new ODBHOSTDIR_data();
  7567. public ODBHOSTDIR_data data32 =new ODBHOSTDIR_data();
  7568. }
  7569. /* ds_rdmntinfo : read maintenance information */
  7570. [StructLayout(LayoutKind.Sequential,Pack=4)]
  7571. public class DSMNTINFO
  7572. {
  7573. public ushort empty_cnt;
  7574. public uint total_size;
  7575. public ushort ReadPtr;
  7576. public ushort WritePtr;
  7577. } ;
  7578. /*--------------------------*/
  7579. /* HSSB multiple connection */
  7580. /*--------------------------*/
  7581. /* cnc_rdnodeinfo:read node informations */
  7582. [StructLayout(LayoutKind.Sequential,CharSet=CharSet.Ansi,Pack=4)]
  7583. public class ODBNODE
  7584. {
  7585. public int node_no;
  7586. public int io_base;
  7587. public int status;
  7588. public int cnc_type;
  7589. [MarshalAs(UnmanagedType.ByValTStr,SizeConst=20)]
  7590. public string node_name= new string(' ', 20) ;
  7591. }
  7592. /*-------------------------------------*/
  7593. /* CNC: Control axis / spindle related */
  7594. /*-------------------------------------*/
  7595. /* read actual axis feedrate(F) */
  7596. [DllImport("FWLIB32.dll", EntryPoint="cnc_actf")]
  7597. public static extern short cnc_actf(ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBACT a);
  7598. /* read absolute axis position */
  7599. [DllImport("FWLIB32.dll", EntryPoint="cnc_absolute")]
  7600. public static extern short cnc_absolute(ushort FlibHndl,
  7601. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  7602. /* read machine axis position */
  7603. [DllImport("FWLIB32.dll", EntryPoint="cnc_machine")]
  7604. public static extern short cnc_machine(ushort FlibHndl,
  7605. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  7606. /* read relative axis position */
  7607. [DllImport("FWLIB32.dll", EntryPoint="cnc_relative")]
  7608. public static extern short cnc_relative(ushort FlibHndl,
  7609. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  7610. /* read distance to go */
  7611. [DllImport("FWLIB32.dll", EntryPoint="cnc_distance")]
  7612. public static extern short cnc_distance(ushort FlibHndl,
  7613. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  7614. /* read skip position */
  7615. [DllImport("FWLIB32.dll", EntryPoint="cnc_skip")]
  7616. public static extern short cnc_skip(ushort FlibHndl,
  7617. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  7618. /* read servo delay value */
  7619. [DllImport("FWLIB32.dll", EntryPoint="cnc_srvdelay")]
  7620. public static extern short cnc_srvdelay(ushort FlibHndl,
  7621. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  7622. /* read acceleration/deceleration delay value */
  7623. [DllImport("FWLIB32.dll", EntryPoint="cnc_accdecdly")]
  7624. public static extern short cnc_accdecdly(ushort FlibHndl,
  7625. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  7626. /* read all dynamic data */
  7627. #if (!ONO8D)
  7628. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddynamic")]
  7629. public static extern short cnc_rddynamic(ushort FlibHndl,
  7630. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDY_1 c);
  7631. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddynamic")]
  7632. public static extern short cnc_rddynamic(ushort FlibHndl,
  7633. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDY_2 c);
  7634. #else
  7635. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddynamico8")]
  7636. public static extern short cnc_rddynamic(ushort FlibHndl,
  7637. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDY_1 c);
  7638. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddynamico8")]
  7639. public static extern short cnc_rddynamic(ushort FlibHndl,
  7640. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDY_2 c);
  7641. #endif
  7642. /* read all dynamic data */
  7643. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddynamic2")]
  7644. public static extern short cnc_rddynamic2(ushort FlibHndl,
  7645. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDY2_1 c);
  7646. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddynamic2")]
  7647. public static extern short cnc_rddynamic2(ushort FlibHndl,
  7648. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDY2_2 c);
  7649. /* read actual spindle speed(S) */
  7650. [DllImport("FWLIB32.dll", EntryPoint="cnc_acts")]
  7651. public static extern short cnc_acts(ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBACT a);
  7652. /* read actual spindle speed(S) (All or spesified) */
  7653. [DllImport("FWLIB32.dll", EntryPoint="cnc_acts2")]
  7654. public static extern short cnc_acts2(ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBACT2 b);
  7655. /* set origin / preset relative axis position */
  7656. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrrelpos")]
  7657. public static extern short cnc_wrrelpos( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IDBWRR b );
  7658. /* preset work coordinate */
  7659. [DllImport("FWLIB32.dll", EntryPoint="cnc_prstwkcd")]
  7660. public static extern short cnc_prstwkcd( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IDBWRA b );
  7661. /* read manual overlapped motion value */
  7662. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmovrlap")]
  7663. public static extern short cnc_rdmovrlap( ushort FlibHndl,
  7664. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBOVL c );
  7665. /* cancel manual overlapped motion value */
  7666. [DllImport("FWLIB32.dll", EntryPoint="cnc_canmovrlap")]
  7667. public static extern short cnc_canmovrlap( ushort FlibHndl, short a );
  7668. /* read load information of serial spindle */
  7669. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdspload")]
  7670. public static extern short cnc_rdspload( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSPN b );
  7671. /* read maximum r.p.m. ratio of serial spindle */
  7672. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdspmaxrpm")]
  7673. public static extern short cnc_rdspmaxrpm( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSPN b );
  7674. /* read gear ratio of serial spindle */
  7675. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdspgear")]
  7676. public static extern short cnc_rdspgear( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSPN b );
  7677. /* read absolute axis position 2 */
  7678. [DllImport("FWLIB32.dll", EntryPoint="cnc_absolute2")]
  7679. public static extern short cnc_absolute2(ushort FlibHndl,
  7680. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  7681. /* read relative axis position 2 */
  7682. [DllImport("FWLIB32.dll", EntryPoint="cnc_relative2")]
  7683. public static extern short cnc_relative2(ushort FlibHndl,
  7684. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  7685. /* set wire vertival position */
  7686. [DllImport("FWLIB32.dll", EntryPoint="cnc_setvrtclpos")]
  7687. public static extern short cnc_setvrtclpos( ushort FlibHndl, short a );
  7688. /* set wire threading position */
  7689. [DllImport("FWLIB32.dll", EntryPoint="cnc_setthrdngpos")]
  7690. public static extern short cnc_setthrdngpos( ushort FlibHndl );
  7691. /* read tool position */
  7692. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdposition")]
  7693. public static extern short cnc_rdposition(ushort FlibHndl,
  7694. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPOS c);
  7695. /* read current speed */
  7696. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdspeed")]
  7697. public static extern short cnc_rdspeed( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSPEED b );
  7698. /* read servo load meter */
  7699. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsvmeter")]
  7700. public static extern short cnc_rdsvmeter( ushort FlibHndl,
  7701. ref short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSVLOAD b );
  7702. /* read spindle load meter */
  7703. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdspmeter")]
  7704. public static extern short cnc_rdspmeter( ushort FlibHndl,
  7705. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSPLOAD c );
  7706. /* read manual feed for 5-axis machining */
  7707. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd5axmandt")]
  7708. public static extern short cnc_rd5axmandt( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODB5AXMAN a );
  7709. /* read amount of machine axes movement of manual feed for 5-axis machining */
  7710. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd5axovrlap")]
  7711. public static extern short cnc_rd5axovrlap( ushort FlibHndl, short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c );
  7712. /* read handle interruption */
  7713. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhndintrpt")]
  7714. public static extern short cnc_rdhndintrpt( ushort FlibHndl,
  7715. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBHND c );
  7716. /* clear pulse values of manual feed for 5-axis machining */
  7717. [DllImport("FWLIB32.dll", EntryPoint="cnc_clr5axpls")]
  7718. public static extern short cnc_clr5axpls( ushort FlibHndl, short a);
  7719. /* read constant surface speed */
  7720. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdspcss")]
  7721. public static extern short cnc_rdspcss( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBCSS a );
  7722. /* read execution program pointer */
  7723. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdexecpt")]
  7724. public static extern short cnc_rdexecpt( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] PRGPNT a , [Out,MarshalAs(UnmanagedType.LPStruct)] PRGPNT b );
  7725. /* read various axis data */
  7726. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdaxisdata")]
  7727. public static extern short cnc_rdaxisdata( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, short c, ref short d, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXDT e );
  7728. /*----------------------*/
  7729. /* CNC: Program related */
  7730. /*----------------------*/
  7731. /* start downloading NC program */
  7732. [DllImport("FWLIB32.dll", EntryPoint="cnc_dwnstart")]
  7733. public static extern short cnc_dwnstart( ushort FlibHndl );
  7734. /* download NC program */
  7735. [DllImport("FWLIB32.dll", EntryPoint="cnc_download")]
  7736. public static extern short cnc_download( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, short b );
  7737. /* download NC program(conditional) */
  7738. [DllImport("FWLIB32.dll", EntryPoint="cnc_cdownload")]
  7739. public static extern short cnc_cdownload( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, short b );
  7740. /* end of downloading NC program */
  7741. [DllImport("FWLIB32.dll", EntryPoint="cnc_dwnend")]
  7742. public static extern short cnc_dwnend( ushort FlibHndl );
  7743. /* end of downloading NC program 2 */
  7744. [DllImport("FWLIB32.dll", EntryPoint="cnc_dwnend2")]
  7745. public static extern short cnc_dwnend2( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  7746. /* start downloading NC program 3 */
  7747. [DllImport("FWLIB32.dll", EntryPoint="cnc_dwnstart3")]
  7748. public static extern short cnc_dwnstart3( ushort FlibHndl, short a );
  7749. /* start downloading NC program 3 special */
  7750. [DllImport("FWLIB32.dll", EntryPoint="cnc_dwnstart3_f")]
  7751. public static extern short cnc_dwnstart3_f( ushort FlibHndl,
  7752. short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, [In,MarshalAs(UnmanagedType.AsAny)] Object c );
  7753. /* download NC program 3 */
  7754. [DllImport("FWLIB32.dll", EntryPoint="cnc_download3")]
  7755. public static extern short cnc_download3( ushort FlibHndl, ref int a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  7756. /* end of downloading NC program 3 */
  7757. [DllImport("FWLIB32.dll", EntryPoint="cnc_dwnend3")]
  7758. public static extern short cnc_dwnend3( ushort FlibHndl );
  7759. /* start downloading NC program 4 */
  7760. [DllImport("FWLIB32.dll", EntryPoint="cnc_dwnstart4")]
  7761. public static extern short cnc_dwnstart4( ushort FlibHndl, short a , [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  7762. /* download NC program 4 */
  7763. [DllImport("FWLIB32.dll", EntryPoint="cnc_download4")]
  7764. public static extern short cnc_download4( ushort FlibHndl, ref int a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  7765. /* end of downloading NC program 4 */
  7766. [DllImport("FWLIB32.dll", EntryPoint="cnc_dwnend4")]
  7767. public static extern short cnc_dwnend4( ushort FlibHndl );
  7768. /* start verification of NC program */
  7769. [DllImport("FWLIB32.dll", EntryPoint="cnc_vrfstart")]
  7770. public static extern short cnc_vrfstart( ushort FlibHndl );
  7771. /* verify NC program */
  7772. [DllImport("FWLIB32.dll", EntryPoint="cnc_verify")]
  7773. public static extern short cnc_verify( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, short b );
  7774. /* verify NC program(conditional) */
  7775. [DllImport("FWLIB32.dll", EntryPoint="cnc_cverify")]
  7776. public static extern short cnc_cverify( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, short b );
  7777. /* end of verification */
  7778. [DllImport("FWLIB32.dll", EntryPoint="cnc_vrfend")]
  7779. public static extern short cnc_vrfend( ushort FlibHndl );
  7780. /* start verification of NC program */
  7781. [DllImport("FWLIB32.dll", EntryPoint="cnc_vrfstart4")]
  7782. public static extern short cnc_vrfstart4( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  7783. /* verify NC program */
  7784. [DllImport("FWLIB32.dll", EntryPoint="cnc_verify4")]
  7785. public static extern short cnc_verify4( ushort FlibHndl, ref int a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  7786. /* end of verification */
  7787. [DllImport("FWLIB32.dll", EntryPoint="cnc_vrfend4")]
  7788. public static extern short cnc_vrfend4( ushort FlibHndl );
  7789. /* start downloading DNC program */
  7790. [DllImport("FWLIB32.dll", EntryPoint="cnc_dncstart")]
  7791. public static extern short cnc_dncstart( ushort FlibHndl );
  7792. /* download DNC program */
  7793. [DllImport("FWLIB32.dll", EntryPoint="cnc_dnc")]
  7794. public static extern short cnc_dnc( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, ushort b );
  7795. /* download DNC program(conditional) */
  7796. [DllImport("FWLIB32.dll", EntryPoint="cnc_cdnc")]
  7797. public static extern short cnc_cdnc( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, ushort b );
  7798. /* end of downloading DNC program */
  7799. [DllImport("FWLIB32.dll", EntryPoint="cnc_dncend")]
  7800. public static extern short cnc_dncend( ushort FlibHndl );
  7801. /* start downloading DNC program 2 */
  7802. [DllImport("FWLIB32.dll", EntryPoint="cnc_dncstart2")]
  7803. public static extern short cnc_dncstart2( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  7804. /* download DNC program 2 */
  7805. [DllImport("FWLIB32.dll", EntryPoint="cnc_dnc2")]
  7806. public static extern short cnc_dnc2( ushort FlibHndl, ref int a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  7807. /* end of downloading DNC program 2 */
  7808. [DllImport("FWLIB32.dll", EntryPoint="cnc_dncend2")]
  7809. public static extern short cnc_dncend2( ushort FlibHndl, short a );
  7810. /* read the diagnosis data of DNC operation */
  7811. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddncdgndt")]
  7812. public static extern short cnc_rddncdgndt( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDNCDGN a );
  7813. /* start uploading NC program */
  7814. #if (!ONO8D)
  7815. [DllImport("FWLIB32.dll", EntryPoint="cnc_upstart")]
  7816. public static extern short cnc_upstart( ushort FlibHndl, short a );
  7817. #else
  7818. [DllImport("FWLIB32.dll", EntryPoint="cnc_upstarto8")]
  7819. public static extern short cnc_upstart( ushort FlibHndl, int a );
  7820. #endif
  7821. /* upload NC program */
  7822. [DllImport("FWLIB32.dll", EntryPoint="cnc_upload")]
  7823. public static extern short cnc_upload( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBUP a, ref ushort b );
  7824. /* upload NC program(conditional) */
  7825. [DllImport("FWLIB32.dll", EntryPoint="cnc_cupload")]
  7826. public static extern short cnc_cupload( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBUP a, ref ushort b );
  7827. /* end of uploading NC program */
  7828. [DllImport("FWLIB32.dll", EntryPoint="cnc_upend")]
  7829. public static extern short cnc_upend( ushort FlibHndl );
  7830. /* start uploading NC program 3 */
  7831. [DllImport("FWLIB32.dll", EntryPoint="cnc_upstart3")]
  7832. public static extern short cnc_upstart3( ushort FlibHndl, short a, int b, int c );
  7833. /* start uploading NC program special 3 */
  7834. [DllImport("FWLIB32.dll", EntryPoint="cnc_upstart3_f")]
  7835. public static extern short cnc_upstart3_f( ushort FlibHndl,
  7836. short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, [In,MarshalAs(UnmanagedType.AsAny)] Object c );
  7837. /* upload NC program 3 */
  7838. [DllImport("FWLIB32.dll", EntryPoint="cnc_upload3")]
  7839. public static extern short cnc_upload3( ushort FlibHndl, ref int a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  7840. /* end of uploading NC program 3 */
  7841. [DllImport("FWLIB32.dll", EntryPoint="cnc_upend3")]
  7842. public static extern short cnc_upend3( ushort FlibHndl );
  7843. /* start uploading NC program 4 */
  7844. [DllImport("FWLIB32.dll", EntryPoint="cnc_upstart4")]
  7845. public static extern short cnc_upstart4( ushort FlibHndl , short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  7846. /* upload NC program 4 */
  7847. [DllImport("FWLIB32.dll", EntryPoint="cnc_upload4")]
  7848. public static extern short cnc_upload4( ushort FlibHndl , ref int a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  7849. /* end of uploading NC program 4 */
  7850. [DllImport("FWLIB32.dll", EntryPoint="cnc_upend4")]
  7851. public static extern short cnc_upend4( ushort FlibHndl );
  7852. /* read buffer status for downloading/verification NC program */
  7853. [DllImport("FWLIB32.dll", EntryPoint="cnc_buff")]
  7854. public static extern short cnc_buff( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBBUF a );
  7855. /* search specified program */
  7856. #if (!ONO8D)
  7857. [DllImport("FWLIB32.dll", EntryPoint="cnc_search")]
  7858. public static extern short cnc_search( ushort FlibHndl, short a );
  7859. #else
  7860. [DllImport("FWLIB32.dll", EntryPoint="cnc_searcho8")]
  7861. public static extern short cnc_search( ushort FlibHndl, int a );
  7862. #endif
  7863. /* search specified program */
  7864. [DllImport("FWLIB32.dll", EntryPoint="cnc_search2")]
  7865. public static extern short cnc_search2( ushort FlibHndl, int a );
  7866. /* delete all programs */
  7867. [DllImport("FWLIB32.dll", EntryPoint="cnc_delall")]
  7868. public static extern short cnc_delall( ushort FlibHndl );
  7869. /* delete specified program */
  7870. #if (!ONO8D)
  7871. [DllImport("FWLIB32.dll", EntryPoint="cnc_delete")]
  7872. public static extern short cnc_delete( ushort FlibHndl, short a );
  7873. #else
  7874. [DllImport("FWLIB32.dll", EntryPoint="cnc_deleteo8")]
  7875. public static extern short cnc_delete( ushort FlibHndl, int a );
  7876. #endif
  7877. /* delete program (area specified) */
  7878. [DllImport("FWLIB32.dll", EntryPoint="cnc_delrange")]
  7879. public static extern short cnc_delrange( ushort FlibHndl, int a , int b );
  7880. /* read program directory */
  7881. #if (!ONO8D)
  7882. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprogdir")]
  7883. public static extern short cnc_rdprogdir( ushort FlibHndl,
  7884. short a, short b, short c, ushort d, [Out,MarshalAs(UnmanagedType.LPStruct)] PRGDIR e );
  7885. #else
  7886. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprogdiro8")]
  7887. public static extern short cnc_rdprogdir( ushort FlibHndl,
  7888. short a, short b, short c, ushort d, [Out,MarshalAs(UnmanagedType.LPStruct)] PRGDIR e );
  7889. #endif
  7890. /* read program information */
  7891. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdproginfo")]
  7892. public static extern short cnc_rdproginfo( ushort FlibHndl, short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBNC_1 c);
  7893. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdproginfo")]
  7894. public static extern short cnc_rdproginfo( ushort FlibHndl, short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBNC_2 c);
  7895. /* read program number under execution */
  7896. #if (!ONO8D)
  7897. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprgnum")]
  7898. public static extern short cnc_rdprgnum( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPRO a );
  7899. #else
  7900. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprgnumo8")]
  7901. public static extern short cnc_rdprgnum( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPRO a );
  7902. #endif
  7903. /* read program name under execution */
  7904. [DllImport("FWLIB32.dll", EntryPoint="cnc_exeprgname")]
  7905. public static extern short cnc_exeprgname( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBEXEPRG a );
  7906. /* read sequence number under execution */
  7907. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdseqnum")]
  7908. public static extern short cnc_rdseqnum( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSEQ a );
  7909. /* search specified sequence number */
  7910. [DllImport("FWLIB32.dll", EntryPoint="cnc_seqsrch")]
  7911. public static extern short cnc_seqsrch( ushort FlibHndl, int a );
  7912. /* search specified sequence number (2) */
  7913. [DllImport("FWLIB32.dll", EntryPoint="cnc_seqsrch2")]
  7914. public static extern short cnc_seqsrch2( ushort FlibHndl, int a );
  7915. /* rewind cursor of NC program */
  7916. [DllImport("FWLIB32.dll", EntryPoint="cnc_rewind")]
  7917. public static extern short cnc_rewind( ushort FlibHndl );
  7918. /* read block counter */
  7919. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdblkcount")]
  7920. public static extern short cnc_rdblkcount( ushort FlibHndl, out int a );
  7921. /* read program under execution */
  7922. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdexecprog")]
  7923. public static extern short cnc_rdexecprog( ushort FlibHndl, ref ushort a, out short b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c );
  7924. /* read program for MDI operation */
  7925. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmdiprog")]
  7926. public static extern short cnc_rdmdiprog( ushort FlibHndl, ref short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  7927. /* write program for MDI operation */
  7928. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmdiprog")]
  7929. public static extern short cnc_wrmdiprog( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  7930. /* read execution pointer for MDI operation */
  7931. #if (!ONO8D)
  7932. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmdipntr")]
  7933. public static extern short cnc_rdmdipntr( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMDIP a );
  7934. #else
  7935. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmdipntro8")]
  7936. public static extern short cnc_rdmdipntr( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMDIP a );
  7937. #endif
  7938. /* write execution pointer for MDI operation */
  7939. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmdipntr")]
  7940. public static extern short cnc_wrmdipntr( ushort FlibHndl, int a );
  7941. /* register new program */
  7942. [DllImport("FWLIB32.dll", EntryPoint="cnc_newprog")]
  7943. public static extern short cnc_newprog( ushort FlibHndl, int a );
  7944. /* copy program */
  7945. [DllImport("FWLIB32.dll", EntryPoint="cnc_copyprog")]
  7946. public static extern short cnc_copyprog( ushort FlibHndl, int a, int b );
  7947. /* rename program */
  7948. [DllImport("FWLIB32.dll", EntryPoint="cnc_renameprog")]
  7949. public static extern short cnc_renameprog( ushort FlibHndl, int a, int b );
  7950. /* condense program */
  7951. [DllImport("FWLIB32.dll", EntryPoint="cnc_condense")]
  7952. public static extern short cnc_condense( ushort FlibHndl, short a, int b );
  7953. /* merge program */
  7954. [DllImport("FWLIB32.dll", EntryPoint="cnc_mergeprog")]
  7955. public static extern short cnc_mergeprog( ushort FlibHndl, short a, int b, uint c, int d );
  7956. /* read current program and its pointer */
  7957. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdactpt")]
  7958. public static extern short cnc_rdactpt( ushort FlibHndl, out int a, out int b );
  7959. /* read current program and its pointer and UV macro pointer */
  7960. [DllImport("FWLIB32.dll", EntryPoint="cnc_rduvactpt")]
  7961. public static extern short cnc_rduvactpt( ushort FlibHndl, out int a, out int b, out int c );
  7962. /* set current program and its pointer */
  7963. [DllImport("FWLIB32.dll", EntryPoint="cnc_wractpt")]
  7964. public static extern short cnc_wractpt( ushort FlibHndl, int a, short b, ref int c );
  7965. /* line edit (read program) */
  7966. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprogline")]
  7967. public static extern short cnc_rdprogline( ushort FlibHndl,
  7968. int a, uint b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c, ref uint d, ref uint e );
  7969. /* line edit (read program) */
  7970. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprogline2")]
  7971. public static extern short cnc_rdprogline2( ushort FlibHndl,
  7972. int a, uint b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c, ref uint d, ref uint e );
  7973. /* line edit (write program) */
  7974. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrprogline")]
  7975. public static extern short cnc_wrprogline( ushort FlibHndl, int a, uint b, [In,MarshalAs(UnmanagedType.AsAny)] Object c, uint d );
  7976. /* line edit (delete line in program) */
  7977. [DllImport("FWLIB32.dll", EntryPoint="cnc_delprogline")]
  7978. public static extern short cnc_delprogline( ushort FlibHndl, int a, uint b, uint c );
  7979. /* line edit (search string) */
  7980. [DllImport("FWLIB32.dll", EntryPoint="cnc_searchword")]
  7981. public static extern short cnc_searchword( ushort FlibHndl,
  7982. int a, uint b, short c, short d, uint e, [In,MarshalAs(UnmanagedType.AsAny)] Object f );
  7983. /* line edit (search string) */
  7984. [DllImport("FWLIB32.dll", EntryPoint="cnc_searchresult")]
  7985. public static extern short cnc_searchresult( ushort FlibHndl, out uint a );
  7986. /* line edit (read program by file name) */
  7987. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpdf_line")]
  7988. public static extern short cnc_rdpdf_line( ushort FlibHndl,
  7989. [In,MarshalAs(UnmanagedType.AsAny)] Object a, uint b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c, ref uint d, ref uint e );
  7990. /* program lock */
  7991. [DllImport("FWLIB32.dll", EntryPoint="cnc_setpglock")]
  7992. public static extern short cnc_setpglock( ushort FlibHndl, int a );
  7993. /* program unlock */
  7994. [DllImport("FWLIB32.dll", EntryPoint="cnc_resetpglock")]
  7995. public static extern short cnc_resetpglock( ushort FlibHndl, int a );
  7996. /* read the status of the program lock */
  7997. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpglockstat")]
  7998. public static extern short cnc_rdpglockstat( ushort FlibHndl, out int a, out int b );
  7999. /* create file or directory */
  8000. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_add")]
  8001. public static extern short cnc_pdf_add( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8002. /* condense program file */
  8003. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_cond")]
  8004. public static extern short cnc_pdf_cond( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8005. /* change attribute of program file and directory */
  8006. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpdf_attr")]
  8007. public static extern short cnc_wrpdf_attr( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, [Out,MarshalAs(UnmanagedType.LPStruct)] IDBPDFTDIR b );
  8008. /* copy program file */
  8009. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_copy")]
  8010. public static extern short cnc_pdf_copy( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a , [In,MarshalAs(UnmanagedType.AsAny)] Object b);
  8011. /* delete file or directory */
  8012. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_del")]
  8013. public static extern short cnc_pdf_del( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8014. /* line edit (write program by file name) */
  8015. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpdf_line")]
  8016. public static extern short cnc_wrpdf_line( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a , uint b, [In,MarshalAs(UnmanagedType.AsAny)] Object c , uint d );
  8017. /* line edit (delete line by file name) */
  8018. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_delline")]
  8019. public static extern short cnc_pdf_delline( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a , uint b, uint c );
  8020. /* move program file */
  8021. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_move")]
  8022. public static extern short cnc_pdf_move( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a , [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  8023. /* read current program and its pointer */
  8024. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_rdactpt")]
  8025. public static extern short cnc_pdf_rdactpt( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a , out int b );
  8026. /* read selected file name */
  8027. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_rdmain")]
  8028. public static extern short cnc_pdf_rdmain( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  8029. /* rename file or directory */
  8030. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_rename")]
  8031. public static extern short cnc_pdf_rename( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a , [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  8032. /* line edit (search string) */
  8033. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_searchword")]
  8034. public static extern short cnc_pdf_searchword( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a , uint b , uint c , uint d , uint e , [In,MarshalAs(UnmanagedType.AsAny)] Object f );
  8035. /* line edit (search string) */
  8036. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_searchresult")]
  8037. public static extern short cnc_pdf_searchresult( ushort FlibHndl, out uint a );
  8038. /* select program file */
  8039. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_slctmain")]
  8040. public static extern short cnc_pdf_slctmain( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8041. /* set current program and its pointer */
  8042. [DllImport("FWLIB32.dll", EntryPoint="cnc_pdf_wractpt")]
  8043. public static extern short cnc_pdf_wractpt( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a , short b , ref int c );
  8044. /* read program drive information */
  8045. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpdf_inf")]
  8046. public static extern short cnc_rdpdf_inf( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a , short b , [Out,MarshalAs(UnmanagedType.AsAny)] Object c );
  8047. /* read program drive directory */
  8048. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpdf_drive")]
  8049. public static extern short cnc_rdpdf_drive( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  8050. /* read current directory */
  8051. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpdf_curdir")]
  8052. public static extern short cnc_rdpdf_curdir( ushort FlibHndl, short a , [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  8053. /* set current directory */
  8054. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpdf_curdir")]
  8055. public static extern short cnc_wrpdf_curdir( ushort FlibHndl, short a , [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  8056. /* read directory (sub directories) */
  8057. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpdf_subdir")]
  8058. public static extern short cnc_rdpdf_subdir( ushort FlibHndl,
  8059. ref short a , [In,MarshalAs(UnmanagedType.LPStruct)] IDBPDFSDIR b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPDFSDIR c );
  8060. /* read directory (all files) */
  8061. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpdf_alldir")]
  8062. public static extern short cnc_rdpdf_alldir( ushort FlibHndl, ref short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b , [Out,MarshalAs(UnmanagedType.AsAny)] Object c );
  8063. /* read file count in directory */
  8064. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpdf_subdirn")]
  8065. public static extern short cnc_rdpdf_subdirn( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPDFNFIL b );
  8066. /*---------------------------*/
  8067. /* CNC: NC file data related */
  8068. /*---------------------------*/
  8069. /* read tool offset value */
  8070. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtofs")]
  8071. public static extern short cnc_rdtofs(ushort FlibHndl,
  8072. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTOFS d);
  8073. /* write tool offset value */
  8074. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtofs")]
  8075. public static extern short cnc_wrtofs( ushort FlibHndl, short a, short b, short c, int d );
  8076. /* read tool offset value(area specified) */
  8077. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtofsr")]
  8078. public static extern short cnc_rdtofsr( ushort FlibHndl,
  8079. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTO_1_1 e);
  8080. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtofsr")]
  8081. public static extern short cnc_rdtofsr( ushort FlibHndl,
  8082. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTO_1_2 e);
  8083. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtofsr")]
  8084. public static extern short cnc_rdtofsr( ushort FlibHndl,
  8085. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTO_1_3 e);
  8086. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtofsr")]
  8087. public static extern short cnc_rdtofsr( ushort FlibHndl,
  8088. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTO_2 e);
  8089. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtofsr")]
  8090. public static extern short cnc_rdtofsr( ushort FlibHndl,
  8091. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTO_3 e);
  8092. /* write tool offset value(area specified) */
  8093. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtofsr")]
  8094. public static extern short cnc_wrtofsr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTO_1_1 b );
  8095. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtofsr")]
  8096. public static extern short cnc_wrtofsr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTO_1_2 b );
  8097. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtofsr")]
  8098. public static extern short cnc_wrtofsr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTO_1_3 b );
  8099. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtofsr")]
  8100. public static extern short cnc_wrtofsr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTO_2 b );
  8101. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtofsr")]
  8102. public static extern short cnc_wrtofsr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTO_3 b );
  8103. /* read work zero offset value */
  8104. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdzofs")]
  8105. public static extern short cnc_rdzofs( ushort FlibHndl,
  8106. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBZOFS d );
  8107. /* write work zero offset value */
  8108. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrzofs")]
  8109. public static extern short cnc_wrzofs( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBZOFS b );
  8110. /* read work zero offset value(area specified) */
  8111. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdzofsr")]
  8112. public static extern short cnc_rdzofsr( ushort FlibHndl,
  8113. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBZOR e );
  8114. /* write work zero offset value(area specified) */
  8115. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrzofsr")]
  8116. public static extern short cnc_wrzofsr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBZOR b );
  8117. /* read mesured point value */
  8118. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmsptype")]
  8119. public static extern short cnc_rdmsptype( ushort FlibHndl,
  8120. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBMSTP d);
  8121. /* write mesured point value */
  8122. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmsptype")]
  8123. public static extern short cnc_wrmsptype( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBMSTP d);
  8124. /* read parameter */
  8125. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparam")]
  8126. public static extern short cnc_rdparam(ushort FlibHndl,
  8127. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_1 d);
  8128. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparam")]
  8129. public static extern short cnc_rdparam(ushort FlibHndl,
  8130. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_2 d);
  8131. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparam")]
  8132. public static extern short cnc_rdparam(ushort FlibHndl,
  8133. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_3 d);
  8134. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparam")]
  8135. public static extern short cnc_rdparam(ushort FlibHndl,
  8136. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_4 d);
  8137. /* write parameter */
  8138. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrparam")]
  8139. public static extern short cnc_wrparam( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_1 b );
  8140. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrparam")]
  8141. public static extern short cnc_wrparam( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_2 b );
  8142. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrparam")]
  8143. public static extern short cnc_wrparam( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_3 b );
  8144. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrparam")]
  8145. public static extern short cnc_wrparam( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_4 b );
  8146. /* read parameter(area specified) */
  8147. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparar")]
  8148. public static extern short cnc_rdparar( ushort FlibHndl,
  8149. ref short a, short b, ref short c, ref short d, [Out,MarshalAs(UnmanagedType.AsAny)] Object e );
  8150. // [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparar")]
  8151. // public static extern short cnc_rdparar( ushort FlibHndl,
  8152. // ref short a, short b, ref short c, ref short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_A e );
  8153. // [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparar")]
  8154. // public static extern short cnc_rdparar( ushort FlibHndl,
  8155. // ref short a, short b, ref short c, ref short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_B e );
  8156. // [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparar")]
  8157. // public static extern short cnc_rdparar( ushort FlibHndl,
  8158. // ref short a, short b, ref short c, ref short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_C e );
  8159. // [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparar")]
  8160. // public static extern short cnc_rdparar( ushort FlibHndl,
  8161. // ref short a, short b, ref short c, ref short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_D e );
  8162. /* write parameter(area specified) */
  8163. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrparas")]
  8164. public static extern short cnc_wrparas( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  8165. /* read setting data */
  8166. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdset")]
  8167. public static extern short cnc_rdset( ushort FlibHndl,
  8168. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_1 d );
  8169. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdset")]
  8170. public static extern short cnc_rdset( ushort FlibHndl,
  8171. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_2 d );
  8172. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdset")]
  8173. public static extern short cnc_rdset( ushort FlibHndl,
  8174. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_3 d );
  8175. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdset")]
  8176. public static extern short cnc_rdset( ushort FlibHndl,
  8177. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_4 d );
  8178. /* write setting data */
  8179. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrset")]
  8180. public static extern short cnc_wrset( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_1 b );
  8181. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrset")]
  8182. public static extern short cnc_wrset( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_2 b );
  8183. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrset")]
  8184. public static extern short cnc_wrset( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_3 b );
  8185. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrset")]
  8186. public static extern short cnc_wrset( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_4 b );
  8187. /* read setting data(area specified) */
  8188. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsetr")]
  8189. public static extern short cnc_rdsetr( ushort FlibHndl,
  8190. ref short a, short b, ref short c, ref short d, [Out,MarshalAs(UnmanagedType.AsAny)] Object e );
  8191. /* write setting data(area specified) */
  8192. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrsets")]
  8193. public static extern short cnc_wrsets( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  8194. /* read parameters */
  8195. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparam_ext")]
  8196. public static extern short cnc_rdparam_ext( ushort FlibHndl,
  8197. [In,Out,MarshalAs(UnmanagedType.LPStruct)] IODBPRMNO a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPRM c );
  8198. /* read parameter */
  8199. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparam3")]
  8200. public static extern short cnc_rdparam3(ushort FlibHndl,
  8201. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_1 e);
  8202. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparam3")]
  8203. public static extern short cnc_rdparam3(ushort FlibHndl,
  8204. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_2 e);
  8205. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparam3")]
  8206. public static extern short cnc_rdparam3(ushort FlibHndl,
  8207. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_3 e);
  8208. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparam3")]
  8209. public static extern short cnc_rdparam3(ushort FlibHndl,
  8210. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSD_4 e);
  8211. /* async parameter write start */
  8212. [DllImport("FWLIB32.dll", EntryPoint="cnc_start_async_wrparam")]
  8213. public static extern short cnc_start_async_wrparam( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPRM a );
  8214. /* async parameter write end */
  8215. [DllImport("FWLIB32.dll", EntryPoint="cnc_end_async_wrparam")]
  8216. public static extern short cnc_end_async_wrparam( ushort FlibHndl, out short a );
  8217. /* read cause of busy for async parameter write */
  8218. [DllImport("FWLIB32.dll", EntryPoint="cnc_async_busy_state")]
  8219. public static extern short cnc_async_busy_state( ushort FlibHndl, out short a );
  8220. /* read diagnosis data */
  8221. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddiag_ext")]
  8222. public static extern short cnc_rddiag_ext( ushort FlibHndl,
  8223. [In,Out,MarshalAs(UnmanagedType.LPStruct)] IODBPRMNO a, short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPRM c );
  8224. /* read pitch error compensation data(area specified) */
  8225. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpitchr")]
  8226. public static extern short cnc_rdpitchr( ushort FlibHndl,
  8227. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPI d );
  8228. /* write pitch error compensation data(area specified) */
  8229. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpitchr")]
  8230. public static extern short cnc_wrpitchr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPI b );
  8231. /* read custom macro variable */
  8232. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmacro")]
  8233. public static extern short cnc_rdmacro( ushort FlibHndl, short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBM c );
  8234. /* write custom macro variable */
  8235. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmacro")]
  8236. public static extern short cnc_wrmacro( ushort FlibHndl, short a, short b, int c, short d );
  8237. /* read custom macro variables(area specified) */
  8238. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmacror")]
  8239. public static extern short cnc_rdmacror( ushort FlibHndl,
  8240. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBMR d );
  8241. /* write custom macro variables(area specified) */
  8242. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmacror")]
  8243. public static extern short cnc_wrmacror( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBMR b );
  8244. /* read custom macro variables(IEEE double version) */
  8245. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmacror2")]
  8246. public static extern short cnc_rdmacror2( ushort FlibHndl, int a, ref int b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c );
  8247. /* write custom macro variables(IEEE double version) */
  8248. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmacror2")]
  8249. public static extern short cnc_wrmacror2( ushort FlibHndl, int a, ref int b, [In,MarshalAs(UnmanagedType.AsAny)] Object c );
  8250. /* read P code macro variable */
  8251. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpmacro")]
  8252. public static extern short cnc_rdpmacro( ushort FlibHndl, int a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPM b );
  8253. /* write P code macro variable */
  8254. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpmacro")]
  8255. public static extern short cnc_wrpmacro( ushort FlibHndl, int a, int b, short c );
  8256. /* read P code macro variables(area specified) */
  8257. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpmacror")]
  8258. public static extern short cnc_rdpmacror( ushort FlibHndl,
  8259. int a, int b, ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPR d );
  8260. /* write P code macro variables(area specified) */
  8261. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpmacror")]
  8262. public static extern short cnc_wrpmacror( ushort FlibHndl, ushort a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPR b );
  8263. /* read P code macro variables(IEEE double version) */
  8264. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpmacror2")]
  8265. public static extern short cnc_rdpmacror2( ushort FlibHndl, uint a, ref uint b, ushort c, [Out,MarshalAs(UnmanagedType.AsAny)] Object d );
  8266. /* write P code macro variables(IEEE double version) */
  8267. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpmacror2")]
  8268. public static extern short cnc_wrpmacror2( ushort FlibHndl, uint a, ref uint b, ushort c, [In,MarshalAs(UnmanagedType.AsAny)] Object d );
  8269. /* read tool offset information */
  8270. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtofsinfo")]
  8271. public static extern short cnc_rdtofsinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLINF a );
  8272. /* read tool offset information(2) */
  8273. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtofsinfo2")]
  8274. public static extern short cnc_rdtofsinfo2( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLINF2 a );
  8275. /* read work zero offset information */
  8276. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdzofsinfo")]
  8277. public static extern short cnc_rdzofsinfo( ushort FlibHndl, out short a );
  8278. /* read pitch error compensation data information */
  8279. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpitchinfo")]
  8280. public static extern short cnc_rdpitchinfo( ushort FlibHndl, out short a );
  8281. /* read custom macro variable information */
  8282. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmacroinfo")]
  8283. public static extern short cnc_rdmacroinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMVINF a );
  8284. /* read P code macro variable information */
  8285. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpmacroinfo")]
  8286. public static extern short cnc_rdpmacroinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPMINF a );
  8287. /* read validity of tool offset */
  8288. [DllImport("FWLIB32.dll", EntryPoint="cnc_tofs_rnge")]
  8289. public static extern short cnc_tofs_rnge( ushort FlibHndl, short a , short b , [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDATRNG c );
  8290. /* read validity of work zero offset */
  8291. [DllImport("FWLIB32.dll", EntryPoint="cnc_zofs_rnge")]
  8292. public static extern short cnc_zofs_rnge( ushort FlibHndl, short a , short b , [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDATRNG c );
  8293. /* read validity of work zero offset */
  8294. [DllImport("FWLIB32.dll", EntryPoint="cnc_wksft_rnge")]
  8295. public static extern short cnc_wksft_rnge( ushort FlibHndl, short a , [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDATRNG b );
  8296. /* read the information for function cnc_rdhsparam() */
  8297. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhsprminfo")]
  8298. public static extern short cnc_rdhsprminfo( ushort FlibHndl, int a , [Out,MarshalAs(UnmanagedType.LPStruct)] HSPINFO_data b );
  8299. /* read parameters at the high speed */
  8300. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhsparam")]
  8301. public static extern short cnc_rdhsparam( ushort FlibHndl, int a , [In,MarshalAs(UnmanagedType.LPStruct)] HSPINFO b , [Out,MarshalAs(UnmanagedType.LPStruct)] HSPDATA_1 c );
  8302. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhsparam")]
  8303. public static extern short cnc_rdhsparam( ushort FlibHndl, int a , [In,MarshalAs(UnmanagedType.LPStruct)] HSPINFO b , [Out,MarshalAs(UnmanagedType.LPStruct)] HSPDATA_2 c );
  8304. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhsparam")]
  8305. public static extern short cnc_rdhsparam( ushort FlibHndl, int a , [In,MarshalAs(UnmanagedType.LPStruct)] HSPINFO b , [Out,MarshalAs(UnmanagedType.LPStruct)] HSPDATA_3 c );
  8306. /*----------------------------------------*/
  8307. /* CNC: Tool life management data related */
  8308. /*----------------------------------------*/
  8309. /* read tool life management data(tool group number) */
  8310. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdgrpid")]
  8311. public static extern short cnc_rdgrpid( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE1 b );
  8312. /* read tool life management data(number of tool groups) */
  8313. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdngrp")]
  8314. public static extern short cnc_rdngrp( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE2 a );
  8315. /* read tool life management data(number of tools) */
  8316. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdntool")]
  8317. public static extern short cnc_rdntool( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE3 b );
  8318. /* read tool life management data(tool life) */
  8319. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlife")]
  8320. public static extern short cnc_rdlife( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE3 b );
  8321. /* read tool life management data(tool lift counter) */
  8322. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcount")]
  8323. public static extern short cnc_rdcount( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE3 b );
  8324. /* read tool life management data(tool length number-1) */
  8325. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd1length")]
  8326. public static extern short cnc_rd1length( ushort FlibHndl,
  8327. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE4 c );
  8328. /* read tool life management data(tool length number-2) */
  8329. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd2length")]
  8330. public static extern short cnc_rd2length( ushort FlibHndl,
  8331. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE4 c );
  8332. /* read tool life management data(cutter compensation no.-1) */
  8333. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd1radius")]
  8334. public static extern short cnc_rd1radius( ushort FlibHndl,
  8335. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE4 c );
  8336. /* read tool life management data(cutter compensation no.-2) */
  8337. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd2radius")]
  8338. public static extern short cnc_rd2radius( ushort FlibHndl,
  8339. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE4 c );
  8340. /* read tool life management data(tool information-1) */
  8341. [DllImport("FWLIB32.dll", EntryPoint="cnc_t1info")]
  8342. public static extern short cnc_t1info( ushort FlibHndl,
  8343. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE4 c );
  8344. /* read tool life management data(tool information-2) */
  8345. [DllImport("FWLIB32.dll", EntryPoint="cnc_t2info")]
  8346. public static extern short cnc_t2info( ushort FlibHndl,
  8347. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE4 c );
  8348. /* read tool life management data(tool number) */
  8349. [DllImport("FWLIB32.dll", EntryPoint="cnc_toolnum")]
  8350. public static extern short cnc_toolnum( ushort FlibHndl,
  8351. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE4 c );
  8352. /* read tool life management data(tool number, tool life, tool life counter)(area specified) */
  8353. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtoolrng")]
  8354. public static extern short cnc_rdtoolrng( ushort FlibHndl,
  8355. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTR d );
  8356. /* read tool life management data(all data within group) */
  8357. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtoolgrp")]
  8358. public static extern short cnc_rdtoolgrp( ushort FlibHndl, short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTG c );
  8359. /* write tool life management data(tool life counter) (area specified) */
  8360. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrcountr")]
  8361. public static extern short cnc_wrcountr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IDBWRC b );
  8362. /* read tool life management data(used tool group number) */
  8363. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdusegrpid")]
  8364. public static extern short cnc_rdusegrpid( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBUSEGR a );
  8365. /* read tool life management data(max. number of tool groups) */
  8366. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmaxgrp")]
  8367. public static extern short cnc_rdmaxgrp( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBLFNO a );
  8368. /* read tool life management data(maximum number of tool within group) */
  8369. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmaxtool")]
  8370. public static extern short cnc_rdmaxtool( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBLFNO a );
  8371. /* read tool life management data(used tool no. within group) */
  8372. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdusetlno")]
  8373. public static extern short cnc_rdusetlno( ushort FlibHndl,
  8374. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLUSE d );
  8375. /* read tool life management data(tool data1) */
  8376. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd1tlifedata")]
  8377. public static extern short cnc_rd1tlifedata( ushort FlibHndl,
  8378. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTD c );
  8379. /* read tool life management data(tool data2) */
  8380. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd2tlifedata")]
  8381. public static extern short cnc_rd2tlifedata( ushort FlibHndl,
  8382. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTD c );
  8383. /* write tool life management data(tool data1) */
  8384. [DllImport("FWLIB32.dll", EntryPoint="cnc_wr1tlifedata")]
  8385. public static extern short cnc_wr1tlifedata( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTD a );
  8386. /* write tool life management data(tool data2) */
  8387. [DllImport("FWLIB32.dll", EntryPoint="cnc_wr2tlifedata")]
  8388. public static extern short cnc_wr2tlifedata( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTD a );
  8389. /* read tool life management data(tool group information) */
  8390. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdgrpinfo")]
  8391. public static extern short cnc_rdgrpinfo( ushort FlibHndl,
  8392. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTGI d );
  8393. /* read tool life management data(tool group information 2) */
  8394. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdgrpinfo2")]
  8395. public static extern short cnc_rdgrpinfo2( ushort FlibHndl,
  8396. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTGI2 d );
  8397. /* read tool life management data(tool group information 3) */
  8398. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdgrpinfo3")]
  8399. public static extern short cnc_rdgrpinfo3( ushort FlibHndl,
  8400. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTGI3 d );
  8401. /* read tool life management data(tool group information 4) */
  8402. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdgrpinfo4")]
  8403. public static extern short cnc_rdgrpinfo4( ushort FlibHndl,
  8404. short a, short b, short c, out short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTGI4 e );
  8405. /* write tool life management data(tool group information) */
  8406. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrgrpinfo")]
  8407. public static extern short cnc_wrgrpinfo( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTGI b );
  8408. /* write tool life management data(tool group information 2) */
  8409. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrgrpinfo2")]
  8410. public static extern short cnc_wrgrpinfo2( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTGI2 b );
  8411. /* write tool life management data(tool group information 3) */
  8412. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrgrpinfo3")]
  8413. public static extern short cnc_wrgrpinfo3( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTGI3 b );
  8414. /* delete tool life management data(tool group) */
  8415. [DllImport("FWLIB32.dll", EntryPoint="cnc_deltlifegrp")]
  8416. public static extern short cnc_deltlifegrp( ushort FlibHndl, short a );
  8417. /* insert tool life management data(tool data) */
  8418. [DllImport("FWLIB32.dll", EntryPoint="cnc_instlifedt")]
  8419. public static extern short cnc_instlifedt( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IDBITD a );
  8420. /* delete tool life management data(tool data) */
  8421. [DllImport("FWLIB32.dll", EntryPoint="cnc_deltlifedt")]
  8422. public static extern short cnc_deltlifedt( ushort FlibHndl, short a, short b );
  8423. /* clear tool life management data(tool life counter, tool information)(area specified) */
  8424. [DllImport("FWLIB32.dll", EntryPoint="cnc_clrcntinfo")]
  8425. public static extern short cnc_clrcntinfo( ushort FlibHndl, short a, short b );
  8426. /* read tool life management data(tool group number) 2 */
  8427. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdgrpid2")]
  8428. public static extern short cnc_rdgrpid2( ushort FlibHndl, int a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLIFE5 b );
  8429. /* read tool life management data(tool data1) 2 */
  8430. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd1tlifedat2")]
  8431. public static extern short cnc_rd1tlifedat2( ushort FlibHndl,
  8432. short a, int b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTD2 c );
  8433. /* write tool life management data(tool data1) 2 */
  8434. [DllImport("FWLIB32.dll", EntryPoint="cnc_wr1tlifedat2")]
  8435. public static extern short cnc_wr1tlifedat2( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTD2 a );
  8436. /* read tool life management data */
  8437. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtlinfo")]
  8438. public static extern short cnc_rdtlinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBTLINFO a );
  8439. /* read tool life management data(used tool group number) */
  8440. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtlusegrp")]
  8441. public static extern short cnc_rdtlusegrp( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBUSEGRP a );
  8442. /* read tool life management data(tool group information 2) */
  8443. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtlgrp")]
  8444. public static extern short cnc_rdtlgrp( ushort FlibHndl,
  8445. int a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTLGRP c );
  8446. /* read tool life management data (tool data1) */
  8447. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtltool")]
  8448. public static extern short cnc_rdtltool( ushort FlibHndl,
  8449. int a, int b, ref short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTLTOOL d );
  8450. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdexchgtgrp")]
  8451. public static extern short cnc_rdexchgtgrp( ushort FlibHndl,
  8452. ref short b , [Out,MarshalAs(UnmanagedType.LPStruct)] ODBEXGP c );
  8453. /*-----------------------------------*/
  8454. /* CNC: Tool management data related */
  8455. /*-----------------------------------*/
  8456. /* new registration of tool management data */
  8457. [DllImport("FWLIB32.dll", EntryPoint="cnc_regtool")]
  8458. public static extern short cnc_regtool( ushort FlibHndl,
  8459. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTLMNG c );
  8460. /* new registration of tool management data */
  8461. [DllImport("FWLIB32.dll", EntryPoint="cnc_regtool_f2")]
  8462. public static extern short cnc_regtool_f2( ushort FlibHndl,
  8463. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTLMNG_F2 c );
  8464. /* deletion of tool management data */
  8465. [DllImport("FWLIB32.dll", EntryPoint="cnc_deltool")]
  8466. public static extern short cnc_deltool( ushort FlibHndl, short a, ref short b );
  8467. /* lead of tool management data */
  8468. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtool")]
  8469. public static extern short cnc_rdtool( ushort FlibHndl,
  8470. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTLMNG c );
  8471. /* lead of tool management data */
  8472. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtool_f2")]
  8473. public static extern short cnc_rdtool_f2( ushort FlibHndl,
  8474. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTLMNG_F2 c );
  8475. /* write of tool management data */
  8476. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtool")]
  8477. public static extern short cnc_wrtool( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTLMNG b );
  8478. /* write of individual data of tool management data */
  8479. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtool2")]
  8480. public static extern short cnc_wrtool2( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IDBTLM b );
  8481. /* write tool management data */
  8482. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtool_f2")]
  8483. public static extern short cnc_wrtool_f2( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTLMNG_F2_data b );
  8484. /* new registration of magazine management data */
  8485. [DllImport("FWLIB32.dll", EntryPoint="cnc_regmagazine")]
  8486. public static extern short cnc_regmagazine( ushort FlibHndl, ref short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTLMAG b );
  8487. /* deletion of magazine management data */
  8488. [DllImport("FWLIB32.dll", EntryPoint="cnc_delmagazine")]
  8489. public static extern short cnc_delmagazine( ushort FlibHndl, ref short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTLMAG2 b );
  8490. /* lead of magazine management data */
  8491. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmagazine")]
  8492. public static extern short cnc_rdmagazine( ushort FlibHndl, ref short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTLMAG b );
  8493. /* Individual write of magazine management data */
  8494. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmagazine")]
  8495. public static extern short cnc_wrmagazine( ushort FlibHndl, short a, short b, short c );
  8496. /*-------------------------------------*/
  8497. /* CNC: Operation history data related */
  8498. /*-------------------------------------*/
  8499. /* stop logging operation history data */
  8500. [DllImport("FWLIB32.dll", EntryPoint="cnc_stopophis")]
  8501. public static extern short cnc_stopophis( ushort FlibHndl );
  8502. /* restart logging operation history data */
  8503. [DllImport("FWLIB32.dll", EntryPoint="cnc_startophis")]
  8504. public static extern short cnc_startophis( ushort FlibHndl );
  8505. /* read number of operation history data */
  8506. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophisno")]
  8507. public static extern short cnc_rdophisno( ushort FlibHndl, out ushort a );
  8508. /* read operation history data */
  8509. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry")]
  8510. public static extern short cnc_rdophistry( ushort FlibHndl,
  8511. ushort a, ushort b, ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBHIS d );
  8512. /* read operation history data */
  8513. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry2")]
  8514. public static extern short cnc_rdophistry2( ushort FlibHndl,
  8515. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.AsAny)] Object d );
  8516. /* read operation history data F30i*/
  8517. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8518. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8519. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_1 d );
  8520. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8521. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8522. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_2 d );
  8523. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8524. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8525. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_3 d );
  8526. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8527. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8528. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_4 d );
  8529. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8530. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8531. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_5 d );
  8532. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8533. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8534. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_6 d );
  8535. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8536. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8537. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_7 d );
  8538. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8539. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8540. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_8 d );
  8541. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8542. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8543. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_9 d );
  8544. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8545. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8546. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_10 d );
  8547. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdophistry4")]
  8548. public static extern short cnc_rdophistry4( ushort FlibHndl,
  8549. ushort a, ref ushort b, ref ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOPHIS4_11 d );
  8550. /* read number of alarm history data */
  8551. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalmhisno")]
  8552. public static extern short cnc_rdalmhisno( ushort FlibHndl, out ushort a );
  8553. /* read alarm history data */
  8554. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalmhistry")]
  8555. public static extern short cnc_rdalmhistry( ushort FlibHndl,
  8556. ushort a, ushort b, ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAHIS d );
  8557. /* read alarm history data */
  8558. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalmhistry_w")]
  8559. public static extern short cnc_rdalmhistry_w( ushort FlibHndl,
  8560. ushort a, ushort b, ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAHIS d );
  8561. /* read alarm history data */
  8562. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalmhistry2")]
  8563. public static extern short cnc_rdalmhistry2( ushort FlibHndl,
  8564. ushort a, ushort b, ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAHIS2 d );
  8565. /* read alarm history data F30i*/
  8566. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalmhistry3")]
  8567. public static extern short cnc_rdalmhistry3( ushort FlibHndl,
  8568. ushort a, ushort b, ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAHIS3 d );
  8569. /* read alarm history data F30i*/
  8570. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalmhistry5")]
  8571. public static extern short cnc_rdalmhistry5( ushort FlibHndl,
  8572. ushort a, ushort b, ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAHIS5 d );
  8573. /* clear operation history data */
  8574. [DllImport("FWLIB32.dll", EntryPoint="cnc_clearophis")]
  8575. public static extern short cnc_clearophis( ushort FlibHndl, short a );
  8576. /* read signals related operation history */
  8577. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhissgnl")]
  8578. public static extern short cnc_rdhissgnl( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSIG a );
  8579. /* read signals related operation history 2 */
  8580. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhissgnl2")]
  8581. public static extern short cnc_rdhissgnl2( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSIG2 a );
  8582. /* read signals related operation history 3 */
  8583. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhissgnl3")]
  8584. public static extern short cnc_rdhissgnl3( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSIG3 a );
  8585. /* write signals related operation history */
  8586. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrhissgnl")]
  8587. public static extern short cnc_wrhissgnl( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSIG a );
  8588. /* write signals related operation history 2 */
  8589. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrhissgnl2")]
  8590. public static extern short cnc_wrhissgnl2( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSIG2 a );
  8591. /* write signals related operation history for F30i*/
  8592. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrhissgnl3")]
  8593. public static extern short cnc_wrhissgnl3( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSIG3 a );
  8594. /* read number of operater message history data */
  8595. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdomhisno")]
  8596. public static extern short cnc_rdomhisno( ushort FlibHndl, out ushort a );
  8597. /*-------------*/
  8598. /* CNC: Others */
  8599. /*-------------*/
  8600. /* read CNC system information */
  8601. [DllImport("FWLIB32.dll", EntryPoint="cnc_sysinfo")]
  8602. public static extern short cnc_sysinfo(ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSYS a);
  8603. /* read CNC status information */
  8604. [DllImport("FWLIB32.dll", EntryPoint="cnc_statinfo")]
  8605. public static extern short cnc_statinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBST a );
  8606. /* read alarm status */
  8607. [DllImport("FWLIB32.dll", EntryPoint="cnc_alarm")]
  8608. public static extern short cnc_alarm(ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBALM a);
  8609. /* read alarm status */
  8610. [DllImport("FWLIB32.dll", EntryPoint="cnc_alarm2")]
  8611. public static extern short cnc_alarm2( ushort FlibHndl, out int a );
  8612. /* read alarm information */
  8613. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalminfo")]
  8614. public static extern short cnc_rdalminfo(ushort FlibHndl,
  8615. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ALMINFO_1 d);
  8616. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalminfo")]
  8617. public static extern short cnc_rdalminfo(ushort FlibHndl,
  8618. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ALMINFO_2 d);
  8619. /* read alarm message */
  8620. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalmmsg")]
  8621. public static extern short cnc_rdalmmsg( ushort FlibHndl,
  8622. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBALMMSG c );
  8623. /* read alarm message(2) */
  8624. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdalmmsg2")]
  8625. public static extern short cnc_rdalmmsg2( ushort FlibHndl,
  8626. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBALMMSG2 c );
  8627. /* clear CNC alarm */
  8628. [DllImport("FWLIB32.dll", EntryPoint="cnc_clralm")]
  8629. public static extern short cnc_clralm( ushort FlibHndl, short a );
  8630. /* read modal data */
  8631. [DllImport("FWLIB32.dll", EntryPoint="cnc_modal")]
  8632. public static extern short cnc_modal( ushort FlibHndl,
  8633. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMDL_1 c );
  8634. [DllImport("FWLIB32.dll", EntryPoint="cnc_modal")]
  8635. public static extern short cnc_modal( ushort FlibHndl,
  8636. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMDL_2 c );
  8637. [DllImport("FWLIB32.dll", EntryPoint="cnc_modal")]
  8638. public static extern short cnc_modal( ushort FlibHndl,
  8639. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMDL_3 c );
  8640. [DllImport("FWLIB32.dll", EntryPoint="cnc_modal")]
  8641. public static extern short cnc_modal( ushort FlibHndl,
  8642. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMDL_4 c );
  8643. [DllImport("FWLIB32.dll", EntryPoint="cnc_modal")]
  8644. public static extern short cnc_modal( ushort FlibHndl,
  8645. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMDL_5 c );
  8646. /* read G code */
  8647. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdgcode")]
  8648. public static extern short cnc_rdgcode( ushort FlibHndl,
  8649. short a, short b, ref short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBGCD d );
  8650. /* read command value */
  8651. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcommand")]
  8652. public static extern short cnc_rdcommand( ushort FlibHndl,
  8653. short a, short b, ref short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBCMD d );
  8654. /* read diagnosis data */
  8655. [DllImport("FWLIB32.dll", EntryPoint="cnc_diagnoss")]
  8656. public static extern short cnc_diagnoss( ushort FlibHndl,
  8657. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDGN_1 d );
  8658. [DllImport("FWLIB32.dll", EntryPoint="cnc_diagnoss")]
  8659. public static extern short cnc_diagnoss( ushort FlibHndl,
  8660. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDGN_2 d );
  8661. [DllImport("FWLIB32.dll", EntryPoint="cnc_diagnoss")]
  8662. public static extern short cnc_diagnoss( ushort FlibHndl,
  8663. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDGN_3 d );
  8664. [DllImport("FWLIB32.dll", EntryPoint="cnc_diagnoss")]
  8665. public static extern short cnc_diagnoss( ushort FlibHndl,
  8666. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDGN_4 d );
  8667. /* read diagnosis data(area specified) */
  8668. [DllImport("FWLIB32.dll", EntryPoint="cnc_diagnosr")]
  8669. public static extern short cnc_diagnosr( ushort FlibHndl,
  8670. ref short a, short b, ref short c, ref short d, [Out,MarshalAs(UnmanagedType.AsAny)] Object e );
  8671. // [DllImport("FWLIB32.dll", EntryPoint="cnc_diagnosr")]
  8672. // public static extern short cnc_diagnosr( ushort FlibHndl,
  8673. // ref short a, short b, ref short c, ref short d, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDGN e );
  8674. /* read A/D conversion data */
  8675. [DllImport("FWLIB32.dll", EntryPoint="cnc_adcnv")]
  8676. public static extern short cnc_adcnv( ushort FlibHndl, short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAD c );
  8677. /* read operator's message */
  8678. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdopmsg")]
  8679. public static extern short cnc_rdopmsg( ushort FlibHndl, short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] OPMSG c );
  8680. /* read operator's message */
  8681. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdopmsg2")]
  8682. public static extern short cnc_rdopmsg2( ushort FlibHndl, short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] OPMSG2 c );
  8683. /* read operator's message */
  8684. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdopmsg3")]
  8685. public static extern short cnc_rdopmsg3( ushort FlibHndl,
  8686. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] OPMSG3 c );
  8687. /* set path number(for 4 axes lathes, multi-path) */
  8688. [DllImport("FWLIB32.dll", EntryPoint="cnc_setpath")]
  8689. public static extern short cnc_setpath( ushort FlibHndl, short a );
  8690. /* get path number(for 4 axes lathes, multi-path) */
  8691. [DllImport("FWLIB32.dll", EntryPoint="cnc_getpath")]
  8692. public static extern short cnc_getpath( ushort FlibHndl, out short a, out short b );
  8693. /* allocate library handle */
  8694. [DllImport("FWLIB32.dll", EntryPoint="cnc_allclibhndl")]
  8695. public static extern short cnc_allclibhndl( out ushort FlibHndl );
  8696. /* free library handle */
  8697. [DllImport("FWLIB32.dll", EntryPoint="cnc_freelibhndl")]
  8698. public static extern short cnc_freelibhndl( ushort FlibHndl );
  8699. /* get library option */
  8700. [DllImport("FWLIB32.dll", EntryPoint="cnc_getlibopt")]
  8701. public static extern short cnc_getlibopt( ushort FlibHndl , int a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b, ref int c );
  8702. /* set library option */
  8703. [DllImport("FWLIB32.dll", EntryPoint="cnc_setlibopt")]
  8704. public static extern short cnc_setlibopt( ushort FlibHndl , int a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, int c );
  8705. /* get custom macro type */
  8706. [DllImport("FWLIB32.dll", EntryPoint="cnc_getmactype")]
  8707. public static extern short cnc_getmactype( ushort FlibHndl, out short a );
  8708. /* set custom macro type */
  8709. [DllImport("FWLIB32.dll", EntryPoint="cnc_setmactype")]
  8710. public static extern short cnc_setmactype( ushort FlibHndl, short a );
  8711. /* get P code macro type */
  8712. [DllImport("FWLIB32.dll", EntryPoint="cnc_getpmactype")]
  8713. public static extern short cnc_getpmactype( ushort FlibHndl, out short a );
  8714. /* set P code macro type */
  8715. [DllImport("FWLIB32.dll", EntryPoint="cnc_setpmactype")]
  8716. public static extern short cnc_setpmactype( ushort FlibHndl, short a );
  8717. /* get screen status */
  8718. [DllImport("FWLIB32.dll", EntryPoint="cnc_getcrntscrn")]
  8719. public static extern short cnc_getcrntscrn( ushort FlibHndl, out short a );
  8720. /* change screen mode */
  8721. [DllImport("FWLIB32.dll", EntryPoint="cnc_slctscrn")]
  8722. public static extern short cnc_slctscrn( ushort FlibHndl, short a );
  8723. /* read CNC configuration information */
  8724. [DllImport("FWLIB32.dll", EntryPoint="cnc_sysconfig")]
  8725. public static extern short cnc_sysconfig( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSYSC a );
  8726. /* read program restart information */
  8727. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprstrinfo")]
  8728. public static extern short cnc_rdprstrinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPRS a );
  8729. /* search sequence number for program restart */
  8730. [DllImport("FWLIB32.dll", EntryPoint="cnc_rstrseqsrch")]
  8731. public static extern short cnc_rstrseqsrch( ushort FlibHndl, int a, int b, short c, short d );
  8732. /* search sequence number for program restart 2 */
  8733. [DllImport("FWLIB32.dll", EntryPoint="cnc_rstrseqsrch2")]
  8734. public static extern short cnc_rstrseqsrch2( ushort FlibHndl, int a, int b, short c, short d, int e );
  8735. /* read output signal image of software operator's panel */
  8736. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdopnlsgnl")]
  8737. public static extern short cnc_rdopnlsgnl( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSGNL b );
  8738. /* write output signal of software operator's panel */
  8739. [DllImport("FWLIB32.dll", EntryPoint="cnc_wropnlsgnl")]
  8740. public static extern short cnc_wropnlsgnl( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSGNL a );
  8741. /* read general signal image of software operator's panel */
  8742. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdopnlgnrl")]
  8743. public static extern short cnc_rdopnlgnrl( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBGNRL b );
  8744. /* write general signal image of software operator's panel */
  8745. [DllImport("FWLIB32.dll", EntryPoint="cnc_wropnlgnrl")]
  8746. public static extern short cnc_wropnlgnrl( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBGNRL a );
  8747. /* read general signal name of software operator's panel */
  8748. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdopnlgsname")]
  8749. public static extern short cnc_rdopnlgsname( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBRDNA b );
  8750. /* write general signal name of software operator's panel */
  8751. [DllImport("FWLIB32.dll", EntryPoint="cnc_wropnlgsname")]
  8752. public static extern short cnc_wropnlgsname( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBRDNA a );
  8753. /* get detail error */
  8754. [DllImport("FWLIB32.dll", EntryPoint="cnc_getdtailerr")]
  8755. public static extern short cnc_getdtailerr( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBERR a );
  8756. /* read informations of CNC parameter */
  8757. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparainfo")]
  8758. public static extern short cnc_rdparainfo( ushort FlibHndl,
  8759. short a, ushort b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPARAIF c );
  8760. /* read informations of CNC setting data */
  8761. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsetinfo")]
  8762. public static extern short cnc_rdsetinfo( ushort FlibHndl,
  8763. short a, ushort b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSETIF c );
  8764. /* read informations of CNC diagnose data */
  8765. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddiaginfo")]
  8766. public static extern short cnc_rddiaginfo( ushort FlibHndl,
  8767. short a, ushort b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDIAGIF c );
  8768. /* read maximum, minimum and total number of CNC parameter */
  8769. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdparanum")]
  8770. public static extern short cnc_rdparanum( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPARANUM a );
  8771. /* read maximum, minimum and total number of CNC setting data */
  8772. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsetnum")]
  8773. public static extern short cnc_rdsetnum( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSETNUM a );
  8774. /* read maximum, minimum and total number of CNC diagnose data */
  8775. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddiagnum")]
  8776. public static extern short cnc_rddiagnum( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDIAGNUM a );
  8777. /* get maximum valid figures and number of decimal places */
  8778. [DllImport("FWLIB32.dll", EntryPoint="cnc_getfigure")]
  8779. public static extern short cnc_getfigure( ushort FlibHndl,
  8780. short a, out short b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c, [Out,MarshalAs(UnmanagedType.AsAny)] Object d );
  8781. /* read F-ROM information on CNC */
  8782. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdfrominfo")]
  8783. public static extern short cnc_rdfrominfo( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBFINFO b );
  8784. /* start of reading F-ROM data from CNC */
  8785. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromsvstart")]
  8786. public static extern short cnc_fromsvstart( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, int c );
  8787. /* read F-ROM data from CNC */
  8788. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromsave")]
  8789. public static extern short cnc_fromsave( ushort FlibHndl, out short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b, ref int c );
  8790. /* end of reading F-ROM data from CNC */
  8791. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromsvend")]
  8792. public static extern short cnc_fromsvend( ushort FlibHndl );
  8793. /* start of writing F-ROM data to CNC */
  8794. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromldstart")]
  8795. public static extern short cnc_fromldstart( ushort FlibHndl, short a, int b );
  8796. /* write F-ROM data to CNC */
  8797. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromload")]
  8798. public static extern short cnc_fromload( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, ref int b );
  8799. /* end of writing F-ROM data to CNC */
  8800. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromldend")]
  8801. public static extern short cnc_fromldend( ushort FlibHndl );
  8802. /* delete F-ROM data on CNC */
  8803. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromdelete")]
  8804. public static extern short cnc_fromdelete( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, int c );
  8805. /* read S-RAM information on CNC */
  8806. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsraminfo")]
  8807. public static extern short cnc_rdsraminfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSINFO a );
  8808. /* start of reading S-RAM data from CNC */
  8809. [DllImport("FWLIB32.dll", EntryPoint="cnc_srambkstart")]
  8810. public static extern short cnc_srambkstart( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, int b );
  8811. /* read S-RAM data from CNC */
  8812. [DllImport("FWLIB32.dll", EntryPoint="cnc_srambackup")]
  8813. public static extern short cnc_srambackup( ushort FlibHndl, out short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b, ref int c );
  8814. /* end of reading S-RAM data from CNC */
  8815. [DllImport("FWLIB32.dll", EntryPoint="cnc_srambkend")]
  8816. public static extern short cnc_srambkend( ushort FlibHndl );
  8817. /* read F-ROM information on CNC */
  8818. [DllImport("FWLIB32.dll", EntryPoint="cnc_getfrominfo")]
  8819. public static extern short cnc_getfrominfo( ushort FlibHndl,
  8820. short a, out short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBFINFORM c );
  8821. /* start of reading F-ROM data from CNC */
  8822. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromgetstart")]
  8823. public static extern short cnc_fromgetstart( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  8824. /* read F-ROM data from CNC */
  8825. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromget")]
  8826. public static extern short cnc_fromget( ushort FlibHndl, out short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b, ref int c );
  8827. /* end of reading F-ROM data from CNC */
  8828. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromgetend")]
  8829. public static extern short cnc_fromgetend( ushort FlibHndl );
  8830. /* start of writing F-ROM data to CNC */
  8831. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromputstart")]
  8832. public static extern short cnc_fromputstart( ushort FlibHndl, short a );
  8833. /* write F-ROM data to CNC */
  8834. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromput")]
  8835. public static extern short cnc_fromput( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, ref int b );
  8836. /* end of writing F-ROM data to CNC */
  8837. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromputend")]
  8838. public static extern short cnc_fromputend( ushort FlibHndl );
  8839. /* delete F-ROM data on CNC */
  8840. [DllImport("FWLIB32.dll", EntryPoint="cnc_fromremove")]
  8841. public static extern short cnc_fromremove( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  8842. /* read S-RAM information on CNC */
  8843. [DllImport("FWLIB32.dll", EntryPoint="cnc_getsraminfo")]
  8844. public static extern short cnc_getsraminfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSINFO a );
  8845. /* start of reading S-RAM data from CNC */
  8846. [DllImport("FWLIB32.dll", EntryPoint="cnc_sramgetstart")]
  8847. public static extern short cnc_sramgetstart( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8848. /* start of reading S-RAM data from CNC (2) */
  8849. [DllImport("FWLIB32.dll", EntryPoint="cnc_sramgetstart2")]
  8850. public static extern short cnc_sramgetstart2( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8851. /* read S-RAM data from CNC */
  8852. [DllImport("FWLIB32.dll", EntryPoint="cnc_sramget")]
  8853. public static extern short cnc_sramget( ushort FlibHndl, out short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b, ref int c );
  8854. /* read S-RAM data from CNC (2) */
  8855. [DllImport("FWLIB32.dll", EntryPoint="cnc_sramget2")]
  8856. public static extern short cnc_sramget2( ushort FlibHndl, out short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b, ref int c );
  8857. /* end of reading S-RAM data from CNC */
  8858. [DllImport("FWLIB32.dll", EntryPoint="cnc_sramgetend")]
  8859. public static extern short cnc_sramgetend( ushort FlibHndl );
  8860. /* end of reading S-RAM data from CNC (2) */
  8861. [DllImport("FWLIB32.dll", EntryPoint="cnc_sramgetend2")]
  8862. public static extern short cnc_sramgetend2( ushort FlibHndl );
  8863. /* read number of S-RAM data kind on CNC */
  8864. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsramnum")]
  8865. public static extern short cnc_rdsramnum( ushort FlibHndl, out short a );
  8866. /* read S-RAM data address information on CNC */
  8867. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsramaddr")]
  8868. public static extern short cnc_rdsramaddr( ushort FlibHndl, out short a, [Out,MarshalAs(UnmanagedType.LPStruct)] SRAMADDR b );
  8869. /* get current NC data protection information */
  8870. [DllImport("FWLIB32.dll", EntryPoint="cnc_getlockstat")]
  8871. public static extern short cnc_getlockstat( ushort FlibHndl, short a, out byte b );
  8872. /* change NC data protection status */
  8873. [DllImport("FWLIB32.dll", EntryPoint="cnc_chgprotbit")]
  8874. public static extern short cnc_chgprotbit( ushort FlibHndl, short a, ref byte b, int c );
  8875. /* transfer a file from host computer to CNC by FTP */
  8876. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvftpget")]
  8877. public static extern short cnc_dtsvftpget( ushort FlibHndl,
  8878. [In,MarshalAs(UnmanagedType.AsAny)] Object a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  8879. /* transfer a file from CNC to host computer by FTP */
  8880. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvftpput")]
  8881. public static extern short cnc_dtsvftpput( ushort FlibHndl,
  8882. [In,MarshalAs(UnmanagedType.AsAny)] Object a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  8883. /* get transfer status for FTP */
  8884. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvftpstat")]
  8885. public static extern short cnc_dtsvftpstat( ushort FlibHndl );
  8886. /* read file directory in Data Server */
  8887. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvrdpgdir")]
  8888. public static extern short cnc_dtsvrdpgdir( ushort FlibHndl,
  8889. [In,MarshalAs(UnmanagedType.AsAny)] Object a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDSDIR c );
  8890. /* delete files in Data Server */
  8891. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvdelete")]
  8892. public static extern short cnc_dtsvdelete( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8893. /* down load from CNC (transfer a file from CNC to MMC) */
  8894. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvdownload")]
  8895. public static extern short cnc_dtsvdownload( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8896. /* up load to CNC (transfer a file from MMC to CNC) */
  8897. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvupload")]
  8898. public static extern short cnc_dtsvupload( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8899. /* close upload/download between Data Server and CNC */
  8900. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvcnclupdn")]
  8901. public static extern short cnc_dtsvcnclupdn( ushort FlibHndl );
  8902. /* get transfer status for up/down load */
  8903. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvupdnstat")]
  8904. public static extern short cnc_dtsvupdnstat( ushort FlibHndl );
  8905. /* get file name for DNC operation in Data Server */
  8906. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvgetdncpg")]
  8907. public static extern short cnc_dtsvgetdncpg( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  8908. /* set program number of DNC oparation to CNC */
  8909. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvsetdncpg")]
  8910. public static extern short cnc_dtsvsetdncpg( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  8911. /* read setting data for Data Server */
  8912. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvrdset")]
  8913. public static extern short cnc_dtsvrdset( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBDSSET a );
  8914. /* write setting data for Data Server */
  8915. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvwrset")]
  8916. public static extern short cnc_dtsvwrset( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBDSSET a );
  8917. /* check hard disk in Data Server */
  8918. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvchkdsk")]
  8919. public static extern short cnc_dtsvchkdsk( ushort FlibHndl );
  8920. /* format hard disk in Data Server */
  8921. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvhdformat")]
  8922. public static extern short cnc_dtsvhdformat( ushort FlibHndl );
  8923. /* save interface area in Data Server */
  8924. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvsavecram")]
  8925. public static extern short cnc_dtsvsavecram( ushort FlibHndl );
  8926. /* get interface area in Data Server */
  8927. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvrdcram")]
  8928. public static extern short cnc_dtsvrdcram( ushort FlibHndl, int a, ref int b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c );
  8929. /* read maintenance information for Data Server */
  8930. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvmntinfo")]
  8931. public static extern short cnc_dtsvmntinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDSMNT a );
  8932. /* get Data Server mode */
  8933. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvgetmode")]
  8934. public static extern short cnc_dtsvgetmode( ushort FlibHndl, out short a );
  8935. /* set Data Server mode */
  8936. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvsetmode")]
  8937. public static extern short cnc_dtsvsetmode( ushort FlibHndl, short a );
  8938. /* read error message for Data Server */
  8939. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvrderrmsg")]
  8940. public static extern short cnc_dtsvrderrmsg( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  8941. /* transfar file from Pc to Data Server */
  8942. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvwrfile")]
  8943. public static extern short cnc_dtsvwrfile( ushort FlibHndl,
  8944. [In,MarshalAs(UnmanagedType.AsAny)] Object a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, short c );
  8945. /* transfar file from Data Server to Pc */
  8946. [DllImport("FWLIB32.dll", EntryPoint="cnc_dtsvrdfile")]
  8947. public static extern short cnc_dtsvrdfile( ushort FlibHndl,
  8948. [In,MarshalAs(UnmanagedType.AsAny)] Object a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, short c );
  8949. /* read the loop gain for each axis */
  8950. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdloopgain")]
  8951. public static extern short cnc_rdloopgain( ushort FlibHndl, out int a );
  8952. /* read the actual current for each axis */
  8953. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcurrent")]
  8954. public static extern short cnc_rdcurrent( ushort FlibHndl, out short a );
  8955. /* read the actual speed for each axis */
  8956. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsrvspeed")]
  8957. public static extern short cnc_rdsrvspeed( ushort FlibHndl, out int a );
  8958. /* read the operation mode */
  8959. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdopmode")]
  8960. public static extern short cnc_rdopmode( ushort FlibHndl, out short a );
  8961. /* read the position deviation S */
  8962. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdposerrs")]
  8963. public static extern short cnc_rdposerrs( ushort FlibHndl, out int a );
  8964. /* read the position deviation S1 and S2 */
  8965. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdposerrs2")]
  8966. public static extern short cnc_rdposerrs2( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPSER a );
  8967. /* read the position deviation Z in the rigid tap mode */
  8968. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdposerrz")]
  8969. public static extern short cnc_rdposerrz( ushort FlibHndl, out int a );
  8970. /* read the synchronous error in the synchronous control mode */
  8971. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsynerrsy")]
  8972. public static extern short cnc_rdsynerrsy( ushort FlibHndl, out int a );
  8973. /* read the synchronous error in the rigid tap mode */
  8974. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsynerrrg")]
  8975. public static extern short cnc_rdsynerrrg( ushort FlibHndl, out int a );
  8976. /* read the spindle alarm */
  8977. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdspdlalm")]
  8978. public static extern short cnc_rdspdlalm( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  8979. /* read the control input signal */
  8980. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdctrldi")]
  8981. public static extern short cnc_rdctrldi( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSPDI a );
  8982. /* read the control output signal */
  8983. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdctrldo")]
  8984. public static extern short cnc_rdctrldo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSPDO a );
  8985. /* read the number of controled spindle */
  8986. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdnspdl")]
  8987. public static extern short cnc_rdnspdl( ushort FlibHndl, out short a );
  8988. /* read data from FANUC BUS */
  8989. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdfbusmem")]
  8990. public static extern short cnc_rdfbusmem( ushort FlibHndl,
  8991. short a, short b, int c, int d, [Out,MarshalAs(UnmanagedType.AsAny)] Object e );
  8992. /* write data to FANUC BUS */
  8993. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrfbusmem")]
  8994. public static extern short cnc_wrfbusmem( ushort FlibHndl,
  8995. short a, short b, int c, int d, [In,MarshalAs(UnmanagedType.AsAny)] Object e );
  8996. /* read the parameter of wave diagnosis */
  8997. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdwaveprm")]
  8998. public static extern short cnc_rdwaveprm( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBWAVE a );
  8999. /* write the parameter of wave diagnosis */
  9000. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrwaveprm")]
  9001. public static extern short cnc_wrwaveprm( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBWAVE a );
  9002. /* read the parameter of wave diagnosis 2 */
  9003. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdwaveprm2")]
  9004. public static extern short cnc_rdwaveprm2( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBWVPRM a );
  9005. /* write the parameter of wave diagnosis 2 */
  9006. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrwaveprm2")]
  9007. public static extern short cnc_wrwaveprm2( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBWVPRM a );
  9008. /* start the sampling for wave diagnosis */
  9009. [DllImport("FWLIB32.dll", EntryPoint="cnc_wavestart")]
  9010. public static extern short cnc_wavestart( ushort FlibHndl );
  9011. /* stop the sampling for wave diagnosis */
  9012. [DllImport("FWLIB32.dll", EntryPoint="cnc_wavestop")]
  9013. public static extern short cnc_wavestop( ushort FlibHndl );
  9014. /* read the status of wave diagnosis */
  9015. [DllImport("FWLIB32.dll", EntryPoint="cnc_wavestat")]
  9016. public static extern short cnc_wavestat( ushort FlibHndl, out short a );
  9017. /* read the data of wave diagnosis */
  9018. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdwavedata")]
  9019. public static extern short cnc_rdwavedata( ushort FlibHndl,
  9020. short a, short b, int c, ref int d, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBWVDT e );
  9021. /* read the parameter of wave diagnosis for remort diagnosis */
  9022. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdrmtwaveprm")]
  9023. public static extern short cnc_rdrmtwaveprm( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBRMTPRM a, short b );
  9024. /* write the parameter of wave diagnosis for remort diagnosis */
  9025. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrrmtwaveprm")]
  9026. public static extern short cnc_wrrmtwaveprm( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBRMTPRM a );
  9027. /* start the sampling for wave diagnosis for remort diagnosis */
  9028. [DllImport("FWLIB32.dll", EntryPoint="cnc_rmtwavestart")]
  9029. public static extern short cnc_rmtwavestart( ushort FlibHndl );
  9030. /* stop the sampling for wave diagnosis for remort diagnosis */
  9031. [DllImport("FWLIB32.dll", EntryPoint="cnc_rmtwavestop")]
  9032. public static extern short cnc_rmtwavestop( ushort FlibHndl );
  9033. /* read the status of wave diagnosis for remort diagnosis*/
  9034. [DllImport("FWLIB32.dll", EntryPoint="cnc_rmtwavestat")]
  9035. public static extern short cnc_rmtwavestat( ushort FlibHndl, out short a );
  9036. /* read the data of wave diagnosis for remort diagnosis */
  9037. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdrmtwavedt")]
  9038. public static extern short cnc_rdrmtwavedt( ushort FlibHndl,
  9039. short a, int b, ref int c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBRMTDT d );
  9040. /* read of address for PMC signal batch save */
  9041. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsavsigadr")]
  9042. public static extern short cnc_rdsavsigadr( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSIGAD a, short b );
  9043. /* write of address for PMC signal batch save */
  9044. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrsavsigadr")]
  9045. public static extern short cnc_wrsavsigadr( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSIGAD a, out short b );
  9046. /* read of data for PMC signal batch save */
  9047. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsavsigdata")]
  9048. public static extern short cnc_rdsavsigdata( ushort FlibHndl,
  9049. short a, short b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c, ref short d );
  9050. /* read M-code group data */
  9051. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmgrpdata")]
  9052. public static extern short cnc_rdmgrpdata( ushort FlibHndl,
  9053. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMGRP c );
  9054. /* write M-code group data */
  9055. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmgrpdata")]
  9056. public static extern short cnc_wrmgrpdata( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IDBMGRP a );
  9057. /* read executing M-code group data */
  9058. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdexecmcode")]
  9059. public static extern short cnc_rdexecmcode( ushort FlibHndl,
  9060. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBEXEM c );
  9061. /* read program restart M-code group data */
  9062. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdrstrmcode")]
  9063. public static extern short cnc_rdrstrmcode( ushort FlibHndl,
  9064. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBRSTRM c );
  9065. /* read processing time stamp data */
  9066. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdproctime")]
  9067. public static extern short cnc_rdproctime( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPTIME a );
  9068. /* read MDI program stat */
  9069. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmdiprgstat")]
  9070. public static extern short cnc_rdmdiprgstat( ushort FlibHndl, out ushort a );
  9071. /* read program directory for processing time data */
  9072. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprgdirtime")]
  9073. public static extern short cnc_rdprgdirtime( ushort FlibHndl,
  9074. ref int a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] PRGDIRTM c );
  9075. /* read program directory 2 */
  9076. #if (!ONO8D)
  9077. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprogdir2")]
  9078. public static extern short cnc_rdprogdir2( ushort FlibHndl,
  9079. short a, ref short b, ref short c, [Out,MarshalAs(UnmanagedType.LPStruct)] PRGDIR2 d );
  9080. #else
  9081. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprogdir2o8")]
  9082. public static extern short cnc_rdprogdir2( ushort FlibHndl,
  9083. short a, ref short b, ref short c, [Out,MarshalAs(UnmanagedType.LPStruct)] PRGDIR2 d );
  9084. #endif
  9085. /* read program directory 3 */
  9086. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprogdir3")]
  9087. public static extern short cnc_rdprogdir3( ushort FlibHndl,
  9088. short a, ref int b, ref short c, [Out,MarshalAs(UnmanagedType.LPStruct)] PRGDIR3 d );
  9089. /* read program directory 4 */
  9090. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdprogdir4")]
  9091. public static extern short cnc_rdprogdir4( ushort FlibHndl,
  9092. short a, int b, ref short c, [Out,MarshalAs(UnmanagedType.LPStruct)] PRGDIR4 d );
  9093. /* read DNC file name for DNC1, DNC2, OSI-Ethernet */
  9094. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddncfname")]
  9095. public static extern short cnc_rddncfname( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  9096. /* write DNC file name for DNC1, DNC2, OSI-Ethernet */
  9097. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrdncfname")]
  9098. public static extern short cnc_wrdncfname( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  9099. /* read communication parameter for DNC1, DNC2, OSI-Ethernet */
  9100. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcomparam")]
  9101. public static extern short cnc_rdcomparam( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBCPRM a );
  9102. /* write communication parameter for DNC1, DNC2, OSI-Ethernet */
  9103. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrcomparam")]
  9104. public static extern short cnc_wrcomparam( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBCPRM a );
  9105. /* read log message for DNC2 */
  9106. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcomlogmsg")]
  9107. public static extern short cnc_rdcomlogmsg( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  9108. /* read operator message for DNC1, DNC2 */
  9109. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcomopemsg")]
  9110. public static extern short cnc_rdcomopemsg( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  9111. /* read recieve message for OSI-Ethernet */
  9112. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdrcvmsg")]
  9113. public static extern short cnc_rdrcvmsg( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  9114. /* read send message for OSI-Ethernet */
  9115. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsndmsg")]
  9116. public static extern short cnc_rdsndmsg( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  9117. /* send message for OSI-Ethernet */
  9118. [DllImport("FWLIB32.dll", EntryPoint="cnc_sendmessage")]
  9119. public static extern short cnc_sendmessage( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  9120. /* clear message buffer for OSI-Ethernet */
  9121. [DllImport("FWLIB32.dll", EntryPoint="cnc_clrmsgbuff")]
  9122. public static extern short cnc_clrmsgbuff( ushort FlibHndl, short a );
  9123. /* read message recieve status for OSI-Ethernet */
  9124. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdrcvstat")]
  9125. public static extern short cnc_rdrcvstat( ushort FlibHndl, out ushort a );
  9126. /* read interference check */
  9127. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdintchk")]
  9128. public static extern short cnc_rdintchk( ushort FlibHndl,
  9129. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBINT e );
  9130. /* write interference check */
  9131. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrintchk")]
  9132. public static extern short cnc_wrintchk( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBINT b );
  9133. /* read interference check information */
  9134. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdintinfo")]
  9135. public static extern short cnc_rdintinfo( ushort FlibHndl, out short a );
  9136. /* read work coordinate shift */
  9137. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdwkcdshft")]
  9138. public static extern short cnc_rdwkcdshft( ushort FlibHndl,
  9139. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBWCSF c );
  9140. /* write work coordinate shift */
  9141. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrwkcdshft")]
  9142. public static extern short cnc_wrwkcdshft( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBWCSF b );
  9143. /* read work coordinate shift measure */
  9144. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdwkcdsfms")]
  9145. public static extern short cnc_rdwkcdsfms( ushort FlibHndl,
  9146. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBWCSF c );
  9147. /* write work coordinate shift measure */
  9148. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrwkcdsfms")]
  9149. public static extern short cnc_wrwkcdsfms( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBWCSF b );
  9150. /* stop the sampling for operator message history */
  9151. [DllImport("FWLIB32.dll", EntryPoint="cnc_stopomhis")]
  9152. public static extern short cnc_stopomhis( ushort FlibHndl );
  9153. /* start the sampling for operator message history */
  9154. [DllImport("FWLIB32.dll", EntryPoint="cnc_startomhis")]
  9155. public static extern short cnc_startomhis( ushort FlibHndl );
  9156. /* read operator message history information */
  9157. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdomhisinfo")]
  9158. public static extern short cnc_rdomhisinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOMIF a );
  9159. /* read operator message history */
  9160. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdomhistry")]
  9161. public static extern short cnc_rdomhistry( ushort FlibHndl,
  9162. ushort a, ref ushort b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOMHIS c );
  9163. /* read operater message history data F30i */
  9164. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdomhistry2")]
  9165. public static extern short cnc_rdomhistry2( ushort FlibHndl,
  9166. ushort a, ushort b, ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBOMHIS2 d );
  9167. /* write external key operation history for F30i*/
  9168. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrkeyhistry")]
  9169. public static extern short cnc_wrkeyhistry( ushort FlibHndl, byte a );
  9170. /* clear operator message history */
  9171. [DllImport("FWLIB32.dll", EntryPoint="cnc_clearomhis")]
  9172. public static extern short cnc_clearomhis( ushort FlibHndl );
  9173. /* read b-axis tool offset value(area specified) */
  9174. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdbtofsr")]
  9175. public static extern short cnc_rdbtofsr( ushort FlibHndl,
  9176. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBBTO e );
  9177. /* write b-axis tool offset value(area specified) */
  9178. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrbtofsr")]
  9179. public static extern short cnc_wrbtofsr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBBTO b );
  9180. /* read b-axis tool offset information */
  9181. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdbtofsinfo")]
  9182. public static extern short cnc_rdbtofsinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBBTLINF a );
  9183. /* read b-axis command */
  9184. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdbaxis")]
  9185. public static extern short cnc_rdbaxis( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBBAXIS a );
  9186. /* read CNC system soft series and version */
  9187. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsyssoft")]
  9188. public static extern short cnc_rdsyssoft( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSYSS a );
  9189. /* read CNC system soft series and version (2) */
  9190. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsyssoft2")]
  9191. public static extern short cnc_rdsyssoft2( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSYSS2 a );
  9192. /* read CNC module configuration information */
  9193. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmdlconfig")]
  9194. public static extern short cnc_rdmdlconfig( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMDLC a );
  9195. /* read CNC module configuration information 2 */
  9196. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmdlconfig2")]
  9197. public static extern short cnc_rdmdlconfig2( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  9198. /* read processing condition file (processing data) */
  9199. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpscdproc")]
  9200. public static extern short cnc_rdpscdproc( ushort FlibHndl,
  9201. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPSCD c );
  9202. /* write processing condition file (processing data) */
  9203. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpscdproc")]
  9204. public static extern short cnc_wrpscdproc( ushort FlibHndl,
  9205. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPSCD c );
  9206. /* read processing condition file (piercing data) */
  9207. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpscdpirc")]
  9208. public static extern short cnc_rdpscdpirc( ushort FlibHndl,
  9209. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPIRC c );
  9210. /* write processing condition file (piercing data) */
  9211. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpscdpirc")]
  9212. public static extern short cnc_wrpscdpirc( ushort FlibHndl,
  9213. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPIRC c );
  9214. /* read processing condition file (edging data) */
  9215. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpscdedge")]
  9216. public static extern short cnc_rdpscdedge( ushort FlibHndl,
  9217. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBEDGE c );
  9218. /* write processing condition file (edging data) */
  9219. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpscdedge")]
  9220. public static extern short cnc_wrpscdedge( ushort FlibHndl,
  9221. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBEDGE c );
  9222. /* read processing condition file (slope data) */
  9223. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpscdslop")]
  9224. public static extern short cnc_rdpscdslop( ushort FlibHndl,
  9225. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSLOP c );
  9226. /* write processing condition file (slope data) */
  9227. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpscdslop")]
  9228. public static extern short cnc_wrpscdslop( ushort FlibHndl,
  9229. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSLOP c );
  9230. /* read power controll duty data */
  9231. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlpwrdty")]
  9232. public static extern short cnc_rdlpwrdty( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBLPWDT a );
  9233. /* write power controll duty data */
  9234. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrlpwrdty")]
  9235. public static extern short cnc_wrlpwrdty( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBLPWDT a );
  9236. /* read laser power data */
  9237. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlpwrdat")]
  9238. public static extern short cnc_rdlpwrdat( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBLOPDT a );
  9239. /* read power complement */
  9240. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlpwrcpst")]
  9241. public static extern short cnc_rdlpwrcpst( ushort FlibHndl, out short a );
  9242. /* write power complement */
  9243. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrlpwrcpst")]
  9244. public static extern short cnc_wrlpwrcpst( ushort FlibHndl, short a );
  9245. /* read laser assist gas selection */
  9246. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlagslt")]
  9247. public static extern short cnc_rdlagslt( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBLAGSL a );
  9248. /* write laser assist gas selection */
  9249. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrlagslt")]
  9250. public static extern short cnc_wrlagslt( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBLAGSL a );
  9251. /* read laser assist gas flow */
  9252. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlagst")]
  9253. public static extern short cnc_rdlagst( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBLAGST a );
  9254. /* write laser assist gas flow */
  9255. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrlagst")]
  9256. public static extern short cnc_wrlagst( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBLAGST a );
  9257. /* read laser power for edge processing */
  9258. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdledgprc")]
  9259. public static extern short cnc_rdledgprc( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBLEGPR a );
  9260. /* write laser power for edge processing */
  9261. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrledgprc")]
  9262. public static extern short cnc_wrledgprc( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBLEGPR a );
  9263. /* read laser power for piercing */
  9264. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlprcprc")]
  9265. public static extern short cnc_rdlprcprc( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBLPCPR a );
  9266. /* write laser power for piercing */
  9267. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrlprcprc")]
  9268. public static extern short cnc_wrlprcprc( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBLPCPR a );
  9269. /* read laser command data */
  9270. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlcmddat")]
  9271. public static extern short cnc_rdlcmddat( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBLCMDT a );
  9272. /* read displacement */
  9273. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdldsplc")]
  9274. public static extern short cnc_rdldsplc( ushort FlibHndl, out short a );
  9275. /* write displacement */
  9276. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrldsplc")]
  9277. public static extern short cnc_wrldsplc( ushort FlibHndl, short a );
  9278. /* read error for axis z */
  9279. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlerrz")]
  9280. public static extern short cnc_rdlerrz( ushort FlibHndl, out short a );
  9281. /* read active number */
  9282. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlactnum")]
  9283. public static extern short cnc_rdlactnum( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBLACTN a );
  9284. /* read laser comment */
  9285. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlcmmt")]
  9286. public static extern short cnc_rdlcmmt( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBLCMMT a );
  9287. /* read laser power select */
  9288. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlpwrslt")]
  9289. public static extern short cnc_rdlpwrslt( ushort FlibHndl, out short a );
  9290. /* write laser power select */
  9291. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrlpwrslt")]
  9292. public static extern short cnc_wrlpwrslt( ushort FlibHndl, short a );
  9293. /* read laser power controll */
  9294. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlpwrctrl")]
  9295. public static extern short cnc_rdlpwrctrl( ushort FlibHndl, out short a );
  9296. /* write laser power controll */
  9297. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrlpwrctrl")]
  9298. public static extern short cnc_wrlpwrctrl( ushort FlibHndl, short a );
  9299. /* read power correction factor history data */
  9300. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpwofsthis")]
  9301. public static extern short cnc_rdpwofsthis( ushort FlibHndl,
  9302. int a, ref int b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPWOFST c );
  9303. /* read management time */
  9304. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmngtime")]
  9305. public static extern short cnc_rdmngtime( ushort FlibHndl,
  9306. int a, ref int b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBMNGTIME c );
  9307. /* write management time */
  9308. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmngtime")]
  9309. public static extern short cnc_wrmngtime( ushort FlibHndl, int a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBMNGTIME b );
  9310. /* read data related to electrical discharge at power correction ends */
  9311. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddischarge")]
  9312. public static extern short cnc_rddischarge( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDISCHRG a );
  9313. /* read alarm history data related to electrical discharg */
  9314. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddischrgalm")]
  9315. public static extern short cnc_rddischrgalm( ushort FlibHndl,
  9316. int a, ref int b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBDISCHRGALM c );
  9317. /* get date and time from cnc */
  9318. [DllImport("FWLIB32.dll", EntryPoint="cnc_gettimer")]
  9319. public static extern short cnc_gettimer( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTIMER a );
  9320. /* set date and time for cnc */
  9321. [DllImport("FWLIB32.dll", EntryPoint="cnc_settimer")]
  9322. public static extern short cnc_settimer( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTIMER a );
  9323. /* read timer data from cnc */
  9324. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtimer")]
  9325. public static extern short cnc_rdtimer( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTIME b );
  9326. /* write timer data for cnc */
  9327. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtimer")]
  9328. public static extern short cnc_wrtimer( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTIME b );
  9329. /* read tool controll data */
  9330. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtlctldata")]
  9331. public static extern short cnc_rdtlctldata( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTLCTL a );
  9332. /* write tool controll data */
  9333. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtlctldata")]
  9334. public static extern short cnc_wrtlctldata( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTLCTL a );
  9335. /* read tool data */
  9336. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtooldata")]
  9337. public static extern short cnc_rdtooldata( ushort FlibHndl,
  9338. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTLDT c );
  9339. /* read tool data */
  9340. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtooldata")]
  9341. public static extern short cnc_wrtooldata( ushort FlibHndl,
  9342. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTLDT c );
  9343. /* read multi tool data */
  9344. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmultitldt")]
  9345. public static extern short cnc_rdmultitldt( ushort FlibHndl,
  9346. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBMLTTL c );
  9347. /* write multi tool data */
  9348. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmultitldt")]
  9349. public static extern short cnc_wrmultitldt( ushort FlibHndl,
  9350. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBMLTTL c );
  9351. /* read multi tap data */
  9352. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmtapdata")]
  9353. public static extern short cnc_rdmtapdata( ushort FlibHndl,
  9354. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBMTAP c );
  9355. /* write multi tap data */
  9356. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmtapdata")]
  9357. public static extern short cnc_wrmtapdata( ushort FlibHndl,
  9358. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBMTAP c );
  9359. /* read multi-piece machining number */
  9360. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmultipieceno")]
  9361. public static extern short cnc_rdmultipieceno( ushort FlibHndl, out int a );
  9362. /* read tool information */
  9363. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtoolinfo")]
  9364. public static extern short cnc_rdtoolinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPTLINF a );
  9365. /* read safetyzone data */
  9366. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsafetyzone")]
  9367. public static extern short cnc_rdsafetyzone( ushort FlibHndl,
  9368. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSAFE c );
  9369. /* write safetyzone data */
  9370. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrsafetyzone")]
  9371. public static extern short cnc_wrsafetyzone( ushort FlibHndl,
  9372. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSAFE c );
  9373. /* read toolzone data */
  9374. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdtoolzone")]
  9375. public static extern short cnc_rdtoolzone( ushort FlibHndl,
  9376. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBTLZN c );
  9377. /* write toolzone data */
  9378. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrtoolzone")]
  9379. public static extern short cnc_wrtoolzone( ushort FlibHndl,
  9380. short a, ref short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBTLZN c );
  9381. /* read active toolzone data */
  9382. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdacttlzone")]
  9383. public static extern short cnc_rdacttlzone(ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBACTTLZN a);
  9384. /* read setzone number */
  9385. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsetzone")]
  9386. public static extern short cnc_rdsetzone( ushort FlibHndl, out short a );
  9387. /* write setzone number */
  9388. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrsetzone")]
  9389. public static extern short cnc_wrsetzone( ushort FlibHndl, short a );
  9390. /* read block restart information */
  9391. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdbrstrinfo")]
  9392. public static extern short cnc_rdbrstrinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBBRS a );
  9393. /* read menu switch signal */
  9394. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmenuswitch")]
  9395. public static extern short cnc_rdmenuswitch( ushort FlibHndl, out short a );
  9396. /* write menu switch signal */
  9397. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrmenuswitch")]
  9398. public static extern short cnc_wrmenuswitch( ushort FlibHndl, short a, short b );
  9399. /* read tool radius offset for position data */
  9400. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdradofs")]
  9401. public static extern short cnc_rdradofs( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBROFS a );
  9402. /* read tool length offset for position data */
  9403. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdlenofs")]
  9404. public static extern short cnc_rdlenofs( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBLOFS a );
  9405. /* read fixed cycle for position data */
  9406. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdfixcycle")]
  9407. public static extern short cnc_rdfixcycle( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBFIX a );
  9408. /* read coordinate rotate for position data */
  9409. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcdrotate")]
  9410. public static extern short cnc_rdcdrotate( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBROT a );
  9411. /* read 3D coordinate convert for position data */
  9412. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd3dcdcnv")]
  9413. public static extern short cnc_rd3dcdcnv( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODB3DCD a );
  9414. /* read programable mirror image for position data */
  9415. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdmirimage")]
  9416. public static extern short cnc_rdmirimage( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBMIR a );
  9417. /* read scaling for position data */
  9418. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdscaling")]
  9419. public static extern short cnc_rdscaling( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSCL a );
  9420. /* read 3D tool offset for position data */
  9421. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd3dtofs")]
  9422. public static extern short cnc_rd3dtofs( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODB3DTO a );
  9423. /* read tool position offset for position data */
  9424. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdposofs")]
  9425. public static extern short cnc_rdposofs( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPOFS a );
  9426. /* read hpcc setting data */
  9427. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhpccset")]
  9428. public static extern short cnc_rdhpccset( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBHPST a );
  9429. /* write hpcc setting data */
  9430. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrhpccset")]
  9431. public static extern short cnc_wrhpccset( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBHPST a );
  9432. /* hpcc data auto setting data */
  9433. [DllImport("FWLIB32.dll", EntryPoint="cnc_hpccatset")]
  9434. public static extern short cnc_hpccatset( ushort FlibHndl );
  9435. /* read hpcc tuning data ( parameter input ) */
  9436. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhpcctupr")]
  9437. public static extern short cnc_rdhpcctupr( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBHPPR a );
  9438. /* write hpcc tuning data ( parameter input ) */
  9439. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrhpcctupr")]
  9440. public static extern short cnc_wrhpcctupr( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBHPPR a );
  9441. /* read hpcc tuning data ( acc input ) */
  9442. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdhpcctuac")]
  9443. public static extern short cnc_rdhpcctuac( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBHPAC a );
  9444. /* write hpcc tuning data ( acc input ) */
  9445. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrhpcctuac")]
  9446. public static extern short cnc_wrhpcctuac( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBHPAC a );
  9447. /* hpcc data auto tuning */
  9448. [DllImport("FWLIB32.dll", EntryPoint="cnc_hpccattune")]
  9449. public static extern short cnc_hpccattune( ushort FlibHndl, short a, out short b );
  9450. /* read hpcc fine level */
  9451. [DllImport("FWLIB32.dll", EntryPoint="cnc_hpccactfine")]
  9452. public static extern short cnc_hpccactfine( ushort FlibHndl, out short a );
  9453. /* select hpcc fine level */
  9454. [DllImport("FWLIB32.dll", EntryPoint="cnc_hpccselfine")]
  9455. public static extern short cnc_hpccselfine( ushort FlibHndl, short a );
  9456. /* read active fixture offset */
  9457. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdactfixofs")]
  9458. public static extern short cnc_rdactfixofs( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBZOFS b );
  9459. /* read fixture offset */
  9460. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdfixofs")]
  9461. public static extern short cnc_rdfixofs( ushort FlibHndl,
  9462. short a, short b, short c, short d, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBZOR e );
  9463. /* write fixture offset */
  9464. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrfixofs")]
  9465. public static extern short cnc_wrfixofs( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBZOR b );
  9466. /* read tip of tool for 3D handle */
  9467. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd3dtooltip")]
  9468. public static extern short cnc_rd3dtooltip( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODB3DHDL a );
  9469. /* read pulse for 3D handle */
  9470. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd3dpulse")]
  9471. public static extern short cnc_rd3dpulse( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODB3DPLS a );
  9472. /* read move overrlap of tool for 3D handle */
  9473. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd3dmovrlap")]
  9474. public static extern short cnc_rd3dmovrlap( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODB3DHDL a );
  9475. /* read change offset for 3D handle */
  9476. [DllImport("FWLIB32.dll", EntryPoint="cnc_rd3dofschg")]
  9477. public static extern short cnc_rd3dofschg( ushort FlibHndl, ref int a );
  9478. /* clear pulse and change offset for 3D handle */
  9479. [DllImport("FWLIB32.dll", EntryPoint="cnc_clr3dplsmov")]
  9480. public static extern short cnc_clr3dplsmov( ushort FlibHndl, short a );
  9481. /* cycle start */
  9482. [DllImport("FWLIB32.dll", EntryPoint="cnc_start")]
  9483. public static extern short cnc_start( ushort FlibHndl );
  9484. /* reset CNC */
  9485. [DllImport("FWLIB32.dll", EntryPoint="cnc_reset")]
  9486. public static extern short cnc_reset( ushort FlibHndl );
  9487. /* reset CNC 2 */
  9488. [DllImport("FWLIB32.dll", EntryPoint="cnc_reset2")]
  9489. public static extern short cnc_reset2( ushort FlibHndl );
  9490. /* read axis name */
  9491. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdaxisname")]
  9492. public static extern short cnc_rdaxisname( ushort FlibHndl,
  9493. ref short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXISNAME b );
  9494. /* read spindle name */
  9495. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdspdlname")]
  9496. public static extern short cnc_rdspdlname( ushort FlibHndl,
  9497. ref short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSPDLNAME b );
  9498. /* read extended axis name */
  9499. [DllImport("FWLIB32.dll", EntryPoint="cnc_exaxisname")]
  9500. public static extern short cnc_exaxisname( ushort FlibHndl,
  9501. short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBEXAXISNAME c );
  9502. /* read SRAM variable area for C language executor */
  9503. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcexesram")]
  9504. public static extern short cnc_rdcexesram( ushort FlibHndl, int a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, ref int c );
  9505. /* write SRAM variable area for C language executor */
  9506. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrcexesram")]
  9507. public static extern short cnc_wrcexesram( ushort FlibHndl, int a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, ref int c );
  9508. /* read maximum size and linear address of SRAM variable area for C language executor */
  9509. [DllImport("FWLIB32.dll", EntryPoint="cnc_cexesraminfo")]
  9510. public static extern short cnc_cexesraminfo( ushort FlibHndl, out short a, out int b, out int c );
  9511. /* read maximum size of SRAM variable area for C language executor */
  9512. [DllImport("FWLIB32.dll", EntryPoint="cnc_cexesramsize")]
  9513. public static extern short cnc_cexesramsize( ushort FlibHndl, out int a );
  9514. /* read additional workpiece coordinate systems number */
  9515. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcoordnum")]
  9516. public static extern short cnc_rdcoordnum( ushort FlibHndl, out short a );
  9517. /* converts from FANUC code to Shift JIS code */
  9518. [DllImport("FWLIB32.dll", EntryPoint="cnc_ftosjis")]
  9519. public static extern short cnc_ftosjis( ushort FlibHndl,
  9520. [In,MarshalAs(UnmanagedType.AsAny)] Object a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  9521. /* Set the unsolicited message parameters */
  9522. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrunsolicprm")]
  9523. public static extern short cnc_wrunsolicprm( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBUNSOLIC b );
  9524. /* Get the unsolicited message parameters */
  9525. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdunsolicprm")]
  9526. public static extern short cnc_rdunsolicprm( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBUNSOLIC b );
  9527. /* Start of unsolicited message */
  9528. [DllImport("FWLIB32.dll", EntryPoint="cnc_unsolicstart")]
  9529. public static extern short cnc_unsolicstart( ushort FlibHndl, short a, int hWnd, uint c, short d, out short e );
  9530. /* End of unsolicited message */
  9531. [DllImport("FWLIB32.dll", EntryPoint="cnc_unsolicstop")]
  9532. public static extern short cnc_unsolicstop( ushort FlibHndl, short a );
  9533. /* Reads the unsolicited message data */
  9534. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdunsolicmsg")]
  9535. public static extern short cnc_rdunsolicmsg(short a, [In, Out] IDBUNSOLICMSG b);
  9536. /* read machine specific maintenance item */
  9537. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpm_mcnitem")]
  9538. public static extern short cnc_rdpm_mcnitem( ushort FlibHndl, short a , ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBITEM c );
  9539. /* write machine specific maintenance item */
  9540. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpm_mcnitem")]
  9541. public static extern short cnc_wrpm_mcnitem( ushort FlibHndl, short a , short b, [In,MarshalAs(UnmanagedType.LPStruct)] IODBITEM c );
  9542. /* read cnc maintenance item */
  9543. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpm_cncitem")]
  9544. public static extern short cnc_rdpm_cncitem( ushort FlibHndl, short a , ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBITEM c );
  9545. /* read maintenance item status */
  9546. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdpm_item")]
  9547. public static extern short cnc_rdpm_item( ushort FlibHndl, short a , ref short b , [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPMAINTE c );
  9548. /* write maintenance item status */
  9549. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrpm_item")]
  9550. public static extern short cnc_wrpm_item( ushort FlibHndl, short a , short b , short c , [In,MarshalAs(UnmanagedType.LPStruct)] IODBPMAINTE d );
  9551. /* Display of optional message */
  9552. [DllImport("FWLIB32.dll", EntryPoint="cnc_dispoptmsg")]
  9553. public static extern short cnc_dispoptmsg( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  9554. /* Reading of answer for optional message display */
  9555. [DllImport("FWLIB32.dll", EntryPoint="cnc_optmsgans")]
  9556. public static extern short cnc_optmsgans( ushort FlibHndl, out short a );
  9557. /* Get CNC Model */
  9558. [DllImport("FWLIB32.dll", EntryPoint="cnc_getcncmodel")]
  9559. public static extern short cnc_getcncmodel( ushort FlibHndl, out short a );
  9560. /* read number of repeats */
  9561. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdrepeatval")]
  9562. public static extern short cnc_rdrepeatval( ushort FlibHndl, out int a );
  9563. /* read CNC system hard info */
  9564. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsyshard")]
  9565. public static extern short cnc_rdsyshard( ushort FlibHndl, short a, ref short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSYSH c );
  9566. /* read CNC system soft series and version (3) */
  9567. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdsyssoft3")]
  9568. public static extern short cnc_rdsyssoft3( ushort FlibHndl, short a , ref short b , out short c , [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSYSS3 d );
  9569. /* read digit of program number */
  9570. [DllImport("FWLIB32.dll", EntryPoint="cnc_progdigit")]
  9571. public static extern short cnc_progdigit( ushort FlibHndl, out short a );
  9572. /* read CNC system path information */
  9573. [DllImport("FWLIB32.dll", EntryPoint="cnc_sysinfo_ex")]
  9574. public static extern short cnc_sysinfo_ex( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSYSEX a );
  9575. /*------------------*/
  9576. /* CNC : SERCOS I/F */
  9577. /*------------------*/
  9578. /* Get reservation of service channel for SERCOS I/F */
  9579. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsrsvchnl")]
  9580. public static extern short cnc_srcsrsvchnl( ushort FlibHndl );
  9581. /* Read ID information of SERCOS I/F */
  9582. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsrdidinfo")]
  9583. public static extern short cnc_srcsrdidinfo( ushort FlibHndl,
  9584. int a, short b, short c, [Out,MarshalAs(UnmanagedType.AsAny)] IODBIDINF d );
  9585. /* Write ID information of SERCOS I/F */
  9586. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcswridinfo")]
  9587. public static extern short cnc_srcswridinfo( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBIDINF a );
  9588. /* Start of reading operation data from drive of SERCOS I/F */
  9589. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsstartrd")]
  9590. public static extern short cnc_srcsstartrd( ushort FlibHndl, int a, short b );
  9591. /* Start of writing operation data to drive of SERCOS I/F */
  9592. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsstartwrt")]
  9593. public static extern short cnc_srcsstartwrt( ushort FlibHndl, int a, short b );
  9594. /* Stop of reading/writing operation data from/to drive of SERCOS I/F */
  9595. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsstopexec")]
  9596. public static extern short cnc_srcsstopexec( ushort FlibHndl );
  9597. /* Get execution status of reading/writing operation data of SERCOS I/F */
  9598. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsrdexstat")]
  9599. public static extern short cnc_srcsrdexstat( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSRCSST a );
  9600. /* Read operation data from data buffer for SERCOS I/F */
  9601. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsrdopdata")]
  9602. public static extern short cnc_srcsrdopdata( ushort FlibHndl, int a, ref int b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c );
  9603. /* Write operation data to data buffer for SERCOS I/F */
  9604. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcswropdata")]
  9605. public static extern short cnc_srcswropdata( ushort FlibHndl, int a, int b, [In,MarshalAs(UnmanagedType.AsAny)] Object c );
  9606. /* Free reservation of service channel for SERCOS I/F */
  9607. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsfreechnl")]
  9608. public static extern short cnc_srcsfreechnl( ushort FlibHndl );
  9609. /* Read drive assign of SERCOS I/F */
  9610. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsrdlayout")]
  9611. public static extern short cnc_srcsrdlayout( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSRCSLYT a );
  9612. /* Read communication phase of drive of SERCOS I/F */
  9613. [DllImport("FWLIB32.dll", EntryPoint="cnc_srcsrddrvcp")]
  9614. public static extern short cnc_srcsrddrvcp( ushort FlibHndl, out short a );
  9615. /*----------------------------*/
  9616. /* CNC : Graphic command data */
  9617. /*----------------------------*/
  9618. /* Start drawing position */
  9619. [DllImport("FWLIB32.dll", EntryPoint="cnc_startdrawpos")]
  9620. public static extern short cnc_startdrawpos( ushort FlibHndl );
  9621. /* Stop drawing position */
  9622. [DllImport("FWLIB32.dll", EntryPoint="cnc_stopdrawpos")]
  9623. public static extern short cnc_stopdrawpos( ushort FlibHndl );
  9624. /* Start dynamic graphic */
  9625. [DllImport("FWLIB32.dll", EntryPoint="cnc_startdyngrph")]
  9626. public static extern short cnc_startdyngrph( ushort FlibHndl );
  9627. /* Stop dynamic graphic */
  9628. [DllImport("FWLIB32.dll", EntryPoint="cnc_stopdyngrph")]
  9629. public static extern short cnc_stopdyngrph( ushort FlibHndl );
  9630. /* Read graphic command data */
  9631. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdgrphcmd")]
  9632. public static extern short cnc_rdgrphcmd( ushort FlibHndl, ref short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  9633. /* Update graphic command read pointer */
  9634. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrgrphcmdptr")]
  9635. public static extern short cnc_wrgrphcmdptr( ushort FlibHndl, short a );
  9636. /* Read cancel flag */
  9637. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdgrphcanflg")]
  9638. public static extern short cnc_rdgrphcanflg( ushort FlibHndl, out short a );
  9639. /* Clear graphic command */
  9640. [DllImport("FWLIB32.dll", EntryPoint="cnc_clrgrphcmd")]
  9641. public static extern short cnc_clrgrphcmd( ushort FlibHndl );
  9642. /*---------------------------*/
  9643. /* CNC : Servo learning data */
  9644. /*---------------------------*/
  9645. /* Servo learning data read start */
  9646. [DllImport("FWLIB32.dll", EntryPoint="cnc_svdtstartrd")]
  9647. public static extern short cnc_svdtstartrd( ushort FlibHndl, short a );
  9648. /* Servo learning data write start */
  9649. [DllImport("FWLIB32.dll", EntryPoint="cnc_svdtstartwr")]
  9650. public static extern short cnc_svdtstartwr( ushort FlibHndl, short a );
  9651. /* Servo learning data read end */
  9652. [DllImport("FWLIB32.dll", EntryPoint="cnc_svdtendrd")]
  9653. public static extern short cnc_svdtendrd( ushort FlibHndl );
  9654. /* Servo learning data write end */
  9655. [DllImport("FWLIB32.dll", EntryPoint="cnc_svdtendwr")]
  9656. public static extern short cnc_svdtendwr( ushort FlibHndl );
  9657. /* Servo learning data read/write stop */
  9658. [DllImport("FWLIB32.dll", EntryPoint="cnc_svdtstopexec")]
  9659. public static extern short cnc_svdtstopexec( ushort FlibHndl );
  9660. /* Servo learning data read from I/F buffer */
  9661. [DllImport("FWLIB32.dll", EntryPoint="cnc_svdtrddata")]
  9662. public static extern short cnc_svdtrddata( ushort FlibHndl,
  9663. out short a, ref int b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c );
  9664. /* Servo learning data write to I/F buffer */
  9665. [DllImport("FWLIB32.dll", EntryPoint="cnc_svdtwrdata")]
  9666. public static extern short cnc_svdtwrdata( ushort FlibHndl,
  9667. out short a, ref int b, [In,MarshalAs(UnmanagedType.AsAny)] Object c );
  9668. /*----------------------------*/
  9669. /* CNC : Servo Guide */
  9670. /*----------------------------*/
  9671. /* Servo Guide (Channel data set) */
  9672. [DllImport("FWLIB32.dll", EntryPoint="cnc_sdsetchnl")]
  9673. public static extern short cnc_sdsetchnl( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IDBCHAN b );
  9674. /* Servo Guide (Channel data clear) */
  9675. [DllImport("FWLIB32.dll", EntryPoint="cnc_sdclrchnl")]
  9676. public static extern short cnc_sdclrchnl( ushort FlibHndl );
  9677. /* Servo Guide (Sampling start) */
  9678. [DllImport("FWLIB32.dll", EntryPoint="cnc_sdstartsmpl")]
  9679. public static extern short cnc_sdstartsmpl( ushort FlibHndl, short a, int b, [Out,MarshalAs(UnmanagedType.AsAny)] Object c );
  9680. /* Servo Guide (Sampling cancel) */
  9681. [DllImport("FWLIB32.dll", EntryPoint="cnc_sdcancelsmpl")]
  9682. public static extern short cnc_sdcancelsmpl( ushort FlibHndl );
  9683. /* Servo Guide (read Sampling data) */
  9684. [DllImport("FWLIB32.dll", EntryPoint="cnc_sdreadsmpl")]
  9685. public static extern short cnc_sdreadsmpl( ushort FlibHndl,
  9686. out short a, int b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSD c );
  9687. /* Servo Guide (Sampling end) */
  9688. [DllImport("FWLIB32.dll", EntryPoint="cnc_sdendsmpl")]
  9689. public static extern short cnc_sdendsmpl( ushort FlibHndl );
  9690. /* Servo Guide (read 1 shot data) */
  9691. [DllImport("FWLIB32.dll", EntryPoint="cnc_sdread1shot")]
  9692. public static extern short cnc_sdread1shot( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a );
  9693. /* Servo feedback data (Channel data set) */
  9694. [DllImport("FWLIB32.dll", EntryPoint="cnc_sfbsetchnl")]
  9695. public static extern short cnc_sfbsetchnl( ushort FlibHndl,
  9696. short a, int b, [In,MarshalAs(UnmanagedType.LPStruct)] IDBSFBCHAN c );
  9697. /* Servo feedback data (Channel data clear) */
  9698. [DllImport("FWLIB32.dll", EntryPoint="cnc_sfbclrchnl")]
  9699. public static extern short cnc_sfbclrchnl( ushort FlibHndl );
  9700. /* Servo feedback data (Sampling start) */
  9701. [DllImport("FWLIB32.dll", EntryPoint="cnc_sfbstartsmpl")]
  9702. public static extern short cnc_sfbstartsmpl( ushort FlibHndl, short a, int b );
  9703. /* Servo feedback data (Sampling cancel) */
  9704. [DllImport("FWLIB32.dll", EntryPoint="cnc_sfbcancelsmpl")]
  9705. public static extern short cnc_sfbcancelsmpl( ushort FlibHndl );
  9706. /* Servo feedback data (read Sampling data) */
  9707. [DllImport("FWLIB32.dll", EntryPoint="cnc_sfbreadsmpl")]
  9708. public static extern short cnc_sfbreadsmpl( ushort FlibHndl,
  9709. out short a, int b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSD c );
  9710. /* Servo feedback data (Sampling end) */
  9711. [DllImport("FWLIB32.dll", EntryPoint="cnc_sfbendsmpl")]
  9712. public static extern short cnc_sfbendsmpl( ushort FlibHndl );
  9713. /*----------------------------*/
  9714. /* CNC : NC display function */
  9715. /*----------------------------*/
  9716. /* Start NC display */
  9717. [DllImport("FWLIB32.dll", EntryPoint="cnc_startnccmd")]
  9718. public static extern short cnc_startnccmd( ushort FlibHndl );
  9719. /* Start NC display (2) */
  9720. [DllImport("FWLIB32.dll", EntryPoint="cnc_startnccmd2")]
  9721. public static extern short cnc_startnccmd2( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a );
  9722. /* Stop NC display */
  9723. [DllImport("FWLIB32.dll", EntryPoint="cnc_stopnccmd")]
  9724. public static extern short cnc_stopnccmd( ushort FlibHndl );
  9725. /* Get NC display mode */
  9726. [DllImport("FWLIB32.dll", EntryPoint="cnc_getdspmode")]
  9727. public static extern short cnc_getdspmode( ushort FlibHndl, out short a );
  9728. /*------------------------------------*/
  9729. /* CNC : Remote diagnostics function */
  9730. /*------------------------------------*/
  9731. /* Start remote diagnostics function */
  9732. [DllImport("FWLIB32.dll", EntryPoint="cnc_startrmtdgn")]
  9733. public static extern short cnc_startrmtdgn( ushort FlibHndl );
  9734. /* Stop remote diagnostics function */
  9735. [DllImport("FWLIB32.dll", EntryPoint="cnc_stoprmtdgn")]
  9736. public static extern short cnc_stoprmtdgn( ushort FlibHndl );
  9737. /* Read data from remote diagnostics I/F */
  9738. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdrmtdgn")]
  9739. public static extern short cnc_rdrmtdgn( ushort FlibHndl, out int a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  9740. /* Write data to remote diagnostics I/F */
  9741. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrrmtdgn")]
  9742. public static extern short cnc_wrrmtdgn( ushort FlibHndl, ref int a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  9743. /* Set CommStatus of remote diagnostics I/F area */
  9744. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrcommstatus")]
  9745. public static extern short cnc_wrcommstatus( ushort FlibHndl, short a );
  9746. /* Check remote diagnostics I/F */
  9747. [DllImport("FWLIB32.dll", EntryPoint="cnc_chkrmtdgn")]
  9748. public static extern short cnc_chkrmtdgn( ushort FlibHndl );
  9749. /*-------------------------*/
  9750. /* CNC : FS18-LN function */
  9751. /*-------------------------*/
  9752. /* read allowance */
  9753. [DllImport("FWLIB32.dll", EntryPoint="cnc_allowance")]
  9754. public static extern short cnc_allowance(ushort FlibHndl,
  9755. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  9756. /* read allowanced state */
  9757. [DllImport("FWLIB32.dll", EntryPoint="cnc_allowcnd")]
  9758. public static extern short cnc_allowcnd( ushort FlibHndl,
  9759. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBCAXIS c );
  9760. /* set work zero */
  9761. [DllImport("FWLIB32.dll", EntryPoint="cnc_workzero")]
  9762. public static extern short cnc_workzero( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBZOFS b );
  9763. /* set slide position */
  9764. [DllImport("FWLIB32.dll", EntryPoint="cnc_slide")]
  9765. public static extern short cnc_slide(ushort FlibHndl,
  9766. short a, short b, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBAXIS c);
  9767. /*----------------------------------*/
  9768. /* CNC: Teaching data I/F function */
  9769. /*----------------------------------*/
  9770. /* Teaching data get start */
  9771. [DllImport("FWLIB32.dll", EntryPoint="cnc_startgetdgdat")]
  9772. public static extern short cnc_startgetdgdat( ushort FlibHndl );
  9773. /* Teaching data get stop */
  9774. [DllImport("FWLIB32.dll", EntryPoint="cnc_stopgetdgdat")]
  9775. public static extern short cnc_stopgetdgdat( ushort FlibHndl );
  9776. /* Teaching data read */
  9777. [DllImport("FWLIB32.dll", EntryPoint="cnc_rddgdat")]
  9778. public static extern short cnc_rddgdat( ushort FlibHndl, ref short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  9779. /* Teaching data read pointer write */
  9780. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrdgdatptr")]
  9781. public static extern short cnc_wrdgdatptr( ushort FlibHndl, short a );
  9782. /* Teaching data clear */
  9783. [DllImport("FWLIB32.dll", EntryPoint="cnc_clrdgdat")]
  9784. public static extern short cnc_clrdgdat( ushort FlibHndl );
  9785. /*---------------------------------*/
  9786. /* CNC : C-EXE SRAM file function */
  9787. /*---------------------------------*/
  9788. /* open C-EXE SRAM file */
  9789. [DllImport("FWLIB32.dll", EntryPoint="cnc_opencexefile")]
  9790. public static extern short cnc_opencexefile( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, short b, short c );
  9791. /* close C-EXE SRAM file */
  9792. [DllImport("FWLIB32.dll", EntryPoint="cnc_closecexefile")]
  9793. public static extern short cnc_closecexefile( ushort FlibHndl );
  9794. /* read C-EXE SRAM file */
  9795. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdcexefile")]
  9796. public static extern short cnc_rdcexefile( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a, ref uint b );
  9797. /* write C-EXE SRAM file */
  9798. [DllImport("FWLIB32.dll", EntryPoint="cnc_wrcexefile")]
  9799. public static extern short cnc_wrcexefile( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, ref uint b );
  9800. /* read C-EXE SRAM disk directory */
  9801. [DllImport("FWLIB32.dll", EntryPoint="cnc_cexedirectory")]
  9802. public static extern short cnc_cexedirectory( ushort FlibHndl,
  9803. [In,MarshalAs(UnmanagedType.AsAny)] Object a, ref ushort b, ushort c, [Out,MarshalAs(UnmanagedType.LPStruct)] CFILEINFO d );
  9804. /*-----*/
  9805. /* PMC */
  9806. /*-----*/
  9807. /* read message from PMC to MMC */
  9808. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdmsg")]
  9809. public static extern short pmc_rdmsg( ushort FlibHndl, ref short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  9810. /* write message from MMC to PMC */
  9811. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrmsg")]
  9812. public static extern short pmc_wrmsg( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  9813. /* read message from PMC to MMC(conditional) */
  9814. [DllImport("FWLIB32.dll", EntryPoint="pmc_crdmsg")]
  9815. public static extern short pmc_crdmsg( ushort FlibHndl, ref short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b );
  9816. /* write message from MMC to PMC(conditional) */
  9817. [DllImport("FWLIB32.dll", EntryPoint="pmc_cwrmsg")]
  9818. public static extern short pmc_cwrmsg( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  9819. /* read PMC data(area specified) */
  9820. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmcrng")]
  9821. public static extern short pmc_rdpmcrng( ushort FlibHndl,
  9822. short a, short b, ushort c, ushort d, ushort e, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPMC0 f );
  9823. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmcrng")]
  9824. public static extern short pmc_rdpmcrng( ushort FlibHndl,
  9825. short a, short b, ushort c, ushort d, ushort e, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPMC1 f );
  9826. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmcrng")]
  9827. public static extern short pmc_rdpmcrng( ushort FlibHndl,
  9828. short a, short b, ushort c, ushort d, ushort e, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPMC2 f );
  9829. /* write PMC data(area specified) */
  9830. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrpmcrng")]
  9831. public static extern short pmc_wrpmcrng( ushort FlibHndl, ushort a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPMC0 b );
  9832. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrpmcrng")]
  9833. public static extern short pmc_wrpmcrng( ushort FlibHndl, ushort a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPMC1 b );
  9834. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrpmcrng")]
  9835. public static extern short pmc_wrpmcrng( ushort FlibHndl, ushort a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPMC2 b );
  9836. /* read data from extended backup memory */
  9837. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdkpm")]
  9838. public static extern short pmc_rdkpm( ushort FlibHndl, uint a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b, ushort c );
  9839. /* write data to extended backup memory */
  9840. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrkpm")]
  9841. public static extern short pmc_wrkpm( ushort FlibHndl, uint a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, ushort c );
  9842. /* read data from extended backup memory 2 */
  9843. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdkpm2")]
  9844. public static extern short pmc_rdkpm2( ushort FlibHndl, uint a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b, uint c );
  9845. /* write data to extended backup memory 2 */
  9846. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrkpm2")]
  9847. public static extern short pmc_wrkpm2( ushort FlibHndl, uint a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, uint c );
  9848. /* read maximum size of extended backup memory */
  9849. [DllImport("FWLIB32.dll", EntryPoint="pmc_kpmsiz")]
  9850. public static extern short pmc_kpmsiz( ushort FlibHndl, out uint a );
  9851. /* read informations of PMC data */
  9852. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmcinfo")]
  9853. public static extern short pmc_rdpmcinfo( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPMCINF b );
  9854. /* read PMC parameter data table contorol data */
  9855. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdcntldata")]
  9856. public static extern short pmc_rdcntldata( ushort FlibHndl,
  9857. short a, short b, short c, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPMCCNTL d );
  9858. /* write PMC parameter data table contorol data */
  9859. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrcntldata")]
  9860. public static extern short pmc_wrcntldata( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPMCCNTL b );
  9861. /* read PMC parameter data table contorol data group number */
  9862. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdcntlgrp")]
  9863. public static extern short pmc_rdcntlgrp( ushort FlibHndl, out short a );
  9864. /* write PMC parameter data table contorol data group number */
  9865. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrcntlgrp")]
  9866. public static extern short pmc_wrcntlgrp( ushort FlibHndl, short a );
  9867. /* read PMC alarm message */
  9868. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdalmmsg")]
  9869. public static extern short pmc_rdalmmsg( ushort FlibHndl,
  9870. short a, ref short b, out short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPMCALM d );
  9871. /* get detail error for pmc */
  9872. [DllImport("FWLIB32.dll", EntryPoint="pmc_getdtailerr")]
  9873. public static extern short pmc_getdtailerr( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPMCERR a );
  9874. /* read PMC memory data */
  9875. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmcmem")]
  9876. public static extern short pmc_rdpmcmem( ushort FlibHndl,
  9877. short a, int b, int c, [Out,MarshalAs(UnmanagedType.AsAny)] Object d );
  9878. /* write PMC memory data */
  9879. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrpmcmem")]
  9880. public static extern short pmc_wrpmcmem( ushort FlibHndl,
  9881. short a, int b, int c, [In,MarshalAs(UnmanagedType.AsAny)] Object d );
  9882. /* read PMC-SE memory data */
  9883. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmcsemem")]
  9884. public static extern short pmc_rdpmcsemem( ushort FlibHndl,
  9885. short a, int b, int c, [Out,MarshalAs(UnmanagedType.AsAny)] Object d );
  9886. /* write PMC-SE memory data */
  9887. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrpmcsemem")]
  9888. public static extern short pmc_wrpmcsemem( ushort FlibHndl,
  9889. short a, int b, int c, [In,MarshalAs(UnmanagedType.AsAny)] Object d );
  9890. /* read pmc title data */
  9891. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmctitle")]
  9892. public static extern short pmc_rdpmctitle( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPMCTITLE a );
  9893. /* read PMC parameter start */
  9894. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdprmstart")]
  9895. public static extern short pmc_rdprmstart( ushort FlibHndl);
  9896. /* read PMC parameter */
  9897. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmcparam")]
  9898. public static extern short pmc_rdpmcparam( ushort FlibHndl, ref int a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b);
  9899. /* read PMC parameter end */
  9900. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdprmend")]
  9901. public static extern short pmc_rdprmend( ushort FlibHndl);
  9902. /* write PMC parameter start */
  9903. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrprmstart")]
  9904. public static extern short pmc_wrprmstart( ushort FlibHndl);
  9905. /* write PMC parameter */
  9906. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrpmcparam")]
  9907. public static extern short pmc_wrpmcparam( ushort FlibHndl,ref int a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  9908. /* write PMC parameter end */
  9909. [DllImport("FWLIB32.dll", EntryPoint="pmc_wrprmend")]
  9910. public static extern short pmc_wrprmend( ushort FlibHndl);
  9911. /* read PMC data */
  9912. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmcrng_ext")]
  9913. public static extern short pmc_rdpmcrng_ext( ushort FlibHndl,
  9914. short a, [In,Out,MarshalAs(UnmanagedType.LPStruct)] IODBPMCEXT b );
  9915. /* write PMC I/O link assigned data */
  9916. [DllImport("FWLIB32.dll", EntryPoint="pmc_wriolinkdat")]
  9917. public static extern short pmc_wriolinkdat( ushort FlibHndl, uint a, [In,MarshalAs(UnmanagedType.AsAny)] Object b, uint c );
  9918. /* read PMC address information */
  9919. [DllImport("FWLIB32.dll", EntryPoint="pmc_rdpmcaddr")]
  9920. public static extern short pmc_rdpmcaddr( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPMCADR a );
  9921. /* select PMC unit */
  9922. [DllImport("FWLIB32.dll", EntryPoint="pmc_select_pmc_unit")]
  9923. public static extern short pmc_select_pmc_unit( ushort FlibHndl, int a );
  9924. /* get current PMC unit */
  9925. [DllImport("FWLIB32.dll", EntryPoint="pmc_get_current_pmc_unit")]
  9926. public static extern short pmc_get_current_pmc_unit( ushort FlibHndl, ref int a );
  9927. /* get number of PMC */
  9928. [DllImport("FWLIB32.dll", EntryPoint="pmc_get_number_of_pmc")]
  9929. public static extern short pmc_get_number_of_pmc( ushort FlibHndl, ref int a );
  9930. /* get PMC unit types */
  9931. [DllImport("FWLIB32.dll", EntryPoint="pmc_get_pmc_unit_types")]
  9932. public static extern short pmc_get_pmc_unit_types( ushort FlibHndl, int[] a, ref int b );
  9933. /* set PMC Timer type */
  9934. [DllImport("FWLIB32.dll", EntryPoint="pmc_set_timer_type")]
  9935. public static extern short pmc_set_timer_type( ushort FlibHndl, ushort a, ushort b, ref short c );
  9936. /* get PMC Timer type */
  9937. [DllImport("FWLIB32.dll", EntryPoint="pmc_get_timer_type")]
  9938. public static extern short pmc_get_timer_type( ushort FlibHndl, ushort a, ushort b, ref short c );
  9939. /*----------------------------*/
  9940. /* PMC : PROFIBUS function */
  9941. /*----------------------------*/
  9942. /* read PROFIBUS configration data */
  9943. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdconfig")]
  9944. public static extern short pmc_prfrdconfig( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBPRFCNF a );
  9945. /* read bus parameter for master function */
  9946. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdbusprm")]
  9947. public static extern short pmc_prfrdbusprm( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBBUSPRM a );
  9948. /* write bus parameter for master function */
  9949. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwrbusprm")]
  9950. public static extern short pmc_prfwrbusprm( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBBUSPRM a );
  9951. /* read slave parameter for master function */
  9952. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdslvprm")]
  9953. public static extern short pmc_prfrdslvprm( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSLVPRM b );
  9954. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdslvprm")]
  9955. public static extern short pmc_prfrdslvprm( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSLVPRM2 b );
  9956. /* write slave parameter for master function */
  9957. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwrslvprm")]
  9958. public static extern short pmc_prfwrslvprm( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSLVPRM b );
  9959. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwrslvprm")]
  9960. public static extern short pmc_prfwrslvprm( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSLVPRM2 b );
  9961. /* read allocation address for master function */
  9962. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdallcadr")]
  9963. public static extern short pmc_prfrdallcadr( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBPRFADR b );
  9964. /* set allocation address for master function */
  9965. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwrallcadr")]
  9966. public static extern short pmc_prfwrallcadr( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBPRFADR b );
  9967. /* read allocation address for slave function */
  9968. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdslvaddr")]
  9969. public static extern short pmc_prfrdslvaddr( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSLVADR a );
  9970. /* set allocation address for slave function */
  9971. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwrslvaddr")]
  9972. public static extern short pmc_prfwrslvaddr( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSLVADR a );
  9973. /* read status for slave function */
  9974. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdslvstat")]
  9975. public static extern short pmc_prfrdslvstat( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBSLVST a );
  9976. /* Reads slave index data of master function */
  9977. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdslvid")]
  9978. public static extern short pmc_prfrdslvid( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSLVID b );
  9979. /* Writes slave index data of master function */
  9980. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwrslvid")]
  9981. public static extern short pmc_prfwrslvid( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSLVID b );
  9982. /* Reads slave parameter of master function(2) */
  9983. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdslvprm2")]
  9984. public static extern short pmc_prfrdslvprm2( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBSLVPRM3 b );
  9985. /* Writes slave parameter of master function(2) */
  9986. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwrslvprm2")]
  9987. public static extern short pmc_prfwrslvprm2( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBSLVPRM3 b );
  9988. /* Reads DI/DO parameter of master function */
  9989. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrddido")]
  9990. public static extern short pmc_prfrddido( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBDIDO b ) ;
  9991. /* Writes DI/DO parameter of master function */
  9992. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwrdido")]
  9993. public static extern short pmc_prfwrdido( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.LPStruct)] IODBDIDO b ) ;
  9994. /* Reads indication address of master function */
  9995. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdindiadr")]
  9996. public static extern short pmc_prfrdindiadr( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBINDEADR a ) ;
  9997. /* Writes indication address of master function */
  9998. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwrindiadr")]
  9999. public static extern short pmc_prfwrindiadr( ushort FlibHndl, [In,MarshalAs(UnmanagedType.LPStruct)] IODBINDEADR a ) ;
  10000. /* Reads operation mode of master function */
  10001. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfrdopmode")]
  10002. public static extern short pmc_prfrdopmode( ushort FlibHndl, ref short a ) ;
  10003. /* Writes operation mode of master function */
  10004. [DllImport("FWLIB32.dll", EntryPoint="pmc_prfwropmode")]
  10005. public static extern short pmc_prfwropmode( ushort FlibHndl, short a, ref short b ) ;
  10006. /*-----------------------------------------------*/
  10007. /* DS : Data server & Ethernet board function */
  10008. /*-----------------------------------------------*/
  10009. /* read the parameter of the Ethernet board */
  10010. [DllImport("FWLIB32.dll", EntryPoint="etb_rdparam")]
  10011. public static extern short etb_rdparam( ushort FlibHndl,
  10012. short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBETP_TCP b ) ;
  10013. [DllImport("FWLIB32.dll", EntryPoint="etb_rdparam")]
  10014. public static extern short etb_rdparam(ushort FlibHndl,
  10015. short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBETP_HOST b ) ;
  10016. [DllImport("FWLIB32.dll", EntryPoint="etb_rdparam")]
  10017. public static extern short etb_rdparam(ushort FlibHndl,
  10018. short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBETP_FTP b ) ;
  10019. [DllImport("FWLIB32.dll", EntryPoint="etb_rdparam")]
  10020. public static extern short etb_rdparam(ushort FlibHndl,
  10021. short a, [Out,MarshalAs(UnmanagedType.LPStruct)] IODBETP_ETB b ) ;
  10022. /* write the parameter of the Ethernet board */
  10023. [DllImport("FWLIB32.dll", EntryPoint="etb_wrparam")]
  10024. public static extern short etb_wrparam( ushort FlibHndl,
  10025. [In,MarshalAs(UnmanagedType.LPStruct)] IODBETP_TCP a ) ;
  10026. [DllImport("FWLIB32.dll", EntryPoint="etb_wrparam")]
  10027. public static extern short etb_wrparam( ushort FlibHndl,
  10028. [In,MarshalAs(UnmanagedType.LPStruct)] IODBETP_HOST a ) ;
  10029. [DllImport("FWLIB32.dll", EntryPoint="etb_wrparam")]
  10030. public static extern short etb_wrparam( ushort FlibHndl,
  10031. [In,MarshalAs(UnmanagedType.LPStruct)] IODBETP_FTP a ) ;
  10032. /* read the error message of the Ethernet board */
  10033. [DllImport("FWLIB32.dll", EntryPoint="etb_rderrmsg")]
  10034. public static extern short etb_rderrmsg( ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBETMSG b ) ;
  10035. /* read the mode of the Data Server */
  10036. [DllImport("FWLIB32.dll", EntryPoint="ds_rdmode")]
  10037. public static extern short ds_rdmode( ushort FlibHndl, ref short a ) ;
  10038. /* write the mode of the Data Server */
  10039. [DllImport("FWLIB32.dll", EntryPoint="ds_wrmode")]
  10040. public static extern short ds_wrmode( ushort FlibHndl, short a ) ;
  10041. /* read information of the Data Server's HDD */
  10042. [DllImport("FWLIB32.dll", EntryPoint="ds_rdhddinfo")]
  10043. public static extern short ds_rdhddinfo( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBHDDINF a ) ;
  10044. /* read the file list of the Data Server's HDD */
  10045. [DllImport("FWLIB32.dll", EntryPoint="ds_rdhdddir")]
  10046. public static extern short ds_rdhdddir(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, int b, out short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBHDDDIR d);
  10047. /* delete the file of the Data Serve's HDD */
  10048. [DllImport("FWLIB32.dll", EntryPoint="ds_delhddfile")]
  10049. public static extern short ds_delhddfile(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10050. /* copy the file of the Data Server's HDD */
  10051. [DllImport("FWLIB32.dll", EntryPoint="ds_copyhddfile")]
  10052. public static extern short ds_copyhddfile(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, [In,MarshalAs(UnmanagedType.AsAny)] Object b);
  10053. /* change the file name of the Data Server's HDD */
  10054. [DllImport("FWLIB32.dll", EntryPoint="ds_renhddfile")]
  10055. public static extern short ds_renhddfile( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, [In,MarshalAs(UnmanagedType.AsAny)] Object b ) ;
  10056. /* execute the PUT command of the FTP */
  10057. [DllImport("FWLIB32.dll", EntryPoint="ds_puthddfile")]
  10058. public static extern short ds_puthddfile( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, [In,MarshalAs(UnmanagedType.AsAny)] Object b );
  10059. /* execute the MPUT command of the FTP */
  10060. [DllImport("FWLIB32.dll", EntryPoint="ds_mputhddfile")]
  10061. public static extern short ds_mputhddfile(ushort hLib, [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10062. /* read information of the host */
  10063. [DllImport("FWLIB32.dll", EntryPoint="ds_rdhostinfo")]
  10064. public static extern short ds_rdhostinfo( ushort FlibHndl, out int a, int b ) ;
  10065. /* read the file list of the host */
  10066. [DllImport("FWLIB32.dll", EntryPoint="ds_rdhostdir")]
  10067. public static extern short ds_rdhostdir( ushort FlibHndl, short a, int b,out short c, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBHOSTDIR d, int e ) ;
  10068. /* read the file list of the host 2 */
  10069. [DllImport("FWLIB32.dll", EntryPoint="ds_rdhostdir2")]
  10070. public static extern short ds_rdhostdir2( ushort FlibHndl, short a, int b,out short c,out int d, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBHOSTDIR e, int f ) ;
  10071. /* delete the file of the host */
  10072. [DllImport("FWLIB32.dll", EntryPoint="ds_delhostfile")]
  10073. public static extern short ds_delhostfile(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, int b);
  10074. /* execute the GET command of the FTP */
  10075. [DllImport("FWLIB32.dll", EntryPoint="ds_gethostfile")]
  10076. public static extern short ds_gethostfile(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a, [In,MarshalAs(UnmanagedType.AsAny)] Object b);
  10077. /* execute the MGET command of the FTP */
  10078. [DllImport("FWLIB32.dll", EntryPoint="ds_mgethostfile")]
  10079. public static extern short ds_mgethostfile(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10080. /* read the execution result */
  10081. [DllImport("FWLIB32.dll", EntryPoint="ds_rdresult")]
  10082. public static extern short ds_rdresult( ushort FlibHndl ) ;
  10083. /* stop the execution of the command */
  10084. [DllImport("FWLIB32.dll", EntryPoint="ds_cancel")]
  10085. public static extern short ds_cancel( ushort FlibHndl ) ;
  10086. /* read the file from the Data Server */
  10087. [DllImport("FWLIB32.dll", EntryPoint="ds_rdncfile")]
  10088. public static extern short ds_rdncfile( ushort FlibHndl, short a, [In,MarshalAs(UnmanagedType.AsAny)] Object b ) ;
  10089. /* read the file from the Data Server 2 */
  10090. [DllImport("FWLIB32.dll", EntryPoint="ds_rdncfile2")]
  10091. public static extern short ds_rdncfile2( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a ) ;
  10092. /* write the file to the Data Server */
  10093. [DllImport("FWLIB32.dll", EntryPoint="ds_wrncfile")]
  10094. public static extern short ds_wrncfile( ushort FlibHndl, short a, int b ) ;
  10095. /* read the file name for the DNC operation in the Data Server's HDD */
  10096. [DllImport("FWLIB32.dll", EntryPoint="ds_rddnchddfile")]
  10097. public static extern short ds_rddnchddfile( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a ) ;
  10098. /* write the file name for the DNC operation in the Data Server's HDD */
  10099. [DllImport("FWLIB32.dll", EntryPoint="ds_wrdnchddfile")]
  10100. public static extern short ds_wrdnchddfile( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a ) ;
  10101. /* read the file name for the DNC operation in the host */
  10102. [DllImport("FWLIB32.dll", EntryPoint="ds_rddnchostfile")]
  10103. public static extern short ds_rddnchostfile( ushort FlibHndl, out short a, [Out,MarshalAs(UnmanagedType.AsAny)] Object b);
  10104. /* write the file name for the DNC operation in the host */
  10105. [DllImport("FWLIB32.dll", EntryPoint="ds_wrdnchostfile")]
  10106. public static extern short ds_wrdnchostfile( ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a ) ;
  10107. /* read the connecting host number */
  10108. [DllImport("FWLIB32.dll", EntryPoint="ds_rdhostno")]
  10109. public static extern short ds_rdhostno(ushort FlibHndl, out short a);
  10110. /* read maintenance information */
  10111. [DllImport("FWLIB32.dll", EntryPoint="ds_rdmntinfo")]
  10112. public static extern short ds_rdmntinfo(ushort FlibHndl, short a, [Out,MarshalAs(UnmanagedType.LPStruct)]DSMNTINFO b);
  10113. /* check the Data Server's HDD */
  10114. [DllImport("FWLIB32.dll", EntryPoint="ds_checkhdd")]
  10115. public static extern short ds_checkhdd(ushort FlibHndl);
  10116. /* format the Data Server's HDD */
  10117. [DllImport("FWLIB32.dll", EntryPoint="ds_formathdd")]
  10118. public static extern short ds_formathdd(ushort FlibHndl);
  10119. /* create the directory in the Data Server's HDD */
  10120. [DllImport("FWLIB32.dll", EntryPoint="ds_makehdddir")]
  10121. public static extern short ds_makehdddir(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10122. /* delete directory in the Data Server's HDD */
  10123. [DllImport("FWLIB32.dll", EntryPoint="ds_delhdddir")]
  10124. public static extern short ds_delhdddir(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10125. /* change the current directory */
  10126. [DllImport("FWLIB32.dll", EntryPoint="ds_chghdddir")]
  10127. public static extern short ds_chghdddir(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10128. /* execute the PUT command according to the list file */
  10129. [DllImport("FWLIB32.dll", EntryPoint="ds_lputhddfile")]
  10130. public static extern short ds_lputhddfile(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10131. /* delete files according to the list file */
  10132. [DllImport("FWLIB32.dll", EntryPoint="ds_ldelhddfile")]
  10133. public static extern short ds_ldelhddfile(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10134. /* execute the GET command according to the list file */
  10135. [DllImport("FWLIB32.dll", EntryPoint="ds_lgethostfile")]
  10136. public static extern short ds_lgethostfile(ushort FlibHndl, [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10137. /* read the directory for M198 operation */
  10138. [DllImport("FWLIB32.dll", EntryPoint="ds_rdm198hdddir")]
  10139. public static extern short ds_rdm198hdddir( ushort FlibHndl, [Out,MarshalAs(UnmanagedType.AsAny)] Object a ) ;
  10140. /* write the directory for M198 operation */
  10141. [DllImport("FWLIB32.dll", EntryPoint="ds_wrm198hdddir")]
  10142. public static extern short ds_wrm198hdddir( ushort FlibHndl ) ;
  10143. /* read the connecting host number for the M198 operation */
  10144. [DllImport("FWLIB32.dll", EntryPoint="ds_rdm198host")]
  10145. public static extern short ds_rdm198host( ushort FlibHndl, out short a ) ;
  10146. /* write the connecting host number for the M198 operation */
  10147. [DllImport("FWLIB32.dll", EntryPoint="ds_wrm198host")]
  10148. public static extern short ds_wrm198host( ushort FlibHndl ) ;
  10149. /* write the connecting host number */
  10150. [DllImport("FWLIB32.dll", EntryPoint="ds_wrhostno")]
  10151. public static extern short ds_wrhostno( ushort FlibHndl, short a ) ;
  10152. /* search string in data server program */
  10153. [DllImport("FWLIB32.dll", EntryPoint="ds_searchword")]
  10154. public static extern short ds_searchword( ushort FlibHndl,
  10155. [In,MarshalAs(UnmanagedType.AsAny)] Object a);
  10156. /* read the searching result */
  10157. [DllImport("FWLIB32.dll", EntryPoint="ds_searchresult")]
  10158. public static extern short ds_searchresult( ushort FlibHndl);
  10159. /* read file in the Data Server's HDD */
  10160. [DllImport("FWLIB32.dll", EntryPoint="ds_rdfile")]
  10161. public static extern short ds_rdfile( ushort FlibHndl,
  10162. [In,MarshalAs(UnmanagedType.AsAny)] Object a,
  10163. [In,MarshalAs(UnmanagedType.AsAny)] Object b);
  10164. /* write file in the Data Server's HDD */
  10165. [DllImport("FWLIB32.dll", EntryPoint="ds_wrfile")]
  10166. public static extern short ds_wrfile( ushort FlibHndl,
  10167. [In,MarshalAs(UnmanagedType.AsAny)] Object a,
  10168. [In,MarshalAs(UnmanagedType.AsAny)] Object b);
  10169. /*--------------------------*/
  10170. /* HSSB multiple connection */
  10171. /*--------------------------*/
  10172. /* read number of node */
  10173. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdnodenum")]
  10174. public static extern short cnc_rdnodenum( out int a );
  10175. /* read node informations */
  10176. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdnodeinfo")]
  10177. public static extern short cnc_rdnodeinfo( int a, [Out,MarshalAs(UnmanagedType.LPStruct)] ODBNODE b );
  10178. /* set default node number */
  10179. [DllImport("FWLIB32.dll", EntryPoint="cnc_setdefnode")]
  10180. public static extern short cnc_setdefnode( int a );
  10181. /* allocate library handle 2 */
  10182. [DllImport("FWLIB32.dll", EntryPoint="cnc_allclibhndl2")]
  10183. public static extern short cnc_allclibhndl2( int node, out ushort FlibHndl );
  10184. /*---------------------*/
  10185. /* Ethernet connection */
  10186. /*---------------------*/
  10187. /* allocate library handle 3 */
  10188. [DllImport("FWLIB32.dll", EntryPoint="cnc_allclibhndl3")]
  10189. public static extern short cnc_allclibhndl3( [In,MarshalAs(UnmanagedType.AsAny)] Object ip,
  10190. ushort port,int timeout, out ushort FlibHndl);
  10191. /* allocate library handle 4 */
  10192. [DllImport("FWLIB32.dll", EntryPoint="cnc_allclibhndl4")]
  10193. public static extern short cnc_allclibhndl4( [In,MarshalAs(UnmanagedType.AsAny)] Object ip,
  10194. ushort port,int timeout, uint id, out ushort FlibHndl);
  10195. /* set timeout for socket */
  10196. [DllImport("FWLIB32.dll", EntryPoint="cnc_settimeout")]
  10197. public static extern short cnc_settimeout( ushort FlibHndl, int a );
  10198. /* reset all socket connection */
  10199. [DllImport("FWLIB32.dll", EntryPoint="cnc_resetconnect")]
  10200. public static extern short cnc_resetconnect( ushort FlibHndl );
  10201. /* get option state for FOCAS1/Ethernet */
  10202. [DllImport("FWLIB32.dll", EntryPoint="cnc_getfocas1opt")]
  10203. public static extern short cnc_getfocas1opt( ushort FlibHndl, short a, out int b );
  10204. /* read Ethernet board information */
  10205. [DllImport("FWLIB32.dll", EntryPoint="cnc_rdetherinfo")]
  10206. public static extern short cnc_rdetherinfo( ushort FlibHndl, out short a, out short b );
  10207. } // End for Focas1 class