Files.pas 222 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492
  1. {
  2. File: Files.p
  3. Contains: File Manager (MFS, HFS, and HFS+) Interfaces.
  4. Version: Technology: Mac OS 9
  5. Release: Universal Interfaces 3.4.2
  6. Copyright: © 1985-2002 by Apple Computer, Inc., all rights reserved
  7. Bugs?: For bug reports, consult the following page on
  8. the World Wide Web:
  9. http://www.freepascal.org/bugs.html
  10. }
  11. {
  12. Modified for use with Free Pascal
  13. Version 200
  14. Please report any bugs to <[email protected]>
  15. }
  16. {$mode macpas}
  17. {$packenum 1}
  18. {$macro on}
  19. {$inline on}
  20. {$CALLING MWPASCAL}
  21. unit Files;
  22. interface
  23. {$setc UNIVERSAL_INTERFACES_VERSION := $0342}
  24. {$setc GAP_INTERFACES_VERSION := $0200}
  25. {$ifc not defined USE_CFSTR_CONSTANT_MACROS}
  26. {$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
  27. {$endc}
  28. {$ifc defined CPUPOWERPC and defined CPUI386}
  29. {$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
  30. {$endc}
  31. {$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
  32. {$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
  33. {$endc}
  34. {$ifc not defined __ppc__ and defined CPUPOWERPC}
  35. {$setc __ppc__ := 1}
  36. {$elsec}
  37. {$setc __ppc__ := 0}
  38. {$endc}
  39. {$ifc not defined __i386__ and defined CPUI386}
  40. {$setc __i386__ := 1}
  41. {$elsec}
  42. {$setc __i386__ := 0}
  43. {$endc}
  44. {$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
  45. {$error Conflicting definitions for __ppc__ and __i386__}
  46. {$endc}
  47. {$ifc defined __ppc__ and __ppc__}
  48. {$setc TARGET_CPU_PPC := TRUE}
  49. {$setc TARGET_CPU_X86 := FALSE}
  50. {$elifc defined __i386__ and __i386__}
  51. {$setc TARGET_CPU_PPC := FALSE}
  52. {$setc TARGET_CPU_X86 := TRUE}
  53. {$elsec}
  54. {$error Neither __ppc__ nor __i386__ is defined.}
  55. {$endc}
  56. {$setc TARGET_CPU_PPC_64 := FALSE}
  57. {$ifc defined FPC_BIG_ENDIAN}
  58. {$setc TARGET_RT_BIG_ENDIAN := TRUE}
  59. {$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
  60. {$elifc defined FPC_LITTLE_ENDIAN}
  61. {$setc TARGET_RT_BIG_ENDIAN := FALSE}
  62. {$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
  63. {$elsec}
  64. {$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
  65. {$endc}
  66. {$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
  67. {$setc CALL_NOT_IN_CARBON := FALSE}
  68. {$setc OLDROUTINENAMES := FALSE}
  69. {$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
  70. {$setc OPAQUE_UPP_TYPES := TRUE}
  71. {$setc OTCARBONAPPLICATION := TRUE}
  72. {$setc OTKERNEL := FALSE}
  73. {$setc PM_USE_SESSION_APIS := TRUE}
  74. {$setc TARGET_API_MAC_CARBON := TRUE}
  75. {$setc TARGET_API_MAC_OS8 := FALSE}
  76. {$setc TARGET_API_MAC_OSX := TRUE}
  77. {$setc TARGET_CARBON := TRUE}
  78. {$setc TARGET_CPU_68K := FALSE}
  79. {$setc TARGET_CPU_MIPS := FALSE}
  80. {$setc TARGET_CPU_SPARC := FALSE}
  81. {$setc TARGET_OS_MAC := TRUE}
  82. {$setc TARGET_OS_UNIX := FALSE}
  83. {$setc TARGET_OS_WIN32 := FALSE}
  84. {$setc TARGET_RT_MAC_68881 := FALSE}
  85. {$setc TARGET_RT_MAC_CFM := FALSE}
  86. {$setc TARGET_RT_MAC_MACHO := TRUE}
  87. {$setc TYPED_FUNCTION_POINTERS := TRUE}
  88. {$setc TYPE_BOOL := FALSE}
  89. {$setc TYPE_EXTENDED := FALSE}
  90. {$setc TYPE_LONGLONG := TRUE}
  91. uses MacTypes,MixedMode,OSUtils,TextCommon,UTCUtils,Finder;
  92. { Finder constants were moved to Finder.Å }
  93. {$ALIGN MAC68K}
  94. { HFSUniStr255 is the Unicode equivalent of Str255 }
  95. type
  96. HFSUniStr255Ptr = ^HFSUniStr255;
  97. HFSUniStr255 = record
  98. length: UInt16; { number of unicode characters }
  99. unicode: array [0..254] of UniChar; { unicode characters }
  100. end;
  101. ConstHFSUniStr255Param = ^HFSUniStr255;
  102. const
  103. fsCurPerm = $00; { open access permissions in ioPermssn }
  104. fsRdPerm = $01;
  105. fsWrPerm = $02;
  106. fsRdWrPerm = $03;
  107. fsRdWrShPerm = $04;
  108. fsRdDenyPerm = $10; { for use with OpenDeny and OpenRFDeny }
  109. fsWrDenyPerm = $20; { for use with OpenDeny and OpenRFDeny }
  110. fsRtParID = 1;
  111. fsRtDirID = 2;
  112. fsAtMark = 0; { positioning modes in ioPosMode }
  113. fsFromStart = 1;
  114. fsFromLEOF = 2;
  115. fsFromMark = 3;
  116. { ioPosMode flags }
  117. pleaseCacheBit = 4; { please cache this request }
  118. pleaseCacheMask = $0010;
  119. noCacheBit = 5; { please don't cache this request }
  120. noCacheMask = $0020;
  121. rdVerifyBit = 6; { read verify mode }
  122. rdVerifyMask = $0040;
  123. rdVerify = 64; { old name of rdVerifyMask }
  124. forceReadBit = 6;
  125. forceReadMask = $0040;
  126. newLineBit = 7; { newline mode }
  127. newLineMask = $0080;
  128. newLineCharMask = $FF00; { newline character }
  129. { CatSearch Search bitmask Constants }
  130. fsSBPartialName = 1;
  131. fsSBFullName = 2;
  132. fsSBFlAttrib = 4;
  133. fsSBFlFndrInfo = 8;
  134. fsSBFlLgLen = 32;
  135. fsSBFlPyLen = 64;
  136. fsSBFlRLgLen = 128;
  137. fsSBFlRPyLen = 256;
  138. fsSBFlCrDat = 512;
  139. fsSBFlMdDat = 1024;
  140. fsSBFlBkDat = 2048;
  141. fsSBFlXFndrInfo = 4096;
  142. fsSBFlParID = 8192;
  143. fsSBNegate = 16384;
  144. fsSBDrUsrWds = 8;
  145. fsSBDrNmFls = 16;
  146. fsSBDrCrDat = 512;
  147. fsSBDrMdDat = 1024;
  148. fsSBDrBkDat = 2048;
  149. fsSBDrFndrInfo = 4096;
  150. fsSBDrParID = 8192;
  151. { CatSearch Search bit value Constants }
  152. fsSBPartialNameBit = 0; { ioFileName points to a substring }
  153. fsSBFullNameBit = 1; { ioFileName points to a match string }
  154. fsSBFlAttribBit = 2; { search includes file attributes }
  155. fsSBFlFndrInfoBit = 3; { search includes finder info }
  156. fsSBFlLgLenBit = 5; { search includes data logical length }
  157. fsSBFlPyLenBit = 6; { search includes data physical length }
  158. fsSBFlRLgLenBit = 7; { search includes resource logical length }
  159. fsSBFlRPyLenBit = 8; { search includes resource physical length }
  160. fsSBFlCrDatBit = 9; { search includes create date }
  161. fsSBFlMdDatBit = 10; { search includes modification date }
  162. fsSBFlBkDatBit = 11; { search includes backup date }
  163. fsSBFlXFndrInfoBit = 12; { search includes extended finder info }
  164. fsSBFlParIDBit = 13; { search includes file's parent ID }
  165. fsSBNegateBit = 14; { return all non-matches }
  166. fsSBDrUsrWdsBit = 3; { search includes directory finder info }
  167. fsSBDrNmFlsBit = 4; { search includes directory valence }
  168. fsSBDrCrDatBit = 9; { directory-named version of fsSBFlCrDatBit }
  169. fsSBDrMdDatBit = 10; { directory-named version of fsSBFlMdDatBit }
  170. fsSBDrBkDatBit = 11; { directory-named version of fsSBFlBkDatBit }
  171. fsSBDrFndrInfoBit = 12; { directory-named version of fsSBFlXFndrInfoBit }
  172. fsSBDrParIDBit = 13; { directory-named version of fsSBFlParIDBit }
  173. { vMAttrib (GetVolParms) bit position constants }
  174. bLimitFCBs = 31;
  175. bLocalWList = 30;
  176. bNoMiniFndr = 29;
  177. bNoVNEdit = 28;
  178. bNoLclSync = 27;
  179. bTrshOffLine = 26;
  180. bNoSwitchTo = 25;
  181. bDontShareIt = 21; { this volume should not be shared by Macintosh File Sharing (see Technical Note NW 29) }
  182. bNoDeskItems = 20;
  183. bNoBootBlks = 19;
  184. bAccessCntl = 18;
  185. bNoSysDir = 17;
  186. bHasExtFSVol = 16;
  187. bHasOpenDeny = 15;
  188. bHasCopyFile = 14;
  189. bHasMoveRename = 13;
  190. bHasDesktopMgr = 12;
  191. bHasShortName = 11;
  192. bHasFolderLock = 10;
  193. bHasPersonalAccessPrivileges = 9;
  194. bHasUserGroupList = 8;
  195. bHasCatSearch = 7;
  196. bHasFileIDs = 6;
  197. bHasBTreeMgr = 5;
  198. bHasBlankAccessPrivileges = 4;
  199. bSupportsAsyncRequests = 3; { asynchronous requests to this volume are handled correctly at any time }
  200. bSupportsTrashVolumeCache = 2;
  201. { vMExtendedAttributes (GetVolParms) bit position constants }
  202. bIsEjectable = 0; { volume is in an ejectable disk drive }
  203. bSupportsHFSPlusAPIs = 1; { volume supports HFS Plus APIs directly (not through compatibility layer) }
  204. bSupportsFSCatalogSearch = 2; { volume supports FSCatalogSearch }
  205. bSupportsFSExchangeObjects = 3; { volume supports FSExchangeObjects }
  206. bSupports2TBFiles = 4; { volume supports supports 2 terabyte files }
  207. bSupportsLongNames = 5; { volume supports file/directory/volume names longer than 31 characters }
  208. bSupportsMultiScriptNames = 6; { volume supports file/directory/volume names with characters from multiple script systems }
  209. bSupportsNamedForks = 7; { volume supports forks beyond the data and resource forks }
  210. bSupportsSubtreeIterators = 8; { volume supports recursive iterators not at the volume root }
  211. bL2PCanMapFileBlocks = 9; { volume supports Lg2Phys SPI correctly }
  212. { vMExtendedAttributes (GetVolParms) bit position constants }
  213. bParentModDateChanges = 10; { Changing a file or folder causes its parent's mod date to change }
  214. bAncestorModDateChanges = 11; { Changing a file or folder causes all ancestor mod dates to change }
  215. { vMExtendedAttributes (GetVolParms) bit position constants }
  216. bSupportsSymbolicLinks = 13; { volume supports the creation and use of symbolic links (Mac OS X only) }
  217. bIsAutoMounted = 14; { volume was mounted automatically (Mac OS X only) }
  218. bAllowCDiDataHandler = 17; { allow QuickTime's CDi data handler to examine this volume }
  219. { Desktop Database, ffsGetIconMessage and fsmGetFSIconMessage icon type and size Constants }
  220. kLargeIcon = 1;
  221. kLarge4BitIcon = 2;
  222. kLarge8BitIcon = 3;
  223. kSmallIcon = 4;
  224. kSmall4BitIcon = 5;
  225. kSmall8BitIcon = 6;
  226. kicnsIconFamily = 239; { Note: The 'icns' icon family record is variable sized. }
  227. kLargeIconSize = 256;
  228. kLarge4BitIconSize = 512;
  229. kLarge8BitIconSize = 1024;
  230. kSmallIconSize = 64;
  231. kSmall4BitIconSize = 128;
  232. kSmall8BitIconSize = 256;
  233. { Large Volume Constants }
  234. kWidePosOffsetBit = 8;
  235. kUseWidePositioning = $0100;
  236. kMaximumBlocksIn4GB = $007FFFFF;
  237. { Foreign Privilege Model Identifiers }
  238. fsUnixPriv = 1;
  239. { Authentication Constants }
  240. kNoUserAuthentication = 1;
  241. kPassword = 2;
  242. kEncryptPassword = 3;
  243. kTwoWayEncryptPassword = 6;
  244. { mapping codes (ioObjType) for MapName & MapID }
  245. kOwnerID2Name = 1;
  246. kGroupID2Name = 2;
  247. kOwnerName2ID = 3;
  248. kGroupName2ID = 4; { types of oj object to be returned (ioObjType) for _GetUGEntry }
  249. kReturnNextUser = 1;
  250. kReturnNextGroup = 2;
  251. kReturnNextUG = 3;
  252. { vcbFlags bits }
  253. kVCBFlagsIdleFlushBit = 3; { Set if volume should be flushed at idle time }
  254. kVCBFlagsIdleFlushMask = $0008;
  255. kVCBFlagsHFSPlusAPIsBit = 4; { Set if volume implements HFS Plus APIs itself (not via emulation) }
  256. kVCBFlagsHFSPlusAPIsMask = $0010;
  257. kVCBFlagsHardwareGoneBit = 5; { Set if disk driver returned a hardwareGoneErr to Read or Write }
  258. kVCBFlagsHardwareGoneMask = $0020;
  259. kVCBFlagsVolumeDirtyBit = 15; { Set if volume information has changed since the last FlushVol }
  260. kVCBFlagsVolumeDirtyMask = $8000;
  261. { ioVAtrb bits returned by PBHGetVInfo and PBXGetVolInfo }
  262. kioVAtrbDefaultVolumeBit = 5; { Set if the volume is the default volume }
  263. kioVAtrbDefaultVolumeMask = $0020;
  264. kioVAtrbFilesOpenBit = 6; { Set if there are open files or iterators }
  265. kioVAtrbFilesOpenMask = $0040;
  266. kioVAtrbHardwareLockedBit = 7; { Set if volume is locked by a hardware setting }
  267. kioVAtrbHardwareLockedMask = $0080;
  268. kioVAtrbSoftwareLockedBit = 15; { Set if volume is locked by software }
  269. kioVAtrbSoftwareLockedMask = $8000;
  270. { ioFlAttrib bits returned by PBGetCatInfo }
  271. { file and directory attributes in ioFlAttrib }
  272. kioFlAttribLockedBit = 0; { Set if file or directory is locked }
  273. kioFlAttribLockedMask = $01;
  274. kioFlAttribResOpenBit = 2; { Set if resource fork is open }
  275. kioFlAttribResOpenMask = $04;
  276. kioFlAttribDataOpenBit = 3; { Set if data fork is open }
  277. kioFlAttribDataOpenMask = $08;
  278. kioFlAttribDirBit = 4; { Set if this is a directory }
  279. kioFlAttribDirMask = $10;
  280. ioDirFlg = 4; { Set if this is a directory (old name) }
  281. ioDirMask = $10;
  282. kioFlAttribCopyProtBit = 6; { Set if AppleShare server "copy-protects" the file }
  283. kioFlAttribCopyProtMask = $40;
  284. kioFlAttribFileOpenBit = 7; { Set if file (either fork) is open }
  285. kioFlAttribFileOpenMask = $80; { ioFlAttrib for directories only }
  286. kioFlAttribInSharedBit = 2; { Set if the directory is within a shared area of the directory hierarchy }
  287. kioFlAttribInSharedMask = $04;
  288. kioFlAttribMountedBit = 3; { Set if the directory is a share point that is mounted by some user }
  289. kioFlAttribMountedMask = $08;
  290. kioFlAttribSharePointBit = 5; { Set if the directory is a share point }
  291. kioFlAttribSharePointMask = $20;
  292. { ioFCBFlags bits returned by PBGetFCBInfo }
  293. kioFCBWriteBit = 8; { Data can be written to this file }
  294. kioFCBWriteMask = $0100;
  295. kioFCBResourceBit = 9; { This file is a resource fork }
  296. kioFCBResourceMask = $0200;
  297. kioFCBWriteLockedBit = 10; { File has a locked byte range }
  298. kioFCBWriteLockedMask = $0400;
  299. kioFCBLargeFileBit = 11; { File may grow beyond 2GB; cache uses file blocks, not bytes }
  300. kioFCBLargeFileMask = $0800;
  301. kioFCBSharedWriteBit = 12; { File is open for shared write access }
  302. kioFCBSharedWriteMask = $1000;
  303. kioFCBFileLockedBit = 13; { File is locked (write-protected) }
  304. kioFCBFileLockedMask = $2000;
  305. kioFCBOwnClumpBit = 14; { File has clump size specified in FCB }
  306. kioFCBOwnClumpMask = $4000;
  307. kioFCBModifiedBit = 15; { File has changed since it was last flushed }
  308. kioFCBModifiedMask = $8000;
  309. { ioACUser bits returned by PBGetCatInfo }
  310. { Note: you must clear ioACUser before calling PBGetCatInfo because some file systems do not use this field }
  311. kioACUserNoSeeFolderBit = 0; { Set if user does not have See Folder privileges }
  312. kioACUserNoSeeFolderMask = $01;
  313. kioACUserNoSeeFilesBit = 1; { Set if user does not have See Files privileges }
  314. kioACUserNoSeeFilesMask = $02;
  315. kioACUserNoMakeChangesBit = 2; { Set if user does not have Make Changes privileges }
  316. kioACUserNoMakeChangesMask = $04;
  317. kioACUserNotOwnerBit = 7; { Set if user is not owner of the directory }
  318. kioACUserNotOwnerMask = $80;
  319. { Folder and File values of access privileges in ioACAccess }
  320. kioACAccessOwnerBit = 31; { User is owner of directory }
  321. kioACAccessOwnerMask = $80000000;
  322. kioACAccessBlankAccessBit = 28; { Directory has blank access privileges }
  323. kioACAccessBlankAccessMask = $10000000;
  324. kioACAccessUserWriteBit = 26; { User has write privileges }
  325. kioACAccessUserWriteMask = $04000000;
  326. kioACAccessUserReadBit = 25; { User has read privileges }
  327. kioACAccessUserReadMask = $02000000;
  328. kioACAccessUserSearchBit = 24; { User has search privileges }
  329. kioACAccessUserSearchMask = $01000000;
  330. kioACAccessEveryoneWriteBit = 18; { Everyone has write privileges }
  331. kioACAccessEveryoneWriteMask = $00040000;
  332. kioACAccessEveryoneReadBit = 17; { Everyone has read privileges }
  333. kioACAccessEveryoneReadMask = $00020000;
  334. kioACAccessEveryoneSearchBit = 16; { Everyone has search privileges }
  335. kioACAccessEveryoneSearchMask = $00010000;
  336. kioACAccessGroupWriteBit = 10; { Group has write privileges }
  337. kioACAccessGroupWriteMask = $00000400;
  338. kioACAccessGroupReadBit = 9; { Group has read privileges }
  339. kioACAccessGroupReadMask = $00000200;
  340. kioACAccessGroupSearchBit = 8; { Group has search privileges }
  341. kioACAccessGroupSearchMask = $00000100;
  342. kioACAccessOwnerWriteBit = 2; { Owner has write privileges }
  343. kioACAccessOwnerWriteMask = $00000004;
  344. kioACAccessOwnerReadBit = 1; { Owner has read privileges }
  345. kioACAccessOwnerReadMask = $00000002;
  346. kioACAccessOwnerSearchBit = 0; { Owner has search privileges }
  347. kioACAccessOwnerSearchMask = $00000001;
  348. kfullPrivileges = $00070007; { all privileges for everybody and owner }
  349. kownerPrivileges = $00000007; { all privileges for owner only }
  350. { values of user IDs and group IDs }
  351. knoUser = 0;
  352. kadministratorUser = 1;
  353. knoGroup = 0;
  354. type
  355. GetVolParmsInfoBufferPtr = ^GetVolParmsInfoBuffer;
  356. GetVolParmsInfoBuffer = record
  357. vMVersion: SInt16; { version number }
  358. vMAttrib: SInt32; { bit vector of attributes (see vMAttrib constants) }
  359. vMLocalHand: Handle; { handle to private data }
  360. vMServerAdr: SInt32; { AppleTalk server address or zero }
  361. { vMVersion 1 GetVolParmsInfoBuffer ends here }
  362. vMVolumeGrade: SInt32; { approx. speed rating or zero if unrated }
  363. vMForeignPrivID: SInt16; { foreign privilege model supported or zero if none }
  364. { vMVersion 2 GetVolParmsInfoBuffer ends here }
  365. vMExtendedAttributes: SInt32; { extended attribute bits (see vMExtendedAttributes constants) }
  366. { vMVersion 3 GetVolParmsInfoBuffer ends here }
  367. vMDeviceID: Ptr; { device id name for interoperability with IOKit }
  368. { vMVersion 4 GetVolParmsInfoBuffer ends here }
  369. end;
  370. ParmBlkPtr = ^ParamBlockRec;
  371. {$ifc TYPED_FUNCTION_POINTERS}
  372. IOCompletionProcPtr = procedure(paramBlock: ParmBlkPtr);
  373. {$elsec}
  374. IOCompletionProcPtr = Register68kProcPtr;
  375. {$endc}
  376. {$ifc OPAQUE_UPP_TYPES}
  377. IOCompletionUPP = ^SInt32; { an opaque UPP }
  378. {$elsec}
  379. IOCompletionUPP = UniversalProcPtr;
  380. {$endc}
  381. IOParamPtr = ^IOParam;
  382. IOParam = record
  383. qLink: QElemPtr; { queue link in header }
  384. qType: SInt16; { type byte for safety check }
  385. ioTrap: SInt16; { FS: the Trap }
  386. ioCmdAddr: Ptr; { FS: address to dispatch to }
  387. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  388. ioResult: OSErr; { result code }
  389. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  390. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  391. ioRefNum: SInt16; { refNum for I/O operation }
  392. ioVersNum: SInt8; { version number }
  393. ioPermssn: SInt8; { Open: permissions (byte) }
  394. ioMisc: Ptr; { Rename: new name (GetEOF,SetEOF: logical end of file) (Open: optional ptr to buffer) (SetFileType: new type) }
  395. ioBuffer: Ptr; { data buffer Ptr }
  396. ioReqCount: SInt32; { requested byte count; also = ioNewDirID }
  397. ioActCount: SInt32; { actual byte count completed }
  398. ioPosMode: SInt16; { initial file positioning }
  399. ioPosOffset: SInt32; { file position offset }
  400. end;
  401. FileParamPtr = ^FileParam;
  402. FileParam = record
  403. qLink: QElemPtr; { queue link in header }
  404. qType: SInt16; { type byte for safety check }
  405. ioTrap: SInt16; { FS: the Trap }
  406. ioCmdAddr: Ptr; { FS: address to dispatch to }
  407. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  408. ioResult: OSErr; { result code }
  409. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  410. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  411. ioFRefNum: SInt16; { reference number }
  412. ioFVersNum: SInt8; { version number }
  413. filler1: SInt8;
  414. ioFDirIndex: SInt16; { GetFInfo directory index }
  415. ioFlAttrib: SInt8; { GetFInfo: in-use bit=7, lock bit=0 }
  416. ioFlVersNum: SInt8; { file version number }
  417. ioFlFndrInfo: FInfo; { user info }
  418. ioFlNum: UInt32; { GetFInfo: file number; TF- ioDirID }
  419. ioFlStBlk: UInt16; { start file block (0 if none) }
  420. ioFlLgLen: SInt32; { logical length (EOF) }
  421. ioFlPyLen: SInt32; { physical length }
  422. ioFlRStBlk: UInt16; { start block rsrc fork }
  423. ioFlRLgLen: SInt32; { file logical length rsrc fork }
  424. ioFlRPyLen: SInt32; { file physical length rsrc fork }
  425. ioFlCrDat: UInt32; { file creation date& time (32 bits in secs) }
  426. ioFlMdDat: UInt32; { last modified date and time }
  427. end;
  428. VolumeParamPtr = ^VolumeParam;
  429. VolumeParam = record
  430. qLink: QElemPtr; { queue link in header }
  431. qType: SInt16; { type byte for safety check }
  432. ioTrap: SInt16; { FS: the Trap }
  433. ioCmdAddr: Ptr; { FS: address to dispatch to }
  434. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  435. ioResult: OSErr; { result code }
  436. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  437. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  438. filler2: SInt32;
  439. ioVolIndex: SInt16; { volume index number }
  440. ioVCrDate: UInt32; { creation date and time }
  441. ioVLsBkUp: UInt32; { last backup date and time }
  442. ioVAtrb: UInt16; { volume attrib }
  443. ioVNmFls: UInt16; { number of files in directory }
  444. ioVDirSt: UInt16; { start block of file directory }
  445. ioVBlLn: SInt16; { GetVolInfo: length of dir in blocks }
  446. ioVNmAlBlks: UInt16; { for compatibilty ioVNmAlBlks * ioVAlBlkSiz <= 2 GB }
  447. ioVAlBlkSiz: UInt32; { for compatibilty ioVAlBlkSiz is <= $0000FE00 (65,024) }
  448. ioVClpSiz: UInt32; { GetVolInfo: bytes to allocate at a time }
  449. ioAlBlSt: UInt16; { starting disk(512-byte) block in block map }
  450. ioVNxtFNum: UInt32; { GetVolInfo: next free file number }
  451. ioVFrBlk: UInt16; { GetVolInfo: # free alloc blks for this vol }
  452. end;
  453. CntrlParamPtr = ^CntrlParam;
  454. CntrlParam = record
  455. qLink: QElemPtr; { queue link in header }
  456. qType: SInt16; { type byte for safety check }
  457. ioTrap: SInt16; { FS: the Trap }
  458. ioCmdAddr: Ptr; { FS: address to dispatch to }
  459. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  460. ioResult: OSErr; { result code }
  461. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  462. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  463. ioCRefNum: SInt16; { refNum for I/O operation }
  464. csCode: SInt16; { word for control status code }
  465. csParam: array [0..10] of SInt16; { operation-defined parameters }
  466. end;
  467. SlotDevParamPtr = ^SlotDevParam;
  468. SlotDevParam = record
  469. qLink: QElemPtr; { queue link in header }
  470. qType: SInt16; { type byte for safety check }
  471. ioTrap: SInt16; { FS: the Trap }
  472. ioCmdAddr: Ptr; { FS: address to dispatch to }
  473. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  474. ioResult: OSErr; { result code }
  475. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  476. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  477. ioSRefNum: SInt16;
  478. ioSVersNum: SInt8;
  479. ioSPermssn: SInt8;
  480. ioSMix: Ptr;
  481. ioSFlags: SInt16;
  482. ioSlot: SInt8;
  483. ioID: SInt8;
  484. end;
  485. MultiDevParamPtr = ^MultiDevParam;
  486. MultiDevParam = record
  487. qLink: QElemPtr; { queue link in header }
  488. qType: SInt16; { type byte for safety check }
  489. ioTrap: SInt16; { FS: the Trap }
  490. ioCmdAddr: Ptr; { FS: address to dispatch to }
  491. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  492. ioResult: OSErr; { result code }
  493. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  494. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  495. ioMRefNum: SInt16;
  496. ioMVersNum: SInt8;
  497. ioMPermssn: SInt8;
  498. ioMMix: Ptr;
  499. ioMFlags: SInt16;
  500. ioSEBlkPtr: Ptr;
  501. end;
  502. ParamBlockRecPtr = ^ParamBlockRec;
  503. ParamBlockRec = record
  504. qLink: QElemPtr; { queue link in header }
  505. qType: SInt16; { type byte for safety check }
  506. ioTrap: SInt16; { FS: the Trap }
  507. ioCmdAddr: Ptr; { FS: address to dispatch to }
  508. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  509. ioResult: OSErr; { result code }
  510. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  511. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  512. case SInt16 of
  513. 0: (
  514. ioRefNum: SInt16; { refNum for I/O operation }
  515. ioVersNum: SInt8; { version number }
  516. ioPermssn: SInt8; { Open: permissions (byte) }
  517. ioMisc: Ptr; { Rename: new name (GetEOF,SetEOF: logical end of file) (Open: optional ptr to buffer) (SetFileType: new type) }
  518. ioBuffer: Ptr; { data buffer Ptr }
  519. ioReqCount: SInt32; { requested byte count; also = ioNewDirID }
  520. ioActCount: SInt32; { actual byte count completed }
  521. ioPosMode: SInt16; { initial file positioning }
  522. ioPosOffset: SInt32; { file position offset }
  523. );
  524. 1: (
  525. ioFRefNum: SInt16; { reference number }
  526. ioFVersNum: SInt8; { version number }
  527. filler1: SInt8;
  528. ioFDirIndex: SInt16; { GetFInfo directory index }
  529. ioFlAttrib: SInt8; { GetFInfo: in-use bit=7, lock bit=0 }
  530. ioFlVersNum: SInt8; { file version number }
  531. ioFlFndrInfo: FInfo; { user info }
  532. ioFlNum: UInt32; { GetFInfo: file number; TF- ioDirID }
  533. ioFlStBlk: UInt16; { start file block (0 if none) }
  534. ioFlLgLen: SInt32; { logical length (EOF) }
  535. ioFlPyLen: SInt32; { physical length }
  536. ioFlRStBlk: UInt16; { start block rsrc fork }
  537. ioFlRLgLen: SInt32; { file logical length rsrc fork }
  538. ioFlRPyLen: SInt32; { file physical length rsrc fork }
  539. ioFlCrDat: UInt32; { file creation date& time (32 bits in secs) }
  540. ioFlMdDat: UInt32; { last modified date and time }
  541. );
  542. 2: (
  543. filler2: SInt32;
  544. ioVolIndex: SInt16; { volume index number }
  545. ioVCrDate: UInt32; { creation date and time }
  546. ioVLsBkUp: UInt32; { last backup date and time }
  547. ioVAtrb: UInt16; { volume attrib }
  548. ioVNmFls: UInt16; { number of files in directory }
  549. ioVDirSt: UInt16; { start block of file directory }
  550. ioVBlLn: SInt16; { GetVolInfo: length of dir in blocks }
  551. ioVNmAlBlks: UInt16; { for compatibilty ioVNmAlBlks * ioVAlBlkSiz <= 2 GB }
  552. ioVAlBlkSiz: UInt32; { for compatibilty ioVAlBlkSiz is <= $0000FE00 (65,024) }
  553. ioVClpSiz: UInt32; { GetVolInfo: bytes to allocate at a time }
  554. ioAlBlSt: UInt16; { starting disk(512-byte) block in block map }
  555. ioVNxtFNum: UInt32; { GetVolInfo: next free file number }
  556. ioVFrBlk: UInt16; { GetVolInfo: # free alloc blks for this vol }
  557. );
  558. 3: (
  559. ioCRefNum: SInt16; { refNum for I/O operation }
  560. csCode: SInt16; { word for control status code }
  561. csParam: array [0..10] of SInt16; { operation-defined parameters }
  562. );
  563. 4: (
  564. ioSRefNum: SInt16;
  565. ioSVersNum: SInt8;
  566. ioSPermssn: SInt8;
  567. ioSMix: Ptr;
  568. ioSFlags: SInt16;
  569. ioSlot: SInt8;
  570. ioID: SInt8;
  571. );
  572. 5: (
  573. ioMRefNum: SInt16;
  574. ioMVersNum: SInt8;
  575. ioMPermssn: SInt8;
  576. ioMMix: Ptr;
  577. ioMFlags: SInt16;
  578. ioSEBlkPtr: Ptr;
  579. );
  580. end;
  581. CInfoPBRecPtr = ^CInfoPBRec;
  582. CInfoPBRec = record
  583. qLink: QElemPtr; { queue link in header }
  584. qType: SInt16; { type byte for safety check }
  585. ioTrap: SInt16; { FS: the Trap }
  586. ioCmdAddr: Ptr; { FS: address to dispatch to }
  587. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  588. ioResult: OSErr; { result code }
  589. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  590. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  591. ioFRefNum: SInt16;
  592. ioFVersNum: SInt8;
  593. filler1: SInt8;
  594. ioFDirIndex: SInt16;
  595. ioFlAttrib: SInt8;
  596. ioACUser: SInt8;
  597. case SInt16 of
  598. 0: (
  599. ioFlFndrInfo: FInfo;
  600. ioDirID: UInt32;
  601. ioFlStBlk: UInt16;
  602. ioFlLgLen: SInt32;
  603. ioFlPyLen: SInt32;
  604. ioFlRStBlk: UInt16;
  605. ioFlRLgLen: SInt32;
  606. ioFlRPyLen: SInt32;
  607. ioFlCrDat: UInt32;
  608. ioFlMdDat: UInt32;
  609. ioFlBkDat: UInt32;
  610. ioFlXFndrInfo: FXInfo;
  611. ioFlParID: SInt32;
  612. ioFlClpSiz: SInt32;
  613. );
  614. 1: (
  615. ioDrUsrWds: DInfo;
  616. ioDrDirID: UInt32;
  617. ioDrNmFls: UInt16;
  618. filler3: array [1..9] of SInt16;
  619. ioDrCrDat: UInt32;
  620. ioDrMdDat: UInt32;
  621. ioDrBkDat: UInt32;
  622. ioDrFndrInfo: DXInfo;
  623. ioDrParID: SInt32;
  624. );
  625. end;
  626. CInfoPBPtr = ^CInfoPBRec;
  627. XCInfoPBRecPtr = ^XCInfoPBRec;
  628. XCInfoPBRec = record
  629. qLink: QElemPtr;
  630. qType: SInt16;
  631. ioTrap: SInt16;
  632. ioCmdAddr: Ptr;
  633. ioCompletion: ProcPtr; { --> A pointer to a completion routine }
  634. ioResult: OSErr; { --> The result code of the function }
  635. ioNamePtr: StringPtr; { --> Pointer to pathname to object }
  636. ioVRefNum: SInt16; { --> A volume specification }
  637. filler1: SInt32;
  638. ioShortNamePtr: StringPtr; { <-> A pointer to the short name string buffer - required! }
  639. filler2: SInt16;
  640. ioPDType: SInt16; { <-- The ProDOS file type }
  641. ioPDAuxType: SInt32; { <-- The ProDOS aux type }
  642. filler3: array [0..1] of SInt32;
  643. ioDirID: UInt32; { --> A directory ID }
  644. end;
  645. XCInfoPBPtr = ^XCInfoPBRec;
  646. { Catalog position record }
  647. CatPositionRecPtr = ^CatPositionRec;
  648. CatPositionRec = record
  649. initialize: SInt32;
  650. priv: array [1..6] of SInt16;
  651. end;
  652. FSSpecPtr = ^FSSpec;
  653. FSSpec = record
  654. vRefNum: SInt16;
  655. parID: UInt32;
  656. name: StrFileName; { a Str63 on MacOS }
  657. end;
  658. FSSpecHandle = ^FSSpecPtr;
  659. { pointer to array of FSSpecs }
  660. FSSpecArray = array [0..0] of FSSpec;
  661. FSSpecArrayPtr = ^FSSpecArray;
  662. {
  663. The only difference between "const FSSpec*" and "ConstFSSpecPtr" is
  664. that as a parameter, ConstFSSpecPtr is allowed to be NULL
  665. }
  666. ConstFSSpecPtr = FSSpecPtr;
  667. {
  668. The following are structures to be filled out with the _PBGetVolMountInfo call
  669. and passed back into the _PBVolumeMount call for external file system mounts.
  670. }
  671. { the "signature" of the file system }
  672. VolumeType = OSType;
  673. const
  674. { the signature for AppleShare }
  675. AppleShareMediaType = $6166706D (* 'afpm' *);
  676. {
  677. VolMount stuff was once in FSM.Å
  678. }
  679. type
  680. VolMountInfoHeaderPtr = ^VolMountInfoHeader;
  681. VolMountInfoHeader = record
  682. length: SInt16; { length of location data (including self) }
  683. media: VolumeType; { type of media. Variable length data follows }
  684. end;
  685. VolMountInfoPtr = ^VolMountInfoHeader;
  686. { The new volume mount info record. The old one is included for compatibility.
  687. the new record allows access by foriegn filesystems writers to the flags
  688. portion of the record. This portion is now public.
  689. }
  690. VolumeMountInfoHeaderPtr = ^VolumeMountInfoHeader;
  691. VolumeMountInfoHeader = record
  692. length: SInt16; { length of location data (including self) }
  693. media: VolumeType; { type of media (must be registered with Apple) }
  694. flags: SInt16; { volume mount flags. Variable length data follows }
  695. end;
  696. { volume mount flags }
  697. const
  698. volMountNoLoginMsgFlagBit = 0; { Input to VolumeMount: If set, the file system }
  699. volMountNoLoginMsgFlagMask = $0001; { should suppresss any log-in message/greeting dialog }
  700. volMountExtendedFlagsBit = 7; { Input to VolumeMount: If set, the mount info is a }
  701. volMountExtendedFlagsMask = $0080; { AFPXVolMountInfo record for 3.7 AppleShare Client }
  702. volMountInteractBit = 15; { Input to VolumeMount: If set, it's OK for the file system }
  703. volMountInteractMask = $8000; { to perform user interaction to mount the volume }
  704. volMountChangedBit = 14; { Output from VoumeMount: If set, the volume was mounted, but }
  705. volMountChangedMask = $4000; { the volume mounting information record needs to be updated. }
  706. volMountFSReservedMask = $00FF; { bits 0-7 are defined by each file system for its own use }
  707. volMountSysReservedMask = $FF00; { bits 8-15 are reserved for Apple system use }
  708. type
  709. AFPVolMountInfoPtr = ^AFPVolMountInfo;
  710. AFPVolMountInfo = record
  711. length: SInt16; { length of location data (including self) }
  712. media: VolumeType; { type of media }
  713. flags: SInt16; { bits for no messages, no reconnect }
  714. nbpInterval: SInt8; { NBP Interval parameter (IM2, p.322) }
  715. nbpCount: SInt8; { NBP Interval parameter (IM2, p.322) }
  716. uamType: SInt16; { User Authentication Method }
  717. zoneNameOffset: SInt16; { short positive offset from start of struct to Zone Name }
  718. serverNameOffset: SInt16; { offset to pascal Server Name string }
  719. volNameOffset: SInt16; { offset to pascal Volume Name string }
  720. userNameOffset: SInt16; { offset to pascal User Name string }
  721. userPasswordOffset: SInt16; { offset to pascal User Password string }
  722. volPasswordOffset: SInt16; { offset to pascal Volume Password string }
  723. AFPData: packed array [1..144] of char; { variable length data may follow }
  724. end;
  725. { AFPXVolMountInfo is the new AFP volume mount info record, requires the 3.7 AppleShare Client }
  726. AFPXVolMountInfoPtr = ^AFPXVolMountInfo;
  727. AFPXVolMountInfo = record
  728. length: SInt16; { length of location data (including self) }
  729. media: VolumeType; { type of media }
  730. flags: SInt16; { bits for no messages, no reconnect }
  731. nbpInterval: SInt8; { NBP Interval parameter (IM2, p.322) }
  732. nbpCount: SInt8; { NBP Interval parameter (IM2, p.322) }
  733. uamType: SInt16; { User Authentication Method type }
  734. zoneNameOffset: SInt16; { short positive offset from start of struct to Zone Name }
  735. serverNameOffset: SInt16; { offset to pascal Server Name string }
  736. volNameOffset: SInt16; { offset to pascal Volume Name string }
  737. userNameOffset: SInt16; { offset to pascal User Name string }
  738. userPasswordOffset: SInt16; { offset to pascal User Password string }
  739. volPasswordOffset: SInt16; { offset to pascal Volume Password string }
  740. extendedFlags: SInt16; { extended flags word }
  741. uamNameOffset: SInt16; { offset to a pascal UAM name string }
  742. alternateAddressOffset: SInt16; { offset to Alternate Addresses in tagged format }
  743. AFPData: packed array [1..176] of char; { variable length data may follow }
  744. end;
  745. const
  746. kAFPExtendedFlagsAlternateAddressMask = 1; { bit in AFPXVolMountInfo.extendedFlags that means alternateAddressOffset is used }
  747. { constants for use in AFPTagData.fType field }
  748. kAFPTagTypeIP = $01; { 4 byte IP address (MSB first) }
  749. kAFPTagTypeIPPort = $02; { 4 byte IP address, 2 byte port (MSB first) }
  750. kAFPTagTypeDDP = $03; { Net,Node,Socket Sent by the server, currently unused by the client }
  751. kAFPTagTypeDNS = $04; { DNS name in address:port format (total length variable up to 254 chars of dns name) }
  752. { constants for use in AFPTagData.fLength field }
  753. kAFPTagLengthIP = $06;
  754. kAFPTagLengthIPPort = $08;
  755. kAFPTagLengthDDP = $06;
  756. type
  757. AFPTagDataPtr = ^AFPTagData;
  758. AFPTagData = packed record
  759. fLength: UInt8; { length of this data tag including the fLength field }
  760. fType: UInt8;
  761. fData: packed array [0..0] of UInt8; { variable length data }
  762. end;
  763. AFPAlternateAddressPtr = ^AFPAlternateAddress;
  764. AFPAlternateAddress = packed record
  765. { ¥¥¥ÊNOTE: fVersion was missing in 3.2 Universal Interfaces }
  766. fVersion: UInt8; { version of the structure (currently 0x00) }
  767. fAddressCount: UInt8;
  768. fAddressList: packed array [0..0] of UInt8; { actually variable length packed set of AFPTagData }
  769. end;
  770. DTPBRecPtr = ^DTPBRec;
  771. DTPBRec = record
  772. qLink: QElemPtr; { queue link in header }
  773. qType: SInt16; { type byte for safety check }
  774. ioTrap: SInt16; { FS: the Trap }
  775. ioCmdAddr: Ptr; { FS: address to dispatch to }
  776. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  777. ioResult: OSErr; { result code }
  778. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  779. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  780. ioDTRefNum: SInt16; { desktop refnum }
  781. ioIndex: SInt16;
  782. ioTagInfo: SInt32;
  783. ioDTBuffer: Ptr;
  784. ioDTReqCount: SInt32;
  785. ioDTActCount: SInt32;
  786. ioFiller1: SInt8;
  787. ioIconType: SInt8;
  788. ioFiller2: SInt16;
  789. ioDirID: UInt32;
  790. ioFileCreator: OSType;
  791. ioFileType: OSType;
  792. ioFiller3: SInt32;
  793. ioDTLgLen: SInt32;
  794. ioDTPyLen: SInt32;
  795. ioFiller4: array [1..14] of SInt16;
  796. ioAPPLParID: SInt32;
  797. end;
  798. DTPBPtr = ^DTPBRec;
  799. HIOParamPtr = ^HIOParam;
  800. HIOParam = record
  801. qLink: QElemPtr; { queue link in header }
  802. qType: SInt16; { type byte for safety check }
  803. ioTrap: SInt16; { FS: the Trap }
  804. ioCmdAddr: Ptr; { FS: address to dispatch to }
  805. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  806. ioResult: OSErr; { result code }
  807. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  808. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  809. ioRefNum: SInt16;
  810. ioVersNum: SInt8;
  811. ioPermssn: SInt8;
  812. ioMisc: Ptr;
  813. ioBuffer: Ptr;
  814. ioReqCount: SInt32;
  815. ioActCount: SInt32;
  816. ioPosMode: SInt16;
  817. ioPosOffset: SInt32;
  818. end;
  819. HFileParamPtr = ^HFileParam;
  820. HFileParam = record
  821. qLink: QElemPtr; { queue link in header }
  822. qType: SInt16; { type byte for safety check }
  823. ioTrap: SInt16; { FS: the Trap }
  824. ioCmdAddr: Ptr; { FS: address to dispatch to }
  825. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  826. ioResult: OSErr; { result code }
  827. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  828. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  829. ioFRefNum: SInt16;
  830. ioFVersNum: SInt8;
  831. filler1: SInt8;
  832. ioFDirIndex: SInt16;
  833. ioFlAttrib: SInt8;
  834. ioFlVersNum: SInt8;
  835. ioFlFndrInfo: FInfo;
  836. ioDirID: UInt32;
  837. ioFlStBlk: UInt16;
  838. ioFlLgLen: SInt32;
  839. ioFlPyLen: SInt32;
  840. ioFlRStBlk: UInt16;
  841. ioFlRLgLen: SInt32;
  842. ioFlRPyLen: SInt32;
  843. ioFlCrDat: UInt32;
  844. ioFlMdDat: UInt32;
  845. end;
  846. HVolumeParamPtr = ^HVolumeParam;
  847. HVolumeParam = record
  848. qLink: QElemPtr; { queue link in header }
  849. qType: SInt16; { type byte for safety check }
  850. ioTrap: SInt16; { FS: the Trap }
  851. ioCmdAddr: Ptr; { FS: address to dispatch to }
  852. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  853. ioResult: OSErr; { result code }
  854. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  855. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  856. filler2: SInt32;
  857. ioVolIndex: SInt16;
  858. ioVCrDate: UInt32;
  859. ioVLsMod: UInt32;
  860. ioVAtrb: SInt16;
  861. ioVNmFls: UInt16;
  862. ioVBitMap: UInt16;
  863. ioAllocPtr: UInt16;
  864. ioVNmAlBlks: UInt16;
  865. ioVAlBlkSiz: UInt32;
  866. ioVClpSiz: UInt32;
  867. ioAlBlSt: UInt16;
  868. ioVNxtCNID: UInt32;
  869. ioVFrBlk: UInt16;
  870. ioVSigWord: UInt16;
  871. ioVDrvInfo: SInt16;
  872. ioVDRefNum: SInt16;
  873. ioVFSID: SInt16;
  874. ioVBkUp: UInt32;
  875. ioVSeqNum: SInt16;
  876. ioVWrCnt: UInt32;
  877. ioVFilCnt: UInt32;
  878. ioVDirCnt: UInt32;
  879. ioVFndrInfo: array [1..8] of SInt32;
  880. end;
  881. XIOParamPtr = ^XIOParam;
  882. XIOParam = record
  883. qLink: QElemPtr;
  884. qType: SInt16;
  885. ioTrap: SInt16;
  886. ioCmdAddr: Ptr;
  887. ioCompletion: IOCompletionUPP;
  888. ioResult: OSErr;
  889. ioNamePtr: StringPtr;
  890. ioVRefNum: SInt16;
  891. ioRefNum: SInt16;
  892. ioVersNum: SInt8;
  893. ioPermssn: SInt8;
  894. ioMisc: Ptr;
  895. ioBuffer: Ptr;
  896. ioReqCount: SInt32;
  897. ioActCount: SInt32;
  898. ioPosMode: SInt16; { must have kUseWidePositioning bit set }
  899. ioWPosOffset: wide; { wide positioning offset }
  900. end;
  901. XVolumeParamPtr = ^XVolumeParam;
  902. XVolumeParam = record
  903. qLink: QElemPtr;
  904. qType: SInt16;
  905. ioTrap: SInt16;
  906. ioCmdAddr: Ptr;
  907. ioCompletion: IOCompletionUPP;
  908. ioResult: OSErr;
  909. ioNamePtr: StringPtr;
  910. ioVRefNum: SInt16;
  911. ioXVersion: UInt32; { this XVolumeParam version (0) }
  912. ioVolIndex: SInt16;
  913. ioVCrDate: UInt32;
  914. ioVLsMod: UInt32;
  915. ioVAtrb: SInt16;
  916. ioVNmFls: UInt16;
  917. ioVBitMap: UInt16;
  918. ioAllocPtr: UInt16;
  919. ioVNmAlBlks: UInt16;
  920. ioVAlBlkSiz: UInt32;
  921. ioVClpSiz: UInt32;
  922. ioAlBlSt: UInt16;
  923. ioVNxtCNID: UInt32;
  924. ioVFrBlk: UInt16;
  925. ioVSigWord: UInt16;
  926. ioVDrvInfo: SInt16;
  927. ioVDRefNum: SInt16;
  928. ioVFSID: SInt16;
  929. ioVBkUp: UInt32;
  930. ioVSeqNum: SInt16;
  931. ioVWrCnt: UInt32;
  932. ioVFilCnt: UInt32;
  933. ioVDirCnt: UInt32;
  934. ioVFndrInfo: array [1..8] of SInt32;
  935. ioVTotalBytes: UInt64; { total number of bytes on volume }
  936. ioVFreeBytes: UInt64; { number of free bytes on volume }
  937. end;
  938. AccessParamPtr = ^AccessParam;
  939. AccessParam = record
  940. qLink: QElemPtr; { queue link in header }
  941. qType: SInt16; { type byte for safety check }
  942. ioTrap: SInt16; { FS: the Trap }
  943. ioCmdAddr: Ptr; { FS: address to dispatch to }
  944. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  945. ioResult: OSErr; { result code }
  946. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  947. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  948. filler3: SInt16;
  949. ioDenyModes: SInt16; { access rights data }
  950. filler4: SInt16;
  951. filler5: SInt8;
  952. ioACUser: SInt8; { access rights for directory only }
  953. filler6: SInt32;
  954. ioACOwnerID: SInt32; { owner ID }
  955. ioACGroupID: SInt32; { group ID }
  956. ioACAccess: SInt32; { access rights }
  957. ioDirID: UInt32;
  958. end;
  959. ObjParamPtr = ^ObjParam;
  960. ObjParam = record
  961. qLink: QElemPtr; { queue link in header }
  962. qType: SInt16; { type byte for safety check }
  963. ioTrap: SInt16; { FS: the Trap }
  964. ioCmdAddr: Ptr; { FS: address to dispatch to }
  965. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  966. ioResult: OSErr; { result code }
  967. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  968. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  969. filler7: SInt16;
  970. ioObjType: SInt16; { function code }
  971. ioObjNamePtr: StringPtr; { ptr to returned creator/group name }
  972. ioObjID: SInt32; { creator/group ID }
  973. end;
  974. CopyParamPtr = ^CopyParam;
  975. CopyParam = record
  976. qLink: QElemPtr; { queue link in header }
  977. qType: SInt16; { type byte for safety check }
  978. ioTrap: SInt16; { FS: the Trap }
  979. ioCmdAddr: Ptr; { FS: address to dispatch to }
  980. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  981. ioResult: OSErr; { result code }
  982. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  983. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  984. ioDstVRefNum: SInt16; { destination vol identifier }
  985. filler8: SInt16;
  986. ioNewName: StringPtr; { ptr to destination pathname }
  987. ioCopyName: StringPtr; { ptr to optional name }
  988. ioNewDirID: UInt32; { destination directory ID }
  989. filler14: SInt32;
  990. filler15: SInt32;
  991. ioDirID: UInt32;
  992. end;
  993. WDParamPtr = ^WDParam;
  994. WDParam = record
  995. qLink: QElemPtr; { queue link in header }
  996. qType: SInt16; { type byte for safety check }
  997. ioTrap: SInt16; { FS: the Trap }
  998. ioCmdAddr: Ptr; { FS: address to dispatch to }
  999. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  1000. ioResult: OSErr; { result code }
  1001. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  1002. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  1003. ioWDCreated: SInt16;
  1004. ioWDIndex: SInt16;
  1005. ioWDProcID: SInt32;
  1006. ioWDVRefNum: SInt16;
  1007. filler10: SInt16;
  1008. filler11: SInt32;
  1009. filler12: SInt32;
  1010. filler13: SInt32;
  1011. ioWDDirID: UInt32;
  1012. end;
  1013. FIDParamPtr = ^FIDParam;
  1014. FIDParam = record
  1015. qLink: QElemPtr; { queue link in header }
  1016. qType: SInt16; { type byte for safety check }
  1017. ioTrap: SInt16; { FS: the Trap }
  1018. ioCmdAddr: Ptr; { FS: address to dispatch to }
  1019. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  1020. ioResult: OSErr; { result code }
  1021. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  1022. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  1023. filler14: SInt32;
  1024. ioDestNamePtr: StringPtr; { dest file name }
  1025. filler15: SInt32;
  1026. ioDestDirID: UInt32; { dest file's directory id }
  1027. filler16: SInt32;
  1028. filler17: SInt32;
  1029. ioSrcDirID: UInt32; { source file's directory id }
  1030. filler18: SInt16;
  1031. ioFileID: SInt32; { file ID }
  1032. end;
  1033. ForeignPrivParamPtr = ^ForeignPrivParam;
  1034. ForeignPrivParam = record
  1035. qLink: QElemPtr; { queue link in header }
  1036. qType: SInt16; { type byte for safety check }
  1037. ioTrap: SInt16; { FS: the Trap }
  1038. ioCmdAddr: Ptr; { FS: address to dispatch to }
  1039. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  1040. ioResult: OSErr; { result code }
  1041. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  1042. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  1043. ioFiller21: SInt32;
  1044. ioFiller22: SInt32;
  1045. ioForeignPrivBuffer: Ptr;
  1046. ioForeignPrivActCount: SInt32;
  1047. ioForeignPrivReqCount: SInt32;
  1048. ioFiller23: SInt32;
  1049. ioForeignPrivDirID: UInt32;
  1050. ioForeignPrivInfo1: SInt32;
  1051. ioForeignPrivInfo2: SInt32;
  1052. ioForeignPrivInfo3: SInt32;
  1053. ioForeignPrivInfo4: SInt32;
  1054. end;
  1055. CSParamPtr = ^CSParam;
  1056. CSParam = record
  1057. qLink: QElemPtr; { queue link in header }
  1058. qType: SInt16; { type byte for safety check }
  1059. ioTrap: SInt16; { FS: the Trap }
  1060. ioCmdAddr: Ptr; { FS: address to dispatch to }
  1061. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  1062. ioResult: OSErr; { result code }
  1063. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  1064. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  1065. ioMatchPtr: FSSpecPtr; { match array }
  1066. ioReqMatchCount: SInt32; { maximum allowable matches }
  1067. ioActMatchCount: SInt32; { actual match count }
  1068. ioSearchBits: SInt32; { search criteria selector }
  1069. ioSearchInfo1: CInfoPBPtr; { search values and range lower bounds }
  1070. ioSearchInfo2: CInfoPBPtr; { search values and range upper bounds }
  1071. ioSearchTime: SInt32; { length of time to run search }
  1072. ioCatPosition: CatPositionRec; { current position in the catalog }
  1073. ioOptBuffer: Ptr; { optional performance enhancement buffer }
  1074. ioOptBufSize: SInt32; { size of buffer pointed to by ioOptBuffer }
  1075. end;
  1076. HParamBlockRecPtr = ^HParamBlockRec;
  1077. HParamBlockRec = record
  1078. qLink: QElemPtr; { queue link in header }
  1079. qType: SInt16; { type byte for safety check }
  1080. ioTrap: SInt16; { FS: the Trap }
  1081. ioCmdAddr: Ptr; { FS: address to dispatch to }
  1082. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  1083. ioResult: OSErr; { result code }
  1084. ioNamePtr: StringPtr; { ptr to Vol:FileName string }
  1085. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  1086. case SInt16 of
  1087. 0: (
  1088. ioRefNum: SInt16;
  1089. ioVersNum: SInt8;
  1090. ioPermssn: SInt8;
  1091. ioMisc: Ptr;
  1092. ioBuffer: Ptr;
  1093. ioReqCount: SInt32;
  1094. ioActCount: SInt32;
  1095. ioPosMode: SInt16;
  1096. ioPosOffset: SInt32;
  1097. );
  1098. 1: (
  1099. ioFRefNum: SInt16;
  1100. ioFVersNum: SInt8;
  1101. filler1: SInt8;
  1102. ioFDirIndex: SInt16;
  1103. ioFlAttrib: SInt8;
  1104. ioFlVersNum: SInt8;
  1105. ioFlFndrInfo: FInfo;
  1106. ioDirID: UInt32;
  1107. ioFlStBlk: UInt16;
  1108. ioFlLgLen: SInt32;
  1109. ioFlPyLen: SInt32;
  1110. ioFlRStBlk: UInt16;
  1111. ioFlRLgLen: SInt32;
  1112. ioFlRPyLen: SInt32;
  1113. ioFlCrDat: UInt32;
  1114. ioFlMdDat: UInt32;
  1115. );
  1116. 2: (
  1117. filler2: SInt32;
  1118. ioVolIndex: SInt16;
  1119. ioVCrDate: UInt32;
  1120. ioVLsMod: UInt32;
  1121. ioVAtrb: SInt16;
  1122. ioVNmFls: UInt16;
  1123. ioVBitMap: UInt16;
  1124. ioAllocPtr: UInt16;
  1125. ioVNmAlBlks: UInt16;
  1126. ioVAlBlkSiz: UInt32;
  1127. ioVClpSiz: UInt32;
  1128. ioAlBlSt: UInt16;
  1129. ioVNxtCNID: UInt32;
  1130. ioVFrBlk: UInt16;
  1131. ioVSigWord: UInt16;
  1132. ioVDrvInfo: SInt16;
  1133. ioVDRefNum: SInt16;
  1134. ioVFSID: SInt16;
  1135. ioVBkUp: UInt32;
  1136. ioVSeqNum: UInt16;
  1137. ioVWrCnt: UInt32;
  1138. ioVFilCnt: UInt32;
  1139. ioVDirCnt: UInt32;
  1140. ioVFndrInfo: array [1..8] of SInt32;
  1141. );
  1142. 3: (
  1143. filler3: SInt16;
  1144. ioDenyModes: SInt16; { access rights data }
  1145. filler4: SInt16;
  1146. filler5: SInt8;
  1147. ioACUser: SInt8; { access rights for directory only }
  1148. filler6: SInt32;
  1149. ioACOwnerID: SInt32; { owner ID }
  1150. ioACGroupID: SInt32; { group ID }
  1151. ioACAccess: SInt32; { access rights }
  1152. );
  1153. 4: (
  1154. filler7: SInt16;
  1155. ioObjType: SInt16; { function code }
  1156. ioObjNamePtr: StringPtr; { ptr to returned creator/group name }
  1157. ioObjID: SInt32; { creator/group ID }
  1158. );
  1159. 5: (
  1160. ioDstVRefNum: SInt16; { destination vol identifier }
  1161. filler8: SInt16;
  1162. ioNewName: StringPtr; { ptr to destination pathname }
  1163. ioCopyName: StringPtr; { ptr to optional name }
  1164. ioNewDirID: UInt32; { destination directory ID }
  1165. );
  1166. 6: (
  1167. ioWDCreated: SInt16;
  1168. ioWDIndex: SInt16;
  1169. ioWDProcID: SInt32;
  1170. ioWDVRefNum: SInt16;
  1171. filler10: SInt16;
  1172. filler11: SInt32;
  1173. filler12: SInt32;
  1174. filler13: SInt32;
  1175. ioWDDirID: UInt32;
  1176. );
  1177. 7: (
  1178. filler14: SInt32;
  1179. ioDestNamePtr: StringPtr; { dest file name }
  1180. filler15: SInt32;
  1181. ioDestDirID: UInt32; { dest file's directory id }
  1182. filler16: SInt32;
  1183. filler17: SInt32;
  1184. ioSrcDirID: UInt32; { source file's directory id }
  1185. filler18: SInt16;
  1186. ioFileID: SInt32; { file ID }
  1187. );
  1188. 8: (
  1189. ioMatchPtr: FSSpecPtr; { match array }
  1190. ioReqMatchCount: SInt32; { maximum allowable matches }
  1191. ioActMatchCount: SInt32; { actual match count }
  1192. ioSearchBits: SInt32; { search criteria selector }
  1193. ioSearchInfo1: CInfoPBPtr; { search values and range lower bounds }
  1194. ioSearchInfo2: CInfoPBPtr; { search values and range upper bounds }
  1195. ioSearchTime: SInt32; { length of time to run search }
  1196. ioCatPosition: CatPositionRec; { current position in the catalog }
  1197. ioOptBuffer: Ptr; { optional performance enhancement buffer }
  1198. ioOptBufSize: SInt32; { size of buffer pointed to by ioOptBuffer }
  1199. );
  1200. 9: (
  1201. ioFiller21: SInt32;
  1202. ioFiller22: SInt32;
  1203. ioForeignPrivBuffer: Ptr;
  1204. ioForeignPrivActCount: SInt32;
  1205. ioForeignPrivReqCount: SInt32;
  1206. ioFiller23: SInt32;
  1207. ioForeignPrivDirID: UInt32;
  1208. ioForeignPrivInfo1: SInt32;
  1209. ioForeignPrivInfo2: SInt32;
  1210. ioForeignPrivInfo3: SInt32;
  1211. ioForeignPrivInfo4: SInt32;
  1212. );
  1213. end;
  1214. HParmBlkPtr = ^HParamBlockRec;
  1215. CMovePBRecPtr = ^CMovePBRec;
  1216. CMovePBRec = record
  1217. qLink: QElemPtr;
  1218. qType: SInt16;
  1219. ioTrap: SInt16;
  1220. ioCmdAddr: Ptr;
  1221. ioCompletion: IOCompletionUPP;
  1222. ioResult: OSErr;
  1223. ioNamePtr: StringPtr;
  1224. ioVRefNum: SInt16;
  1225. filler1: SInt32;
  1226. ioNewName: StringPtr;
  1227. filler2: SInt32;
  1228. ioNewDirID: UInt32;
  1229. filler3: array [1..2] of SInt32;
  1230. ioDirID: UInt32;
  1231. end;
  1232. CMovePBPtr = ^CMovePBRec;
  1233. WDPBRecPtr = ^WDPBRec;
  1234. WDPBRec = record
  1235. qLink: QElemPtr;
  1236. qType: SInt16;
  1237. ioTrap: SInt16;
  1238. ioCmdAddr: Ptr;
  1239. ioCompletion: IOCompletionUPP;
  1240. ioResult: OSErr;
  1241. ioNamePtr: StringPtr;
  1242. ioVRefNum: SInt16;
  1243. filler1: SInt16;
  1244. ioWDIndex: SInt16;
  1245. ioWDProcID: SInt32;
  1246. ioWDVRefNum: SInt16;
  1247. filler2: array [1..7] of SInt16;
  1248. ioWDDirID: UInt32;
  1249. end;
  1250. WDPBPtr = ^WDPBRec;
  1251. FCBPBRecPtr = ^FCBPBRec;
  1252. FCBPBRec = record
  1253. qLink: QElemPtr;
  1254. qType: SInt16;
  1255. ioTrap: SInt16;
  1256. ioCmdAddr: Ptr;
  1257. ioCompletion: IOCompletionUPP;
  1258. ioResult: OSErr;
  1259. ioNamePtr: StringPtr;
  1260. ioVRefNum: SInt16;
  1261. ioRefNum: SInt16;
  1262. filler: SInt16;
  1263. ioFCBIndx: SInt16;
  1264. filler1: SInt16;
  1265. ioFCBFlNm: SInt32;
  1266. ioFCBFlags: SInt16;
  1267. ioFCBStBlk: UInt16;
  1268. ioFCBEOF: SInt32;
  1269. ioFCBPLen: SInt32;
  1270. ioFCBCrPs: SInt32;
  1271. ioFCBVRefNum: SInt16;
  1272. ioFCBClpSiz: SInt32;
  1273. ioFCBParID: SInt32;
  1274. end;
  1275. FCBPBPtr = ^FCBPBRec;
  1276. VCBPtr = ^VCB;
  1277. VCB = record
  1278. qLink: QElemPtr;
  1279. qType: SInt16;
  1280. vcbFlags: SInt16;
  1281. vcbSigWord: UInt16;
  1282. vcbCrDate: UInt32;
  1283. vcbLsMod: UInt32;
  1284. vcbAtrb: SInt16;
  1285. vcbNmFls: UInt16;
  1286. vcbVBMSt: SInt16;
  1287. vcbAllocPtr: SInt16;
  1288. vcbNmAlBlks: UInt16;
  1289. vcbAlBlkSiz: SInt32;
  1290. vcbClpSiz: SInt32;
  1291. vcbAlBlSt: SInt16;
  1292. vcbNxtCNID: SInt32;
  1293. vcbFreeBks: UInt16;
  1294. vcbVN: Str27;
  1295. vcbDrvNum: SInt16;
  1296. vcbDRefNum: SInt16;
  1297. vcbFSID: SInt16;
  1298. vcbVRefNum: SInt16;
  1299. vcbMAdr: Ptr;
  1300. vcbBufAdr: Ptr;
  1301. vcbMLen: SInt16;
  1302. vcbDirIndex: SInt16;
  1303. vcbDirBlk: SInt16;
  1304. vcbVolBkUp: UInt32;
  1305. vcbVSeqNum: UInt16;
  1306. vcbWrCnt: SInt32;
  1307. vcbXTClpSiz: SInt32;
  1308. vcbCTClpSiz: SInt32;
  1309. vcbNmRtDirs: UInt16;
  1310. vcbFilCnt: SInt32;
  1311. vcbDirCnt: SInt32;
  1312. vcbFndrInfo: array [1..8] of SInt32;
  1313. vcbVCSize: UInt16;
  1314. vcbVBMCSiz: UInt16;
  1315. vcbCtlCSiz: UInt16;
  1316. vcbXTAlBlks: UInt16;
  1317. vcbCTAlBlks: UInt16;
  1318. vcbXTRef: SInt16;
  1319. vcbCTRef: SInt16;
  1320. vcbCtlBuf: Ptr;
  1321. vcbDirIDM: SInt32;
  1322. vcbOffsM: SInt16;
  1323. end;
  1324. DrvQElPtr = ^DrvQEl;
  1325. DrvQEl = record
  1326. qLink: QElemPtr;
  1327. qType: SInt16;
  1328. dQDrive: SInt16;
  1329. dQRefNum: SInt16;
  1330. dQFSID: SInt16;
  1331. dQDrvSz: UInt16;
  1332. dQDrvSz2: UInt16;
  1333. end;
  1334. const
  1335. uppIOCompletionProcInfo = $00009802;
  1336. {
  1337. * NewIOCompletionUPP()
  1338. *
  1339. * Availability:
  1340. * Non-Carbon CFM: available as macro/inline
  1341. * CarbonLib: in CarbonLib 1.0 and later
  1342. * Mac OS X: in version 10.0 and later
  1343. }
  1344. function NewIOCompletionUPP(userRoutine: IOCompletionProcPtr): IOCompletionUPP; external name '_NewIOCompletionUPP'; { old name was NewIOCompletionProc }
  1345. {
  1346. * DisposeIOCompletionUPP()
  1347. *
  1348. * Availability:
  1349. * Non-Carbon CFM: available as macro/inline
  1350. * CarbonLib: in CarbonLib 1.0 and later
  1351. * Mac OS X: in version 10.0 and later
  1352. }
  1353. procedure DisposeIOCompletionUPP(userUPP: IOCompletionUPP); external name '_DisposeIOCompletionUPP';
  1354. {
  1355. * InvokeIOCompletionUPP()
  1356. *
  1357. * Availability:
  1358. * Non-Carbon CFM: available as macro/inline
  1359. * CarbonLib: in CarbonLib 1.0 and later
  1360. * Mac OS X: in version 10.0 and later
  1361. }
  1362. procedure InvokeIOCompletionUPP(paramBlock: ParmBlkPtr; userRoutine: IOCompletionUPP); external name '_InvokeIOCompletionUPP'; { old name was CallIOCompletionProc }
  1363. {
  1364. PBOpenSync(), PBOpenAsync(), PBOpenImmed() were moved to Devices.h
  1365. PBCloseSync(), PBCloseAsync(), PBCloseImmed() were moved to Devices.h
  1366. PBReadSync(), PBReadAsync(), PBReadImmed() were moved to Devices.h
  1367. PBWriteSync(), PBWriteAsync(), PBWriteImmed() were moved to Devices.h
  1368. }
  1369. {$ifc CALL_NOT_IN_CARBON}
  1370. {
  1371. * PBGetVInfoSync()
  1372. *
  1373. * Availability:
  1374. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1375. * CarbonLib: not available
  1376. * Mac OS X: not available
  1377. }
  1378. function PBGetVInfoSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetVInfoSync';
  1379. {
  1380. * PBGetVInfoAsync()
  1381. *
  1382. * Availability:
  1383. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1384. * CarbonLib: not available
  1385. * Mac OS X: not available
  1386. }
  1387. function PBGetVInfoAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetVInfoAsync';
  1388. {$endc} {CALL_NOT_IN_CARBON}
  1389. {
  1390. * PBXGetVolInfoSync()
  1391. *
  1392. * Availability:
  1393. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  1394. * CarbonLib: in CarbonLib 1.0 and later
  1395. * Mac OS X: in version 10.0 and later
  1396. }
  1397. function PBXGetVolInfoSync(paramBlock: XVolumeParamPtr): OSErr; external name '_PBXGetVolInfoSync';
  1398. {
  1399. * PBXGetVolInfoAsync()
  1400. *
  1401. * Availability:
  1402. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  1403. * CarbonLib: in CarbonLib 1.0 and later
  1404. * Mac OS X: in version 10.0 and later
  1405. }
  1406. function PBXGetVolInfoAsync(paramBlock: XVolumeParamPtr): OSErr; external name '_PBXGetVolInfoAsync';
  1407. {$ifc CALL_NOT_IN_CARBON}
  1408. {
  1409. * PBGetVolSync()
  1410. *
  1411. * Availability:
  1412. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1413. * CarbonLib: not available
  1414. * Mac OS X: not available
  1415. }
  1416. function PBGetVolSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetVolSync';
  1417. {
  1418. * PBGetVolAsync()
  1419. *
  1420. * Availability:
  1421. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1422. * CarbonLib: not available
  1423. * Mac OS X: not available
  1424. }
  1425. function PBGetVolAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetVolAsync';
  1426. {
  1427. * PBSetVolSync()
  1428. *
  1429. * Availability:
  1430. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1431. * CarbonLib: not available
  1432. * Mac OS X: not available
  1433. }
  1434. function PBSetVolSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetVolSync';
  1435. {
  1436. * PBSetVolAsync()
  1437. *
  1438. * Availability:
  1439. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1440. * CarbonLib: not available
  1441. * Mac OS X: not available
  1442. }
  1443. function PBSetVolAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetVolAsync';
  1444. {$endc} {CALL_NOT_IN_CARBON}
  1445. {
  1446. * PBFlushVolSync()
  1447. *
  1448. * Availability:
  1449. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1450. * CarbonLib: in CarbonLib 1.0 and later
  1451. * Mac OS X: in version 10.0 and later
  1452. }
  1453. function PBFlushVolSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBFlushVolSync';
  1454. {
  1455. * PBFlushVolAsync()
  1456. *
  1457. * Availability:
  1458. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1459. * CarbonLib: in CarbonLib 1.0 and later
  1460. * Mac OS X: in version 10.0 and later
  1461. }
  1462. function PBFlushVolAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBFlushVolAsync';
  1463. {$ifc CALL_NOT_IN_CARBON}
  1464. {
  1465. * PBHTrashVolumeCachesSync()
  1466. *
  1467. * Availability:
  1468. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  1469. * CarbonLib: not available
  1470. * Mac OS X: not available
  1471. }
  1472. function PBHTrashVolumeCachesSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBHTrashVolumeCachesSync';
  1473. {
  1474. * PBCreateSync()
  1475. *
  1476. * Availability:
  1477. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1478. * CarbonLib: not available
  1479. * Mac OS X: not available
  1480. }
  1481. function PBCreateSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBCreateSync';
  1482. {
  1483. * PBCreateAsync()
  1484. *
  1485. * Availability:
  1486. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1487. * CarbonLib: not available
  1488. * Mac OS X: not available
  1489. }
  1490. function PBCreateAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBCreateAsync';
  1491. {
  1492. * PBDeleteSync()
  1493. *
  1494. * Availability:
  1495. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1496. * CarbonLib: not available
  1497. * Mac OS X: not available
  1498. }
  1499. function PBDeleteSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBDeleteSync';
  1500. {
  1501. * PBDeleteAsync()
  1502. *
  1503. * Availability:
  1504. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1505. * CarbonLib: not available
  1506. * Mac OS X: not available
  1507. }
  1508. function PBDeleteAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBDeleteAsync';
  1509. {
  1510. * PBOpenDFSync()
  1511. *
  1512. * Availability:
  1513. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1514. * CarbonLib: not available
  1515. * Mac OS X: not available
  1516. }
  1517. function PBOpenDFSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBOpenDFSync';
  1518. {
  1519. * PBOpenDFAsync()
  1520. *
  1521. * Availability:
  1522. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1523. * CarbonLib: not available
  1524. * Mac OS X: not available
  1525. }
  1526. function PBOpenDFAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBOpenDFAsync';
  1527. {
  1528. * PBOpenRFSync()
  1529. *
  1530. * Availability:
  1531. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1532. * CarbonLib: not available
  1533. * Mac OS X: not available
  1534. }
  1535. function PBOpenRFSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBOpenRFSync';
  1536. {
  1537. * PBOpenRFAsync()
  1538. *
  1539. * Availability:
  1540. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1541. * CarbonLib: not available
  1542. * Mac OS X: not available
  1543. }
  1544. function PBOpenRFAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBOpenRFAsync';
  1545. {
  1546. * PBRenameSync()
  1547. *
  1548. * Availability:
  1549. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1550. * CarbonLib: not available
  1551. * Mac OS X: not available
  1552. }
  1553. function PBRenameSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBRenameSync';
  1554. {
  1555. * PBRenameAsync()
  1556. *
  1557. * Availability:
  1558. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1559. * CarbonLib: not available
  1560. * Mac OS X: not available
  1561. }
  1562. function PBRenameAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBRenameAsync';
  1563. {
  1564. * PBGetFInfoSync()
  1565. *
  1566. * Availability:
  1567. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1568. * CarbonLib: not available
  1569. * Mac OS X: not available
  1570. }
  1571. function PBGetFInfoSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetFInfoSync';
  1572. {
  1573. * PBGetFInfoAsync()
  1574. *
  1575. * Availability:
  1576. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1577. * CarbonLib: not available
  1578. * Mac OS X: not available
  1579. }
  1580. function PBGetFInfoAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetFInfoAsync';
  1581. {
  1582. * PBSetFInfoSync()
  1583. *
  1584. * Availability:
  1585. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1586. * CarbonLib: not available
  1587. * Mac OS X: not available
  1588. }
  1589. function PBSetFInfoSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetFInfoSync';
  1590. {
  1591. * PBSetFInfoAsync()
  1592. *
  1593. * Availability:
  1594. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1595. * CarbonLib: not available
  1596. * Mac OS X: not available
  1597. }
  1598. function PBSetFInfoAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetFInfoAsync';
  1599. {
  1600. * PBSetFLockSync()
  1601. *
  1602. * Availability:
  1603. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1604. * CarbonLib: not available
  1605. * Mac OS X: not available
  1606. }
  1607. function PBSetFLockSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetFLockSync';
  1608. {
  1609. * PBSetFLockAsync()
  1610. *
  1611. * Availability:
  1612. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1613. * CarbonLib: not available
  1614. * Mac OS X: not available
  1615. }
  1616. function PBSetFLockAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetFLockAsync';
  1617. {
  1618. * PBRstFLockSync()
  1619. *
  1620. * Availability:
  1621. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1622. * CarbonLib: not available
  1623. * Mac OS X: not available
  1624. }
  1625. function PBRstFLockSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBRstFLockSync';
  1626. {
  1627. * PBRstFLockAsync()
  1628. *
  1629. * Availability:
  1630. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1631. * CarbonLib: not available
  1632. * Mac OS X: not available
  1633. }
  1634. function PBRstFLockAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBRstFLockAsync';
  1635. {
  1636. * PBSetFVersSync()
  1637. *
  1638. * Availability:
  1639. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1640. * CarbonLib: not available
  1641. * Mac OS X: not available
  1642. }
  1643. function PBSetFVersSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetFVersSync';
  1644. {
  1645. * PBSetFVersAsync()
  1646. *
  1647. * Availability:
  1648. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1649. * CarbonLib: not available
  1650. * Mac OS X: not available
  1651. }
  1652. function PBSetFVersAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetFVersAsync';
  1653. {$endc} {CALL_NOT_IN_CARBON}
  1654. {
  1655. * PBAllocateSync()
  1656. *
  1657. * Availability:
  1658. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1659. * CarbonLib: in CarbonLib 1.0 and later
  1660. * Mac OS X: in version 10.0 and later
  1661. }
  1662. function PBAllocateSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBAllocateSync';
  1663. {
  1664. * PBAllocateAsync()
  1665. *
  1666. * Availability:
  1667. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1668. * CarbonLib: in CarbonLib 1.0 and later
  1669. * Mac OS X: in version 10.0 and later
  1670. }
  1671. function PBAllocateAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBAllocateAsync';
  1672. {
  1673. * PBGetEOFSync()
  1674. *
  1675. * Availability:
  1676. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1677. * CarbonLib: in CarbonLib 1.0 and later
  1678. * Mac OS X: in version 10.0 and later
  1679. }
  1680. function PBGetEOFSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetEOFSync';
  1681. {
  1682. * PBGetEOFAsync()
  1683. *
  1684. * Availability:
  1685. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1686. * CarbonLib: in CarbonLib 1.0 and later
  1687. * Mac OS X: in version 10.0 and later
  1688. }
  1689. function PBGetEOFAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetEOFAsync';
  1690. {
  1691. * PBSetEOFSync()
  1692. *
  1693. * Availability:
  1694. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1695. * CarbonLib: in CarbonLib 1.0 and later
  1696. * Mac OS X: in version 10.0 and later
  1697. }
  1698. function PBSetEOFSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetEOFSync';
  1699. {
  1700. * PBSetEOFAsync()
  1701. *
  1702. * Availability:
  1703. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1704. * CarbonLib: in CarbonLib 1.0 and later
  1705. * Mac OS X: in version 10.0 and later
  1706. }
  1707. function PBSetEOFAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetEOFAsync';
  1708. {
  1709. * PBGetFPosSync()
  1710. *
  1711. * Availability:
  1712. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1713. * CarbonLib: in CarbonLib 1.0 and later
  1714. * Mac OS X: in version 10.0 and later
  1715. }
  1716. function PBGetFPosSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetFPosSync';
  1717. {
  1718. * PBGetFPosAsync()
  1719. *
  1720. * Availability:
  1721. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1722. * CarbonLib: in CarbonLib 1.0 and later
  1723. * Mac OS X: in version 10.0 and later
  1724. }
  1725. function PBGetFPosAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetFPosAsync';
  1726. {
  1727. * PBSetFPosSync()
  1728. *
  1729. * Availability:
  1730. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1731. * CarbonLib: in CarbonLib 1.0 and later
  1732. * Mac OS X: in version 10.0 and later
  1733. }
  1734. function PBSetFPosSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetFPosSync';
  1735. {
  1736. * PBSetFPosAsync()
  1737. *
  1738. * Availability:
  1739. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1740. * CarbonLib: in CarbonLib 1.0 and later
  1741. * Mac OS X: in version 10.0 and later
  1742. }
  1743. function PBSetFPosAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBSetFPosAsync';
  1744. {
  1745. * PBFlushFileSync()
  1746. *
  1747. * Availability:
  1748. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1749. * CarbonLib: in CarbonLib 1.0 and later
  1750. * Mac OS X: in version 10.0 and later
  1751. }
  1752. function PBFlushFileSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBFlushFileSync';
  1753. {
  1754. * PBFlushFileAsync()
  1755. *
  1756. * Availability:
  1757. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1758. * CarbonLib: in CarbonLib 1.0 and later
  1759. * Mac OS X: in version 10.0 and later
  1760. }
  1761. function PBFlushFileAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBFlushFileAsync';
  1762. {$ifc CALL_NOT_IN_CARBON}
  1763. {
  1764. * PBMountVol()
  1765. *
  1766. * Availability:
  1767. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1768. * CarbonLib: not available
  1769. * Mac OS X: not available
  1770. }
  1771. function PBMountVol(paramBlock: ParmBlkPtr): OSErr; external name '_PBMountVol';
  1772. {$endc} {CALL_NOT_IN_CARBON}
  1773. {
  1774. * PBUnmountVol()
  1775. *
  1776. * Availability:
  1777. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1778. * CarbonLib: in CarbonLib 1.0 and later
  1779. * Mac OS X: in version 10.0 and later
  1780. }
  1781. function PBUnmountVol(paramBlock: ParmBlkPtr): OSErr; external name '_PBUnmountVol';
  1782. {$ifc CALL_NOT_IN_CARBON}
  1783. {
  1784. * PBUnmountVolImmed()
  1785. *
  1786. * Availability:
  1787. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  1788. * CarbonLib: not available
  1789. * Mac OS X: not available
  1790. }
  1791. function PBUnmountVolImmed(paramBlock: ParmBlkPtr): OSErr; external name '_PBUnmountVolImmed';
  1792. {
  1793. * PBEject()
  1794. *
  1795. * Availability:
  1796. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1797. * CarbonLib: not available
  1798. * Mac OS X: not available
  1799. }
  1800. function PBEject(paramBlock: ParmBlkPtr): OSErr; external name '_PBEject';
  1801. {
  1802. * PBOffLine()
  1803. *
  1804. * Availability:
  1805. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1806. * CarbonLib: not available
  1807. * Mac OS X: not available
  1808. }
  1809. function PBOffLine(paramBlock: ParmBlkPtr): OSErr; external name '_PBOffLine';
  1810. {$endc} {CALL_NOT_IN_CARBON}
  1811. {
  1812. * PBCatSearchSync()
  1813. *
  1814. * Availability:
  1815. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1816. * CarbonLib: in CarbonLib 1.0 and later
  1817. * Mac OS X: in version 10.0 and later
  1818. }
  1819. function PBCatSearchSync(paramBlock: CSParamPtr): OSErr; external name '_PBCatSearchSync';
  1820. {
  1821. * PBCatSearchAsync()
  1822. *
  1823. * Availability:
  1824. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1825. * CarbonLib: in CarbonLib 1.0 and later
  1826. * Mac OS X: in version 10.0 and later
  1827. }
  1828. function PBCatSearchAsync(paramBlock: CSParamPtr): OSErr; external name '_PBCatSearchAsync';
  1829. {$ifc CALL_NOT_IN_CARBON}
  1830. {
  1831. * SetVol()
  1832. *
  1833. * Availability:
  1834. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1835. * CarbonLib: not available
  1836. * Mac OS X: not available
  1837. }
  1838. function SetVol(volName: ConstStringPtr; vRefNum: SInt16): OSErr; external name '_SetVol';
  1839. {$endc} {CALL_NOT_IN_CARBON}
  1840. {
  1841. * UnmountVol()
  1842. *
  1843. * Availability:
  1844. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1845. * CarbonLib: in CarbonLib 1.0 and later
  1846. * Mac OS X: in version 10.0 and later
  1847. }
  1848. function UnmountVol(volName: ConstStringPtr; vRefNum: SInt16): OSErr; external name '_UnmountVol';
  1849. {$ifc CALL_NOT_IN_CARBON}
  1850. {
  1851. * Eject()
  1852. *
  1853. * Availability:
  1854. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1855. * CarbonLib: not available
  1856. * Mac OS X: not available
  1857. }
  1858. function Eject(volName: ConstStringPtr; vRefNum: SInt16): OSErr; external name '_Eject';
  1859. {$endc} {CALL_NOT_IN_CARBON}
  1860. {
  1861. * FlushVol()
  1862. *
  1863. * Availability:
  1864. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1865. * CarbonLib: in CarbonLib 1.0 and later
  1866. * Mac OS X: in version 10.0 and later
  1867. }
  1868. function FlushVol(volName: ConstStringPtr; vRefNum: SInt16): OSErr; external name '_FlushVol';
  1869. {
  1870. * HSetVol()
  1871. *
  1872. * Availability:
  1873. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1874. * CarbonLib: in CarbonLib 1.0 and later
  1875. * Mac OS X: in version 10.0 and later
  1876. }
  1877. function HSetVol(volName: ConstStringPtr; vRefNum: SInt16; dirID: UInt32): OSErr; external name '_HSetVol';
  1878. { AddDrive() was moved to Devices.h }
  1879. {$ifc CALL_NOT_IN_CARBON}
  1880. {
  1881. * FSOpen()
  1882. *
  1883. * Availability:
  1884. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1885. * CarbonLib: not available
  1886. * Mac OS X: not available
  1887. }
  1888. function FSOpen(const (*var*) fileName: Str255; vRefNum: SInt16; var refNum: SInt16): OSErr; external name '_FSOpen';
  1889. {
  1890. * OpenDF()
  1891. *
  1892. * Availability:
  1893. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1894. * CarbonLib: not available
  1895. * Mac OS X: not available
  1896. }
  1897. function OpenDF(const (*var*) fileName: Str255; vRefNum: SInt16; var refNum: SInt16): OSErr; external name '_OpenDF';
  1898. {$endc} {CALL_NOT_IN_CARBON}
  1899. {
  1900. * FSClose()
  1901. *
  1902. * Availability:
  1903. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1904. * CarbonLib: in CarbonLib 1.0 and later
  1905. * Mac OS X: in version 10.0 and later
  1906. }
  1907. function FSClose(refNum: SInt16): OSErr; external name '_FSClose';
  1908. {
  1909. * FSRead()
  1910. *
  1911. * Availability:
  1912. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1913. * CarbonLib: in CarbonLib 1.0 and later
  1914. * Mac OS X: in version 10.0 and later
  1915. }
  1916. function FSRead(refNum: SInt16; var count: SInt32; buffPtr: UnivPtr): OSErr; external name '_FSRead';
  1917. {
  1918. * FSWrite()
  1919. *
  1920. * Availability:
  1921. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1922. * CarbonLib: in CarbonLib 1.0 and later
  1923. * Mac OS X: in version 10.0 and later
  1924. }
  1925. function FSWrite(refNum: SInt16; var count: SInt32; buffPtr: UnivPtr): OSErr; external name '_FSWrite';
  1926. {$ifc CALL_NOT_IN_CARBON}
  1927. {
  1928. * GetVInfo()
  1929. *
  1930. * Availability:
  1931. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1932. * CarbonLib: not available
  1933. * Mac OS X: not available
  1934. }
  1935. function GetVInfo(drvNum: SInt16; volName: StringPtr; var vRefNum: SInt16; var freeBytes: SInt32): OSErr; external name '_GetVInfo';
  1936. {
  1937. * GetFInfo()
  1938. *
  1939. * Availability:
  1940. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1941. * CarbonLib: not available
  1942. * Mac OS X: not available
  1943. }
  1944. function GetFInfo(const (*var*) fileName: Str255; vRefNum: SInt16; var fndrInfo: FInfo): OSErr; external name '_GetFInfo';
  1945. {
  1946. * GetVol()
  1947. *
  1948. * Availability:
  1949. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1950. * CarbonLib: not available
  1951. * Mac OS X: not available
  1952. }
  1953. function GetVol(volName: StringPtr; var vRefNum: SInt16): OSErr; external name '_GetVol';
  1954. {
  1955. * Create()
  1956. *
  1957. * Availability:
  1958. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1959. * CarbonLib: not available
  1960. * Mac OS X: not available
  1961. }
  1962. function Create(const (*var*) fileName: Str255; vRefNum: SInt16; creator: OSType; fileType: OSType): OSErr; external name '_Create';
  1963. {
  1964. * FSDelete()
  1965. *
  1966. * Availability:
  1967. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1968. * CarbonLib: not available
  1969. * Mac OS X: not available
  1970. }
  1971. function FSDelete(const (*var*) fileName: Str255; vRefNum: SInt16): OSErr; external name '_FSDelete';
  1972. {
  1973. * OpenRF()
  1974. *
  1975. * Availability:
  1976. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1977. * CarbonLib: not available
  1978. * Mac OS X: not available
  1979. }
  1980. function OpenRF(const (*var*) fileName: Str255; vRefNum: SInt16; var refNum: SInt16): OSErr; external name '_OpenRF';
  1981. {
  1982. * Rename()
  1983. *
  1984. * Availability:
  1985. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1986. * CarbonLib: not available
  1987. * Mac OS X: not available
  1988. }
  1989. function Rename(const (*var*) oldName: Str255; vRefNum: SInt16; const (*var*) newName: Str255): OSErr; external name '_Rename';
  1990. {
  1991. * SetFInfo()
  1992. *
  1993. * Availability:
  1994. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  1995. * CarbonLib: not available
  1996. * Mac OS X: not available
  1997. }
  1998. function SetFInfo(const (*var*) fileName: Str255; vRefNum: SInt16; const (*var*) fndrInfo: FInfo): OSErr; external name '_SetFInfo';
  1999. {
  2000. * SetFLock()
  2001. *
  2002. * Availability:
  2003. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2004. * CarbonLib: not available
  2005. * Mac OS X: not available
  2006. }
  2007. function SetFLock(const (*var*) fileName: Str255; vRefNum: SInt16): OSErr; external name '_SetFLock';
  2008. {
  2009. * RstFLock()
  2010. *
  2011. * Availability:
  2012. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2013. * CarbonLib: not available
  2014. * Mac OS X: not available
  2015. }
  2016. function RstFLock(const (*var*) fileName: Str255; vRefNum: SInt16): OSErr; external name '_RstFLock';
  2017. {$endc} {CALL_NOT_IN_CARBON}
  2018. {
  2019. * Allocate()
  2020. *
  2021. * Availability:
  2022. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2023. * CarbonLib: in CarbonLib 1.0 and later
  2024. * Mac OS X: in version 10.0 and later
  2025. }
  2026. function Allocate(refNum: SInt16; var count: SInt32): OSErr; external name '_Allocate';
  2027. {
  2028. * GetEOF()
  2029. *
  2030. * Availability:
  2031. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2032. * CarbonLib: in CarbonLib 1.0 and later
  2033. * Mac OS X: in version 10.0 and later
  2034. }
  2035. function GetEOF(refNum: SInt16; var logEOF: SInt32): OSErr; external name '_GetEOF';
  2036. {
  2037. * SetEOF()
  2038. *
  2039. * Availability:
  2040. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2041. * CarbonLib: in CarbonLib 1.0 and later
  2042. * Mac OS X: in version 10.0 and later
  2043. }
  2044. function SetEOF(refNum: SInt16; logEOF: SInt32): OSErr; external name '_SetEOF';
  2045. {
  2046. * GetFPos()
  2047. *
  2048. * Availability:
  2049. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2050. * CarbonLib: in CarbonLib 1.0 and later
  2051. * Mac OS X: in version 10.0 and later
  2052. }
  2053. function GetFPos(refNum: SInt16; var filePos: SInt32): OSErr; external name '_GetFPos';
  2054. {
  2055. * SetFPos()
  2056. *
  2057. * Availability:
  2058. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2059. * CarbonLib: in CarbonLib 1.0 and later
  2060. * Mac OS X: in version 10.0 and later
  2061. }
  2062. function SetFPos(refNum: SInt16; posMode: SInt16; posOff: SInt32): OSErr; external name '_SetFPos';
  2063. {
  2064. * GetVRefNum()
  2065. *
  2066. * Availability:
  2067. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2068. * CarbonLib: in CarbonLib 1.0 and later
  2069. * Mac OS X: in version 10.0 and later
  2070. }
  2071. function GetVRefNum(fileRefNum: SInt16; var vRefNum: SInt16): OSErr; external name '_GetVRefNum';
  2072. {$ifc CALL_NOT_IN_CARBON}
  2073. {
  2074. * PBOpenWDSync()
  2075. *
  2076. * Availability:
  2077. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2078. * CarbonLib: not available
  2079. * Mac OS X: not available
  2080. }
  2081. function PBOpenWDSync(paramBlock: WDPBPtr): OSErr; external name '_PBOpenWDSync';
  2082. {
  2083. * PBOpenWDAsync()
  2084. *
  2085. * Availability:
  2086. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2087. * CarbonLib: not available
  2088. * Mac OS X: not available
  2089. }
  2090. function PBOpenWDAsync(paramBlock: WDPBPtr): OSErr; external name '_PBOpenWDAsync';
  2091. {
  2092. * PBCloseWDSync()
  2093. *
  2094. * Availability:
  2095. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2096. * CarbonLib: not available
  2097. * Mac OS X: not available
  2098. }
  2099. function PBCloseWDSync(paramBlock: WDPBPtr): OSErr; external name '_PBCloseWDSync';
  2100. {
  2101. * PBCloseWDAsync()
  2102. *
  2103. * Availability:
  2104. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2105. * CarbonLib: not available
  2106. * Mac OS X: not available
  2107. }
  2108. function PBCloseWDAsync(paramBlock: WDPBPtr): OSErr; external name '_PBCloseWDAsync';
  2109. {$endc} {CALL_NOT_IN_CARBON}
  2110. {
  2111. * PBHSetVolSync()
  2112. *
  2113. * Availability:
  2114. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2115. * CarbonLib: in CarbonLib 1.0 and later
  2116. * Mac OS X: in version 10.0 and later
  2117. }
  2118. function PBHSetVolSync(paramBlock: WDPBPtr): OSErr; external name '_PBHSetVolSync';
  2119. {
  2120. * PBHSetVolAsync()
  2121. *
  2122. * Availability:
  2123. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2124. * CarbonLib: in CarbonLib 1.0 and later
  2125. * Mac OS X: in version 10.0 and later
  2126. }
  2127. function PBHSetVolAsync(paramBlock: WDPBPtr): OSErr; external name '_PBHSetVolAsync';
  2128. {
  2129. * PBHGetVolSync()
  2130. *
  2131. * Availability:
  2132. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2133. * CarbonLib: in CarbonLib 1.0 and later
  2134. * Mac OS X: in version 10.0 and later
  2135. }
  2136. function PBHGetVolSync(paramBlock: WDPBPtr): OSErr; external name '_PBHGetVolSync';
  2137. {
  2138. * PBHGetVolAsync()
  2139. *
  2140. * Availability:
  2141. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2142. * CarbonLib: in CarbonLib 1.0 and later
  2143. * Mac OS X: in version 10.0 and later
  2144. }
  2145. function PBHGetVolAsync(paramBlock: WDPBPtr): OSErr; external name '_PBHGetVolAsync';
  2146. {
  2147. * PBCatMoveSync()
  2148. *
  2149. * Availability:
  2150. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2151. * CarbonLib: in CarbonLib 1.0 and later
  2152. * Mac OS X: in version 10.0 and later
  2153. }
  2154. function PBCatMoveSync(paramBlock: CMovePBPtr): OSErr; external name '_PBCatMoveSync';
  2155. {
  2156. * PBCatMoveAsync()
  2157. *
  2158. * Availability:
  2159. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2160. * CarbonLib: in CarbonLib 1.0 and later
  2161. * Mac OS X: in version 10.0 and later
  2162. }
  2163. function PBCatMoveAsync(paramBlock: CMovePBPtr): OSErr; external name '_PBCatMoveAsync';
  2164. {
  2165. * PBDirCreateSync()
  2166. *
  2167. * Availability:
  2168. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2169. * CarbonLib: in CarbonLib 1.0 and later
  2170. * Mac OS X: in version 10.0 and later
  2171. }
  2172. function PBDirCreateSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBDirCreateSync';
  2173. {
  2174. * PBDirCreateAsync()
  2175. *
  2176. * Availability:
  2177. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2178. * CarbonLib: in CarbonLib 1.0 and later
  2179. * Mac OS X: in version 10.0 and later
  2180. }
  2181. function PBDirCreateAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBDirCreateAsync';
  2182. {$ifc CALL_NOT_IN_CARBON}
  2183. {
  2184. * PBGetWDInfoSync()
  2185. *
  2186. * Availability:
  2187. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2188. * CarbonLib: not available
  2189. * Mac OS X: not available
  2190. }
  2191. function PBGetWDInfoSync(paramBlock: WDPBPtr): OSErr; external name '_PBGetWDInfoSync';
  2192. {
  2193. * PBGetWDInfoAsync()
  2194. *
  2195. * Availability:
  2196. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2197. * CarbonLib: not available
  2198. * Mac OS X: not available
  2199. }
  2200. function PBGetWDInfoAsync(paramBlock: WDPBPtr): OSErr; external name '_PBGetWDInfoAsync';
  2201. {$endc} {CALL_NOT_IN_CARBON}
  2202. {
  2203. * PBGetFCBInfoSync()
  2204. *
  2205. * Availability:
  2206. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2207. * CarbonLib: in CarbonLib 1.0 and later
  2208. * Mac OS X: in version 10.0 and later
  2209. }
  2210. function PBGetFCBInfoSync(paramBlock: FCBPBPtr): OSErr; external name '_PBGetFCBInfoSync';
  2211. {
  2212. * PBGetFCBInfoAsync()
  2213. *
  2214. * Availability:
  2215. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2216. * CarbonLib: in CarbonLib 1.0 and later
  2217. * Mac OS X: in version 10.0 and later
  2218. }
  2219. function PBGetFCBInfoAsync(paramBlock: FCBPBPtr): OSErr; external name '_PBGetFCBInfoAsync';
  2220. {
  2221. * PBGetCatInfoSync()
  2222. *
  2223. * Availability:
  2224. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2225. * CarbonLib: in CarbonLib 1.0 and later
  2226. * Mac OS X: in version 10.0 and later
  2227. }
  2228. function PBGetCatInfoSync(paramBlock: CInfoPBPtr): OSErr; external name '_PBGetCatInfoSync';
  2229. {
  2230. * PBGetCatInfoAsync()
  2231. *
  2232. * Availability:
  2233. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2234. * CarbonLib: in CarbonLib 1.0 and later
  2235. * Mac OS X: in version 10.0 and later
  2236. }
  2237. function PBGetCatInfoAsync(paramBlock: CInfoPBPtr): OSErr; external name '_PBGetCatInfoAsync';
  2238. {
  2239. * PBSetCatInfoSync()
  2240. *
  2241. * Availability:
  2242. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2243. * CarbonLib: in CarbonLib 1.0 and later
  2244. * Mac OS X: in version 10.0 and later
  2245. }
  2246. function PBSetCatInfoSync(paramBlock: CInfoPBPtr): OSErr; external name '_PBSetCatInfoSync';
  2247. {
  2248. * PBSetCatInfoAsync()
  2249. *
  2250. * Availability:
  2251. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2252. * CarbonLib: in CarbonLib 1.0 and later
  2253. * Mac OS X: in version 10.0 and later
  2254. }
  2255. function PBSetCatInfoAsync(paramBlock: CInfoPBPtr): OSErr; external name '_PBSetCatInfoAsync';
  2256. {
  2257. * PBAllocContigSync()
  2258. *
  2259. * Availability:
  2260. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2261. * CarbonLib: in CarbonLib 1.0 and later
  2262. * Mac OS X: in version 10.0 and later
  2263. }
  2264. function PBAllocContigSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBAllocContigSync';
  2265. {
  2266. * PBAllocContigAsync()
  2267. *
  2268. * Availability:
  2269. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2270. * CarbonLib: in CarbonLib 1.0 and later
  2271. * Mac OS X: in version 10.0 and later
  2272. }
  2273. function PBAllocContigAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBAllocContigAsync';
  2274. {
  2275. * PBLockRangeSync()
  2276. *
  2277. * Availability:
  2278. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2279. * CarbonLib: in CarbonLib 1.0 and later
  2280. * Mac OS X: in version 10.0 and later
  2281. }
  2282. function PBLockRangeSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBLockRangeSync';
  2283. {
  2284. * PBLockRangeAsync()
  2285. *
  2286. * Availability:
  2287. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2288. * CarbonLib: in CarbonLib 1.0 and later
  2289. * Mac OS X: in version 10.0 and later
  2290. }
  2291. function PBLockRangeAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBLockRangeAsync';
  2292. {
  2293. * PBUnlockRangeSync()
  2294. *
  2295. * Availability:
  2296. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2297. * CarbonLib: in CarbonLib 1.0 and later
  2298. * Mac OS X: in version 10.0 and later
  2299. }
  2300. function PBUnlockRangeSync(paramBlock: ParmBlkPtr): OSErr; external name '_PBUnlockRangeSync';
  2301. {
  2302. * PBUnlockRangeAsync()
  2303. *
  2304. * Availability:
  2305. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2306. * CarbonLib: in CarbonLib 1.0 and later
  2307. * Mac OS X: in version 10.0 and later
  2308. }
  2309. function PBUnlockRangeAsync(paramBlock: ParmBlkPtr): OSErr; external name '_PBUnlockRangeAsync';
  2310. {
  2311. * PBSetVInfoSync()
  2312. *
  2313. * Availability:
  2314. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2315. * CarbonLib: in CarbonLib 1.0 and later
  2316. * Mac OS X: in version 10.0 and later
  2317. }
  2318. function PBSetVInfoSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBSetVInfoSync';
  2319. {
  2320. * PBSetVInfoAsync()
  2321. *
  2322. * Availability:
  2323. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2324. * CarbonLib: in CarbonLib 1.0 and later
  2325. * Mac OS X: in version 10.0 and later
  2326. }
  2327. function PBSetVInfoAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBSetVInfoAsync';
  2328. {
  2329. * PBHGetVInfoSync()
  2330. *
  2331. * Availability:
  2332. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2333. * CarbonLib: in CarbonLib 1.0 and later
  2334. * Mac OS X: in version 10.0 and later
  2335. }
  2336. function PBHGetVInfoSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetVInfoSync';
  2337. {
  2338. * PBHGetVInfoAsync()
  2339. *
  2340. * Availability:
  2341. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2342. * CarbonLib: in CarbonLib 1.0 and later
  2343. * Mac OS X: in version 10.0 and later
  2344. }
  2345. function PBHGetVInfoAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetVInfoAsync';
  2346. {
  2347. * PBHOpenSync()
  2348. *
  2349. * Availability:
  2350. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2351. * CarbonLib: in CarbonLib 1.0 and later
  2352. * Mac OS X: in version 10.0 and later
  2353. }
  2354. function PBHOpenSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenSync';
  2355. {
  2356. * PBHOpenAsync()
  2357. *
  2358. * Availability:
  2359. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2360. * CarbonLib: in CarbonLib 1.0 and later
  2361. * Mac OS X: in version 10.0 and later
  2362. }
  2363. function PBHOpenAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenAsync';
  2364. {
  2365. * PBHOpenRFSync()
  2366. *
  2367. * Availability:
  2368. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2369. * CarbonLib: in CarbonLib 1.0 and later
  2370. * Mac OS X: in version 10.0 and later
  2371. }
  2372. function PBHOpenRFSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenRFSync';
  2373. {
  2374. * PBHOpenRFAsync()
  2375. *
  2376. * Availability:
  2377. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2378. * CarbonLib: in CarbonLib 1.0 and later
  2379. * Mac OS X: in version 10.0 and later
  2380. }
  2381. function PBHOpenRFAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenRFAsync';
  2382. {
  2383. * PBHOpenDFSync()
  2384. *
  2385. * Availability:
  2386. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2387. * CarbonLib: in CarbonLib 1.0 and later
  2388. * Mac OS X: in version 10.0 and later
  2389. }
  2390. function PBHOpenDFSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenDFSync';
  2391. {
  2392. * PBHOpenDFAsync()
  2393. *
  2394. * Availability:
  2395. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2396. * CarbonLib: in CarbonLib 1.0 and later
  2397. * Mac OS X: in version 10.0 and later
  2398. }
  2399. function PBHOpenDFAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenDFAsync';
  2400. {
  2401. * PBHCreateSync()
  2402. *
  2403. * Availability:
  2404. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2405. * CarbonLib: in CarbonLib 1.0 and later
  2406. * Mac OS X: in version 10.0 and later
  2407. }
  2408. function PBHCreateSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHCreateSync';
  2409. {
  2410. * PBHCreateAsync()
  2411. *
  2412. * Availability:
  2413. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2414. * CarbonLib: in CarbonLib 1.0 and later
  2415. * Mac OS X: in version 10.0 and later
  2416. }
  2417. function PBHCreateAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHCreateAsync';
  2418. {
  2419. * PBHDeleteSync()
  2420. *
  2421. * Availability:
  2422. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2423. * CarbonLib: in CarbonLib 1.0 and later
  2424. * Mac OS X: in version 10.0 and later
  2425. }
  2426. function PBHDeleteSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHDeleteSync';
  2427. {
  2428. * PBHDeleteAsync()
  2429. *
  2430. * Availability:
  2431. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2432. * CarbonLib: in CarbonLib 1.0 and later
  2433. * Mac OS X: in version 10.0 and later
  2434. }
  2435. function PBHDeleteAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHDeleteAsync';
  2436. {
  2437. * PBHRenameSync()
  2438. *
  2439. * Availability:
  2440. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2441. * CarbonLib: in CarbonLib 1.0 and later
  2442. * Mac OS X: in version 10.0 and later
  2443. }
  2444. function PBHRenameSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHRenameSync';
  2445. {
  2446. * PBHRenameAsync()
  2447. *
  2448. * Availability:
  2449. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2450. * CarbonLib: in CarbonLib 1.0 and later
  2451. * Mac OS X: in version 10.0 and later
  2452. }
  2453. function PBHRenameAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHRenameAsync';
  2454. {
  2455. * PBHRstFLockSync()
  2456. *
  2457. * Availability:
  2458. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2459. * CarbonLib: in CarbonLib 1.0 and later
  2460. * Mac OS X: in version 10.0 and later
  2461. }
  2462. function PBHRstFLockSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHRstFLockSync';
  2463. {
  2464. * PBHRstFLockAsync()
  2465. *
  2466. * Availability:
  2467. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2468. * CarbonLib: in CarbonLib 1.0 and later
  2469. * Mac OS X: in version 10.0 and later
  2470. }
  2471. function PBHRstFLockAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHRstFLockAsync';
  2472. {
  2473. * PBHSetFLockSync()
  2474. *
  2475. * Availability:
  2476. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2477. * CarbonLib: in CarbonLib 1.0 and later
  2478. * Mac OS X: in version 10.0 and later
  2479. }
  2480. function PBHSetFLockSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHSetFLockSync';
  2481. {
  2482. * PBHSetFLockAsync()
  2483. *
  2484. * Availability:
  2485. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2486. * CarbonLib: in CarbonLib 1.0 and later
  2487. * Mac OS X: in version 10.0 and later
  2488. }
  2489. function PBHSetFLockAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHSetFLockAsync';
  2490. {
  2491. * PBHGetFInfoSync()
  2492. *
  2493. * Availability:
  2494. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2495. * CarbonLib: in CarbonLib 1.0 and later
  2496. * Mac OS X: in version 10.0 and later
  2497. }
  2498. function PBHGetFInfoSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetFInfoSync';
  2499. {
  2500. * PBHGetFInfoAsync()
  2501. *
  2502. * Availability:
  2503. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2504. * CarbonLib: in CarbonLib 1.0 and later
  2505. * Mac OS X: in version 10.0 and later
  2506. }
  2507. function PBHGetFInfoAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetFInfoAsync';
  2508. {
  2509. * PBHSetFInfoSync()
  2510. *
  2511. * Availability:
  2512. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2513. * CarbonLib: in CarbonLib 1.0 and later
  2514. * Mac OS X: in version 10.0 and later
  2515. }
  2516. function PBHSetFInfoSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHSetFInfoSync';
  2517. {
  2518. * PBHSetFInfoAsync()
  2519. *
  2520. * Availability:
  2521. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2522. * CarbonLib: in CarbonLib 1.0 and later
  2523. * Mac OS X: in version 10.0 and later
  2524. }
  2525. function PBHSetFInfoAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHSetFInfoAsync';
  2526. {
  2527. * PBMakeFSSpecSync()
  2528. *
  2529. * Availability:
  2530. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2531. * CarbonLib: in CarbonLib 1.0 and later
  2532. * Mac OS X: in version 10.0 and later
  2533. }
  2534. function PBMakeFSSpecSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBMakeFSSpecSync';
  2535. {
  2536. * PBMakeFSSpecAsync()
  2537. *
  2538. * Availability:
  2539. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2540. * CarbonLib: in CarbonLib 1.0 and later
  2541. * Mac OS X: in version 10.0 and later
  2542. }
  2543. function PBMakeFSSpecAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBMakeFSSpecAsync';
  2544. {$ifc CALL_NOT_IN_CARBON}
  2545. {
  2546. * FInitQueue()
  2547. *
  2548. * Availability:
  2549. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2550. * CarbonLib: not available
  2551. * Mac OS X: not available
  2552. }
  2553. procedure FInitQueue; external name '_FInitQueue';
  2554. {$endc} {CALL_NOT_IN_CARBON}
  2555. {$ifc CALL_NOT_IN_CARBON}
  2556. {
  2557. * GetFSQHdr()
  2558. *
  2559. * Availability:
  2560. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2561. * CarbonLib: not available
  2562. * Mac OS X: not available
  2563. }
  2564. function GetFSQHdr: QHdrPtr; external name '_GetFSQHdr';
  2565. {
  2566. * GetVCBQHdr()
  2567. *
  2568. * Availability:
  2569. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2570. * CarbonLib: not available
  2571. * Mac OS X: not available
  2572. }
  2573. function GetVCBQHdr: QHdrPtr; external name '_GetVCBQHdr';
  2574. { GetDrvQHdr was moved to Devices.h }
  2575. {$endc} {CALL_NOT_IN_CARBON}
  2576. {
  2577. * HGetVol()
  2578. *
  2579. * Availability:
  2580. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2581. * CarbonLib: in CarbonLib 1.0 and later
  2582. * Mac OS X: in version 10.0 and later
  2583. }
  2584. function HGetVol(volName: StringPtr; var vRefNum: SInt16; var dirID: UInt32): OSErr; external name '_HGetVol';
  2585. {
  2586. * HOpen()
  2587. *
  2588. * Availability:
  2589. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2590. * CarbonLib: in CarbonLib 1.0 and later
  2591. * Mac OS X: in version 10.0 and later
  2592. }
  2593. function HOpen(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255; permission: SInt8; var refNum: SInt16): OSErr; external name '_HOpen';
  2594. {
  2595. * HOpenDF()
  2596. *
  2597. * Availability:
  2598. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2599. * CarbonLib: in CarbonLib 1.0 and later
  2600. * Mac OS X: in version 10.0 and later
  2601. }
  2602. function HOpenDF(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255; permission: SInt8; var refNum: SInt16): OSErr; external name '_HOpenDF';
  2603. {
  2604. * HOpenRF()
  2605. *
  2606. * Availability:
  2607. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2608. * CarbonLib: in CarbonLib 1.0 and later
  2609. * Mac OS X: in version 10.0 and later
  2610. }
  2611. function HOpenRF(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255; permission: SInt8; var refNum: SInt16): OSErr; external name '_HOpenRF';
  2612. {
  2613. * AllocContig()
  2614. *
  2615. * Availability:
  2616. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2617. * CarbonLib: in CarbonLib 1.0 and later
  2618. * Mac OS X: in version 10.0 and later
  2619. }
  2620. function AllocContig(refNum: SInt16; var count: SInt32): OSErr; external name '_AllocContig';
  2621. {
  2622. * HCreate()
  2623. *
  2624. * Availability:
  2625. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2626. * CarbonLib: in CarbonLib 1.0 and later
  2627. * Mac OS X: in version 10.0 and later
  2628. }
  2629. function HCreate(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255; creator: OSType; fileType: OSType): OSErr; external name '_HCreate';
  2630. {
  2631. * DirCreate()
  2632. *
  2633. * Availability:
  2634. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2635. * CarbonLib: in CarbonLib 1.0 and later
  2636. * Mac OS X: in version 10.0 and later
  2637. }
  2638. function DirCreate(vRefNum: SInt16; parentDirID: UInt32; const (*var*) directoryName: Str255; var createdDirID: UInt32): OSErr; external name '_DirCreate';
  2639. {
  2640. * HDelete()
  2641. *
  2642. * Availability:
  2643. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2644. * CarbonLib: in CarbonLib 1.0 and later
  2645. * Mac OS X: in version 10.0 and later
  2646. }
  2647. function HDelete(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255): OSErr; external name '_HDelete';
  2648. {
  2649. * HGetFInfo()
  2650. *
  2651. * Availability:
  2652. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2653. * CarbonLib: in CarbonLib 1.0 and later
  2654. * Mac OS X: in version 10.0 and later
  2655. }
  2656. function HGetFInfo(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255; var fndrInfo: FInfo): OSErr; external name '_HGetFInfo';
  2657. {
  2658. * HSetFInfo()
  2659. *
  2660. * Availability:
  2661. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2662. * CarbonLib: in CarbonLib 1.0 and later
  2663. * Mac OS X: in version 10.0 and later
  2664. }
  2665. function HSetFInfo(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255; const (*var*) fndrInfo: FInfo): OSErr; external name '_HSetFInfo';
  2666. {
  2667. * HSetFLock()
  2668. *
  2669. * Availability:
  2670. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2671. * CarbonLib: in CarbonLib 1.0 and later
  2672. * Mac OS X: in version 10.0 and later
  2673. }
  2674. function HSetFLock(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255): OSErr; external name '_HSetFLock';
  2675. {
  2676. * HRstFLock()
  2677. *
  2678. * Availability:
  2679. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2680. * CarbonLib: in CarbonLib 1.0 and later
  2681. * Mac OS X: in version 10.0 and later
  2682. }
  2683. function HRstFLock(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255): OSErr; external name '_HRstFLock';
  2684. {
  2685. * HRename()
  2686. *
  2687. * Availability:
  2688. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2689. * CarbonLib: in CarbonLib 1.0 and later
  2690. * Mac OS X: in version 10.0 and later
  2691. }
  2692. function HRename(vRefNum: SInt16; dirID: UInt32; const (*var*) oldName: Str255; const (*var*) newName: Str255): OSErr; external name '_HRename';
  2693. {
  2694. * CatMove()
  2695. *
  2696. * Availability:
  2697. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2698. * CarbonLib: in CarbonLib 1.0 and later
  2699. * Mac OS X: in version 10.0 and later
  2700. }
  2701. function CatMove(vRefNum: SInt16; dirID: UInt32; const (*var*) oldName: Str255; newDirID: UInt32; const (*var*) newName: Str255): OSErr; external name '_CatMove';
  2702. {$ifc CALL_NOT_IN_CARBON}
  2703. {
  2704. * OpenWD()
  2705. *
  2706. * Availability:
  2707. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2708. * CarbonLib: not available
  2709. * Mac OS X: not available
  2710. }
  2711. function OpenWD(vRefNum: SInt16; dirID: UInt32; procID: SInt32; var wdRefNum: SInt16): OSErr; external name '_OpenWD';
  2712. {
  2713. * CloseWD()
  2714. *
  2715. * Availability:
  2716. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2717. * CarbonLib: not available
  2718. * Mac OS X: not available
  2719. }
  2720. function CloseWD(wdRefNum: SInt16): OSErr; external name '_CloseWD';
  2721. {
  2722. * GetWDInfo()
  2723. *
  2724. * Availability:
  2725. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2726. * CarbonLib: not available
  2727. * Mac OS X: not available
  2728. }
  2729. function GetWDInfo(wdRefNum: SInt16; var vRefNum: SInt16; var dirID: UInt32; var procID: SInt32): OSErr; external name '_GetWDInfo';
  2730. { shared environment }
  2731. {$endc} {CALL_NOT_IN_CARBON}
  2732. {
  2733. * PBHGetVolParmsSync()
  2734. *
  2735. * Availability:
  2736. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2737. * CarbonLib: in CarbonLib 1.0 and later
  2738. * Mac OS X: in version 10.0 and later
  2739. }
  2740. function PBHGetVolParmsSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetVolParmsSync';
  2741. {
  2742. * PBHGetVolParmsAsync()
  2743. *
  2744. * Availability:
  2745. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2746. * CarbonLib: in CarbonLib 1.0 and later
  2747. * Mac OS X: in version 10.0 and later
  2748. }
  2749. function PBHGetVolParmsAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetVolParmsAsync';
  2750. {
  2751. * PBHGetLogInInfoSync()
  2752. *
  2753. * Availability:
  2754. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2755. * CarbonLib: in CarbonLib 1.0 and later
  2756. * Mac OS X: in version 10.0 and later
  2757. }
  2758. function PBHGetLogInInfoSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetLogInInfoSync';
  2759. {
  2760. * PBHGetLogInInfoAsync()
  2761. *
  2762. * Availability:
  2763. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2764. * CarbonLib: in CarbonLib 1.0 and later
  2765. * Mac OS X: in version 10.0 and later
  2766. }
  2767. function PBHGetLogInInfoAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetLogInInfoAsync';
  2768. {
  2769. * PBHGetDirAccessSync()
  2770. *
  2771. * Availability:
  2772. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2773. * CarbonLib: in CarbonLib 1.0 and later
  2774. * Mac OS X: in version 10.0 and later
  2775. }
  2776. function PBHGetDirAccessSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetDirAccessSync';
  2777. {
  2778. * PBHGetDirAccessAsync()
  2779. *
  2780. * Availability:
  2781. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2782. * CarbonLib: in CarbonLib 1.0 and later
  2783. * Mac OS X: in version 10.0 and later
  2784. }
  2785. function PBHGetDirAccessAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHGetDirAccessAsync';
  2786. {
  2787. * PBHSetDirAccessSync()
  2788. *
  2789. * Availability:
  2790. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2791. * CarbonLib: in CarbonLib 1.0 and later
  2792. * Mac OS X: in version 10.0 and later
  2793. }
  2794. function PBHSetDirAccessSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHSetDirAccessSync';
  2795. {
  2796. * PBHSetDirAccessAsync()
  2797. *
  2798. * Availability:
  2799. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2800. * CarbonLib: in CarbonLib 1.0 and later
  2801. * Mac OS X: in version 10.0 and later
  2802. }
  2803. function PBHSetDirAccessAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHSetDirAccessAsync';
  2804. {
  2805. * PBHMapIDSync()
  2806. *
  2807. * Availability:
  2808. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2809. * CarbonLib: in CarbonLib 1.0 and later
  2810. * Mac OS X: in version 10.0 and later
  2811. }
  2812. function PBHMapIDSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHMapIDSync';
  2813. {
  2814. * PBHMapIDAsync()
  2815. *
  2816. * Availability:
  2817. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2818. * CarbonLib: in CarbonLib 1.0 and later
  2819. * Mac OS X: in version 10.0 and later
  2820. }
  2821. function PBHMapIDAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHMapIDAsync';
  2822. {
  2823. * PBHMapNameSync()
  2824. *
  2825. * Availability:
  2826. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2827. * CarbonLib: in CarbonLib 1.0 and later
  2828. * Mac OS X: in version 10.0 and later
  2829. }
  2830. function PBHMapNameSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHMapNameSync';
  2831. {
  2832. * PBHMapNameAsync()
  2833. *
  2834. * Availability:
  2835. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2836. * CarbonLib: in CarbonLib 1.0 and later
  2837. * Mac OS X: in version 10.0 and later
  2838. }
  2839. function PBHMapNameAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHMapNameAsync';
  2840. {
  2841. * PBHCopyFileSync()
  2842. *
  2843. * Availability:
  2844. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2845. * CarbonLib: in CarbonLib 1.0 and later
  2846. * Mac OS X: in version 10.0 and later
  2847. }
  2848. function PBHCopyFileSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHCopyFileSync';
  2849. {
  2850. * PBHCopyFileAsync()
  2851. *
  2852. * Availability:
  2853. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2854. * CarbonLib: in CarbonLib 1.0 and later
  2855. * Mac OS X: in version 10.0 and later
  2856. }
  2857. function PBHCopyFileAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHCopyFileAsync';
  2858. {
  2859. * PBHMoveRenameSync()
  2860. *
  2861. * Availability:
  2862. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2863. * CarbonLib: in CarbonLib 1.0 and later
  2864. * Mac OS X: in version 10.0 and later
  2865. }
  2866. function PBHMoveRenameSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHMoveRenameSync';
  2867. {
  2868. * PBHMoveRenameAsync()
  2869. *
  2870. * Availability:
  2871. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2872. * CarbonLib: in CarbonLib 1.0 and later
  2873. * Mac OS X: in version 10.0 and later
  2874. }
  2875. function PBHMoveRenameAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHMoveRenameAsync';
  2876. {
  2877. * PBHOpenDenySync()
  2878. *
  2879. * Availability:
  2880. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2881. * CarbonLib: in CarbonLib 1.0 and later
  2882. * Mac OS X: in version 10.0 and later
  2883. }
  2884. function PBHOpenDenySync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenDenySync';
  2885. {
  2886. * PBHOpenDenyAsync()
  2887. *
  2888. * Availability:
  2889. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2890. * CarbonLib: in CarbonLib 1.0 and later
  2891. * Mac OS X: in version 10.0 and later
  2892. }
  2893. function PBHOpenDenyAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenDenyAsync';
  2894. {
  2895. * PBHOpenRFDenySync()
  2896. *
  2897. * Availability:
  2898. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2899. * CarbonLib: in CarbonLib 1.0 and later
  2900. * Mac OS X: in version 10.0 and later
  2901. }
  2902. function PBHOpenRFDenySync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenRFDenySync';
  2903. {
  2904. * PBHOpenRFDenyAsync()
  2905. *
  2906. * Availability:
  2907. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2908. * CarbonLib: in CarbonLib 1.0 and later
  2909. * Mac OS X: in version 10.0 and later
  2910. }
  2911. function PBHOpenRFDenyAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBHOpenRFDenyAsync';
  2912. {
  2913. * PBGetXCatInfoSync()
  2914. *
  2915. * Availability:
  2916. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  2917. * CarbonLib: in CarbonLib 1.0 and later
  2918. * Mac OS X: in version 10.0 and later
  2919. }
  2920. function PBGetXCatInfoSync(paramBlock: XCInfoPBPtr): OSErr; external name '_PBGetXCatInfoSync';
  2921. {
  2922. * PBGetXCatInfoAsync()
  2923. *
  2924. * Availability:
  2925. * Non-Carbon CFM: in InterfaceLib 8.5 and later
  2926. * CarbonLib: in CarbonLib 1.0 and later
  2927. * Mac OS X: in version 10.0 and later
  2928. }
  2929. function PBGetXCatInfoAsync(paramBlock: XCInfoPBPtr): OSErr; external name '_PBGetXCatInfoAsync';
  2930. {
  2931. * PBExchangeFilesSync()
  2932. *
  2933. * Availability:
  2934. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2935. * CarbonLib: in CarbonLib 1.0 and later
  2936. * Mac OS X: in version 10.0 and later
  2937. }
  2938. function PBExchangeFilesSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBExchangeFilesSync';
  2939. {
  2940. * PBExchangeFilesAsync()
  2941. *
  2942. * Availability:
  2943. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2944. * CarbonLib: in CarbonLib 1.0 and later
  2945. * Mac OS X: in version 10.0 and later
  2946. }
  2947. function PBExchangeFilesAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBExchangeFilesAsync';
  2948. {
  2949. * PBCreateFileIDRefSync()
  2950. *
  2951. * Availability:
  2952. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2953. * CarbonLib: in CarbonLib 1.0 and later
  2954. * Mac OS X: in version 10.0 and later
  2955. }
  2956. function PBCreateFileIDRefSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBCreateFileIDRefSync';
  2957. {
  2958. * PBCreateFileIDRefAsync()
  2959. *
  2960. * Availability:
  2961. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2962. * CarbonLib: in CarbonLib 1.0 and later
  2963. * Mac OS X: in version 10.0 and later
  2964. }
  2965. function PBCreateFileIDRefAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBCreateFileIDRefAsync';
  2966. {
  2967. * PBResolveFileIDRefSync()
  2968. *
  2969. * Availability:
  2970. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2971. * CarbonLib: in CarbonLib 1.0 and later
  2972. * Mac OS X: in version 10.0 and later
  2973. }
  2974. function PBResolveFileIDRefSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBResolveFileIDRefSync';
  2975. {
  2976. * PBResolveFileIDRefAsync()
  2977. *
  2978. * Availability:
  2979. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2980. * CarbonLib: in CarbonLib 1.0 and later
  2981. * Mac OS X: in version 10.0 and later
  2982. }
  2983. function PBResolveFileIDRefAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBResolveFileIDRefAsync';
  2984. {
  2985. * PBDeleteFileIDRefSync()
  2986. *
  2987. * Availability:
  2988. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2989. * CarbonLib: in CarbonLib 1.0 and later
  2990. * Mac OS X: in version 10.0 and later
  2991. }
  2992. function PBDeleteFileIDRefSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBDeleteFileIDRefSync';
  2993. {
  2994. * PBDeleteFileIDRefAsync()
  2995. *
  2996. * Availability:
  2997. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  2998. * CarbonLib: in CarbonLib 1.0 and later
  2999. * Mac OS X: in version 10.0 and later
  3000. }
  3001. function PBDeleteFileIDRefAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBDeleteFileIDRefAsync';
  3002. {
  3003. * PBGetForeignPrivsSync()
  3004. *
  3005. * Availability:
  3006. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3007. * CarbonLib: in CarbonLib 1.0 and later
  3008. * Mac OS X: in version 10.0 and later
  3009. }
  3010. function PBGetForeignPrivsSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBGetForeignPrivsSync';
  3011. {
  3012. * PBGetForeignPrivsAsync()
  3013. *
  3014. * Availability:
  3015. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3016. * CarbonLib: in CarbonLib 1.0 and later
  3017. * Mac OS X: in version 10.0 and later
  3018. }
  3019. function PBGetForeignPrivsAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBGetForeignPrivsAsync';
  3020. {
  3021. * PBSetForeignPrivsSync()
  3022. *
  3023. * Availability:
  3024. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3025. * CarbonLib: in CarbonLib 1.0 and later
  3026. * Mac OS X: in version 10.0 and later
  3027. }
  3028. function PBSetForeignPrivsSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBSetForeignPrivsSync';
  3029. {
  3030. * PBSetForeignPrivsAsync()
  3031. *
  3032. * Availability:
  3033. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3034. * CarbonLib: in CarbonLib 1.0 and later
  3035. * Mac OS X: in version 10.0 and later
  3036. }
  3037. function PBSetForeignPrivsAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBSetForeignPrivsAsync';
  3038. { Desktop Manager }
  3039. {
  3040. * PBDTGetPath()
  3041. *
  3042. * Availability:
  3043. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3044. * CarbonLib: in CarbonLib 1.0 and later
  3045. * Mac OS X: in version 10.0 and later
  3046. }
  3047. function PBDTGetPath(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetPath';
  3048. {
  3049. * PBDTCloseDown()
  3050. *
  3051. * Availability:
  3052. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3053. * CarbonLib: in CarbonLib 1.0 and later
  3054. * Mac OS X: in version 10.0 and later
  3055. }
  3056. function PBDTCloseDown(paramBlock: DTPBPtr): OSErr; external name '_PBDTCloseDown';
  3057. {
  3058. * PBDTAddIconSync()
  3059. *
  3060. * Availability:
  3061. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3062. * CarbonLib: in CarbonLib 1.0 and later
  3063. * Mac OS X: in version 10.0 and later
  3064. }
  3065. function PBDTAddIconSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTAddIconSync';
  3066. {
  3067. * PBDTAddIconAsync()
  3068. *
  3069. * Availability:
  3070. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3071. * CarbonLib: in CarbonLib 1.0 and later
  3072. * Mac OS X: in version 10.0 and later
  3073. }
  3074. function PBDTAddIconAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTAddIconAsync';
  3075. {
  3076. * PBDTGetIconSync()
  3077. *
  3078. * Availability:
  3079. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3080. * CarbonLib: in CarbonLib 1.0 and later
  3081. * Mac OS X: in version 10.0 and later
  3082. }
  3083. function PBDTGetIconSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetIconSync';
  3084. {
  3085. * PBDTGetIconAsync()
  3086. *
  3087. * Availability:
  3088. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3089. * CarbonLib: in CarbonLib 1.0 and later
  3090. * Mac OS X: in version 10.0 and later
  3091. }
  3092. function PBDTGetIconAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetIconAsync';
  3093. {
  3094. * PBDTGetIconInfoSync()
  3095. *
  3096. * Availability:
  3097. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3098. * CarbonLib: in CarbonLib 1.0 and later
  3099. * Mac OS X: in version 10.0 and later
  3100. }
  3101. function PBDTGetIconInfoSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetIconInfoSync';
  3102. {
  3103. * PBDTGetIconInfoAsync()
  3104. *
  3105. * Availability:
  3106. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3107. * CarbonLib: in CarbonLib 1.0 and later
  3108. * Mac OS X: in version 10.0 and later
  3109. }
  3110. function PBDTGetIconInfoAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetIconInfoAsync';
  3111. {
  3112. * PBDTAddAPPLSync()
  3113. *
  3114. * Availability:
  3115. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3116. * CarbonLib: in CarbonLib 1.0 and later
  3117. * Mac OS X: in version 10.0 and later
  3118. }
  3119. function PBDTAddAPPLSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTAddAPPLSync';
  3120. {
  3121. * PBDTAddAPPLAsync()
  3122. *
  3123. * Availability:
  3124. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3125. * CarbonLib: in CarbonLib 1.0 and later
  3126. * Mac OS X: in version 10.0 and later
  3127. }
  3128. function PBDTAddAPPLAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTAddAPPLAsync';
  3129. {
  3130. * PBDTRemoveAPPLSync()
  3131. *
  3132. * Availability:
  3133. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3134. * CarbonLib: in CarbonLib 1.0 and later
  3135. * Mac OS X: in version 10.0 and later
  3136. }
  3137. function PBDTRemoveAPPLSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTRemoveAPPLSync';
  3138. {
  3139. * PBDTRemoveAPPLAsync()
  3140. *
  3141. * Availability:
  3142. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3143. * CarbonLib: in CarbonLib 1.0 and later
  3144. * Mac OS X: in version 10.0 and later
  3145. }
  3146. function PBDTRemoveAPPLAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTRemoveAPPLAsync';
  3147. {
  3148. * PBDTGetAPPLSync()
  3149. *
  3150. * Availability:
  3151. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3152. * CarbonLib: in CarbonLib 1.0 and later
  3153. * Mac OS X: in version 10.0 and later
  3154. }
  3155. function PBDTGetAPPLSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetAPPLSync';
  3156. {
  3157. * PBDTGetAPPLAsync()
  3158. *
  3159. * Availability:
  3160. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3161. * CarbonLib: in CarbonLib 1.0 and later
  3162. * Mac OS X: in version 10.0 and later
  3163. }
  3164. function PBDTGetAPPLAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetAPPLAsync';
  3165. {
  3166. * PBDTSetCommentSync()
  3167. *
  3168. * Availability:
  3169. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3170. * CarbonLib: in CarbonLib 1.0 and later
  3171. * Mac OS X: in version 10.0 and later
  3172. }
  3173. function PBDTSetCommentSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTSetCommentSync';
  3174. {
  3175. * PBDTSetCommentAsync()
  3176. *
  3177. * Availability:
  3178. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3179. * CarbonLib: in CarbonLib 1.0 and later
  3180. * Mac OS X: in version 10.0 and later
  3181. }
  3182. function PBDTSetCommentAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTSetCommentAsync';
  3183. {
  3184. * PBDTRemoveCommentSync()
  3185. *
  3186. * Availability:
  3187. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3188. * CarbonLib: in CarbonLib 1.0 and later
  3189. * Mac OS X: in version 10.0 and later
  3190. }
  3191. function PBDTRemoveCommentSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTRemoveCommentSync';
  3192. {
  3193. * PBDTRemoveCommentAsync()
  3194. *
  3195. * Availability:
  3196. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3197. * CarbonLib: in CarbonLib 1.0 and later
  3198. * Mac OS X: in version 10.0 and later
  3199. }
  3200. function PBDTRemoveCommentAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTRemoveCommentAsync';
  3201. {
  3202. * PBDTGetCommentSync()
  3203. *
  3204. * Availability:
  3205. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3206. * CarbonLib: in CarbonLib 1.0 and later
  3207. * Mac OS X: in version 10.0 and later
  3208. }
  3209. function PBDTGetCommentSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetCommentSync';
  3210. {
  3211. * PBDTGetCommentAsync()
  3212. *
  3213. * Availability:
  3214. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3215. * CarbonLib: in CarbonLib 1.0 and later
  3216. * Mac OS X: in version 10.0 and later
  3217. }
  3218. function PBDTGetCommentAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetCommentAsync';
  3219. {
  3220. * PBDTFlushSync()
  3221. *
  3222. * Availability:
  3223. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3224. * CarbonLib: in CarbonLib 1.0 and later
  3225. * Mac OS X: in version 10.0 and later
  3226. }
  3227. function PBDTFlushSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTFlushSync';
  3228. {
  3229. * PBDTFlushAsync()
  3230. *
  3231. * Availability:
  3232. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3233. * CarbonLib: in CarbonLib 1.0 and later
  3234. * Mac OS X: in version 10.0 and later
  3235. }
  3236. function PBDTFlushAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTFlushAsync';
  3237. {
  3238. * PBDTResetSync()
  3239. *
  3240. * Availability:
  3241. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3242. * CarbonLib: in CarbonLib 1.0 and later
  3243. * Mac OS X: in version 10.0 and later
  3244. }
  3245. function PBDTResetSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTResetSync';
  3246. {
  3247. * PBDTResetAsync()
  3248. *
  3249. * Availability:
  3250. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3251. * CarbonLib: in CarbonLib 1.0 and later
  3252. * Mac OS X: in version 10.0 and later
  3253. }
  3254. function PBDTResetAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTResetAsync';
  3255. {
  3256. * PBDTGetInfoSync()
  3257. *
  3258. * Availability:
  3259. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3260. * CarbonLib: in CarbonLib 1.0 and later
  3261. * Mac OS X: in version 10.0 and later
  3262. }
  3263. function PBDTGetInfoSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetInfoSync';
  3264. {
  3265. * PBDTGetInfoAsync()
  3266. *
  3267. * Availability:
  3268. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3269. * CarbonLib: in CarbonLib 1.0 and later
  3270. * Mac OS X: in version 10.0 and later
  3271. }
  3272. function PBDTGetInfoAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTGetInfoAsync';
  3273. {
  3274. * PBDTOpenInform()
  3275. *
  3276. * Availability:
  3277. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3278. * CarbonLib: in CarbonLib 1.0 and later
  3279. * Mac OS X: in version 10.0 and later
  3280. }
  3281. function PBDTOpenInform(paramBlock: DTPBPtr): OSErr; external name '_PBDTOpenInform';
  3282. {
  3283. * PBDTDeleteSync()
  3284. *
  3285. * Availability:
  3286. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3287. * CarbonLib: in CarbonLib 1.0 and later
  3288. * Mac OS X: in version 10.0 and later
  3289. }
  3290. function PBDTDeleteSync(paramBlock: DTPBPtr): OSErr; external name '_PBDTDeleteSync';
  3291. {
  3292. * PBDTDeleteAsync()
  3293. *
  3294. * Availability:
  3295. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3296. * CarbonLib: in CarbonLib 1.0 and later
  3297. * Mac OS X: in version 10.0 and later
  3298. }
  3299. function PBDTDeleteAsync(paramBlock: DTPBPtr): OSErr; external name '_PBDTDeleteAsync';
  3300. { VolumeMount traps }
  3301. {
  3302. * PBGetVolMountInfoSize()
  3303. *
  3304. * Availability:
  3305. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3306. * CarbonLib: in CarbonLib 1.0 and later
  3307. * Mac OS X: in version 10.0 and later
  3308. }
  3309. function PBGetVolMountInfoSize(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetVolMountInfoSize';
  3310. {
  3311. * PBGetVolMountInfo()
  3312. *
  3313. * Availability:
  3314. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3315. * CarbonLib: in CarbonLib 1.0 and later
  3316. * Mac OS X: in version 10.0 and later
  3317. }
  3318. function PBGetVolMountInfo(paramBlock: ParmBlkPtr): OSErr; external name '_PBGetVolMountInfo';
  3319. {
  3320. * PBVolumeMount()
  3321. *
  3322. * Availability:
  3323. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3324. * CarbonLib: in CarbonLib 1.0 and later
  3325. * Mac OS X: in version 10.0 and later
  3326. }
  3327. function PBVolumeMount(paramBlock: ParmBlkPtr): OSErr; external name '_PBVolumeMount';
  3328. { FSp traps }
  3329. {
  3330. * FSMakeFSSpec()
  3331. *
  3332. * Availability:
  3333. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3334. * CarbonLib: in CarbonLib 1.0 and later
  3335. * Mac OS X: in version 10.0 and later
  3336. }
  3337. function FSMakeFSSpec(vRefNum: SInt16; dirID: UInt32; const (*var*) fileName: Str255; var spec: FSSpec): OSErr; external name '_FSMakeFSSpec';
  3338. {
  3339. * FSpOpenDF()
  3340. *
  3341. * Availability:
  3342. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3343. * CarbonLib: in CarbonLib 1.0 and later
  3344. * Mac OS X: in version 10.0 and later
  3345. }
  3346. function FSpOpenDF(const (*var*) spec: FSSpec; permission: SInt8; var refNum: SInt16): OSErr; external name '_FSpOpenDF';
  3347. {
  3348. * FSpOpenRF()
  3349. *
  3350. * Availability:
  3351. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3352. * CarbonLib: in CarbonLib 1.0 and later
  3353. * Mac OS X: in version 10.0 and later
  3354. }
  3355. function FSpOpenRF(const (*var*) spec: FSSpec; permission: SInt8; var refNum: SInt16): OSErr; external name '_FSpOpenRF';
  3356. {
  3357. * FSpCreate()
  3358. *
  3359. * Availability:
  3360. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3361. * CarbonLib: in CarbonLib 1.0 and later
  3362. * Mac OS X: in version 10.0 and later
  3363. }
  3364. function FSpCreate(const (*var*) spec: FSSpec; creator: OSType; fileType: OSType; scriptTag: ScriptCode): OSErr; external name '_FSpCreate';
  3365. {
  3366. * FSpDirCreate()
  3367. *
  3368. * Availability:
  3369. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3370. * CarbonLib: in CarbonLib 1.0 and later
  3371. * Mac OS X: in version 10.0 and later
  3372. }
  3373. function FSpDirCreate(const (*var*) spec: FSSpec; scriptTag: ScriptCode; var createdDirID: UInt32): OSErr; external name '_FSpDirCreate';
  3374. {
  3375. * FSpDelete()
  3376. *
  3377. * Availability:
  3378. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3379. * CarbonLib: in CarbonLib 1.0 and later
  3380. * Mac OS X: in version 10.0 and later
  3381. }
  3382. function FSpDelete(const (*var*) spec: FSSpec): OSErr; external name '_FSpDelete';
  3383. {
  3384. * FSpGetFInfo()
  3385. *
  3386. * Availability:
  3387. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3388. * CarbonLib: in CarbonLib 1.0 and later
  3389. * Mac OS X: in version 10.0 and later
  3390. }
  3391. function FSpGetFInfo(const (*var*) spec: FSSpec; var fndrInfo: FInfo): OSErr; external name '_FSpGetFInfo';
  3392. {
  3393. * FSpSetFInfo()
  3394. *
  3395. * Availability:
  3396. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3397. * CarbonLib: in CarbonLib 1.0 and later
  3398. * Mac OS X: in version 10.0 and later
  3399. }
  3400. function FSpSetFInfo(const (*var*) spec: FSSpec; const (*var*) fndrInfo: FInfo): OSErr; external name '_FSpSetFInfo';
  3401. {
  3402. * FSpSetFLock()
  3403. *
  3404. * Availability:
  3405. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3406. * CarbonLib: in CarbonLib 1.0 and later
  3407. * Mac OS X: in version 10.0 and later
  3408. }
  3409. function FSpSetFLock(const (*var*) spec: FSSpec): OSErr; external name '_FSpSetFLock';
  3410. {
  3411. * FSpRstFLock()
  3412. *
  3413. * Availability:
  3414. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3415. * CarbonLib: in CarbonLib 1.0 and later
  3416. * Mac OS X: in version 10.0 and later
  3417. }
  3418. function FSpRstFLock(const (*var*) spec: FSSpec): OSErr; external name '_FSpRstFLock';
  3419. {
  3420. * FSpRename()
  3421. *
  3422. * Availability:
  3423. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3424. * CarbonLib: in CarbonLib 1.0 and later
  3425. * Mac OS X: in version 10.0 and later
  3426. }
  3427. function FSpRename(const (*var*) spec: FSSpec; const (*var*) newName: Str255): OSErr; external name '_FSpRename';
  3428. {
  3429. * FSpCatMove()
  3430. *
  3431. * Availability:
  3432. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3433. * CarbonLib: in CarbonLib 1.0 and later
  3434. * Mac OS X: in version 10.0 and later
  3435. }
  3436. function FSpCatMove(const (*var*) source: FSSpec; const (*var*) dest: FSSpec): OSErr; external name '_FSpCatMove';
  3437. {
  3438. * FSpExchangeFiles()
  3439. *
  3440. * Availability:
  3441. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3442. * CarbonLib: in CarbonLib 1.0 and later
  3443. * Mac OS X: in version 10.0 and later
  3444. }
  3445. function FSpExchangeFiles(const (*var*) source: FSSpec; const (*var*) dest: FSSpec): OSErr; external name '_FSpExchangeFiles';
  3446. {
  3447. * PBShareSync()
  3448. *
  3449. * Availability:
  3450. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3451. * CarbonLib: in CarbonLib 1.0 and later
  3452. * Mac OS X: in version 10.0 and later
  3453. }
  3454. function PBShareSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBShareSync';
  3455. {
  3456. * PBShareAsync()
  3457. *
  3458. * Availability:
  3459. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3460. * CarbonLib: in CarbonLib 1.0 and later
  3461. * Mac OS X: in version 10.0 and later
  3462. }
  3463. function PBShareAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBShareAsync';
  3464. {
  3465. * PBUnshareSync()
  3466. *
  3467. * Availability:
  3468. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3469. * CarbonLib: in CarbonLib 1.0 and later
  3470. * Mac OS X: in version 10.0 and later
  3471. }
  3472. function PBUnshareSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBUnshareSync';
  3473. {
  3474. * PBUnshareAsync()
  3475. *
  3476. * Availability:
  3477. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3478. * CarbonLib: in CarbonLib 1.0 and later
  3479. * Mac OS X: in version 10.0 and later
  3480. }
  3481. function PBUnshareAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBUnshareAsync';
  3482. {
  3483. * PBGetUGEntrySync()
  3484. *
  3485. * Availability:
  3486. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3487. * CarbonLib: in CarbonLib 1.0 and later
  3488. * Mac OS X: in version 10.0 and later
  3489. }
  3490. function PBGetUGEntrySync(paramBlock: HParmBlkPtr): OSErr; external name '_PBGetUGEntrySync';
  3491. {
  3492. * PBGetUGEntryAsync()
  3493. *
  3494. * Availability:
  3495. * Non-Carbon CFM: in InterfaceLib 7.1 and later
  3496. * CarbonLib: in CarbonLib 1.0 and later
  3497. * Mac OS X: in version 10.0 and later
  3498. }
  3499. function PBGetUGEntryAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBGetUGEntryAsync';
  3500. {$ifc TARGET_CPU_68K}
  3501. {
  3502. PBGetAltAccess and PBSetAltAccess are obsolete and will not be supported
  3503. on PowerPC. Equivalent functionality is provided by the routines
  3504. PBGetForeignPrivs and PBSetForeignPrivs.
  3505. }
  3506. {$ifc CALL_NOT_IN_CARBON}
  3507. {
  3508. * PBGetAltAccessSync()
  3509. *
  3510. * Availability:
  3511. * Non-Carbon CFM: not available
  3512. * CarbonLib: not available
  3513. * Mac OS X: not available
  3514. }
  3515. function PBGetAltAccessSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBGetAltAccessSync';
  3516. {
  3517. * PBGetAltAccessAsync()
  3518. *
  3519. * Availability:
  3520. * Non-Carbon CFM: not available
  3521. * CarbonLib: not available
  3522. * Mac OS X: not available
  3523. }
  3524. function PBGetAltAccessAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBGetAltAccessAsync';
  3525. {
  3526. * PBSetAltAccessSync()
  3527. *
  3528. * Availability:
  3529. * Non-Carbon CFM: not available
  3530. * CarbonLib: not available
  3531. * Mac OS X: not available
  3532. }
  3533. function PBSetAltAccessSync(paramBlock: HParmBlkPtr): OSErr; external name '_PBSetAltAccessSync';
  3534. {
  3535. * PBSetAltAccessAsync()
  3536. *
  3537. * Availability:
  3538. * Non-Carbon CFM: not available
  3539. * CarbonLib: not available
  3540. * Mac OS X: not available
  3541. }
  3542. function PBSetAltAccessAsync(paramBlock: HParmBlkPtr): OSErr; external name '_PBSetAltAccessAsync';
  3543. {$endc} {CALL_NOT_IN_CARBON}
  3544. {$ifc CALL_NOT_IN_CARBON}
  3545. {
  3546. * PBGetAltAccess()
  3547. *
  3548. * Availability:
  3549. * Non-Carbon CFM: not available
  3550. * CarbonLib: not available
  3551. * Mac OS X: not available
  3552. }
  3553. function PBGetAltAccess(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBGetAltAccess';
  3554. {
  3555. * PBSetAltAccess()
  3556. *
  3557. * Availability:
  3558. * Non-Carbon CFM: not available
  3559. * CarbonLib: not available
  3560. * Mac OS X: not available
  3561. }
  3562. function PBSetAltAccess(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBSetAltAccess';
  3563. {$endc} {CALL_NOT_IN_CARBON}
  3564. {$endc} {TARGET_CPU_68K}
  3565. {
  3566. The PBxxx() routines are obsolete.
  3567. Use the PBxxxSync() or PBxxxAsync() version instead.
  3568. }
  3569. {$ifc OLDROUTINENAMES}
  3570. {$ifc CALL_NOT_IN_CARBON}
  3571. {
  3572. * PBGetVInfo()
  3573. *
  3574. * Availability:
  3575. * Non-Carbon CFM: not available
  3576. * CarbonLib: not available
  3577. * Mac OS X: not available
  3578. }
  3579. function PBGetVInfo(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBGetVInfo';
  3580. {
  3581. * PBXGetVolInfo()
  3582. *
  3583. * Availability:
  3584. * Non-Carbon CFM: not available
  3585. * CarbonLib: not available
  3586. * Mac OS X: not available
  3587. }
  3588. function PBXGetVolInfo(paramBlock: XVolumeParamPtr; async: boolean): OSErr; external name '_PBXGetVolInfo';
  3589. {
  3590. * PBGetVol()
  3591. *
  3592. * Availability:
  3593. * Non-Carbon CFM: not available
  3594. * CarbonLib: not available
  3595. * Mac OS X: not available
  3596. }
  3597. function PBGetVol(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBGetVol';
  3598. {
  3599. * PBSetVol()
  3600. *
  3601. * Availability:
  3602. * Non-Carbon CFM: not available
  3603. * CarbonLib: not available
  3604. * Mac OS X: not available
  3605. }
  3606. function PBSetVol(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBSetVol';
  3607. {
  3608. * PBFlushVol()
  3609. *
  3610. * Availability:
  3611. * Non-Carbon CFM: not available
  3612. * CarbonLib: not available
  3613. * Mac OS X: not available
  3614. }
  3615. function PBFlushVol(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBFlushVol';
  3616. {
  3617. * PBCreate()
  3618. *
  3619. * Availability:
  3620. * Non-Carbon CFM: not available
  3621. * CarbonLib: not available
  3622. * Mac OS X: not available
  3623. }
  3624. function PBCreate(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBCreate';
  3625. {
  3626. * PBDelete()
  3627. *
  3628. * Availability:
  3629. * Non-Carbon CFM: not available
  3630. * CarbonLib: not available
  3631. * Mac OS X: not available
  3632. }
  3633. function PBDelete(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBDelete';
  3634. {
  3635. * PBOpenDF()
  3636. *
  3637. * Availability:
  3638. * Non-Carbon CFM: not available
  3639. * CarbonLib: not available
  3640. * Mac OS X: not available
  3641. }
  3642. function PBOpenDF(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBOpenDF';
  3643. {
  3644. * PBOpenRF()
  3645. *
  3646. * Availability:
  3647. * Non-Carbon CFM: not available
  3648. * CarbonLib: not available
  3649. * Mac OS X: not available
  3650. }
  3651. function PBOpenRF(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBOpenRF';
  3652. {
  3653. * PBRename()
  3654. *
  3655. * Availability:
  3656. * Non-Carbon CFM: not available
  3657. * CarbonLib: not available
  3658. * Mac OS X: not available
  3659. }
  3660. function PBRename(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBRename';
  3661. {
  3662. * PBGetFInfo()
  3663. *
  3664. * Availability:
  3665. * Non-Carbon CFM: not available
  3666. * CarbonLib: not available
  3667. * Mac OS X: not available
  3668. }
  3669. function PBGetFInfo(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBGetFInfo';
  3670. {
  3671. * PBSetFInfo()
  3672. *
  3673. * Availability:
  3674. * Non-Carbon CFM: not available
  3675. * CarbonLib: not available
  3676. * Mac OS X: not available
  3677. }
  3678. function PBSetFInfo(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBSetFInfo';
  3679. {
  3680. * PBSetFLock()
  3681. *
  3682. * Availability:
  3683. * Non-Carbon CFM: not available
  3684. * CarbonLib: not available
  3685. * Mac OS X: not available
  3686. }
  3687. function PBSetFLock(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBSetFLock';
  3688. {
  3689. * PBRstFLock()
  3690. *
  3691. * Availability:
  3692. * Non-Carbon CFM: not available
  3693. * CarbonLib: not available
  3694. * Mac OS X: not available
  3695. }
  3696. function PBRstFLock(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBRstFLock';
  3697. {
  3698. * PBSetFVers()
  3699. *
  3700. * Availability:
  3701. * Non-Carbon CFM: not available
  3702. * CarbonLib: not available
  3703. * Mac OS X: not available
  3704. }
  3705. function PBSetFVers(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBSetFVers';
  3706. {
  3707. * PBAllocate()
  3708. *
  3709. * Availability:
  3710. * Non-Carbon CFM: not available
  3711. * CarbonLib: not available
  3712. * Mac OS X: not available
  3713. }
  3714. function PBAllocate(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBAllocate';
  3715. {
  3716. * PBGetEOF()
  3717. *
  3718. * Availability:
  3719. * Non-Carbon CFM: not available
  3720. * CarbonLib: not available
  3721. * Mac OS X: not available
  3722. }
  3723. function PBGetEOF(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBGetEOF';
  3724. {
  3725. * PBSetEOF()
  3726. *
  3727. * Availability:
  3728. * Non-Carbon CFM: not available
  3729. * CarbonLib: not available
  3730. * Mac OS X: not available
  3731. }
  3732. function PBSetEOF(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBSetEOF';
  3733. {
  3734. * PBGetFPos()
  3735. *
  3736. * Availability:
  3737. * Non-Carbon CFM: not available
  3738. * CarbonLib: not available
  3739. * Mac OS X: not available
  3740. }
  3741. function PBGetFPos(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBGetFPos';
  3742. {
  3743. * PBSetFPos()
  3744. *
  3745. * Availability:
  3746. * Non-Carbon CFM: not available
  3747. * CarbonLib: not available
  3748. * Mac OS X: not available
  3749. }
  3750. function PBSetFPos(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBSetFPos';
  3751. {
  3752. * PBFlushFile()
  3753. *
  3754. * Availability:
  3755. * Non-Carbon CFM: not available
  3756. * CarbonLib: not available
  3757. * Mac OS X: not available
  3758. }
  3759. function PBFlushFile(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBFlushFile';
  3760. {
  3761. * PBCatSearch()
  3762. *
  3763. * Availability:
  3764. * Non-Carbon CFM: not available
  3765. * CarbonLib: not available
  3766. * Mac OS X: not available
  3767. }
  3768. function PBCatSearch(paramBlock: CSParamPtr; async: boolean): OSErr; external name '_PBCatSearch';
  3769. {
  3770. * PBOpenWD()
  3771. *
  3772. * Availability:
  3773. * Non-Carbon CFM: not available
  3774. * CarbonLib: not available
  3775. * Mac OS X: not available
  3776. }
  3777. function PBOpenWD(paramBlock: WDPBPtr; async: boolean): OSErr; external name '_PBOpenWD';
  3778. {
  3779. * PBCloseWD()
  3780. *
  3781. * Availability:
  3782. * Non-Carbon CFM: not available
  3783. * CarbonLib: not available
  3784. * Mac OS X: not available
  3785. }
  3786. function PBCloseWD(paramBlock: WDPBPtr; async: boolean): OSErr; external name '_PBCloseWD';
  3787. {
  3788. * PBHSetVol()
  3789. *
  3790. * Availability:
  3791. * Non-Carbon CFM: not available
  3792. * CarbonLib: not available
  3793. * Mac OS X: not available
  3794. }
  3795. function PBHSetVol(paramBlock: WDPBPtr; async: boolean): OSErr; external name '_PBHSetVol';
  3796. {
  3797. * PBHGetVol()
  3798. *
  3799. * Availability:
  3800. * Non-Carbon CFM: not available
  3801. * CarbonLib: not available
  3802. * Mac OS X: not available
  3803. }
  3804. function PBHGetVol(paramBlock: WDPBPtr; async: boolean): OSErr; external name '_PBHGetVol';
  3805. {
  3806. * PBCatMove()
  3807. *
  3808. * Availability:
  3809. * Non-Carbon CFM: not available
  3810. * CarbonLib: not available
  3811. * Mac OS X: not available
  3812. }
  3813. function PBCatMove(paramBlock: CMovePBPtr; async: boolean): OSErr; external name '_PBCatMove';
  3814. {
  3815. * PBDirCreate()
  3816. *
  3817. * Availability:
  3818. * Non-Carbon CFM: not available
  3819. * CarbonLib: not available
  3820. * Mac OS X: not available
  3821. }
  3822. function PBDirCreate(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBDirCreate';
  3823. {
  3824. * PBGetWDInfo()
  3825. *
  3826. * Availability:
  3827. * Non-Carbon CFM: not available
  3828. * CarbonLib: not available
  3829. * Mac OS X: not available
  3830. }
  3831. function PBGetWDInfo(paramBlock: WDPBPtr; async: boolean): OSErr; external name '_PBGetWDInfo';
  3832. {
  3833. * PBGetFCBInfo()
  3834. *
  3835. * Availability:
  3836. * Non-Carbon CFM: not available
  3837. * CarbonLib: not available
  3838. * Mac OS X: not available
  3839. }
  3840. function PBGetFCBInfo(paramBlock: FCBPBPtr; async: boolean): OSErr; external name '_PBGetFCBInfo';
  3841. {
  3842. * PBGetCatInfo()
  3843. *
  3844. * Availability:
  3845. * Non-Carbon CFM: not available
  3846. * CarbonLib: not available
  3847. * Mac OS X: not available
  3848. }
  3849. function PBGetCatInfo(paramBlock: CInfoPBPtr; async: boolean): OSErr; external name '_PBGetCatInfo';
  3850. {
  3851. * PBSetCatInfo()
  3852. *
  3853. * Availability:
  3854. * Non-Carbon CFM: not available
  3855. * CarbonLib: not available
  3856. * Mac OS X: not available
  3857. }
  3858. function PBSetCatInfo(paramBlock: CInfoPBPtr; async: boolean): OSErr; external name '_PBSetCatInfo';
  3859. {
  3860. * PBAllocContig()
  3861. *
  3862. * Availability:
  3863. * Non-Carbon CFM: not available
  3864. * CarbonLib: not available
  3865. * Mac OS X: not available
  3866. }
  3867. function PBAllocContig(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBAllocContig';
  3868. {
  3869. * PBLockRange()
  3870. *
  3871. * Availability:
  3872. * Non-Carbon CFM: not available
  3873. * CarbonLib: not available
  3874. * Mac OS X: not available
  3875. }
  3876. function PBLockRange(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBLockRange';
  3877. {
  3878. * PBUnlockRange()
  3879. *
  3880. * Availability:
  3881. * Non-Carbon CFM: not available
  3882. * CarbonLib: not available
  3883. * Mac OS X: not available
  3884. }
  3885. function PBUnlockRange(paramBlock: ParmBlkPtr; async: boolean): OSErr; external name '_PBUnlockRange';
  3886. {
  3887. * PBSetVInfo()
  3888. *
  3889. * Availability:
  3890. * Non-Carbon CFM: not available
  3891. * CarbonLib: not available
  3892. * Mac OS X: not available
  3893. }
  3894. function PBSetVInfo(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBSetVInfo';
  3895. {
  3896. * PBHGetVInfo()
  3897. *
  3898. * Availability:
  3899. * Non-Carbon CFM: not available
  3900. * CarbonLib: not available
  3901. * Mac OS X: not available
  3902. }
  3903. function PBHGetVInfo(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHGetVInfo';
  3904. {
  3905. * PBHOpen()
  3906. *
  3907. * Availability:
  3908. * Non-Carbon CFM: not available
  3909. * CarbonLib: not available
  3910. * Mac OS X: not available
  3911. }
  3912. function PBHOpen(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHOpen';
  3913. {
  3914. * PBHOpenRF()
  3915. *
  3916. * Availability:
  3917. * Non-Carbon CFM: not available
  3918. * CarbonLib: not available
  3919. * Mac OS X: not available
  3920. }
  3921. function PBHOpenRF(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHOpenRF';
  3922. {
  3923. * PBHOpenDF()
  3924. *
  3925. * Availability:
  3926. * Non-Carbon CFM: not available
  3927. * CarbonLib: not available
  3928. * Mac OS X: not available
  3929. }
  3930. function PBHOpenDF(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHOpenDF';
  3931. {
  3932. * PBHCreate()
  3933. *
  3934. * Availability:
  3935. * Non-Carbon CFM: not available
  3936. * CarbonLib: not available
  3937. * Mac OS X: not available
  3938. }
  3939. function PBHCreate(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHCreate';
  3940. {
  3941. * PBHDelete()
  3942. *
  3943. * Availability:
  3944. * Non-Carbon CFM: not available
  3945. * CarbonLib: not available
  3946. * Mac OS X: not available
  3947. }
  3948. function PBHDelete(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHDelete';
  3949. {
  3950. * PBHRename()
  3951. *
  3952. * Availability:
  3953. * Non-Carbon CFM: not available
  3954. * CarbonLib: not available
  3955. * Mac OS X: not available
  3956. }
  3957. function PBHRename(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHRename';
  3958. {
  3959. * PBHRstFLock()
  3960. *
  3961. * Availability:
  3962. * Non-Carbon CFM: not available
  3963. * CarbonLib: not available
  3964. * Mac OS X: not available
  3965. }
  3966. function PBHRstFLock(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHRstFLock';
  3967. {
  3968. * PBHSetFLock()
  3969. *
  3970. * Availability:
  3971. * Non-Carbon CFM: not available
  3972. * CarbonLib: not available
  3973. * Mac OS X: not available
  3974. }
  3975. function PBHSetFLock(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHSetFLock';
  3976. {
  3977. * PBHGetFInfo()
  3978. *
  3979. * Availability:
  3980. * Non-Carbon CFM: not available
  3981. * CarbonLib: not available
  3982. * Mac OS X: not available
  3983. }
  3984. function PBHGetFInfo(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHGetFInfo';
  3985. {
  3986. * PBHSetFInfo()
  3987. *
  3988. * Availability:
  3989. * Non-Carbon CFM: not available
  3990. * CarbonLib: not available
  3991. * Mac OS X: not available
  3992. }
  3993. function PBHSetFInfo(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHSetFInfo';
  3994. {
  3995. * PBMakeFSSpec()
  3996. *
  3997. * Availability:
  3998. * Non-Carbon CFM: not available
  3999. * CarbonLib: not available
  4000. * Mac OS X: not available
  4001. }
  4002. function PBMakeFSSpec(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBMakeFSSpec';
  4003. {
  4004. * PBHGetVolParms()
  4005. *
  4006. * Availability:
  4007. * Non-Carbon CFM: not available
  4008. * CarbonLib: not available
  4009. * Mac OS X: not available
  4010. }
  4011. function PBHGetVolParms(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHGetVolParms';
  4012. {
  4013. * PBHGetLogInInfo()
  4014. *
  4015. * Availability:
  4016. * Non-Carbon CFM: not available
  4017. * CarbonLib: not available
  4018. * Mac OS X: not available
  4019. }
  4020. function PBHGetLogInInfo(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHGetLogInInfo';
  4021. {
  4022. * PBHGetDirAccess()
  4023. *
  4024. * Availability:
  4025. * Non-Carbon CFM: not available
  4026. * CarbonLib: not available
  4027. * Mac OS X: not available
  4028. }
  4029. function PBHGetDirAccess(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHGetDirAccess';
  4030. {
  4031. * PBHSetDirAccess()
  4032. *
  4033. * Availability:
  4034. * Non-Carbon CFM: not available
  4035. * CarbonLib: not available
  4036. * Mac OS X: not available
  4037. }
  4038. function PBHSetDirAccess(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHSetDirAccess';
  4039. {
  4040. * PBHMapID()
  4041. *
  4042. * Availability:
  4043. * Non-Carbon CFM: not available
  4044. * CarbonLib: not available
  4045. * Mac OS X: not available
  4046. }
  4047. function PBHMapID(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHMapID';
  4048. {
  4049. * PBHMapName()
  4050. *
  4051. * Availability:
  4052. * Non-Carbon CFM: not available
  4053. * CarbonLib: not available
  4054. * Mac OS X: not available
  4055. }
  4056. function PBHMapName(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHMapName';
  4057. {
  4058. * PBHCopyFile()
  4059. *
  4060. * Availability:
  4061. * Non-Carbon CFM: not available
  4062. * CarbonLib: not available
  4063. * Mac OS X: not available
  4064. }
  4065. function PBHCopyFile(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHCopyFile';
  4066. {
  4067. * PBHMoveRename()
  4068. *
  4069. * Availability:
  4070. * Non-Carbon CFM: not available
  4071. * CarbonLib: not available
  4072. * Mac OS X: not available
  4073. }
  4074. function PBHMoveRename(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHMoveRename';
  4075. {
  4076. * PBHOpenDeny()
  4077. *
  4078. * Availability:
  4079. * Non-Carbon CFM: not available
  4080. * CarbonLib: not available
  4081. * Mac OS X: not available
  4082. }
  4083. function PBHOpenDeny(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHOpenDeny';
  4084. {
  4085. * PBHOpenRFDeny()
  4086. *
  4087. * Availability:
  4088. * Non-Carbon CFM: not available
  4089. * CarbonLib: not available
  4090. * Mac OS X: not available
  4091. }
  4092. function PBHOpenRFDeny(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBHOpenRFDeny';
  4093. {
  4094. * PBExchangeFiles()
  4095. *
  4096. * Availability:
  4097. * Non-Carbon CFM: not available
  4098. * CarbonLib: not available
  4099. * Mac OS X: not available
  4100. }
  4101. function PBExchangeFiles(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBExchangeFiles';
  4102. {
  4103. * PBCreateFileIDRef()
  4104. *
  4105. * Availability:
  4106. * Non-Carbon CFM: not available
  4107. * CarbonLib: not available
  4108. * Mac OS X: not available
  4109. }
  4110. function PBCreateFileIDRef(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBCreateFileIDRef';
  4111. {
  4112. * PBResolveFileIDRef()
  4113. *
  4114. * Availability:
  4115. * Non-Carbon CFM: not available
  4116. * CarbonLib: not available
  4117. * Mac OS X: not available
  4118. }
  4119. function PBResolveFileIDRef(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBResolveFileIDRef';
  4120. {
  4121. * PBDeleteFileIDRef()
  4122. *
  4123. * Availability:
  4124. * Non-Carbon CFM: not available
  4125. * CarbonLib: not available
  4126. * Mac OS X: not available
  4127. }
  4128. function PBDeleteFileIDRef(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBDeleteFileIDRef';
  4129. {
  4130. * PBGetForeignPrivs()
  4131. *
  4132. * Availability:
  4133. * Non-Carbon CFM: not available
  4134. * CarbonLib: not available
  4135. * Mac OS X: not available
  4136. }
  4137. function PBGetForeignPrivs(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBGetForeignPrivs';
  4138. {
  4139. * PBSetForeignPrivs()
  4140. *
  4141. * Availability:
  4142. * Non-Carbon CFM: not available
  4143. * CarbonLib: not available
  4144. * Mac OS X: not available
  4145. }
  4146. function PBSetForeignPrivs(paramBlock: HParmBlkPtr; async: boolean): OSErr; external name '_PBSetForeignPrivs';
  4147. {
  4148. * PBDTAddIcon()
  4149. *
  4150. * Availability:
  4151. * Non-Carbon CFM: not available
  4152. * CarbonLib: not available
  4153. * Mac OS X: not available
  4154. }
  4155. function PBDTAddIcon(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTAddIcon';
  4156. {
  4157. * PBDTGetIcon()
  4158. *
  4159. * Availability:
  4160. * Non-Carbon CFM: not available
  4161. * CarbonLib: not available
  4162. * Mac OS X: not available
  4163. }
  4164. function PBDTGetIcon(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTGetIcon';
  4165. {
  4166. * PBDTGetIconInfo()
  4167. *
  4168. * Availability:
  4169. * Non-Carbon CFM: not available
  4170. * CarbonLib: not available
  4171. * Mac OS X: not available
  4172. }
  4173. function PBDTGetIconInfo(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTGetIconInfo';
  4174. {
  4175. * PBDTAddAPPL()
  4176. *
  4177. * Availability:
  4178. * Non-Carbon CFM: not available
  4179. * CarbonLib: not available
  4180. * Mac OS X: not available
  4181. }
  4182. function PBDTAddAPPL(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTAddAPPL';
  4183. {
  4184. * PBDTRemoveAPPL()
  4185. *
  4186. * Availability:
  4187. * Non-Carbon CFM: not available
  4188. * CarbonLib: not available
  4189. * Mac OS X: not available
  4190. }
  4191. function PBDTRemoveAPPL(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTRemoveAPPL';
  4192. {
  4193. * PBDTGetAPPL()
  4194. *
  4195. * Availability:
  4196. * Non-Carbon CFM: not available
  4197. * CarbonLib: not available
  4198. * Mac OS X: not available
  4199. }
  4200. function PBDTGetAPPL(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTGetAPPL';
  4201. {
  4202. * PBDTSetComment()
  4203. *
  4204. * Availability:
  4205. * Non-Carbon CFM: not available
  4206. * CarbonLib: not available
  4207. * Mac OS X: not available
  4208. }
  4209. function PBDTSetComment(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTSetComment';
  4210. {
  4211. * PBDTRemoveComment()
  4212. *
  4213. * Availability:
  4214. * Non-Carbon CFM: not available
  4215. * CarbonLib: not available
  4216. * Mac OS X: not available
  4217. }
  4218. function PBDTRemoveComment(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTRemoveComment';
  4219. {
  4220. * PBDTGetComment()
  4221. *
  4222. * Availability:
  4223. * Non-Carbon CFM: not available
  4224. * CarbonLib: not available
  4225. * Mac OS X: not available
  4226. }
  4227. function PBDTGetComment(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTGetComment';
  4228. {
  4229. * PBDTFlush()
  4230. *
  4231. * Availability:
  4232. * Non-Carbon CFM: not available
  4233. * CarbonLib: not available
  4234. * Mac OS X: not available
  4235. }
  4236. function PBDTFlush(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTFlush';
  4237. {
  4238. * PBDTReset()
  4239. *
  4240. * Availability:
  4241. * Non-Carbon CFM: not available
  4242. * CarbonLib: not available
  4243. * Mac OS X: not available
  4244. }
  4245. function PBDTReset(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTReset';
  4246. {
  4247. * PBDTGetInfo()
  4248. *
  4249. * Availability:
  4250. * Non-Carbon CFM: not available
  4251. * CarbonLib: not available
  4252. * Mac OS X: not available
  4253. }
  4254. function PBDTGetInfo(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTGetInfo';
  4255. {
  4256. * PBDTDelete()
  4257. *
  4258. * Availability:
  4259. * Non-Carbon CFM: not available
  4260. * CarbonLib: not available
  4261. * Mac OS X: not available
  4262. }
  4263. function PBDTDelete(paramBlock: DTPBPtr; async: boolean): OSErr; external name '_PBDTDelete';
  4264. {$endc} {CALL_NOT_IN_CARBON}
  4265. {$endc} {OLDROUTINENAMES}
  4266. type
  4267. FSVolumeRefNum = SInt16;
  4268. FSVolumeRefNumPtr = ^FSVolumeRefNum; { when a VAR xx: FSVolumeRefNum parameter can be nil, it is changed to xx: FSVolumeRefNumPtr }
  4269. const
  4270. kFSInvalidVolumeRefNum = 0;
  4271. type
  4272. FSRefPtr = ^FSRef;
  4273. FSRef = record
  4274. hidden: packed array [0..79] of UInt8; { private to File Manager; ¥¥ need symbolic constant }
  4275. end;
  4276. {
  4277. * FSPermissionInfo
  4278. *
  4279. * Discussion:
  4280. * This structure is used when kFSCatInfoPermissions is passed to
  4281. * the HFSPlus API. On return from GetCatalogInfo and
  4282. * GetCatalogInfoBulk, the userID, groupID, and mode fields are
  4283. * returned. When passed to SetCatalogInfo, only the mode field is
  4284. * set. See chmod(2) for details about the mode field. This is
  4285. * supported on Mac OS X only.
  4286. }
  4287. FSPermissionInfoPtr = ^FSPermissionInfo;
  4288. FSPermissionInfo = record
  4289. userID: UInt32;
  4290. groupID: UInt32;
  4291. reserved1: SInt8;
  4292. userAccess: SInt8;
  4293. mode: UInt16;
  4294. reserved2: UInt32;
  4295. end;
  4296. { CatalogInfoBitmap describes which fields of the CatalogInfo you wish to get or set. }
  4297. FSCatalogInfoBitmap = UInt32;
  4298. const
  4299. kFSCatInfoNone = $00000000;
  4300. kFSCatInfoTextEncoding = $00000001;
  4301. kFSCatInfoNodeFlags = $00000002; { Locked (bit 0) and directory (bit 4) only }
  4302. kFSCatInfoVolume = $00000004;
  4303. kFSCatInfoParentDirID = $00000008;
  4304. kFSCatInfoNodeID = $00000010;
  4305. kFSCatInfoCreateDate = $00000020;
  4306. kFSCatInfoContentMod = $00000040;
  4307. kFSCatInfoAttrMod = $00000080;
  4308. kFSCatInfoAccessDate = $00000100;
  4309. kFSCatInfoBackupDate = $00000200;
  4310. kFSCatInfoPermissions = $00000400; { Should this be finer granularity? }
  4311. kFSCatInfoFinderInfo = $00000800;
  4312. kFSCatInfoFinderXInfo = $00001000;
  4313. kFSCatInfoValence = $00002000; { Folders only, zero for files }
  4314. kFSCatInfoDataSizes = $00004000; { Data fork logical and physical size }
  4315. kFSCatInfoRsrcSizes = $00008000; { Resource fork logical and physical size }
  4316. kFSCatInfoSharingFlags = $00010000; { sharingFlags: kioFlAttribMountedBit, kioFlAttribSharePointBit }
  4317. kFSCatInfoUserPrivs = $00020000; { userPrivileges }
  4318. kFSCatInfoUserAccess = $00080000; { (OS X only) }
  4319. kFSCatInfoAllDates = $000003E0;
  4320. kFSCatInfoGettableInfo = $0003FFFF;
  4321. kFSCatInfoSettableInfo = $00001FE3; { flags, dates, permissions, Finder info, text encoding }
  4322. kFSCatInfoReserved = $FFFC0000; { bits that are currently reserved }
  4323. { Constants for nodeFlags field of FSCatalogInfo }
  4324. kFSNodeLockedBit = 0; { Set if file or directory is locked }
  4325. kFSNodeLockedMask = $0001;
  4326. kFSNodeResOpenBit = 2; { Set if the resource fork is open }
  4327. kFSNodeResOpenMask = $0004;
  4328. kFSNodeDataOpenBit = 3; { Set if the data fork is open }
  4329. kFSNodeDataOpenMask = $0008;
  4330. kFSNodeIsDirectoryBit = 4; { Set if the object is a directory }
  4331. kFSNodeIsDirectoryMask = $0010;
  4332. kFSNodeCopyProtectBit = 6;
  4333. kFSNodeCopyProtectMask = $0040;
  4334. kFSNodeForkOpenBit = 7; { Set if the file or directory has any open fork }
  4335. kFSNodeForkOpenMask = $0080;
  4336. { Constants for sharingFlags field of FSCatalogInfo }
  4337. kFSNodeInSharedBit = 2; { Set if a directory is within a share point }
  4338. kFSNodeInSharedMask = $0004;
  4339. kFSNodeIsMountedBit = 3; { Set if a directory is a share point currently mounted by some user }
  4340. kFSNodeIsMountedMask = $0008;
  4341. kFSNodeIsSharePointBit = 5; { Set if a directory is a share point (exported volume) }
  4342. kFSNodeIsSharePointMask = $0020;
  4343. type
  4344. FSCatalogInfoPtr = ^FSCatalogInfo;
  4345. FSCatalogInfo = record
  4346. nodeFlags: UInt16; { node flags }
  4347. volume: FSVolumeRefNum; { object's volume ref }
  4348. parentDirID: UInt32; { parent directory's ID }
  4349. nodeID: UInt32; { file/directory ID }
  4350. sharingFlags: SInt8; { kioFlAttribMountedBit and kioFlAttribSharePointBit }
  4351. userPrivileges: SInt8; { user's effective AFP privileges (same as ioACUser) }
  4352. reserved1: SInt8;
  4353. reserved2: SInt8;
  4354. createDate: UTCDateTime; { date and time of creation }
  4355. contentModDate: UTCDateTime; { date and time of last fork modification }
  4356. attributeModDate: UTCDateTime; { date and time of last attribute modification }
  4357. accessDate: UTCDateTime; { date and time of last access (for Mac OS X) }
  4358. backupDate: UTCDateTime; { date and time of last backup }
  4359. permissions: array [0..3] of UInt32; { permissions (for Mac OS X) }
  4360. finderInfo: packed array [0..15] of UInt8; { Finder information part 1 }
  4361. extFinderInfo: packed array [0..15] of UInt8; { Finder information part 2 }
  4362. dataLogicalSize: UInt64; { files only }
  4363. dataPhysicalSize: UInt64; { files only }
  4364. rsrcLogicalSize: UInt64; { files only }
  4365. rsrcPhysicalSize: UInt64; { files only }
  4366. valence: UInt32; { folders only }
  4367. textEncodingHint: TextEncoding;
  4368. end;
  4369. FSRefParamPtr = ^FSRefParam;
  4370. FSRefParam = record
  4371. qLink: QElemPtr; { queue link in header }
  4372. qType: SInt16; { type byte for safety check }
  4373. ioTrap: SInt16; { FS: the Trap }
  4374. ioCmdAddr: Ptr; { FS: address to dispatch to }
  4375. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  4376. ioResult: OSErr; { result code }
  4377. ioNamePtr: ConstStringPtr; { ptr to Vol:FileName string }
  4378. ioVRefNum: SInt16; { volume refnum (DrvNum for Eject and MountVol) }
  4379. reserved1: SInt16; { was ioRefNum }
  4380. reserved2: SInt8; { was ioVersNum }
  4381. reserved3: SInt8; { was ioPermssn }
  4382. ref: FSRefPtr; { Input ref; the target of the call }
  4383. whichInfo: FSCatalogInfoBitmap;
  4384. catInfo: FSCatalogInfoPtr;
  4385. nameLength: UniCharCount; { input name length for create/rename }
  4386. name: UniCharPtr; { input name for create/rename }
  4387. ioDirID: UInt32;
  4388. spec: FSSpecPtr;
  4389. parentRef: FSRefPtr; { ref of directory to move another ref to }
  4390. newRef: FSRefPtr; { Output ref }
  4391. textEncodingHint: TextEncoding; { for Rename, MakeFSRefUnicode }
  4392. outName: HFSUniStr255Ptr; { Output name for GetCatalogInfo }
  4393. end;
  4394. FSIterator = ^SInt32; { an opaque 32-bit type }
  4395. FSIteratorPtr = ^FSIterator; { when a var xx:FSIterator parameter can be nil, it is changed to xx: FSIteratorPtr }
  4396. const
  4397. kFSIterateFlat = 0; { Immediate children of container only }
  4398. kFSIterateSubtree = 1; { Entire subtree rooted at container }
  4399. kFSIterateDelete = 2;
  4400. kFSIterateReserved = $FFFFFFFC;
  4401. type
  4402. FSIteratorFlags = OptionBits;
  4403. const
  4404. { CatalogSearch constants }
  4405. fsSBNodeID = $00008000; { search by range of nodeID }
  4406. fsSBAttributeModDate = $00010000; { search by range of attributeModDate }
  4407. fsSBAccessDate = $00020000; { search by range of accessDate }
  4408. fsSBPermissions = $00040000; { search by value/mask of permissions }
  4409. fsSBNodeIDBit = 15;
  4410. fsSBAttributeModDateBit = 16;
  4411. fsSBAccessDateBit = 17;
  4412. fsSBPermissionsBit = 18;
  4413. type
  4414. FSSearchParamsPtr = ^FSSearchParams;
  4415. FSSearchParams = record
  4416. searchTime: Duration; { a Time Manager duration }
  4417. searchBits: OptionBits; { which fields to search on }
  4418. searchNameLength: UniCharCount;
  4419. searchName: UniCharPtr;
  4420. searchInfo1: FSCatalogInfoPtr; { values and lower bounds }
  4421. searchInfo2: FSCatalogInfoPtr; { masks and upper bounds }
  4422. end;
  4423. FSCatalogBulkParamPtr = ^FSCatalogBulkParam;
  4424. FSCatalogBulkParam = record
  4425. qLink: QElemPtr; { queue link in header }
  4426. qType: SInt16; { type byte for safety check }
  4427. ioTrap: SInt16; { FS: the Trap }
  4428. ioCmdAddr: Ptr; { FS: address to dispatch to }
  4429. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  4430. ioResult: OSErr; { result code }
  4431. containerChanged: boolean; { true if container changed since last iteration }
  4432. reserved: SInt8; { make following fields 4-byte aligned }
  4433. iteratorFlags: FSIteratorFlags;
  4434. iterator: FSIterator;
  4435. container: FSRefPtr; { directory/volume to iterate }
  4436. maximumItems: ItemCount;
  4437. actualItems: ItemCount;
  4438. whichInfo: FSCatalogInfoBitmap;
  4439. catalogInfo: FSCatalogInfoPtr; { returns an array }
  4440. refs: FSRefPtr; { returns an array }
  4441. specs: FSSpecPtr; { returns an array }
  4442. names: HFSUniStr255Ptr; { returns an array }
  4443. searchParams: FSSearchParamsPtr;
  4444. end;
  4445. FSAllocationFlags = UInt16;
  4446. const
  4447. kFSAllocDefaultFlags = $0000; { as much as possible, not contiguous }
  4448. kFSAllocAllOrNothingMask = $0001; { allocate all of the space, or nothing }
  4449. kFSAllocContiguousMask = $0002; { new space must be one contiguous piece }
  4450. kFSAllocNoRoundUpMask = $0004; { don't round up allocation to clump size }
  4451. kFSAllocReservedMask = $FFF8; { these bits are reserved and must not be set }
  4452. type
  4453. FSForkIOParamPtr = ^FSForkIOParam;
  4454. FSForkIOParam = record
  4455. qLink: QElemPtr; { queue link in header }
  4456. qType: SInt16; { type byte for safety check }
  4457. ioTrap: SInt16; { FS: the Trap }
  4458. ioCmdAddr: Ptr; { FS: address to dispatch to }
  4459. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  4460. ioResult: OSErr; { result code }
  4461. reserved1: Ptr; { was ioNamePtr }
  4462. reserved2: SInt16; { was ioVRefNum }
  4463. forkRefNum: SInt16; { same as ioRefNum }
  4464. reserved3: SInt8; { was ioVersNum }
  4465. permissions: SInt8; { desired access to the fork }
  4466. ref: FSRefPtr; { which object to open }
  4467. buffer: Ptr; { data buffer Ptr }
  4468. requestCount: UInt32; { requested byte count }
  4469. actualCount: UInt32; { actual byte count completed }
  4470. positionMode: UInt16; { initial file positioning }
  4471. positionOffset: SInt64; { file position offset }
  4472. allocationFlags: FSAllocationFlags;
  4473. allocationAmount: UInt64;
  4474. forkNameLength: UniCharCount; { input; length of fork name }
  4475. forkName: UniCharPtr; { input; name of fork }
  4476. forkIterator: CatPositionRec;
  4477. outForkName: HFSUniStr255Ptr; { output; name of fork }
  4478. end;
  4479. FSForkInfoPtr = ^FSForkInfo;
  4480. FSForkInfo = record
  4481. flags: SInt8; { copy of FCB flags }
  4482. permissions: SInt8;
  4483. volume: FSVolumeRefNum;
  4484. reserved2: UInt32;
  4485. nodeID: UInt32; { file or directory ID }
  4486. forkID: UInt32; { fork ID }
  4487. currentPosition: UInt64;
  4488. logicalEOF: UInt64;
  4489. physicalEOF: UInt64;
  4490. process: UInt64; { should be ProcessSerialNumber }
  4491. end;
  4492. FSForkCBInfoParamPtr = ^FSForkCBInfoParam;
  4493. FSForkCBInfoParam = record
  4494. qLink: QElemPtr; { queue link in header }
  4495. qType: SInt16; { type byte for safety check }
  4496. ioTrap: SInt16; { FS: the Trap }
  4497. ioCmdAddr: Ptr; { FS: address to dispatch to }
  4498. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  4499. ioResult: OSErr; { result code }
  4500. desiredRefNum: SInt16; { 0 to iterate, non-0 for specific refnum }
  4501. volumeRefNum: SInt16; { volume to match, or 0 for all volumes }
  4502. iterator: SInt16; { 0 to start iteration }
  4503. actualRefNum: SInt16; { actual refnum found }
  4504. ref: FSRefPtr;
  4505. forkInfo: FSForkInfoPtr;
  4506. forkName: HFSUniStr255Ptr;
  4507. end;
  4508. FSVolumeInfoBitmap = UInt32;
  4509. const
  4510. kFSVolInfoNone = $0000;
  4511. kFSVolInfoCreateDate = $0001;
  4512. kFSVolInfoModDate = $0002;
  4513. kFSVolInfoBackupDate = $0004;
  4514. kFSVolInfoCheckedDate = $0008;
  4515. kFSVolInfoFileCount = $0010;
  4516. kFSVolInfoDirCount = $0020;
  4517. kFSVolInfoSizes = $0040; { totalBytes and freeBytes }
  4518. kFSVolInfoBlocks = $0080; { blockSize, totalBlocks, freeBlocks }
  4519. kFSVolInfoNextAlloc = $0100;
  4520. kFSVolInfoRsrcClump = $0200;
  4521. kFSVolInfoDataClump = $0400;
  4522. kFSVolInfoNextID = $0800;
  4523. kFSVolInfoFinderInfo = $1000;
  4524. kFSVolInfoFlags = $2000;
  4525. kFSVolInfoFSInfo = $4000; { filesystemID, signature }
  4526. kFSVolInfoDriveInfo = $8000; { driveNumber, driverRefNum }
  4527. kFSVolInfoGettableInfo = $FFFF; { This seems like it is here just for completeness }
  4528. kFSVolInfoSettableInfo = $3004; { backup date, Finder info, flags }
  4529. { FSVolumeInfo.flags bits. These are the same as for ioVAtrb, but with nicer names. }
  4530. kFSVolFlagDefaultVolumeBit = 5; { Set if the volume is the default volume }
  4531. kFSVolFlagDefaultVolumeMask = $0020;
  4532. kFSVolFlagFilesOpenBit = 6; { Set if there are open files or iterators }
  4533. kFSVolFlagFilesOpenMask = $0040;
  4534. kFSVolFlagHardwareLockedBit = 7; { Set if volume is locked by a hardware setting }
  4535. kFSVolFlagHardwareLockedMask = $0080;
  4536. kFSVolFlagSoftwareLockedBit = 15; { Set if volume is locked by software }
  4537. kFSVolFlagSoftwareLockedMask = $8000;
  4538. type
  4539. FSVolumeInfoPtr = ^FSVolumeInfo;
  4540. FSVolumeInfo = record
  4541. { Dates -- zero means "never" or "unknown" }
  4542. createDate: UTCDateTime;
  4543. modifyDate: UTCDateTime;
  4544. backupDate: UTCDateTime;
  4545. checkedDate: UTCDateTime;
  4546. { File/Folder counts -- return zero if unknown }
  4547. fileCount: UInt32; { total files on volume }
  4548. folderCount: UInt32; { total folders on volume }
  4549. { Note: no root directory counts }
  4550. totalBytes: UInt64; { total number of bytes on volume }
  4551. freeBytes: UInt64; { number of free bytes on volume }
  4552. { HFS and HFS Plus specific. Set fields to zero if not appropriate }
  4553. blockSize: UInt32; { size (in bytes) of allocation blocks }
  4554. totalBlocks: UInt32; { number of allocation blocks in volume }
  4555. freeBlocks: UInt32; { number of unused allocation blocks }
  4556. nextAllocation: UInt32; { start of next allocation search }
  4557. rsrcClumpSize: UInt32; { default resource fork clump size }
  4558. dataClumpSize: UInt32; { default data fork clump size }
  4559. nextCatalogID: UInt32; { next unused catalog node ID ¥¥¥ OYG ¥¥¥ need to make HFSVolumes.h work Should be HFSCatalogNodeID }
  4560. finderInfo: packed array [0..31] of UInt8; { information used by Finder }
  4561. { Identifying information }
  4562. flags: UInt16; { ioVAtrb }
  4563. filesystemID: UInt16; { ioVFSID }
  4564. signature: UInt16; { ioVSigWord, unique within an FSID }
  4565. driveNumber: UInt16; { ioVDrvInfo }
  4566. driverRefNum: SInt16; { ioVDRefNum }
  4567. end;
  4568. FSVolumeInfoParamPtr = ^FSVolumeInfoParam;
  4569. FSVolumeInfoParam = record
  4570. qLink: QElemPtr; { queue link in header }
  4571. qType: SInt16; { type byte for safety check }
  4572. ioTrap: SInt16; { FS: the Trap }
  4573. ioCmdAddr: Ptr; { FS: address to dispatch to }
  4574. ioCompletion: IOCompletionUPP; { completion routine addr (0 for synch calls) }
  4575. ioResult: OSErr; { result code }
  4576. ioNamePtr: StringPtr; { unused }
  4577. ioVRefNum: FSVolumeRefNum; { volume refnum }
  4578. volumeIndex: UInt32; { index, or 0 to use ioVRefNum }
  4579. whichInfo: FSVolumeInfoBitmap; { which volumeInfo fields to get/set }
  4580. volumeInfo: FSVolumeInfoPtr; { information about the volume }
  4581. volumeName: HFSUniStr255Ptr; { output; pointer to volume name }
  4582. ref: FSRefPtr; { volume's FSRef }
  4583. end;
  4584. {
  4585. MakeFSRef
  4586. Create an FSRef for an existing object specified by a combination
  4587. of volume refnum, parent directory, and pathname.
  4588. -> ioCompletion A pointer to a completion routine
  4589. <- ioResult The result code of the function
  4590. -> ioNamePtr A pointer to a pathname
  4591. -> ioVRefNum A volume specification
  4592. -> ioDirID A directory ID
  4593. <- newRef A pointer to an FSRef
  4594. }
  4595. {
  4596. * FSpMakeFSRef()
  4597. *
  4598. * Availability:
  4599. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4600. * CarbonLib: in CarbonLib 1.0 and later
  4601. * Mac OS X: in version 10.0 and later
  4602. }
  4603. function FSpMakeFSRef(const (*var*) source: FSSpec; var newRef: FSRef): OSErr; external name '_FSpMakeFSRef';
  4604. {
  4605. * PBMakeFSRefSync()
  4606. *
  4607. * Availability:
  4608. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4609. * CarbonLib: in CarbonLib 1.0 and later
  4610. * Mac OS X: in version 10.0 and later
  4611. }
  4612. function PBMakeFSRefSync(var paramBlock: FSRefParam): OSErr; external name '_PBMakeFSRefSync';
  4613. {
  4614. * PBMakeFSRefAsync()
  4615. *
  4616. * Availability:
  4617. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4618. * CarbonLib: in CarbonLib 1.0 and later
  4619. * Mac OS X: in version 10.0 and later
  4620. }
  4621. procedure PBMakeFSRefAsync(var paramBlock: FSRefParam); external name '_PBMakeFSRefAsync';
  4622. {
  4623. MakeFSRefUnicode
  4624. Create an FSRef for an existing object specified by
  4625. Parent FSRef and Unicode name.
  4626. -> ioCompletion A pointer to a completion routine
  4627. <- ioResult The result code of the function
  4628. -> ref A pointer to the parent directory FSRef
  4629. -> name A pointer to Unicde name
  4630. -> nameLength The length of the Unicode Name
  4631. -> textEncodingHint A suggested text encoding to use for the name
  4632. <- newRef A pointer to an FSRef
  4633. }
  4634. {
  4635. * FSMakeFSRefUnicode()
  4636. *
  4637. * Availability:
  4638. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4639. * CarbonLib: in CarbonLib 1.0 and later
  4640. * Mac OS X: in version 10.0 and later
  4641. }
  4642. function FSMakeFSRefUnicode(const (*var*) parentRef: FSRef; nameLength: UniCharCount; name: UniCharPtr; textEncodingHint: TextEncoding; var newRef: FSRef): OSErr; external name '_FSMakeFSRefUnicode';
  4643. {
  4644. * PBMakeFSRefUnicodeSync()
  4645. *
  4646. * Availability:
  4647. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4648. * CarbonLib: in CarbonLib 1.0 and later
  4649. * Mac OS X: in version 10.0 and later
  4650. }
  4651. function PBMakeFSRefUnicodeSync(var paramBlock: FSRefParam): OSErr; external name '_PBMakeFSRefUnicodeSync';
  4652. {
  4653. * PBMakeFSRefUnicodeAsync()
  4654. *
  4655. * Availability:
  4656. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4657. * CarbonLib: in CarbonLib 1.0 and later
  4658. * Mac OS X: in version 10.0 and later
  4659. }
  4660. procedure PBMakeFSRefUnicodeAsync(var paramBlock: FSRefParam); external name '_PBMakeFSRefUnicodeAsync';
  4661. {
  4662. CompareFSRefs
  4663. Test whether two FSRefs refer to the same file or directory.
  4664. If they do, noErr is returned. Otherwise, an appropriate error
  4665. (such as errFSRefsDifferent) is returned.
  4666. -> ioCompletion A pointer to a completion routine
  4667. <- ioResult The result code of the function
  4668. -> ref A pointer to the first FSRef
  4669. -> parentRef A pointer to the second FSRef
  4670. }
  4671. {
  4672. * FSCompareFSRefs()
  4673. *
  4674. * Availability:
  4675. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4676. * CarbonLib: in CarbonLib 1.0 and later
  4677. * Mac OS X: in version 10.0 and later
  4678. }
  4679. function FSCompareFSRefs(const (*var*) ref1: FSRef; const (*var*) ref2: FSRef): OSErr; external name '_FSCompareFSRefs';
  4680. {
  4681. * PBCompareFSRefsSync()
  4682. *
  4683. * Availability:
  4684. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4685. * CarbonLib: in CarbonLib 1.0 and later
  4686. * Mac OS X: in version 10.0 and later
  4687. }
  4688. function PBCompareFSRefsSync(var paramBlock: FSRefParam): OSErr; external name '_PBCompareFSRefsSync';
  4689. {
  4690. * PBCompareFSRefsAsync()
  4691. *
  4692. * Availability:
  4693. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4694. * CarbonLib: in CarbonLib 1.0 and later
  4695. * Mac OS X: in version 10.0 and later
  4696. }
  4697. procedure PBCompareFSRefsAsync(var paramBlock: FSRefParam); external name '_PBCompareFSRefsAsync';
  4698. {
  4699. CreateFileUnicode
  4700. Creates a new file. The input filename is in Unicode.
  4701. You can optionally set catalog info for the file.
  4702. -> ioCompletion A pointer to a completion routine
  4703. <- ioResult The result code of the function
  4704. -> ref The directory where the file is to be created
  4705. -> whichInfo Which catalog info fields to set
  4706. -> catInfo The values for catalog info fields to set; may be NULL
  4707. -> nameLength Number of Unicode characters in the file's name
  4708. -> name A pointer to the Unicode name
  4709. <- spec A pointer to the FSSpec for the new directory; may be NULL
  4710. <- newRef A pointer to the FSRef for the new file; may be NULL
  4711. }
  4712. {
  4713. * FSCreateFileUnicode()
  4714. *
  4715. * Availability:
  4716. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4717. * CarbonLib: in CarbonLib 1.0 and later
  4718. * Mac OS X: in version 10.0 and later
  4719. }
  4720. function FSCreateFileUnicode(const (*var*) parentRef: FSRef; nameLength: UniCharCount; name: UniCharPtr; whichInfo: FSCatalogInfoBitmap; catalogInfo: {Const}FSCatalogInfoPtr; newRef: FSRefPtr; newSpec: FSSpecPtr): OSErr; external name '_FSCreateFileUnicode';
  4721. {
  4722. * PBCreateFileUnicodeSync()
  4723. *
  4724. * Availability:
  4725. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4726. * CarbonLib: in CarbonLib 1.0 and later
  4727. * Mac OS X: in version 10.0 and later
  4728. }
  4729. function PBCreateFileUnicodeSync(var paramBlock: FSRefParam): OSErr; external name '_PBCreateFileUnicodeSync';
  4730. {
  4731. * PBCreateFileUnicodeAsync()
  4732. *
  4733. * Availability:
  4734. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4735. * CarbonLib: in CarbonLib 1.0 and later
  4736. * Mac OS X: in version 10.0 and later
  4737. }
  4738. procedure PBCreateFileUnicodeAsync(var paramBlock: FSRefParam); external name '_PBCreateFileUnicodeAsync';
  4739. {
  4740. CreateDirectoryUnicode
  4741. Creates a new directory. The input directory name is in Unicode.
  4742. You can optionally set catalog info for the directory.
  4743. -> ioCompletion A pointer to a completion routine
  4744. <- ioResult The result code of the function
  4745. -> ref The parent directory where the directory is to be created
  4746. -> whichInfo Which catalog info fields to set
  4747. -> catInfo The values for catalog info fields to set; may be NULL
  4748. -> nameLength Number of Unicode characters in the directory's name
  4749. -> name A pointer to the Unicode name
  4750. <- ioDirID The DirID of the new directory
  4751. <- spec A pointer to the FSSpec for the new directory; may be NULL
  4752. <- newRef A pointer to the FSRef for the new directory; may be NULL
  4753. }
  4754. {
  4755. * FSCreateDirectoryUnicode()
  4756. *
  4757. * Availability:
  4758. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4759. * CarbonLib: in CarbonLib 1.0 and later
  4760. * Mac OS X: in version 10.0 and later
  4761. }
  4762. function FSCreateDirectoryUnicode(const (*var*) parentRef: FSRef; nameLength: UniCharCount; name: UniCharPtr; whichInfo: FSCatalogInfoBitmap; catalogInfo: {Const}FSCatalogInfoPtr; newRef: FSRefPtr; newSpec: FSSpecPtr; newDirID: UInt32Ptr): OSErr; external name '_FSCreateDirectoryUnicode';
  4763. {
  4764. * PBCreateDirectoryUnicodeSync()
  4765. *
  4766. * Availability:
  4767. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4768. * CarbonLib: in CarbonLib 1.0 and later
  4769. * Mac OS X: in version 10.0 and later
  4770. }
  4771. function PBCreateDirectoryUnicodeSync(var paramBlock: FSRefParam): OSErr; external name '_PBCreateDirectoryUnicodeSync';
  4772. {
  4773. * PBCreateDirectoryUnicodeAsync()
  4774. *
  4775. * Availability:
  4776. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4777. * CarbonLib: in CarbonLib 1.0 and later
  4778. * Mac OS X: in version 10.0 and later
  4779. }
  4780. procedure PBCreateDirectoryUnicodeAsync(var paramBlock: FSRefParam); external name '_PBCreateDirectoryUnicodeAsync';
  4781. {
  4782. DeleteObject
  4783. Deletes an existing file or directory.
  4784. -> ioCompletion A pointer to a completion routine
  4785. <- ioResult The result code of the function
  4786. -> ref The file or directory to be deleted
  4787. }
  4788. {
  4789. * FSDeleteObject()
  4790. *
  4791. * Availability:
  4792. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4793. * CarbonLib: in CarbonLib 1.0 and later
  4794. * Mac OS X: in version 10.0 and later
  4795. }
  4796. function FSDeleteObject(const (*var*) ref: FSRef): OSErr; external name '_FSDeleteObject';
  4797. {
  4798. * PBDeleteObjectSync()
  4799. *
  4800. * Availability:
  4801. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4802. * CarbonLib: in CarbonLib 1.0 and later
  4803. * Mac OS X: in version 10.0 and later
  4804. }
  4805. function PBDeleteObjectSync(var paramBlock: FSRefParam): OSErr; external name '_PBDeleteObjectSync';
  4806. {
  4807. * PBDeleteObjectAsync()
  4808. *
  4809. * Availability:
  4810. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4811. * CarbonLib: in CarbonLib 1.0 and later
  4812. * Mac OS X: in version 10.0 and later
  4813. }
  4814. procedure PBDeleteObjectAsync(var paramBlock: FSRefParam); external name '_PBDeleteObjectAsync';
  4815. {
  4816. MoveObject
  4817. Move an existing file or directory into a different directory.
  4818. -> ioCompletion A pointer to a completion routine
  4819. <- ioResult The result code of the function
  4820. -> ref The file or directory to be moved
  4821. -> parentRef The file or directory will be moved into this directory
  4822. <- newRef A new FSRef for the file or directory in its new location;
  4823. optional, may be NULL
  4824. NOTE: Moving an object may change its FSRef. If you want to continue to
  4825. refer to the object, you should pass a non-NULL pointer in newRef and use
  4826. that returned FSRef to access the object after the move. The FSRef passed
  4827. in "ref" may or may not be usable to access the object after it is moved.
  4828. "newRef" may point to the same storage as "parentRef" or "ref".
  4829. }
  4830. {
  4831. * FSMoveObject()
  4832. *
  4833. * Availability:
  4834. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4835. * CarbonLib: in CarbonLib 1.0 and later
  4836. * Mac OS X: in version 10.0 and later
  4837. }
  4838. function FSMoveObject(const (*var*) ref: FSRef; const (*var*) destDirectory: FSRef; newRef: FSRefPtr): OSErr; external name '_FSMoveObject';
  4839. {
  4840. * PBMoveObjectSync()
  4841. *
  4842. * Availability:
  4843. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4844. * CarbonLib: in CarbonLib 1.0 and later
  4845. * Mac OS X: in version 10.0 and later
  4846. }
  4847. function PBMoveObjectSync(var paramBlock: FSRefParam): OSErr; external name '_PBMoveObjectSync';
  4848. {
  4849. * PBMoveObjectAsync()
  4850. *
  4851. * Availability:
  4852. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4853. * CarbonLib: in CarbonLib 1.0 and later
  4854. * Mac OS X: in version 10.0 and later
  4855. }
  4856. procedure PBMoveObjectAsync(var paramBlock: FSRefParam); external name '_PBMoveObjectAsync';
  4857. {
  4858. ExchangeObjects
  4859. swap the contents of two files.
  4860. -> ioCompletion A pointer to a completion routine
  4861. <- ioResult The result code of the function
  4862. -> ref The first file
  4863. -> parentRef The second file
  4864. }
  4865. {
  4866. * FSExchangeObjects()
  4867. *
  4868. * Availability:
  4869. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4870. * CarbonLib: in CarbonLib 1.0 and later
  4871. * Mac OS X: in version 10.0 and later
  4872. }
  4873. function FSExchangeObjects(const (*var*) ref: FSRef; const (*var*) destRef: FSRef): OSErr; external name '_FSExchangeObjects';
  4874. {
  4875. * PBExchangeObjectsSync()
  4876. *
  4877. * Availability:
  4878. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4879. * CarbonLib: in CarbonLib 1.0 and later
  4880. * Mac OS X: in version 10.0 and later
  4881. }
  4882. function PBExchangeObjectsSync(var paramBlock: FSRefParam): OSErr; external name '_PBExchangeObjectsSync';
  4883. {
  4884. * PBExchangeObjectsAsync()
  4885. *
  4886. * Availability:
  4887. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4888. * CarbonLib: in CarbonLib 1.0 and later
  4889. * Mac OS X: in version 10.0 and later
  4890. }
  4891. procedure PBExchangeObjectsAsync(var paramBlock: FSRefParam); external name '_PBExchangeObjectsAsync';
  4892. {
  4893. RenameUnicode
  4894. Change the name of an existing file or directory. The new name is in
  4895. Unicode.
  4896. -> ioCompletion A pointer to a completion routine
  4897. <- ioResult The result code of the function
  4898. -> ref The file or directory to be moved
  4899. -> nameLength Number of Unicode characters in the new name
  4900. -> name A pointer to the new Unicode name
  4901. -> textEncodingHint A suggested text encoding to use for the name
  4902. <- newRef A new FSRef for the file or directory; may be NULL
  4903. NOTE: Renaming an object may change its FSRef. If you want to continue to
  4904. refer to the object, you should pass a non-NULL pointer in newRef and use
  4905. that returned FSRef to access the object after the rename. The FSRef passed
  4906. in "ref" may or may not be usable to access the object after it is renamed.
  4907. "newRef" may point to the same storage as "ref".
  4908. }
  4909. {
  4910. * FSRenameUnicode()
  4911. *
  4912. * Availability:
  4913. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4914. * CarbonLib: in CarbonLib 1.0 and later
  4915. * Mac OS X: in version 10.0 and later
  4916. }
  4917. function FSRenameUnicode(const (*var*) ref: FSRef; nameLength: UniCharCount; name: UniCharPtr; textEncodingHint: TextEncoding; newRef: FSRefPtr): OSErr; external name '_FSRenameUnicode';
  4918. {
  4919. * PBRenameUnicodeSync()
  4920. *
  4921. * Availability:
  4922. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4923. * CarbonLib: in CarbonLib 1.0 and later
  4924. * Mac OS X: in version 10.0 and later
  4925. }
  4926. function PBRenameUnicodeSync(var paramBlock: FSRefParam): OSErr; external name '_PBRenameUnicodeSync';
  4927. {
  4928. * PBRenameUnicodeAsync()
  4929. *
  4930. * Availability:
  4931. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4932. * CarbonLib: in CarbonLib 1.0 and later
  4933. * Mac OS X: in version 10.0 and later
  4934. }
  4935. procedure PBRenameUnicodeAsync(var paramBlock: FSRefParam); external name '_PBRenameUnicodeAsync';
  4936. {
  4937. GetCatalogInfo
  4938. Returns various information about a given file or directory.
  4939. -> ioCompletion A pointer to a completion routine
  4940. <- ioResult The result code of the function
  4941. -> ref The file or directory whose information is to be returned
  4942. -> whichInfo Which catalog info fields to get
  4943. <- catInfo The returned values of catalog info fields; may be NULL
  4944. <- spec A pointer to the FSSpec for the object; may be NULL
  4945. <- parentRef A pointer to the FSRef for the object's parent directory; may be NULL
  4946. <- outName The Unicode name is returned here. This pointer may be NULL.
  4947. Note: All of the outputs are optional; if you don't want that particular output, just
  4948. set its pointer to NULL. This is the call to use to map from an FSRef to an FSSpec.
  4949. }
  4950. {
  4951. * FSGetCatalogInfo()
  4952. *
  4953. * Availability:
  4954. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4955. * CarbonLib: in CarbonLib 1.0 and later
  4956. * Mac OS X: in version 10.0 and later
  4957. }
  4958. function FSGetCatalogInfo(const (*var*) ref: FSRef; whichInfo: FSCatalogInfoBitmap; catalogInfo: FSCatalogInfoPtr; outName: HFSUniStr255Ptr; fsSpec: FSSpecPtr; parentRef: FSRefPtr): OSErr; external name '_FSGetCatalogInfo';
  4959. {
  4960. * PBGetCatalogInfoSync()
  4961. *
  4962. * Availability:
  4963. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4964. * CarbonLib: in CarbonLib 1.0 and later
  4965. * Mac OS X: in version 10.0 and later
  4966. }
  4967. function PBGetCatalogInfoSync(var paramBlock: FSRefParam): OSErr; external name '_PBGetCatalogInfoSync';
  4968. {
  4969. * PBGetCatalogInfoAsync()
  4970. *
  4971. * Availability:
  4972. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4973. * CarbonLib: in CarbonLib 1.0 and later
  4974. * Mac OS X: in version 10.0 and later
  4975. }
  4976. procedure PBGetCatalogInfoAsync(var paramBlock: FSRefParam); external name '_PBGetCatalogInfoAsync';
  4977. {
  4978. SetCatalogInfo
  4979. Set catalog information about a given file or directory.
  4980. -> ioCompletion A pointer to a completion routine
  4981. <- ioResult The result code of the function
  4982. -> ref The file or directory whose information is to be changed
  4983. -> whichInfo Which catalog info fields to set
  4984. -> catInfo The new values of catalog info fields
  4985. Note: Only some of the catalog info fields may be set. The settable fields
  4986. are given by the constant kFSCatInfoSettableInfo; no other bits may be set in
  4987. whichInfo.
  4988. }
  4989. {
  4990. * FSSetCatalogInfo()
  4991. *
  4992. * Availability:
  4993. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  4994. * CarbonLib: in CarbonLib 1.0 and later
  4995. * Mac OS X: in version 10.0 and later
  4996. }
  4997. function FSSetCatalogInfo(const (*var*) ref: FSRef; whichInfo: FSCatalogInfoBitmap; const (*var*) catalogInfo: FSCatalogInfo): OSErr; external name '_FSSetCatalogInfo';
  4998. {
  4999. * PBSetCatalogInfoSync()
  5000. *
  5001. * Availability:
  5002. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5003. * CarbonLib: in CarbonLib 1.0 and later
  5004. * Mac OS X: in version 10.0 and later
  5005. }
  5006. function PBSetCatalogInfoSync(var paramBlock: FSRefParam): OSErr; external name '_PBSetCatalogInfoSync';
  5007. {
  5008. * PBSetCatalogInfoAsync()
  5009. *
  5010. * Availability:
  5011. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5012. * CarbonLib: in CarbonLib 1.0 and later
  5013. * Mac OS X: in version 10.0 and later
  5014. }
  5015. procedure PBSetCatalogInfoAsync(var paramBlock: FSRefParam); external name '_PBSetCatalogInfoAsync';
  5016. {
  5017. OpenIterator
  5018. Creates an FSIterator to iterate over a directory or subtree. The
  5019. iterator can then be passed to GetCatalogInfoBulk or CatalogSearch.
  5020. -> ioCompletion A pointer to a completion routine
  5021. <- ioResult The result code of the function
  5022. <- iterator The returned FSIterator
  5023. -> iteratorFlags Controls whether the iterator iterates over subtrees
  5024. or just the immediate children of the container.
  5025. -> container An FSRef for the directory to iterate (or root of
  5026. the subtree to iterate).
  5027. }
  5028. {
  5029. * FSOpenIterator()
  5030. *
  5031. * Availability:
  5032. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5033. * CarbonLib: in CarbonLib 1.0 and later
  5034. * Mac OS X: in version 10.0 and later
  5035. }
  5036. function FSOpenIterator(const (*var*) container: FSRef; iteratorFlags: FSIteratorFlags; var iterator: FSIterator): OSErr; external name '_FSOpenIterator';
  5037. {
  5038. * PBOpenIteratorSync()
  5039. *
  5040. * Availability:
  5041. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5042. * CarbonLib: in CarbonLib 1.0 and later
  5043. * Mac OS X: in version 10.0 and later
  5044. }
  5045. function PBOpenIteratorSync(var paramBlock: FSCatalogBulkParam): OSErr; external name '_PBOpenIteratorSync';
  5046. {
  5047. * PBOpenIteratorAsync()
  5048. *
  5049. * Availability:
  5050. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5051. * CarbonLib: in CarbonLib 1.0 and later
  5052. * Mac OS X: in version 10.0 and later
  5053. }
  5054. procedure PBOpenIteratorAsync(var paramBlock: FSCatalogBulkParam); external name '_PBOpenIteratorAsync';
  5055. {
  5056. CloseIterator
  5057. Invalidates and disposes an FSIterator.
  5058. -> ioCompletion A pointer to a completion routine
  5059. <- ioResult The result code of the function
  5060. -> iterator The returned FSIterator
  5061. }
  5062. {
  5063. * FSCloseIterator()
  5064. *
  5065. * Availability:
  5066. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5067. * CarbonLib: in CarbonLib 1.0 and later
  5068. * Mac OS X: in version 10.0 and later
  5069. }
  5070. function FSCloseIterator(iterator: FSIterator): OSErr; external name '_FSCloseIterator';
  5071. {
  5072. * PBCloseIteratorSync()
  5073. *
  5074. * Availability:
  5075. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5076. * CarbonLib: in CarbonLib 1.0 and later
  5077. * Mac OS X: in version 10.0 and later
  5078. }
  5079. function PBCloseIteratorSync(var paramBlock: FSCatalogBulkParam): OSErr; external name '_PBCloseIteratorSync';
  5080. {
  5081. * PBCloseIteratorAsync()
  5082. *
  5083. * Availability:
  5084. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5085. * CarbonLib: in CarbonLib 1.0 and later
  5086. * Mac OS X: in version 10.0 and later
  5087. }
  5088. procedure PBCloseIteratorAsync(var paramBlock: FSCatalogBulkParam); external name '_PBCloseIteratorAsync';
  5089. {
  5090. GetCatalogInfoBulk
  5091. Iterates over catalog objects and returns information about them.
  5092. For now, iterator must have been created with kFSIterateFlat option.
  5093. -> ioCompletion A pointer to a completion routine
  5094. <- ioResult The result code of the function
  5095. -> iterator The iterator
  5096. -> maximumItems The maximum number of items to return
  5097. <- actualItems The actual number of items returned
  5098. <- containerChanged Set to true if the container's contents changed
  5099. -> whichInfo The catalog information fields to return for each item
  5100. <- catalogInfo An array of catalog information; one for each returned item
  5101. <- refs An array of FSRefs; one for each returned item
  5102. <- specs An array of FSSpecs; one for each returned item
  5103. <- names An array of filenames; one for each returned item
  5104. Note: The catalogInfo, refs, specs, names, and containerChanged are all optional outputs;
  5105. if you don't want that particular output, set its pointer to NULL.
  5106. }
  5107. {
  5108. * FSGetCatalogInfoBulk()
  5109. *
  5110. * Availability:
  5111. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5112. * CarbonLib: in CarbonLib 1.0 and later
  5113. * Mac OS X: in version 10.0 and later
  5114. }
  5115. function FSGetCatalogInfoBulk(iterator: FSIterator; maximumObjects: ItemCount; var actualObjects: ItemCount; containerChanged: BooleanPtr; whichInfo: FSCatalogInfoBitmap; catalogInfos: FSCatalogInfoPtr; refs: FSRefPtr; specs: FSSpecPtr; names: HFSUniStr255Ptr): OSErr; external name '_FSGetCatalogInfoBulk';
  5116. {
  5117. * PBGetCatalogInfoBulkSync()
  5118. *
  5119. * Availability:
  5120. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5121. * CarbonLib: in CarbonLib 1.0 and later
  5122. * Mac OS X: in version 10.0 and later
  5123. }
  5124. function PBGetCatalogInfoBulkSync(var paramBlock: FSCatalogBulkParam): OSErr; external name '_PBGetCatalogInfoBulkSync';
  5125. {
  5126. * PBGetCatalogInfoBulkAsync()
  5127. *
  5128. * Availability:
  5129. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5130. * CarbonLib: in CarbonLib 1.0 and later
  5131. * Mac OS X: in version 10.0 and later
  5132. }
  5133. procedure PBGetCatalogInfoBulkAsync(var paramBlock: FSCatalogBulkParam); external name '_PBGetCatalogInfoBulkAsync';
  5134. {
  5135. CatalogSearch
  5136. Iterates over catalog objects, searching for objects that match given
  5137. search criteria. Returns various information about matching objects.
  5138. For now, iterator must have been created with kFSIterateSubtree option
  5139. and the container must have been the root directory of a volume.
  5140. -> ioCompletion A pointer to a completion routine
  5141. <- ioResult The result code of the function
  5142. -> iterator The iterator
  5143. -> maximumItems The maximum number of items to return
  5144. <- actualItems The actual number of items returned
  5145. <- containerChanged Set to true if the container's contents changed
  5146. -> whichInfo The catalog information fields to return for each item
  5147. <- catalogInfo An array of catalog information; one for each returned item
  5148. <- refs An array of FSRefs; one for each returned item
  5149. <- specs An array of FSSpecs; one for each returned item
  5150. <- names An array of filenames; one for each returned item
  5151. -> searchParams The criteria that controls the matching, including timeout, a bitmap
  5152. controlling the fields to compare, and the (Unicode) name to compare.
  5153. Note: The catalogInfo, refs, specs, and names are all optional outputs; if you don't want
  5154. that particular output, set its pointer to NULL.
  5155. }
  5156. {
  5157. * FSCatalogSearch()
  5158. *
  5159. * Availability:
  5160. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5161. * CarbonLib: in CarbonLib 1.0 and later
  5162. * Mac OS X: in version 10.0 and later
  5163. }
  5164. function FSCatalogSearch(iterator: FSIterator; const (*var*) searchCriteria: FSSearchParams; maximumObjects: ItemCount; var actualObjects: ItemCount; containerChanged: BooleanPtr; whichInfo: FSCatalogInfoBitmap; catalogInfos: FSCatalogInfoPtr; refs: FSRefPtr; specs: FSSpecPtr; names: HFSUniStr255Ptr): OSErr; external name '_FSCatalogSearch';
  5165. {
  5166. * PBCatalogSearchSync()
  5167. *
  5168. * Availability:
  5169. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5170. * CarbonLib: in CarbonLib 1.0 and later
  5171. * Mac OS X: in version 10.0 and later
  5172. }
  5173. function PBCatalogSearchSync(var paramBlock: FSCatalogBulkParam): OSErr; external name '_PBCatalogSearchSync';
  5174. {
  5175. * PBCatalogSearchAsync()
  5176. *
  5177. * Availability:
  5178. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5179. * CarbonLib: in CarbonLib 1.0 and later
  5180. * Mac OS X: in version 10.0 and later
  5181. }
  5182. procedure PBCatalogSearchAsync(var paramBlock: FSCatalogBulkParam); external name '_PBCatalogSearchAsync';
  5183. {
  5184. CreateFork
  5185. Create a named fork for a file or directory.
  5186. -> ioCompletion A pointer to a completion routine
  5187. <- ioResult The result code of the function
  5188. -> ref The file or directory
  5189. -> forkNameLength The length of the fork name (in Unicode characters)
  5190. -> forkName The name of the fork to open (in Unicode)
  5191. }
  5192. {
  5193. * FSCreateFork()
  5194. *
  5195. * Availability:
  5196. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5197. * CarbonLib: in CarbonLib 1.0 and later
  5198. * Mac OS X: in version 10.0 and later
  5199. }
  5200. function FSCreateFork(const (*var*) ref: FSRef; forkNameLength: UniCharCount; forkName: UniCharPtr): OSErr; external name '_FSCreateFork';
  5201. {
  5202. * PBCreateForkSync()
  5203. *
  5204. * Availability:
  5205. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5206. * CarbonLib: in CarbonLib 1.0 and later
  5207. * Mac OS X: in version 10.0 and later
  5208. }
  5209. function PBCreateForkSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBCreateForkSync';
  5210. {
  5211. * PBCreateForkAsync()
  5212. *
  5213. * Availability:
  5214. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5215. * CarbonLib: in CarbonLib 1.0 and later
  5216. * Mac OS X: in version 10.0 and later
  5217. }
  5218. procedure PBCreateForkAsync(var paramBlock: FSForkIOParam); external name '_PBCreateForkAsync';
  5219. {
  5220. DeleteFork
  5221. Delete a named fork of a file or directory.
  5222. -> ioCompletion A pointer to a completion routine
  5223. <- ioResult The result code of the function
  5224. -> ref The file or directory
  5225. -> forkNameLength The length of the fork name (in Unicode characters)
  5226. -> forkName The name of the fork to open (in Unicode)
  5227. }
  5228. {
  5229. * FSDeleteFork()
  5230. *
  5231. * Availability:
  5232. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5233. * CarbonLib: in CarbonLib 1.0 and later
  5234. * Mac OS X: in version 10.0 and later
  5235. }
  5236. function FSDeleteFork(const (*var*) ref: FSRef; forkNameLength: UniCharCount; forkName: UniCharPtr): OSErr; external name '_FSDeleteFork';
  5237. {
  5238. * PBDeleteForkSync()
  5239. *
  5240. * Availability:
  5241. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5242. * CarbonLib: in CarbonLib 1.0 and later
  5243. * Mac OS X: in version 10.0 and later
  5244. }
  5245. function PBDeleteForkSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBDeleteForkSync';
  5246. {
  5247. * PBDeleteForkAsync()
  5248. *
  5249. * Availability:
  5250. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5251. * CarbonLib: in CarbonLib 1.0 and later
  5252. * Mac OS X: in version 10.0 and later
  5253. }
  5254. procedure PBDeleteForkAsync(var paramBlock: FSForkIOParam); external name '_PBDeleteForkAsync';
  5255. {
  5256. IterateForks
  5257. Return the names and sizes of the forks of a file or directory.
  5258. One fork is returned per call.
  5259. -> ioCompletion A pointer to a completion routine.
  5260. <- ioResult The result code of the function.
  5261. -> ref The file or directory containing the forks.
  5262. <- positionOffset The length of the fork, in bytes.
  5263. <- allocationAmount The space allocated to the fork (physical length).
  5264. <- outForkName The name of the fork in Unicode.
  5265. <> forkIterator Maintains state between calls for a given FSRef.
  5266. Before the first call, set the initialize field to zero.
  5267. }
  5268. {
  5269. * FSIterateForks()
  5270. *
  5271. * Availability:
  5272. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5273. * CarbonLib: in CarbonLib 1.0 and later
  5274. * Mac OS X: in version 10.0 and later
  5275. }
  5276. function FSIterateForks(const (*var*) ref: FSRef; var forkIterator: CatPositionRec; forkName: HFSUniStr255Ptr; forkSize: SInt64Ptr; forkPhysicalSize: UInt64Ptr): OSErr; external name '_FSIterateForks';
  5277. {
  5278. * PBIterateForksSync()
  5279. *
  5280. * Availability:
  5281. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5282. * CarbonLib: in CarbonLib 1.0 and later
  5283. * Mac OS X: in version 10.0 and later
  5284. }
  5285. function PBIterateForksSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBIterateForksSync';
  5286. {
  5287. * PBIterateForksAsync()
  5288. *
  5289. * Availability:
  5290. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5291. * CarbonLib: in CarbonLib 1.0 and later
  5292. * Mac OS X: in version 10.0 and later
  5293. }
  5294. procedure PBIterateForksAsync(var paramBlock: FSForkIOParam); external name '_PBIterateForksAsync';
  5295. {
  5296. OpenFork
  5297. Open a fork for reading and/or writing. Allows the opened fork
  5298. to grow beyond 2GB in size. All volumes should support data and
  5299. resource forks. Other named forks may be supported by some
  5300. volumes.
  5301. -> ioCompletion A pointer to a completion routine
  5302. <- ioResult The result code of the function
  5303. -> ref The file or directory containing the fork to open
  5304. -> forkNameLength The length of the fork name (in Unicode characters)
  5305. -> forkName The name of the fork to open (in Unicode)
  5306. -> permissions The access (read and/or write) you want
  5307. <- forkRefNum The reference number for accessing the open fork
  5308. }
  5309. {
  5310. * FSOpenFork()
  5311. *
  5312. * Availability:
  5313. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5314. * CarbonLib: in CarbonLib 1.0 and later
  5315. * Mac OS X: in version 10.0 and later
  5316. }
  5317. function FSOpenFork(const (*var*) ref: FSRef; forkNameLength: UniCharCount; forkName: UniCharPtr; permissions: SInt8; var forkRefNum: SInt16): OSErr; external name '_FSOpenFork';
  5318. {
  5319. * PBOpenForkSync()
  5320. *
  5321. * Availability:
  5322. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5323. * CarbonLib: in CarbonLib 1.0 and later
  5324. * Mac OS X: in version 10.0 and later
  5325. }
  5326. function PBOpenForkSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBOpenForkSync';
  5327. {
  5328. * PBOpenForkAsync()
  5329. *
  5330. * Availability:
  5331. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5332. * CarbonLib: in CarbonLib 1.0 and later
  5333. * Mac OS X: in version 10.0 and later
  5334. }
  5335. procedure PBOpenForkAsync(var paramBlock: FSForkIOParam); external name '_PBOpenForkAsync';
  5336. {
  5337. ReadFork
  5338. Read data from a fork opened via OpenFork. The first byte to read is
  5339. indicated by a combination of positionMode and positionOffset.
  5340. -> ioCompletion A pointer to a completion routine
  5341. <- ioResult The result code of the function
  5342. -> forkRefNum The reference number of the fork to read from
  5343. <- buffer Pointer to buffer where data will be returned
  5344. -> requestCount The number of bytes to read
  5345. <- actualCount The number of bytes actually read
  5346. -> positionMode The base location for start of read
  5347. -> positionOffset The offset from base location for start of read
  5348. }
  5349. {
  5350. * FSReadFork()
  5351. *
  5352. * Availability:
  5353. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5354. * CarbonLib: in CarbonLib 1.0 and later
  5355. * Mac OS X: in version 10.0 and later
  5356. }
  5357. function FSReadFork(forkRefNum: SInt16; positionMode: UInt16; positionOffset: SInt64; requestCount: ByteCount; buffer: UnivPtr; actualCount: ByteCountPtr): OSErr; external name '_FSReadFork';
  5358. {
  5359. * PBReadForkSync()
  5360. *
  5361. * Availability:
  5362. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5363. * CarbonLib: in CarbonLib 1.0 and later
  5364. * Mac OS X: in version 10.0 and later
  5365. }
  5366. function PBReadForkSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBReadForkSync';
  5367. {
  5368. * PBReadForkAsync()
  5369. *
  5370. * Availability:
  5371. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5372. * CarbonLib: in CarbonLib 1.0 and later
  5373. * Mac OS X: in version 10.0 and later
  5374. }
  5375. procedure PBReadForkAsync(var paramBlock: FSForkIOParam); external name '_PBReadForkAsync';
  5376. {
  5377. WriteFork
  5378. Write data to a fork opened via OpenFork. The first byte to write is
  5379. indicated by a combination of positionMode and positionOffset.
  5380. -> ioCompletion A pointer to a completion routine
  5381. <- ioResult The result code of the function
  5382. -> forkRefNum The reference number of the fork to write to
  5383. -> buffer Pointer to data to write
  5384. -> requestCount The number of bytes to write
  5385. <- actualCount The number of bytes actually written
  5386. -> positionMode The base location for start of write
  5387. -> positionOffset The offset from base location for start of write
  5388. }
  5389. {
  5390. * FSWriteFork()
  5391. *
  5392. * Availability:
  5393. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5394. * CarbonLib: in CarbonLib 1.0 and later
  5395. * Mac OS X: in version 10.0 and later
  5396. }
  5397. function FSWriteFork(forkRefNum: SInt16; positionMode: UInt16; positionOffset: SInt64; requestCount: ByteCount; buffer: UnivPtr; actualCount: ByteCountPtr): OSErr; external name '_FSWriteFork';
  5398. {
  5399. * PBWriteForkSync()
  5400. *
  5401. * Availability:
  5402. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5403. * CarbonLib: in CarbonLib 1.0 and later
  5404. * Mac OS X: in version 10.0 and later
  5405. }
  5406. function PBWriteForkSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBWriteForkSync';
  5407. {
  5408. * PBWriteForkAsync()
  5409. *
  5410. * Availability:
  5411. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5412. * CarbonLib: in CarbonLib 1.0 and later
  5413. * Mac OS X: in version 10.0 and later
  5414. }
  5415. procedure PBWriteForkAsync(var paramBlock: FSForkIOParam); external name '_PBWriteForkAsync';
  5416. {
  5417. GetForkPosition
  5418. Get the current (default) position of a fork that was
  5419. opened via OpenFork.
  5420. -> ioCompletion A pointer to a completion routine
  5421. <- ioResult The result code of the function
  5422. -> forkRefNum The reference number of the fork
  5423. <- positionOffset The current position of the fork
  5424. }
  5425. {
  5426. * FSGetForkPosition()
  5427. *
  5428. * Availability:
  5429. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5430. * CarbonLib: in CarbonLib 1.0 and later
  5431. * Mac OS X: in version 10.0 and later
  5432. }
  5433. function FSGetForkPosition(forkRefNum: SInt16; var position: SInt64): OSErr; external name '_FSGetForkPosition';
  5434. {
  5435. * PBGetForkPositionSync()
  5436. *
  5437. * Availability:
  5438. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5439. * CarbonLib: in CarbonLib 1.0 and later
  5440. * Mac OS X: in version 10.0 and later
  5441. }
  5442. function PBGetForkPositionSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBGetForkPositionSync';
  5443. {
  5444. * PBGetForkPositionAsync()
  5445. *
  5446. * Availability:
  5447. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5448. * CarbonLib: in CarbonLib 1.0 and later
  5449. * Mac OS X: in version 10.0 and later
  5450. }
  5451. procedure PBGetForkPositionAsync(var paramBlock: FSForkIOParam); external name '_PBGetForkPositionAsync';
  5452. {
  5453. SetForkPosition
  5454. Set the current (default) position of a fork that was
  5455. opened via OpenFork.
  5456. -> ioCompletion A pointer to a completion routine
  5457. <- ioResult The result code of the function
  5458. -> forkRefNum The reference number of the fork
  5459. -> positionMode The base location for the new position
  5460. -> positionOffset The offset of the new position from the base
  5461. }
  5462. {
  5463. * FSSetForkPosition()
  5464. *
  5465. * Availability:
  5466. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5467. * CarbonLib: in CarbonLib 1.0 and later
  5468. * Mac OS X: in version 10.0 and later
  5469. }
  5470. function FSSetForkPosition(forkRefNum: SInt16; positionMode: UInt16; positionOffset: SInt64): OSErr; external name '_FSSetForkPosition';
  5471. {
  5472. * PBSetForkPositionSync()
  5473. *
  5474. * Availability:
  5475. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5476. * CarbonLib: in CarbonLib 1.0 and later
  5477. * Mac OS X: in version 10.0 and later
  5478. }
  5479. function PBSetForkPositionSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBSetForkPositionSync';
  5480. {
  5481. * PBSetForkPositionAsync()
  5482. *
  5483. * Availability:
  5484. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5485. * CarbonLib: in CarbonLib 1.0 and later
  5486. * Mac OS X: in version 10.0 and later
  5487. }
  5488. procedure PBSetForkPositionAsync(var paramBlock: FSForkIOParam); external name '_PBSetForkPositionAsync';
  5489. {
  5490. GetForkSize
  5491. Get the current logical size (end-of-file) of an open fork.
  5492. -> ioCompletion A pointer to a completion routine
  5493. <- ioResult The result code of the function
  5494. -> forkRefNum The reference number of the fork
  5495. <- positionOffset The logical size of the fork, in bytes
  5496. }
  5497. {
  5498. * FSGetForkSize()
  5499. *
  5500. * Availability:
  5501. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5502. * CarbonLib: in CarbonLib 1.0 and later
  5503. * Mac OS X: in version 10.0 and later
  5504. }
  5505. function FSGetForkSize(forkRefNum: SInt16; var forkSize: SInt64): OSErr; external name '_FSGetForkSize';
  5506. {
  5507. * PBGetForkSizeSync()
  5508. *
  5509. * Availability:
  5510. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5511. * CarbonLib: in CarbonLib 1.0 and later
  5512. * Mac OS X: in version 10.0 and later
  5513. }
  5514. function PBGetForkSizeSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBGetForkSizeSync';
  5515. {
  5516. * PBGetForkSizeAsync()
  5517. *
  5518. * Availability:
  5519. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5520. * CarbonLib: in CarbonLib 1.0 and later
  5521. * Mac OS X: in version 10.0 and later
  5522. }
  5523. procedure PBGetForkSizeAsync(var paramBlock: FSForkIOParam); external name '_PBGetForkSizeAsync';
  5524. {
  5525. SetForkSize
  5526. Set the logical size (end-of-file) of an open fork. This
  5527. may cause space to be allocated or deallocated.
  5528. -> ioCompletion A pointer to a completion routine
  5529. <- ioResult The result code of the function
  5530. -> forkRefNum The reference number of the fork
  5531. -> positionMode The base location for the new size
  5532. -> positionOffset The offset of the new size from the base
  5533. }
  5534. {
  5535. * FSSetForkSize()
  5536. *
  5537. * Availability:
  5538. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5539. * CarbonLib: in CarbonLib 1.0 and later
  5540. * Mac OS X: in version 10.0 and later
  5541. }
  5542. function FSSetForkSize(forkRefNum: SInt16; positionMode: UInt16; positionOffset: SInt64): OSErr; external name '_FSSetForkSize';
  5543. {
  5544. * PBSetForkSizeSync()
  5545. *
  5546. * Availability:
  5547. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5548. * CarbonLib: in CarbonLib 1.0 and later
  5549. * Mac OS X: in version 10.0 and later
  5550. }
  5551. function PBSetForkSizeSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBSetForkSizeSync';
  5552. {
  5553. * PBSetForkSizeAsync()
  5554. *
  5555. * Availability:
  5556. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5557. * CarbonLib: in CarbonLib 1.0 and later
  5558. * Mac OS X: in version 10.0 and later
  5559. }
  5560. procedure PBSetForkSizeAsync(var paramBlock: FSForkIOParam); external name '_PBSetForkSizeAsync';
  5561. {
  5562. AllocateFork
  5563. Allocate space to an open fork. Typically, the space to be
  5564. allocated is beyond the current size of the fork, to reserve
  5565. space so the file will be able to grow later. Some volume
  5566. formats are unable to allocate space beyond the logical size
  5567. of the fork.
  5568. -> ioCompletion A pointer to a completion routine
  5569. <- ioResult The result code of the function
  5570. -> forkRefNum The reference number of the fork
  5571. -> positionMode The base location for start of allocation
  5572. -> positionOffset The offset of the start of allocation
  5573. -> allocationFlags Zero or more of the following flags:
  5574. kFSAllocContiguousMask
  5575. Any newly allocated space must be one contiguous piece.
  5576. kFSAllocAllOrNothingMask
  5577. All of the request space must be available, or the call
  5578. will fail. (If not set, the call may succeed even though
  5579. some of the requested space wasn't allocated.)
  5580. kFSAllocNoRoundUpMask
  5581. Do not allocate additional space. (If not set, a volume
  5582. may allocate additional space in order to reduce fragmentation.)
  5583. <> allocationAmount The number of bytes to allocate
  5584. On output, the number of bytes actually added
  5585. }
  5586. {
  5587. * FSAllocateFork()
  5588. *
  5589. * Availability:
  5590. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5591. * CarbonLib: in CarbonLib 1.0 and later
  5592. * Mac OS X: in version 10.0 and later
  5593. }
  5594. function FSAllocateFork(forkRefNum: SInt16; flags: FSAllocationFlags; positionMode: UInt16; positionOffset: SInt64; requestCount: UInt64; actualCount: UInt64Ptr): OSErr; external name '_FSAllocateFork';
  5595. {
  5596. * PBAllocateForkSync()
  5597. *
  5598. * Availability:
  5599. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5600. * CarbonLib: in CarbonLib 1.0 and later
  5601. * Mac OS X: in version 10.0 and later
  5602. }
  5603. function PBAllocateForkSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBAllocateForkSync';
  5604. {
  5605. * PBAllocateForkAsync()
  5606. *
  5607. * Availability:
  5608. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5609. * CarbonLib: in CarbonLib 1.0 and later
  5610. * Mac OS X: in version 10.0 and later
  5611. }
  5612. procedure PBAllocateForkAsync(var paramBlock: FSForkIOParam); external name '_PBAllocateForkAsync';
  5613. {
  5614. FlushFork
  5615. Flush a fork. Any data written to this fork refnum is flushed to the device.
  5616. The volume's control structures are also flushed to the device.
  5617. -> ioCompletion A pointer to a completion routine
  5618. <- ioResult The result code of the function
  5619. -> forkRefNum The reference number of the fork to flush
  5620. }
  5621. {
  5622. * FSFlushFork()
  5623. *
  5624. * Availability:
  5625. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5626. * CarbonLib: in CarbonLib 1.0 and later
  5627. * Mac OS X: in version 10.0 and later
  5628. }
  5629. function FSFlushFork(forkRefNum: SInt16): OSErr; external name '_FSFlushFork';
  5630. {
  5631. * PBFlushForkSync()
  5632. *
  5633. * Availability:
  5634. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5635. * CarbonLib: in CarbonLib 1.0 and later
  5636. * Mac OS X: in version 10.0 and later
  5637. }
  5638. function PBFlushForkSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBFlushForkSync';
  5639. {
  5640. * PBFlushForkAsync()
  5641. *
  5642. * Availability:
  5643. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5644. * CarbonLib: in CarbonLib 1.0 and later
  5645. * Mac OS X: in version 10.0 and later
  5646. }
  5647. procedure PBFlushForkAsync(var paramBlock: FSForkIOParam); external name '_PBFlushForkAsync';
  5648. {
  5649. CloseFork
  5650. Flush and close a fork. Any data written to this fork refnum is flushed
  5651. to the device. The volume's control structures are also flushed to the device.
  5652. -> ioCompletion A pointer to a completion routine
  5653. <- ioResult The result code of the function
  5654. -> forkRefNum The reference number of the fork to close
  5655. }
  5656. {
  5657. * FSCloseFork()
  5658. *
  5659. * Availability:
  5660. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5661. * CarbonLib: in CarbonLib 1.0 and later
  5662. * Mac OS X: in version 10.0 and later
  5663. }
  5664. function FSCloseFork(forkRefNum: SInt16): OSErr; external name '_FSCloseFork';
  5665. {
  5666. * PBCloseForkSync()
  5667. *
  5668. * Availability:
  5669. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5670. * CarbonLib: in CarbonLib 1.0 and later
  5671. * Mac OS X: in version 10.0 and later
  5672. }
  5673. function PBCloseForkSync(var paramBlock: FSForkIOParam): OSErr; external name '_PBCloseForkSync';
  5674. {
  5675. * PBCloseForkAsync()
  5676. *
  5677. * Availability:
  5678. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5679. * CarbonLib: in CarbonLib 1.0 and later
  5680. * Mac OS X: in version 10.0 and later
  5681. }
  5682. procedure PBCloseForkAsync(var paramBlock: FSForkIOParam); external name '_PBCloseForkAsync';
  5683. {
  5684. GetForkCBInfo
  5685. Return information about an open fork.
  5686. -> ioCompletion A pointer to a completion routine
  5687. <- ioResult The result code of the function
  5688. <> desiredRefNum If non-zero on input, then get information for this refnum;
  5689. unchanged on output. If zero on input, iterate over all open
  5690. forks (possibly limited to a single volume); on output, contains
  5691. the fork's refnum.
  5692. -> volumeRefNum Used when desiredRefNum is zero on input. Set to 0 to iterate over all
  5693. volumes, or set to a FSVolumeRefNum to limit iteration to that volume.
  5694. <> iterator Used when desiredRefNum is zero on input. Set to 0 before iterating.
  5695. Pass the iterator returned by the previous call to continue iterating.
  5696. <- actualRefNum The refnum of the open fork.
  5697. <- ref The FSRef for the file or directory that contains the fork.
  5698. <- forkInfo Various information about the open fork.
  5699. <- outForkName The name of the fork
  5700. Note: the foundRefNum, ref, forkInfo, and fork name outputs are all optional; if you don't want
  5701. a particular output, then set its pointer to NULL. If forkName is NULL, then forkNameLength
  5702. will be undefined.
  5703. Note: Returning the forkInfo generally does not require a disk access. Returning the
  5704. ref or forkName may cause disk access for some volume formats.
  5705. }
  5706. {
  5707. * FSGetForkCBInfo()
  5708. *
  5709. * Availability:
  5710. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5711. * CarbonLib: in CarbonLib 1.0 and later
  5712. * Mac OS X: in version 10.0 and later
  5713. }
  5714. function FSGetForkCBInfo(desiredRefNum: SInt16; volume: FSVolumeRefNum; iterator: SInt16Ptr; actualRefNum: SInt16Ptr; forkInfo: FSForkInfoPtr; ref: FSRefPtr; outForkName: HFSUniStr255Ptr): OSErr; external name '_FSGetForkCBInfo';
  5715. {
  5716. * PBGetForkCBInfoSync()
  5717. *
  5718. * Availability:
  5719. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5720. * CarbonLib: in CarbonLib 1.0 and later
  5721. * Mac OS X: in version 10.0 and later
  5722. }
  5723. function PBGetForkCBInfoSync(var paramBlock: FSForkCBInfoParam): OSErr; external name '_PBGetForkCBInfoSync';
  5724. {
  5725. * PBGetForkCBInfoAsync()
  5726. *
  5727. * Availability:
  5728. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5729. * CarbonLib: in CarbonLib 1.0 and later
  5730. * Mac OS X: in version 10.0 and later
  5731. }
  5732. procedure PBGetForkCBInfoAsync(var paramBlock: FSForkCBInfoParam); external name '_PBGetForkCBInfoAsync';
  5733. {
  5734. GetVolumeInfo
  5735. Returns various information about a given volume, or indexing over all volumes.
  5736. -> ioCompletion A pointer to a completion routine
  5737. <- ioResult The result code of the function
  5738. <> ioVRefNum On input, the volume reference number or drive number whose
  5739. information is to be returned (if volumeIndex is 0); same
  5740. as "volume" input to FSGetVolumeInfo.
  5741. On output, the actual volume reference number; same as
  5742. "actualVolume" output of FSGetVolumeInfo.
  5743. -> volumeIndex The index of the desired volume, or 0 to use ioVRefNum
  5744. -> whichInfo Which volInfo info fields to get
  5745. <- volumeInfo The returned values of Volume info fields; may be NULL
  5746. <- name The Unicode name is returned here. This pointer may be NULL.
  5747. Note: All of the outputs are optional; if you don't want that particular output, just
  5748. set its pointer to NULL.
  5749. }
  5750. {
  5751. * FSGetVolumeInfo()
  5752. *
  5753. * Availability:
  5754. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5755. * CarbonLib: in CarbonLib 1.0 and later
  5756. * Mac OS X: in version 10.0 and later
  5757. }
  5758. function FSGetVolumeInfo(volume: FSVolumeRefNum; volumeIndex: ItemCount; actualVolume: FSVolumeRefNumPtr; whichInfo: FSVolumeInfoBitmap; info: FSVolumeInfoPtr; volumeName: HFSUniStr255Ptr; rootDirectory: FSRefPtr): OSErr; external name '_FSGetVolumeInfo';
  5759. {
  5760. * PBGetVolumeInfoSync()
  5761. *
  5762. * Availability:
  5763. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5764. * CarbonLib: in CarbonLib 1.0 and later
  5765. * Mac OS X: in version 10.0 and later
  5766. }
  5767. function PBGetVolumeInfoSync(var paramBlock: FSVolumeInfoParam): OSErr; external name '_PBGetVolumeInfoSync';
  5768. {
  5769. * PBGetVolumeInfoAsync()
  5770. *
  5771. * Availability:
  5772. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5773. * CarbonLib: in CarbonLib 1.0 and later
  5774. * Mac OS X: in version 10.0 and later
  5775. }
  5776. procedure PBGetVolumeInfoAsync(var paramBlock: FSVolumeInfoParam); external name '_PBGetVolumeInfoAsync';
  5777. {
  5778. SetVolumeInfo
  5779. Set information about a given volume.
  5780. -> ioCompletion A pointer to a completion routine
  5781. <- ioResult The result code of the function
  5782. -> ioVRefNum The volume whose information is to be changed
  5783. -> whichInfo Which catalog info fields to set
  5784. -> volumeInfo The new values of volume info fields
  5785. Note: Only some of the volume info fields may be set. The settable fields
  5786. are given by the constant kFSVolInfoSettableInfo; no other bits may be set in
  5787. whichInfo.
  5788. }
  5789. {
  5790. * FSSetVolumeInfo()
  5791. *
  5792. * Availability:
  5793. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5794. * CarbonLib: in CarbonLib 1.0 and later
  5795. * Mac OS X: in version 10.0 and later
  5796. }
  5797. function FSSetVolumeInfo(volume: FSVolumeRefNum; whichInfo: FSVolumeInfoBitmap; const (*var*) info: FSVolumeInfo): OSErr; external name '_FSSetVolumeInfo';
  5798. {
  5799. * PBSetVolumeInfoSync()
  5800. *
  5801. * Availability:
  5802. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5803. * CarbonLib: in CarbonLib 1.0 and later
  5804. * Mac OS X: in version 10.0 and later
  5805. }
  5806. function PBSetVolumeInfoSync(var paramBlock: FSVolumeInfoParam): OSErr; external name '_PBSetVolumeInfoSync';
  5807. {
  5808. * PBSetVolumeInfoAsync()
  5809. *
  5810. * Availability:
  5811. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5812. * CarbonLib: in CarbonLib 1.0 and later
  5813. * Mac OS X: in version 10.0 and later
  5814. }
  5815. procedure PBSetVolumeInfoAsync(var paramBlock: FSVolumeInfoParam); external name '_PBSetVolumeInfoAsync';
  5816. {
  5817. FSGetDataForkName
  5818. Returns the constant for the name of the data fork (the empty string)
  5819. }
  5820. {
  5821. * FSGetDataForkName()
  5822. *
  5823. * Availability:
  5824. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5825. * CarbonLib: in CarbonLib 1.0 and later
  5826. * Mac OS X: in version 10.0 and later
  5827. }
  5828. function FSGetDataForkName(var dataForkName: HFSUniStr255): OSErr; external name '_FSGetDataForkName';
  5829. {
  5830. FSGetResourceForkName
  5831. Returns the constant for the name of the resource fork
  5832. (currently "RESOURCE_FORK").
  5833. }
  5834. {
  5835. * FSGetResourceForkName()
  5836. *
  5837. * Availability:
  5838. * Non-Carbon CFM: in InterfaceLib 9.0 and later
  5839. * CarbonLib: in CarbonLib 1.0 and later
  5840. * Mac OS X: in version 10.0 and later
  5841. }
  5842. function FSGetResourceForkName(var resourceForkName: HFSUniStr255): OSErr; external name '_FSGetResourceForkName';
  5843. {
  5844. * FSRefMakePath()
  5845. *
  5846. * Summary:
  5847. * Converts an FSRef to a pathname.
  5848. *
  5849. * Parameters:
  5850. *
  5851. * ref:
  5852. * An FSRef to the file or directory to get the pathname for.
  5853. *
  5854. * path:
  5855. * A pointer to a buffer which FSRefMakePath will fill with a C
  5856. * string representing the pathname to the file or directory
  5857. * specified by the ref parameter. The format of the pathname
  5858. * returned can be determined with the Gestalt selector
  5859. * gestaltFSAttr's gestaltFSUsesPOSIXPathsForConversion bit.
  5860. * If the gestaltFSUsesPOSIXPathsForConversion bit is clear, the
  5861. * pathname is a Mac OS File Manager full pathname in a C string,
  5862. * and file or directory names in the pathname may be mangled as
  5863. * returned by the File Manager.
  5864. * If the gestaltFSUsesPOSIXPathsForConversion bit is set, the
  5865. * pathname is a UTF8 encoded POSIX absolute pathname in a C
  5866. * string.
  5867. * In either case, the pathname returned can be passed back to
  5868. * FSRefMakePath to create an FSRef to the file or directory.
  5869. *
  5870. * maxPathSize:
  5871. * The size of the path buffer in bytes. If the path buffer is too
  5872. * small for the pathname string, FSRefMakePath returns
  5873. * pathTooLongErr or buffersTooSmall.
  5874. *
  5875. * Availability:
  5876. * Non-Carbon CFM: not available
  5877. * CarbonLib: in CarbonLib 1.1 and later
  5878. * Mac OS X: in version 10.0 and later
  5879. }
  5880. function FSRefMakePath(const (*var*) ref: FSRef; path: CStringPtr; maxPathSize: UInt32): OSStatus; external name '_FSRefMakePath';
  5881. {
  5882. * FSPathMakeRef()
  5883. *
  5884. * Summary:
  5885. * Converts a pathname to an FSRef.
  5886. *
  5887. * Parameters:
  5888. *
  5889. * path:
  5890. * A pointer to a C String that is the pathname. The format of the
  5891. * pathname you must supply can be determined with the Gestalt
  5892. * selector gestaltFSAttr's gestaltFSUsesPOSIXPathsForConversion
  5893. * bit.
  5894. * If the gestaltFSUsesPOSIXPathsForConversion bit is clear, the
  5895. * pathname must be a Mac OS File Manager full pathname in a C
  5896. * string.
  5897. * If the gestaltFSUsesPOSIXPathsForConversion bit is set, the
  5898. * pathname must be a UTF8 encoded POSIX absolute pathname in a C
  5899. * string.
  5900. * In either case, the pathname returned by FSRefMakePath can be
  5901. * passed to FSPathMakeRef.
  5902. *
  5903. * ref:
  5904. * A pointer to an FSRef to fill in.
  5905. *
  5906. * isDirectory:
  5907. * An optional pointer to a Boolean that will be filled in to
  5908. * indicate if the specified path is a directory (vs. a file).
  5909. *
  5910. * Availability:
  5911. * Non-Carbon CFM: not available
  5912. * CarbonLib: in CarbonLib 1.1 and later
  5913. * Mac OS X: in version 10.0 and later
  5914. }
  5915. function FSPathMakeRef(path: CStringPtr; var ref: FSRef; isDirectory: BooleanPtr): OSStatus; external name '_FSPathMakeRef';
  5916. {
  5917. * FNMessage
  5918. *
  5919. * Discussion:
  5920. * Messages broadcast about a directory. If system clients (such as
  5921. * the Finder) are interested in changes to a directory, they will
  5922. * receive notifications when application code broadcasts change
  5923. * messages about that directory.
  5924. }
  5925. type
  5926. FNMessage = UInt32;
  5927. const
  5928. kFNDirectoryModifiedMessage = 1;
  5929. {
  5930. * FNNotify()
  5931. *
  5932. * Summary:
  5933. * Broadcasts notification of changes to the specified directory.
  5934. *
  5935. * Parameters:
  5936. *
  5937. * ref:
  5938. * The directory for which to broadcast the notification
  5939. *
  5940. * message:
  5941. * An indication of what happened to the target directory
  5942. *
  5943. * flags:
  5944. * Options about delivery of the notification (specify kNilOptions
  5945. * for default behaviour)
  5946. *
  5947. * Availability:
  5948. * Non-Carbon CFM: not available
  5949. * CarbonLib: in CarbonLib 1.5 and later
  5950. * Mac OS X: in version 10.0 and later
  5951. }
  5952. function FNNotify(const (*var*) ref: FSRef; message: FNMessage; flags: OptionBits): OSStatus; external name '_FNNotify';
  5953. {
  5954. * FNNotifyByPath()
  5955. *
  5956. * Summary:
  5957. * Broadcasts notification of changes to the specified directory.
  5958. *
  5959. * Parameters:
  5960. *
  5961. * path:
  5962. * Path to the directory for which to broadcast the notification
  5963. *
  5964. * message:
  5965. * An indication of what happened to the target directory
  5966. *
  5967. * flags:
  5968. * Options about delivery of the notification (specify kNilOptions
  5969. * for default behaviour)
  5970. *
  5971. * Availability:
  5972. * Non-Carbon CFM: not available
  5973. * CarbonLib: in CarbonLib 1.5 and later
  5974. * Mac OS X: in version 10.0 and later
  5975. }
  5976. function FNNotifyByPath(path: CStringPtr; message: FNMessage; flags: OptionBits): OSStatus; external name '_FNNotifyByPath';
  5977. {
  5978. * FNNotifyAll()
  5979. *
  5980. * Discussion:
  5981. * Broadcasts notification of changes to the filesystem (should only
  5982. * be used by installers or programs which make lots of changes and
  5983. * only send one broadcast).
  5984. *
  5985. * Parameters:
  5986. *
  5987. * message:
  5988. * An indication of what happened
  5989. *
  5990. * flags:
  5991. * Options about delivery of the notification (specify kNilOptions
  5992. * for default behaviour)
  5993. *
  5994. * Availability:
  5995. * Non-Carbon CFM: not available
  5996. * CarbonLib: in CarbonLib 1.5 and later
  5997. * Mac OS X: in version 10.0 and later
  5998. }
  5999. function FNNotifyAll(message: FNMessage; flags: OptionBits): OSStatus; external name '_FNNotifyAll';
  6000. {
  6001. * FNSubscriptionRef
  6002. *
  6003. * Discussion:
  6004. * A token associated with a notification subscription. The
  6005. * subscriber gets one back when they subscribe to notifications for
  6006. * a particular directory, and they supply it when the unsubscribe.
  6007. * It is also delivered along with the notifications for that
  6008. * subscription.
  6009. }
  6010. type
  6011. FNSubscriptionRef = ^SInt32; { an opaque 32-bit type }
  6012. FNSubscriptionRefPtr = ^FNSubscriptionRef; { when a var xx:FNSubscriptionRef parameter can be nil, it is changed to xx: FNSubscriptionRefPtr }
  6013. {
  6014. * Discussion:
  6015. * Options that can be specified at subscription time.
  6016. }
  6017. const
  6018. kFNNoImplicitAllSubscription = $01;
  6019. {
  6020. * FNSubscriptionProcPtr
  6021. *
  6022. * Discussion:
  6023. * Callback delivered for directory notifications.
  6024. *
  6025. * Parameters:
  6026. *
  6027. * message:
  6028. * An indication of what happened
  6029. *
  6030. * flags:
  6031. * Options about delivery of the notification (typically
  6032. * kNilOptions)
  6033. *
  6034. * refcon:
  6035. * User reference supplied with subscription
  6036. *
  6037. * subscription:
  6038. * Subscription corresponding to this notification
  6039. }
  6040. type
  6041. {$ifc TYPED_FUNCTION_POINTERS}
  6042. FNSubscriptionProcPtr = procedure(message: FNMessage; flags: OptionBits; refcon: UnivPtr; subscription: FNSubscriptionRef);
  6043. {$elsec}
  6044. FNSubscriptionProcPtr = ProcPtr;
  6045. {$endc}
  6046. {$ifc OPAQUE_UPP_TYPES}
  6047. FNSubscriptionUPP = ^SInt32; { an opaque UPP }
  6048. {$elsec}
  6049. FNSubscriptionUPP = FNSubscriptionProcPtr;
  6050. {$endc}
  6051. const
  6052. uppFNSubscriptionProcInfo = $00003FC1;
  6053. {
  6054. * NewFNSubscriptionUPP()
  6055. *
  6056. * Availability:
  6057. * Non-Carbon CFM: available as macro/inline
  6058. * CarbonLib: in CarbonLib on Mac OS X
  6059. * Mac OS X: in version 10.0 and later
  6060. }
  6061. function NewFNSubscriptionUPP(userRoutine: FNSubscriptionProcPtr): FNSubscriptionUPP; external name '_NewFNSubscriptionUPP';
  6062. {
  6063. * DisposeFNSubscriptionUPP()
  6064. *
  6065. * Availability:
  6066. * Non-Carbon CFM: available as macro/inline
  6067. * CarbonLib: in CarbonLib on Mac OS X
  6068. * Mac OS X: in version 10.0 and later
  6069. }
  6070. procedure DisposeFNSubscriptionUPP(userUPP: FNSubscriptionUPP); external name '_DisposeFNSubscriptionUPP';
  6071. {
  6072. * InvokeFNSubscriptionUPP()
  6073. *
  6074. * Availability:
  6075. * Non-Carbon CFM: available as macro/inline
  6076. * CarbonLib: in CarbonLib on Mac OS X
  6077. * Mac OS X: in version 10.0 and later
  6078. }
  6079. procedure InvokeFNSubscriptionUPP(message: FNMessage; flags: OptionBits; refcon: UnivPtr; subscription: FNSubscriptionRef; userRoutine: FNSubscriptionUPP); external name '_InvokeFNSubscriptionUPP';
  6080. {
  6081. * FNSubscribe()
  6082. *
  6083. * Summary:
  6084. * Subscribe to change notifications for the specified directory.
  6085. *
  6086. * Parameters:
  6087. *
  6088. * directoryRef:
  6089. * Directory for which the caller wants notifications
  6090. *
  6091. * callback:
  6092. * Function to call back when a notification arrives
  6093. *
  6094. * refcon:
  6095. * User state carried with the subscription
  6096. *
  6097. * flags:
  6098. * Options for future use (specify kNilOptions, or one of the
  6099. * FNSubscriptionOptions)
  6100. *
  6101. * subscription:
  6102. * Subscription token for subsequent query or unsubscription
  6103. *
  6104. * Availability:
  6105. * Non-Carbon CFM: not available
  6106. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  6107. * Mac OS X: in version 10.1 and later
  6108. }
  6109. function FNSubscribe(const (*var*) directoryRef: FSRef; callback: FNSubscriptionUPP; refcon: UnivPtr; flags: OptionBits; var subscription: FNSubscriptionRef): OSStatus; external name '_FNSubscribe';
  6110. {
  6111. * FNSubscribeByPath()
  6112. *
  6113. * Summary:
  6114. * Subscribe to change notifications for the specified directory.
  6115. *
  6116. * Parameters:
  6117. *
  6118. * directoryPath:
  6119. * Directory for which the caller wants notifications
  6120. *
  6121. * callback:
  6122. * Function to call back when a notification arrives
  6123. *
  6124. * refcon:
  6125. * User state carried with the subscription
  6126. *
  6127. * flags:
  6128. * Options for future use (specify kNilOptions, or one of the
  6129. * FNSubscriptionOptions)
  6130. *
  6131. * subscription:
  6132. * Subscription token for subsequent query or unsubscription
  6133. *
  6134. * Availability:
  6135. * Non-Carbon CFM: not available
  6136. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  6137. * Mac OS X: in version 10.1 and later
  6138. }
  6139. function FNSubscribeByPath(directoryPath: CStringPtr; callback: FNSubscriptionUPP; refcon: UnivPtr; flags: OptionBits; var subscription: FNSubscriptionRef): OSStatus; external name '_FNSubscribeByPath';
  6140. {
  6141. * FNUnsubscribe()
  6142. *
  6143. * Summary:
  6144. * Release a subscription which is no longer needed.
  6145. *
  6146. * Parameters:
  6147. *
  6148. * subscription:
  6149. * Subscription previously returned from FNSubscribe or
  6150. * FNSubscribeForPath
  6151. *
  6152. * Availability:
  6153. * Non-Carbon CFM: not available
  6154. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  6155. * Mac OS X: in version 10.1 and later
  6156. }
  6157. function FNUnsubscribe(subscription: FNSubscriptionRef): OSStatus; external name '_FNUnsubscribe';
  6158. {
  6159. * FNGetDirectoryForSubscription()
  6160. *
  6161. * Summary:
  6162. * Fetch the directory for which this subscription was originally
  6163. * entered. There is no path variant because paths are fragile, and
  6164. * the path may have changed. If the caller does not care about
  6165. * this subtlety, she can call FSRefMakePath to get a path from the
  6166. * returned ref.
  6167. *
  6168. * Parameters:
  6169. *
  6170. * subscription:
  6171. * Subscription previously returned from FNSubscribe or
  6172. * FNSubscribeForPath
  6173. *
  6174. * ref:
  6175. * Directory for which this subscription was created
  6176. *
  6177. * Availability:
  6178. * Non-Carbon CFM: not available
  6179. * CarbonLib: not available in CarbonLib 1.x, is available on Mac OS X version 10.1 and later
  6180. * Mac OS X: in version 10.1 and later
  6181. }
  6182. function FNGetDirectoryForSubscription(subscription: FNSubscriptionRef; var ref: FSRef): OSStatus; external name '_FNGetDirectoryForSubscription';
  6183. {$ALIGN MAC68K}
  6184. end.