rem this file is "pSurvex.oph" rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rem Things you might want to configure rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ const LINELENGTH% = 255 rem Maximum line length const stringALU% = 10240 rem Set these manually to const surveyALU& = 96 rem max number of surveys, const stationALU& = 2048 rem stations, legs and const legALU& = 2048 rem sum of string lengths const stackALU% = 1024 rem stack size rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rem You shouldn't need to change anything rem below this point rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ const FALSE% = 0 const TRUE% = -1 const NULL% = -2 const ALLOWDEBUG% = -1 const flagCALC% = $01 const flagFIX% = $02 const flagSURFACE% = $04 const flagSPLAY% = $08 const flagDUPLICATE% = $10 const sizeofBYTE% = 1 const sizeofINT% = 2 const sizeofLONG% = 4 const sizeofFLOAT% = 8 const sizeofSURVEY% = 50 const sizeofSTATION% = 46 const sizeofLEG% = 40 rem Survey data rem ~~~~~~~~~~~ const OFFflags% = 0 rem int const OFFname% = 2 rem long (ptr) const OFFparent% = 6 rem long (ptr) const OFFdaughter% = 10 rem long (ptr) const OFFsister% = 14 rem long (ptr) const OFFstationHead% = 18 rem long (ptr) const OFFstationTail% = 22 rem long (ptr) const OFFtapeCalib% = 26 rem float const OFFcompassCalib% = 34 rem float const OFFclinoCalib% = 42 rem float rem const sizeofSURVEY% = 50 rem Station data rem ~~~~~~~~~~~~ rem const OFFflags% = 0 rem int rem const OFFname% = 2 rem long (ptr) const OFFsurvey% = 6 rem long (ptr) const OFFnext% = 10 rem long (ptr) const OFFlegHead% = 14 rem long (ptr) const OFFbackLegHead% = 18 rem long (ptr) const OFFeast% = 22 rem float const OFFnorth% = 30 rem float const OFFheight% = 38 rem float rem const sizeofSTATION% = 46 rem Leg data rem ~~~~~~~~ rem const OFFflags% = 0 rem int const OFFfrom% = 2 rem long (ptr) const OFFfromSister% = 6 rem long (ptr) const OFFto% = 10 rem long (ptr) const OFFtoSister% = 14 rem long (ptr) const OFFtape% = 18 rem float const OFFcompass% = 26 rem float const OFFclino% = 32 rem float rem const sizeofLEG% = 40 rem Function prototypes rem ~~~~~~~~~~~~~~~~~~~ external init: external main: external readFile:(filename$) external parseLine: external nextToken$: external addLeg:(from$,to$,tape,compass,clino,flags%) external setLeg:(leg&,tape,compass,clino,flags%) external newLeg&:(from&,to&) external getStation&:(name$) external getSurvey&:(name$,root&) external compute: external doOutput:(dp&) external drawSurvey:(root&) external reallocLegs: external reallocStations: external reallocSurveys: external reallocStringTable:(min%) external stackOverflow: external pushw:(w%) external pushl:(l&) external pushf:(f) external popw%: external popl&: external popf: external statusText:(text$) external status: external drawConsole: external internalError:(text$) external fatalError:(text$) external error:(text$) external warn:(text$) external parseData:(token1$) external parseBEGIN: external parseEND: external parseFIX: external parseEQUATE: external parseINCLUDE: external parseEXPORT: external parseFLAGS: external parseTEAM: external parseCALIBRATE: external parseDATE: external parseINSTRUMENTS: rem FIXME - only one of these external parseINSTRUMENT: rem is valid external printSurvey:(survey&) external printStation:(station&) external printLeg:(leg&) external getFlags%:(s&) external setFlags:(s&,flags%) external unsetFlags:(s&,flags%) external testFlags%:(s&,flags%) external zeroFlags:(s&) external getName$:(s&) external setName:(s&,name$) external getParent&:(survey&) external setParent:(survey&,parent&) external getDaughter&:(survey&) external setDaughter:(survey&,daughter&) external getSister&:(survey&) external setSister:(survey&,sister&) external getStationHead&:(survey&) external setStationHead:(survey&,stationHead&) external getStationTail&:(survey&) external setStationTail:(survey&,stationTail&) external getTapeCalib:(survey&) external setTapeCalib:(survey&,tapeCalib) external getCompassCalib:(survey&) external setCompassCalib:(survey&,compassCalib) external getClinoCalib:(survey&) external setClinoCalib:(survey&,clinoCalib) external getInSurvey&:(station&) external setInSurvey:(station&,survey&) external getNext&:(station&) external setNext:(station&,next&) external getLegHead&:(station&) external setLegHead:(station&,legHead&) external getBacklegHead&:(station&) external setBacklegHead:(station&,backlegHead&) external getEast:(station&) external setEast:(station&,east) external getNorth:(station&) external setNorth:(station&,north) external getHeight:(station&) external setHeight:(station&,height) external getFrom&:(leg&) external setFrom:(leg&,from&) external getFromSister&:(leg&) external setFromSister:(leg&,sister&) external getTo&:(leg&) external setTo:(leg&,to&) external getToSister&:(leg&) external setToSister:(leg&,sister&) external getTape:(leg&) external setTape:(leg&,tape) external getCompass:(leg&) external setCompass:(leg&,compass) external getClino:(leg&) external setClino:(leg&,clino) rem ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rem Compile "pSurvex" not "pSurvex.oph" !