home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-bin / x11r6.1 / include / x11 / pex5 / pex.h next >
Encoding:
C/C++ Source or Header  |  1996-10-17  |  45.2 KB  |  1,223 lines

  1. #ifndef _PEX_H_
  2. #define _PEX_H_
  3.  
  4. /* $XConsortium: PEX.h,v 1.8 94/03/18 10:37:25 mor Exp $ */
  5.  
  6. /******************************************************************************/
  7. /*  Copyright 1987,1991 by Digital Equipment Corporation, Maynard, Mass.      */
  8. /*                                                                            */
  9. /*  (c) Copyright Hewlett-Packard Company, 1992,  Fort Collins, Colorado      */
  10. /*                                                                            */
  11. /*                            All Rights Reserved                             */
  12. /*                                                                            */
  13. /*  Permission to use, copy, modify, and distribute this software and its     */
  14. /*  documentation for any purpose and without fee is hereby granted,          */
  15. /*  provided that the above copyright notices appear in all copies and that   */
  16. /*  both the copyright notices and this permission notice appear in           */
  17. /*  supporting documentation, and that the names of Digital or                */
  18. /*  Hewlett-Packard not be used in advertising or publicity pertaining to     */
  19. /*  distribution of the software without specific, written prior permission.  */
  20. /*                                                                            */
  21. /*  DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING  */
  22. /*  ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL  */
  23. /*  DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR   */
  24. /*  ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,       */
  25. /*  WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,    */
  26. /*  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS       */
  27. /*  SOFTWARE.                                                                 */
  28. /*                                                                            */
  29. /*  HEWLETT-PACKARD MAKES NO WARRANTY OF ANY KIND WITH REGARD TO THIS         */
  30. /*  SOFTWARE, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF        */
  31. /*  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  Hewlett-Packard    */
  32. /*  shall not be liable for errors contained herein or direct, indirect,      */
  33. /*  special, incidental or consequential damages in connection with the       */
  34. /*  furnishing, performance or use of this software.                          */
  35. /*                                                                            */
  36. /******************************************************************************/
  37.  
  38. /*
  39.  * PEX extension name
  40.  */
  41. #define PEX_NAME_STRING                 "X3D-PEX"
  42.  
  43. /*
  44.  * PEX protocol major and minor numbers
  45.  */
  46. #define PEX_PROTO_MAJOR                 5               /* 5.1 protocol */
  47. #define PEX_PROTO_MINOR                 1               /* 5.1 protocol */
  48.  
  49. /*
  50.  * PEX standard subsets
  51.  */
  52. #define PEXCompleteImplementation       0
  53. #define PEXImmediateMode                (1L<<0)
  54. #define PEXWorkstationOnly              (1L<<1)
  55. #define PEXStructureMode                (1L<<2)
  56.  
  57. /*
  58.  * enumerated type information
  59.  */
  60. #define PEXETCounts                     0
  61. #define PEXETIndex                      (1L<<0)
  62. #define PEXETMnemonic                   (1L<<1)
  63. #define PEXETAll                        (PEXETIndex | PEXETMnemonic)
  64.  
  65. /* enumerated types */
  66. #define PEXETMarkerType                 1
  67. #define PEXETATextStyle                 2
  68. #define PEXETInteriorStyle              3
  69. #define PEXETHatchStyle                 4
  70. #define PEXETLineType                   5
  71. #define PEXETSurfaceEdgeType            6
  72. #define PEXETPickDeviceType             7
  73. #define PEXETPolylineInterpMethod       8
  74. #define PEXETCurveApproxMethod          9
  75. #define PEXETReflectionModel            10
  76. #define PEXETSurfaceInterpMethod        11
  77. #define PEXETSurfaceApproxMethod        12
  78. #define PEXETModelClipOperator          13
  79. #define PEXETLightType                  14
  80. #define PEXETColorType                  15
  81. #define PEXETFloatFormat                16
  82. #define PEXETHLHSRMode                  17
  83. #define PEXETPromptEchoType             18
  84. #define PEXETDisplayUpdateMode          19
  85. #define PEXETColorApproxType            20
  86. #define PEXETColorApproxModel           21
  87. #define PEXETGDP2D                      22
  88. #define PEXETGDP                        23
  89. #define PEXETGSE                        24
  90. #define PEXETTrimCurveApproxMethod      25
  91. #define PEXETRenderingColorModel        26
  92. #define PEXETParaSurfCharacteristics    27
  93. #define PEXETEscape                     28
  94. #define PEXETPickOneMethod              29
  95. #define PEXETPickAllMethod              30
  96.  
  97. /* enumerated type values */
  98.  
  99. /* marker types */
  100. #define PEXMarkerDot                    1
  101. #define PEXMarkerCross                  2
  102. #define PEXMarkerAsterisk               3
  103. #define PEXMarkerCircle                 4
  104. #define PEXMarkerX                      5
  105.  
  106. /* marker type mnemonics */
  107. #define PEXETMMarkerDot                 "Dot"
  108. #define PEXETMMarkerCross               "Cross"
  109. #define PEXETMMarkerAsterisk            "Asterisk"
  110. #define PEXETMMarkerCircle              "Circle"
  111. #define PEXETMMarkerX                   "X"
  112.  
  113. /* annotation text styles */
  114. #define PEXATextNotConnected            1
  115. #define PEXATextConnected               2
  116.  
  117. /* annotation text style mnemonics */
  118. #define PEXETMATextNotConnected         "NotConnected"
  119. #define PEXETMATextConnected            "Connected"
  120.  
  121. /* interior styles */
  122. #define PEXInteriorStyleHollow          1
  123. #define PEXInteriorStyleSolid           2
  124. #define PEXInteriorStylePattern         3
  125. #define PEXInteriorStyleHatch           4
  126. #define PEXInteriorStyleEmpty           5
  127.  
  128. /* interior style mnemonics */
  129. #define PEXETMInteriorStyleHollow       "Hollow"
  130. #define PEXETMInteriorStyleSolid        "Solid"
  131. #define PEXETMInteriorStylePattern      "Pattern"
  132. #define PEXETMInteriorStyleHatch        "Hatch"
  133. #define PEXETMInteriorStyleEmpty        "Empty"
  134.  
  135. /* hatch style */
  136.  
  137. /* line types */
  138. #define PEXLineTypeSolid                1
  139. #define PEXLineTypeDashed               2
  140. #define PEXLineTypeDotted               3
  141. #define PEXLineTypeDashDot              4
  142.  
  143. /* line type mnemonics */
  144. #define PEXETMLineTypeSolid             "Solid"
  145. #define PEXETMLineTypeDashed            "Dashed"
  146. #define PEXETMLineTypeDotted            "Dotted"
  147. #define PEXETMLineTypeDashDot           "DashDot"
  148.  
  149. /* surface edge types */
  150. #define PEXSurfaceEdgeSolid             1
  151. #define PEXSurfaceEdgeDashed            2
  152. #define PEXSurfaceEdgeDotted            3
  153. #define PEXSurfaceEdgeDashDot           4
  154.  
  155. /* surface edge type mnemonics */
  156. #define PEXETMSurfaceEdgeSolid          "Solid"
  157. #define PEXETMSurfaceEdgeDashed         "Dashed"
  158. #define PEXETMSurfaceEdgeDotted         "Dotted"
  159. #define PEXETMSurfaceEdgeDashDot        "DashDot"
  160.  
  161. /* pick device types */
  162. #define PEXPickDeviceDCHitBox           1
  163. #define PEXPickDeviceNPCHitVolume       2
  164.  
  165. /* pick device type mnemonics */
  166. #define PEXETMPickDeviceDCHitBox        "DC_HitBox"
  167. #define PEXETMPickDeviceNPCHitVolume    "NPC_HitVolume"
  168.  
  169. /* polyline interpolation methods */
  170. #define PEXPolylineInterpNone           1
  171. #define PEXPolylineInterpColor          2
  172.  
  173. /* polyline interpolation method mnemonics */
  174. #define PEXETMPolylineInterpNone        "None"
  175. #define PEXETMPolylineInterpColor       "Color"
  176.  
  177. /* curve, surface and trim curve approximation methods */
  178. #define PEXApproxImpDep                 1
  179. #define PEXApproxConstantBetweenKnots   2
  180. #define PEXApproxWCChordalSize          3
  181. #define PEXApproxNPCChordalSize         4
  182. #define PEXApproxDCChordalSize          5
  183. #define PEXCurveApproxWCChordalDev      6
  184. #define PEXCurveApproxNPCChordalDev     7
  185. #define PEXCurveApproxDCChordalDev      8
  186. #define PEXSurfaceApproxWCPlanarDev     6
  187. #define PEXSurfaceApproxNPCPlanarDev    7
  188. #define PEXSurfaceApproxDCPlanarDev     8
  189. #define PEXApproxWCRelative             9
  190. #define PEXApproxNPCRelative            10
  191. #define PEXApproxDCRelative             11
  192.  
  193. /* curve, surface and trim curve approximation method mnemonics */
  194.      /* PEXApproxImpDep                 is an implementation-dependent string */
  195. #define PEXETMApproxConstantBetweenKnots "ConstantBetweenKnots"
  196. #define PEXETMApproxWCChordalSize       "WCS_ChordalSize"
  197. #define PEXETMApproxNPCChordalSize      "NPC_ChordalSize"
  198. #define PEXETMApproxDCChordalSize       "DC_ChordalSize"
  199. #define PEXETMCurveApproxWCChordalDev   "WCS_ChordalDev"
  200. #define PEXETMCurveApproxNPCChordalDev  "NPC_ChordalDev"
  201. #define PEXETMCurveApproxDCChordalDev   "DC_ChordalDev"
  202. #define PEXETMSurfaceApproxWCPlanarDev  "WCS_PlanarDev"
  203. #define PEXETMSurfaceApproxNPCPlanarDev "NPC_PlanarDev"
  204. #define PEXETMSurfaceApproxDCPlanarDev  "DC_PlanarDev"
  205. #define PEXETMApproxWCRelative          "WCS_Relative"
  206. #define PEXETMApproxNPCRelative         "NPC_Relative"
  207. #define PEXETMApproxDCRelative          "DC_Relative"
  208.  
  209. /* reflection models */
  210. #define PEXReflectionNone               1
  211. #define PEXReflectionAmbient            2
  212. #define PEXReflectionDiffuse            3
  213. #define PEXReflectionSpecular           4
  214.  
  215. /* reflection model mnemonics */
  216. #define PEXETMReflectionNone            "NoShading"
  217. #define PEXETMReflectionAmbient         "Ambient"
  218. #define PEXETMReflectionDiffuse         "Diffuse"
  219. #define PEXETMReflectionSpecular        "Specular"
  220.  
  221. /* surface interpolation methods */
  222. #define PEXSurfaceInterpNone            1
  223. #define PEXSurfaceInterpColor           2
  224. #define PEXSurfaceInterpDotProduct      3
  225. #define PEXSurfaceInterpNormal          4
  226.  
  227. /* surface interpolation method mnemonics */
  228. #define PEXETMSurfaceInterpNone         "None"
  229. #define PEXETMSurfaceInterpColor        "Color"
  230. #define PEXETMSurfaceInterpDotProduct   "DotProduct"
  231. #define PEXETMSurfaceInterpNormal       "Normal"
  232.  
  233. /* model clip operators */
  234. #define PEXModelClipReplace             1
  235. #define PEXModelClipIntersection        2
  236.  
  237. /* model clip operator mnemonics */
  238. #define PEXETMModelClipReplace          "Replace"
  239. #define PEXETMModelClipIntersection     "Intersection"
  240.  
  241. /* light types */
  242. #define PEXLightAmbient                 1
  243. #define PEXLightWCVector                2
  244. #define PEXLightWCPoint                 3
  245. #define PEXLightWCSpot                  4
  246.  
  247. /* light type mnemonics */
  248. #define PEXETMLightAmbient              "Ambient"
  249. #define PEXETMLightWCVector             "WCS_Vector"
  250. #define PEXETMLightWCPoint              "WCS_Point"
  251. #define PEXETMLightWCSpot               "WCS_Spot"
  252.  
  253. /* color types */
  254. #define PEXColorTypeIndexed             0
  255. #define PEXColorTypeRGB                 1
  256. #define PEXColorTypeCIE                 2
  257. #define PEXColorTypeHSV                 3
  258. #define PEXColorTypeHLS                 4
  259. #define PEXColorTypeRGB8                5
  260. #define PEXColorTypeRGB16               6
  261.  
  262. /* color type mnemonics */
  263. #define PEXETMColorTypeIndexed          "Indexed"
  264. #define PEXETMColorTypeRGB              "RGBFloat"
  265. #define PEXETMColorTypeCIE              "CIEFloat"
  266. #define PEXETMColorTypeHSV              "HSVFloat"
  267. #define PEXETMColorTypeHLS              "HLSFloat"
  268. #define PEXETMColorTypeRGB8             "RGBInt8"
  269. #define PEXETMColorTypeRGB16            "RGBInt16"
  270.  
  271. /* float formats */
  272. #define PEXIEEE_754_32                  1
  273. #define PEXDEC_F_Floating               2
  274. #define PEXIEEE_754_64                  3
  275. #define PEXDEC_D_Floating               4
  276.  
  277. /* float format mnemonics */
  278. #define PEXETMIEEE_754_32               "IEEE_754_32"
  279. #define PEXETMDEC_F_Floating            "DEC_F_Floating"
  280. #define PEXETMIEEE_754_64               "IEEE_754_64"
  281. #define PEXETMDEC_D_Floating            "DEC_D_Floating"
  282.  
  283. /* HLHSR modes */
  284. #define PEXHLHSROff                     1
  285. #define PEXHLHSRZBuffer                 2
  286. #define PEXHLHSRPainters                3
  287. #define PEXHLHSRScanline                4
  288. #define PEXHLHSRHiddenLineOnly          5
  289. #define PEXHLHSRZBufferID               6
  290.  
  291. /* HLHSR mode mnemonics */
  292. #define PEXETMHLHSROff                  "Off"
  293. #define PEXETMHLHSRZBuffer              "ZBuffer"
  294. #define PEXETMHLHSRPainters             "Painters"
  295. #define PEXETMHLHSRScanline             "Scanline"
  296. #define PEXETMHLHSRHiddenLineOnly       "HiddenLineOnly"
  297. #define PEXETMHLHSRZBufferID            "ZBufferId"
  298.  
  299. /* prompt echo types */
  300. #define PEXEchoPrimitive                1
  301. #define PEXEchoStructure                2
  302. #define PEXEchoNetwork                  3
  303.  
  304. /* prompt echo type mnemonics */
  305. #define PEXETMEchoPrimitive             "EchoPrimitive"
  306. #define PEXETMEchoStructure             "EchoStructure"
  307. #define PEXETMEchoNetwork               "EchoNetwork"
  308.  
  309. /* display update methods */
  310. #define PEXVisualizeEach                1
  311. #define PEXVisualizeEasy                2
  312. #define PEXVisualizeNone                3
  313. #define PEXSimulateSome                 4
  314. #define PEXVisualizeWhenever            5
  315.  
  316. /* display update method mnemonics */
  317. #define PEXETMVisualizeEach             "VisualizeEach"
  318. #define PEXETMVisualizeEasy             "VisualizeEasy"
  319. #define PEXETMVisualizeNone             "VisualizeNone"
  320. #define PEXETMSimulateSome              "SimulateSome"
  321. #define PEXETMVisualizeWhenever         "VisualizeWhenever"
  322.  
  323. /* color approximation types */
  324. #define PEXColorSpace                   1
  325. #define PEXColorRange                   2
  326.  
  327. /* color approximation type mnemonics */
  328. #define PEXETMColorSpace                "ColorSpace"
  329. #define PEXETMColorRange                "ColorRange"
  330.  
  331. /* color approximation models */
  332. #define PEXColorApproxRGB               1
  333. #define PEXColorApproxCIE               2
  334. #define PEXColorApproxHSV               3
  335. #define PEXColorApproxHLS               4
  336. #define PEXColorApproxYIQ               5
  337.  
  338. /* color approximation model mnemonics */
  339. #define PEXETMColorApproxRGB            "RGB"
  340. #define PEXETMColorApproxCIE            "CIE"
  341. #define PEXETMColorApproxHSV            "HSV"
  342. #define PEXETMColorApproxHLS            "HLS"
  343. #define PEXETMColorApproxYIQ            "YIQ"
  344.  
  345. /* rendering color models */
  346. #define PEXRenderingColorModelImpDep    0
  347. #define PEXRenderingColorModelRGB       1
  348. #define PEXRenderingColorModelCIE       2
  349. #define PEXRenderingColorModelHSV       3
  350. #define PEXRenderingColorModelHLS       4
  351.  
  352. /* rendering color model mnemonics */
  353.      /* PEXETMRenderingColorModelImpDep is an implementation-dependent string */
  354. #define PEXETMRenderingColorModelRGB    "RGB"
  355. #define PEXETMRenderingColorModelCIE    "CIE"
  356. #define PEXETMRenderingColorModelHSV    "HSV"
  357. #define PEXETMRenderingColorModelHLS    "HLS"
  358.  
  359. /* parametric surface characteristics */
  360. #define PEXPSCNone                      1
  361. #define PEXPSCImpDep                    2
  362. #define PEXPSCIsoCurves                 3
  363. #define PEXPSCMCLevelCurves             4
  364. #define PEXPSCWCLevelCurves             5
  365.  
  366. /* parametric surface characteristic mnemonics */
  367. #define PEXETMPSCNone                   "None"
  368.      /* PEXETMPSCImpDep                 is an implementation-dependent string */
  369. #define PEXETMPSCIsoCurves              "IsoparametricCurves"
  370. #define PEXETMPSCMCLevelCurves          "MC_LevelCurves"
  371. #define PEXETMPSCWCLevelCurves          "WC_LevelCurves"
  372.  
  373. /* standard escape identifiers */
  374. #define PEXEscapeSetEchoColor           1
  375.  
  376. /* standard escape identifier mnemonics */
  377. #define PEXETMEscapeSetEchoColor        "SetEchoColor"
  378.  
  379. /* pick one methods */
  380. #define PEXPickLast                     1
  381. #define PEXPickClosestZ                 2
  382. #define PEXPickVisibleAny               3
  383. #define PEXPickVisibleClosest           4
  384.  
  385. /* pick one method mnemonics */
  386. #define PEXETMPickLast                  "Last"
  387. #define PEXETMPickClosestZ              "ClosestZ"
  388. #define PEXETMPickVisibleAny            "VisibleAny"
  389. #define PEXETMPickVisibleClosest        "VisibleClosest"
  390.  
  391. /* pick all methods */
  392. #define PEXPickAllAll                   1
  393. #define PEXPickAllVisible               2
  394.  
  395. /* pick all method mnemonics */
  396. #define PEXETMPickAllAll                "All"
  397. #define PEXETMPickAllVisible            "Visible"
  398.  
  399.  
  400. /*
  401.  * implementation dependent constants
  402.  */
  403. #define PEXIDDitheringSupported         1
  404. #define PEXIDMaxEdgeWidth               2
  405. #define PEXIDMaxLineWidth               3
  406. #define PEXIDMaxMarkerSize              4
  407. #define PEXIDMaxModelClipPlanes         5
  408. #define PEXIDMaxNameSetNames            6
  409. #define PEXIDMaxNonAmbientLights        7
  410. #define PEXIDMaxNURBOrder               8
  411. #define PEXIDMaxTrimCurveOrder          9
  412. #define PEXIDMinEdgeWidth               10
  413. #define PEXIDMinLineWidth               11
  414. #define PEXIDMinMarkerSize              12
  415. #define PEXIDNominalEdgeWidth           13
  416. #define PEXIDNominalLineWidth           14
  417. #define PEXIDNominalMarkerSize          15
  418. #define PEXIDNumSupportedEdgeWidths     16
  419. #define PEXIDNumSupportedLineWidths     17
  420. #define PEXIDNumSupportedMarkerSizes    18
  421. #define PEXIDBestColorApprox            19
  422. #define PEXIDTransparencySupported      20
  423. #define PEXIDDoubleBufferingSupported   21
  424. #define PEXIDChromaticityRedU           22
  425. #define PEXIDChromaticityRedV           23
  426. #define PEXIDLuminanceRed               24
  427. #define PEXIDChromaticityGreenU         25
  428. #define PEXIDChromaticityGreenV         26
  429. #define PEXIDLuminanceGreen             27
  430. #define PEXIDChromaticityBlueU          28
  431. #define PEXIDChromaticityBlueV          29
  432. #define PEXIDLuminanceBlue              30
  433. #define PEXIDChromaticityWhiteU         31
  434. #define PEXIDChromaticityWhiteV         32
  435. #define PEXIDLuminanceWhite             33
  436. #define PEXIDMaxHitsEventSupported      34
  437.  
  438. /* values for PEXIDBestColorApprox */
  439. #define PEXColorApproxAnyValues         0
  440. #define PEXColorApproxPowersOf2         1
  441.  
  442. /*
  443.  * match rendering targets
  444.  */
  445. #define PEXAnyDrawable                  0
  446. #define PEXWindowDrawable               1
  447. #define PEXPixmapDrawable               2
  448. #define PEXBufferDrawable               3
  449.  
  450.  
  451. /*
  452.  * output primitive and attribute values
  453.  */
  454.  
  455. /* shape hints */
  456. #define PEXShapeComplex                 0
  457. #define PEXShapeNonConvex               1
  458. #define PEXShapeConvex                  2
  459. #define PEXShapeUnknown                 3
  460.  
  461. /* contour hints */
  462. #define PEXContourDisjoint              0
  463. #define PEXContourNested                1
  464. #define PEXContourIntersecting          2
  465. #define PEXContourUnknown               3
  466.  
  467. /* facet and vertex attributes bitmask */
  468. #define PEXGANone                       0
  469. #define PEXGAColor                      (1L<<0)
  470. #define PEXGANormal                     (1L<<1)
  471. #define PEXGAEdges                      (1L<<2)
  472.  
  473. /* flags (e.g., switches, visibility, and edges) */
  474. #define PEXOff                          0
  475. #define PEXOn                           1
  476.  
  477. /* HLHSR identifier for PEXHLHSRZBufferID HLHSR mode */
  478. #define PEXHLHSRIDDisable               0
  479. #define PEXHLHSRIDEnable                1
  480.  
  481. /* text path direction */
  482. #define PEXPathRight                    0
  483. #define PEXPathLeft                     1
  484. #define PEXPathUp                       2
  485. #define PEXPathDown                     3
  486.  
  487. /* text vertical alignment */
  488. #define PEXVAlignNormal                 0
  489. #define PEXVAlignTop                    1
  490. #define PEXVAlignCap                    2
  491. #define PEXVAlignHalf                   3
  492. #define PEXVAlignBase                   4
  493. #define PEXVAlignBottom                 5
  494.  
  495. /* text horizontal alignment */
  496. #define PEXHAlignNormal                 0
  497. #define PEXHAlignLeft                   1
  498. #define PEXHAlignCenter                 2
  499. #define PEXHAlignRight                  3
  500.  
  501. /* text precision */
  502. #define PEXStringPrecision              0
  503. #define PEXCharPrecision                1
  504. #define PEXStrokePrecision              2
  505.  
  506. /* character set width */
  507. #define PEXCSByte                       0
  508. #define PEXCSShort                      1
  509. #define PEXCSLong                       2
  510.  
  511. /* curve and surface types */
  512. #define PEXRational                     0
  513. #define PEXNonRational                  1
  514.  
  515. /* clipping */
  516. #define PEXClipXY                       (1L<<0)
  517. #define PEXClipBack                     (1L<<1)
  518. #define PEXClipFront                    (1L<<2)
  519. #define PEXClippingAll                  (PEXClipXY | PEXClipBack | PEXClipFront)
  520.  
  521. #define PEXClip                         0
  522. #define PEXNoClip                       1
  523.  
  524. /* cull modes */
  525. #define PEXNone                         0
  526. #define PEXBackFaces                    1
  527. #define PEXFrontFaces                   2
  528.  
  529. /* local transform composition types */
  530. #define PEXPreConcatenate               0
  531. #define PEXPostConcatenate              1
  532. #define PEXReplace                      2
  533.  
  534. /* isoparametric curves placement types */
  535. #define PEXUniformPlacement             0
  536. #define PEXNonUniformPlacement          1
  537.  
  538. /* aspect source flags (ASFs) */
  539. #define PEXBundled                      0
  540. #define PEXIndividual                   1
  541.  
  542. /* mask values for setting ASFs */
  543. #define PEXASFMarkerType                (1L<<0)
  544. #define PEXASFMarkerScale               (1L<<1)
  545. #define PEXASFMarkerColor               (1L<<2)
  546. #define PEXASFTextFontIndex             (1L<<3)
  547. #define PEXASFTextPrec                  (1L<<4)
  548. #define PEXASFCharExpansion             (1L<<5)
  549. #define PEXASFCharSpacing               (1L<<6)
  550. #define PEXASFTextColor                 (1L<<7)
  551. #define PEXASFLineType                  (1L<<8)
  552. #define PEXASFLineWidth                 (1L<<9)
  553. #define PEXASFLineColor                 (1L<<10)
  554. #define PEXASFCurveApprox               (1L<<11)
  555. #define PEXASFPolylineInterp            (1L<<12)
  556. #define PEXASFInteriorStyle             (1L<<13)
  557. #define PEXASFInteriorStyleIndex        (1L<<14)
  558. #define PEXASFSurfaceColor              (1L<<15)
  559. #define PEXASFSurfaceInterp             (1L<<16)
  560. #define PEXASFReflectionModel           (1L<<17)
  561. #define PEXASFReflectionAttr            (1L<<18)
  562. #define PEXASFBFInteriorStyle           (1L<<19)
  563. #define PEXASFBFInteriorStyleIndex      (1L<<20)
  564. #define PEXASFBFSurfaceColor            (1L<<21)
  565. #define PEXASFBFSurfaceInterp           (1L<<22)
  566. #define PEXASFBFReflectionModel         (1L<<23)
  567. #define PEXASFBFReflectionAttr          (1L<<24)
  568. #define PEXASFSurfaceApprox             (1L<<25)
  569. #define PEXASFSurfaceEdges              (1L<<26)
  570. #define PEXASFSurfaceEdgeType           (1L<<27)
  571. #define PEXASFSurfaceEdgeWidth          (1L<<28)
  572. #define PEXASFSurfaceEdgeColor          (1L<<29)
  573.  
  574.  
  575. /*
  576.  * resource identifier value when resource is referenced, but freed
  577.  */
  578. #define PEXAlreadyFreed                 1
  579.  
  580.  
  581. /*
  582.  * pipeline context
  583.  */
  584.  
  585. /* pipeline context attributes bitmask shift values */
  586. #define PEXPCMarkerType                 0
  587. #define PEXPCMarkerScale                1
  588. #define PEXPCMarkerColor                2
  589. #define PEXPCMarkerBundleIndex          3
  590. #define PEXPCTextFont                   4
  591. #define PEXPCTextPrecision              5
  592. #define PEXPCCharExpansion              6
  593. #define PEXPCCharSpacing                7
  594. #define PEXPCTextColor                  8
  595. #define PEXPCCharHeight                 9
  596. #define PEXPCCharUpVector               10
  597. #define PEXPCTextPath                   11
  598. #define PEXPCTextAlignment              12
  599. #define PEXPCATextHeight                13
  600. #define PEXPCATextUpVector              14
  601. #define PEXPCATextPath                  15
  602. #define PEXPCATextAlignment             16
  603. #define PEXPCATextStyle                 17
  604. #define PEXPCTextBundleIndex            18
  605. #define PEXPCLineType                   19
  606. #define PEXPCLineWidth                  20
  607. #define PEXPCLineColor                  21
  608. #define PEXPCCurveApprox                22
  609. #define PEXPCPolylineInterp             23
  610. #define PEXPCLineBundleIndex            24
  611. #define PEXPCInteriorStyle              25
  612. #define PEXPCInteriorStyleIndex         26
  613. #define PEXPCSurfaceColor               27
  614. #define PEXPCReflectionAttr             28
  615. #define PEXPCReflectionModel            29
  616. #define PEXPCSurfaceInterp              30
  617. #define PEXPCBFInteriorStyle            31
  618.  
  619. #define PEXPCBFInteriorStyleIndex       32
  620. #define PEXPCBFSurfaceColor             33
  621. #define PEXPCBFReflectionAttr           34
  622. #define PEXPCBFReflectionModel          35
  623. #define PEXPCBFSurfaceInterp            36
  624. #define PEXPCSurfaceApprox              37
  625. #define PEXPCCullingMode                38
  626. #define PEXPCDistinguishFlag            39
  627. #define PEXPCPatternSize                40
  628. #define PEXPCPatternRefPoint            41
  629. #define PEXPCPatternRefVec1             42
  630. #define PEXPCPatternRefVec2             43
  631. #define PEXPCInteriorBundleIndex        44
  632. #define PEXPCSurfaceEdgeFlag            45
  633. #define PEXPCSurfaceEdgeType            46
  634. #define PEXPCSurfaceEdgeWidth           47
  635. #define PEXPCSurfaceEdgeColor           48
  636. #define PEXPCEdgeBundleIndex            49
  637. #define PEXPCLocalTransform             50
  638. #define PEXPCGlobalTransform            51
  639. #define PEXPCModelClip                  52
  640. #define PEXPCModelClipVolume            53
  641. #define PEXPCViewIndex                  54
  642. #define PEXPCLightState                 55
  643. #define PEXPCDepthCueIndex              56
  644. #define PEXPCASFValues                  57
  645. #define PEXPCPickID                     58
  646. #define PEXPCHLHSRIdentifier            59
  647. #define PEXPCNameSet                    60
  648. #define PEXPCColorApproxIndex           61
  649. #define PEXPCRenderingColorModel        62
  650. #define PEXPCParaSurfCharacteristics    63
  651. #define PEXPCMaxShift                   63
  652.  
  653.  
  654. /*
  655.  * renderer and renderer picking
  656.  */
  657.  
  658. /* renderer state */
  659. #define PEXIdle                         0
  660. #define PEXRendering                    1
  661. #define PEXPicking                      2
  662.  
  663. /* renderer dynamics */
  664. #define PEXDynamic                      0
  665. #define PEXNotDynamic                   1
  666.  
  667. /* renderer echo modes */
  668. #define PEXNoEcho                       0
  669. #define PEXEcho                         1
  670. #define PEXUnEcho                       2
  671.  
  672. /* renderer attributes bitmask */
  673. #define PEXRAPipelineContext            (1L<<0)
  674. #define PEXRACurrentPath                (1L<<1)
  675. #define PEXRAMarkerBundle               (1L<<2)
  676. #define PEXRATextBundle                 (1L<<3)
  677. #define PEXRALineBundle                 (1L<<4)
  678. #define PEXRAInteriorBundle             (1L<<5)
  679. #define PEXRAEdgeBundle                 (1L<<6)
  680. #define PEXRAViewTable                  (1L<<7)
  681. #define PEXRAColorTable                 (1L<<8)
  682. #define PEXRADepthCueTable              (1L<<9)
  683. #define PEXRALightTable                 (1L<<10)
  684. #define PEXRAColorApproxTable           (1L<<11)
  685. #define PEXRAPatternTable               (1L<<12)
  686. #define PEXRATextFontTable              (1L<<13)
  687. #define PEXRAHighlightIncl              (1L<<14)
  688. #define PEXRAHighlightExcl              (1L<<15)
  689. #define PEXRAInvisibilityIncl           (1L<<16)
  690. #define PEXRAInvisibilityExcl           (1L<<17)
  691. #define PEXRARendererState              (1L<<18)
  692. #define PEXRAHLHSRMode                  (1L<<19)
  693. #define PEXRANPCSubVolume               (1L<<20)
  694. #define PEXRAViewport                   (1L<<21)
  695. #define PEXRAClipList                   (1L<<22)
  696. #define PEXRAPickIncl                   (1L<<23)
  697. #define PEXRAPickExcl                   (1L<<24)
  698. #define PEXRAPickStartPath              (1L<<25)
  699. #define PEXRABackgroundColor            (1L<<26)
  700. #define PEXRAClearImage                 (1L<<27)
  701. #define PEXRAClearZ                     (1L<<28)
  702. #define PEXRAEchoMode                   (1L<<29)
  703. #define PEXRAMaxShift                   29
  704.  
  705. /* renderer dynamics bitmask */
  706. /*      tables                */
  707. #define PEXRDTMarkerBundle              (1L<<0)
  708. #define PEXRDTTextBundle                (1L<<1)
  709. #define PEXRDTLineBundle                (1L<<2)
  710. #define PEXRDTInteriorBundle            (1L<<3)
  711. #define PEXRDTEdgeBundle                (1L<<4)
  712. #define PEXRDTViewTable                 (1L<<5)
  713. #define PEXRDTColorTable                (1L<<6)
  714. #define PEXRDTDepthCueTable             (1L<<7)
  715. #define PEXRDTLightTable                (1L<<8)
  716. #define PEXRDTColorApproxTable          (1L<<9)
  717. #define PEXRDTPatternTable              (1L<<10)
  718. #define PEXRDTTextFontTable             (1L<<11)
  719. #define PEXRDTMarkerBundleContents      (1L<<16)
  720. #define PEXRDTTextBundleContents        (1L<<17)
  721. #define PEXRDTLineBundleContents        (1L<<18)
  722. #define PEXRDTInteriorBundleContents    (1L<<19)
  723. #define PEXRDTEdgeBundleContents        (1L<<20)
  724. #define PEXRDTViewTableContents         (1L<<21)
  725. #define PEXRDTColorTableContents        (1L<<22)
  726. #define PEXRDTDepthCueTableContents     (1L<<23)
  727. #define PEXRDTLightTableContents        (1L<<24)
  728. #define PEXRDTColorApproxContents       (1L<<25)
  729. #define PEXRDTPatternTableContents      (1L<<26)
  730. #define PEXRDTTextFontTableContents     (1L<<27)
  731. /*      name sets              */
  732. #define PEXRDNHighlightNameSet          (1L<<0)
  733. #define PEXRDNInvisibilityNameSet       (1L<<1)
  734. #define PEXRDNPickNameSet               (1L<<2)
  735. #define PEXRDNHighlightNameSetContents  (1L<<16)
  736. #define PEXRDNInvisibilityNameSetContents (1L<<17)
  737. #define PEXRDNPickNameSetContents       (1L<<18)
  738. /*      attributes            */
  739. #define PEXRDAHLHSRMode                 (1L<<0)
  740. #define PEXRDANPCSubVolume              (1L<<1)
  741. #define PEXRDAViewport                  (1L<<2)
  742. #define PEXRDAClipList                  (1L<<3)
  743. #define PEXRDAEchoMode                  (1L<<4)
  744.  
  745. /* renderer pick status */
  746. #define PEXNoPick                       0
  747. #define PEXPick                         1
  748. #define PEXAbortedPick                  2
  749.  
  750.  
  751. /*
  752.  * name set
  753.  */
  754.  
  755. /* name set changes */
  756. #define PEXNSAdd                        0
  757. #define PEXNSRemove                     1
  758. #define PEXNSReplace                    2
  759.  
  760.  
  761. /*
  762.  * look up table
  763.  */
  764.  
  765. /* table types */
  766. #define PEXLUTLineBundle                1
  767. #define PEXLUTMarkerBundle              2
  768. #define PEXLUTTextBundle                3
  769. #define PEXLUTInteriorBundle            4
  770. #define PEXLUTEdgeBundle                5
  771. #define PEXLUTPattern                   6
  772. #define PEXLUTTextFont                  7
  773. #define PEXLUTColor                     8
  774. #define PEXLUTView                      9
  775. #define PEXLUTLight                     10
  776. #define PEXLUTDepthCue                  11
  777. #define PEXLUTColorApprox               12
  778.  
  779. /* status in PEXGetTableEntry */
  780. #define PEXDefaultEntry                 0
  781. #define PEXDefinedEntry                 1
  782.  
  783. /* return type in PEXGetTableEntry and PEXGetTableEntries */
  784. #define PEXSetValue                     0
  785. #define PEXRealizedValue                1
  786.  
  787.  
  788. /*
  789.  * structure
  790.  */
  791.  
  792. /* structure editing mode */
  793. #define PEXStructureInsert              0
  794. #define PEXStructureReplace             1 
  795.  
  796. /* whence in structure element ranges */
  797. #define PEXBeginning                    0
  798. #define PEXCurrent                      1
  799. #define PEXEnd                          2
  800.  
  801. /* structure info */
  802. #define PEXElementPtr                   (1L<<0)
  803. #define PEXNumElements                  (1L<<1)
  804. #define PEXLengthStructure              (1L<<2)
  805. #define PEXHasRefs                      (1L<<3)
  806. #define PEXEditMode                     (1L<<4)
  807.  
  808. /* structures in network */
  809. #define PEXAll                          0
  810. #define PEXOrphans                      1
  811.  
  812. /* ancestors and descendents*/
  813. #define PEXTopPart                      0
  814. #define PEXBottomPart                   1
  815.  
  816. /* element search */
  817. #define PEXForward                      0
  818. #define PEXBackward                     1
  819.  
  820. /* element info bitmask */
  821. #define PEXElementType                  (1L<<0)
  822. #define PEXElementSize                  (1L<<1)
  823. #define PEXElementData                  (1L<<2)
  824.  
  825.  
  826. /*
  827.  * search context
  828.  */
  829.  
  830. /* element search status */
  831. #define PEXNotFound                     1
  832. #define PEXFound                        2
  833.  
  834. /* search context attributes bitmask */
  835. #define PEXSCPosition                   (1L<<0)
  836. #define PEXSCDistance                   (1L<<1)
  837. #define PEXSCCeiling                    (1L<<2)
  838. #define PEXSCModelClipFlag              (1L<<3)
  839. #define PEXSCStartPath                  (1L<<4)
  840. #define PEXSCNormalList                 (1L<<5)
  841. #define PEXSCInvertedList               (1L<<6)
  842. #define PEXSCMaxShift                   6
  843.  
  844.  
  845. /*
  846.  * PHIGS workstation
  847.  */
  848.  
  849. /* workstation update state */
  850. #define PEXNotPending                   0
  851. #define PEXPending                      1
  852.  
  853. /* workstation visual state */
  854. #define PEXCorrect                      0
  855. #define PEXDeferred                     1
  856. #define PEXSimulated                    2
  857.  
  858. /* workstation display state */
  859. #define PEXEmpty                        0
  860. #define PEXNotEmpty                     1
  861.  
  862. /* workstation buffer mode */
  863. #define PEXSingleBuffered               0
  864. #define PEXDoubleBuffered               1
  865.  
  866. /* workstation dynamics */
  867. #define PEXIMM                          0
  868. #define PEXIRG                          1
  869. #define PEXCBS                          2
  870.  
  871. /* workstation structure posting priorities */
  872. #define PEXHigher                       0
  873. #define PEXLower                        1
  874.  
  875. /* workstation attributes bitmask shift values */
  876. #define PEXPWDisplayUpdate              0
  877. #define PEXPWVisualState                1
  878. #define PEXPWDisplaySurface             2
  879. #define PEXPWViewUpdate                 3
  880. #define PEXPWDefinedViews               4
  881. #define PEXPWWorkstationUpdate          5
  882. #define PEXPWReqNPCSubVolume            6
  883. #define PEXPWCurNPCSubVolume            7
  884. #define PEXPWReqViewport                8
  885. #define PEXPWCurViewport                9
  886. #define PEXPWHLHSRUpdate                10
  887. #define PEXPWReqHLHSRMode               11
  888. #define PEXPWCurHLHSRMode               12
  889. #define PEXPWDrawable                   13
  890. #define PEXPWMarkerBundle               14
  891. #define PEXPWTextBundle                 15
  892. #define PEXPWLineBundle                 16
  893. #define PEXPWInteriorBundle             17
  894. #define PEXPWEdgeBundle                 18
  895. #define PEXPWColorTable                 19
  896. #define PEXPWDepthCueTable              20
  897. #define PEXPWLightTable                 21
  898. #define PEXPWColorApproxTable           22
  899. #define PEXPWPatternTable               23
  900. #define PEXPWTextFontTable              24
  901. #define PEXPWHighlightIncl              25
  902. #define PEXPWHighlightExcl              26
  903. #define PEXPWInvisibilityIncl           27
  904. #define PEXPWInvisibilityExcl           28
  905. #define PEXPWPostedStructures           29
  906. #define PEXPWNumPriorities              30
  907. #define PEXPWBufferUpdate               31
  908.  
  909. #define PEXPWReqBufferMode              32
  910. #define PEXPWCurBufferMode              33
  911. #define PEXPWMaxShift                   33
  912.  
  913. /* values for indices to returned workstation dynamics */
  914. #define PEXPWDViewRep                   0
  915. #define PEXPWDMarkerBundle              1
  916. #define PEXPWDTextBundle                2
  917. #define PEXPWDLineBundle                3
  918. #define PEXPWDInteriorBundle            4
  919. #define PEXPWDEdgeBundle                5
  920. #define PEXPWDColorTable                6
  921. #define PEXPWDPatternTable              7
  922. #define PEXPWDWorkstationTransform      8
  923. #define PEXPWDHighlightFilter           9
  924. #define PEXPWDInvisibilityFilter        10
  925. #define PEXPWDHLHSRMode                 11
  926. #define PEXPWDStructureModify           12
  927. #define PEXPWDPostStructure             13
  928. #define PEXPWDUnpostStructure           14
  929. #define PEXPWDDeleteStructure           15
  930. #define PEXPWDReferenceModify           16
  931. #define PEXPWDBufferModify              17
  932. #define PEXPWDLightTable                18
  933. #define PEXPWDDepthCueTable             19
  934. #define PEXPWDColorApproxTable          20
  935.  
  936.  
  937. /*
  938.  * workstation picking
  939.  */
  940.  
  941. /* workstation pick status */
  942.      /* PEXNoPick                       defined the same as for renderer pick */
  943.      /* PEXPick                         defined the same as for renderer pick */
  944.  
  945. /* pick echo modes */
  946.      /* PEXNoEcho                       defined the same as for renderer echo */
  947.      /* PEXEcho                         defined the same as for renderer echo */
  948.  
  949. /* pick path order */
  950. #define PEXTopFirst                     0
  951. #define PEXBottomFirst                  1
  952.  
  953. /* pick all, more hits flag */
  954. #define PEXMoreHits                     0
  955. #define PEXNoMoreHits                   1
  956. #define PEXMayBeMoreHits                2
  957.  
  958. /* workstation pick device attributes bitmask */
  959. #define PEXPDPickStatus                 (1L<<0)
  960. #define PEXPDPickPath                   (1L<<1)
  961. #define PEXPDPickPathOrder              (1L<<2)
  962. #define PEXPDPickIncl                   (1L<<3)
  963. #define PEXPDPickExcl                   (1L<<4)
  964. #define PEXPDPickDataRec                (1L<<5)
  965. #define PEXPDPromptEchoType             (1L<<6)
  966. #define PEXPDEchoVolume                 (1L<<7)
  967. #define PEXPDEchoSwitch                 (1L<<8)
  968. #define PEXPDMaxShift                   8
  969.  
  970. /* workstation pick measure attributes bitmask */
  971. #define PEXPMStatus                     (1L<<0)
  972. #define PEXPMPath                       (1L<<1)
  973. #define PEXPMMaxShift                   1
  974.  
  975. /*
  976.  * events
  977.  */
  978. #define PEXMaxHitsReached               0
  979. #define PEXMaxEvent                     0
  980.  
  981.  
  982. /*
  983.  * errors
  984.  */
  985. #define BadPEXColorType                 0
  986. #define BadPEXRendererState             1
  987. #define BadPEXFloatingPointFormat       2
  988. #define BadPEXLabel                     3
  989. #define BadPEXLookupTable               4
  990. #define BadPEXNameSet                   5
  991. #define BadPEXPath                      6
  992. #define BadPEXFont                      7
  993. #define BadPEXWorkstation               8
  994. #define BadPEXPickMeasure               9
  995. #define BadPEXPipelineContext           10
  996. #define BadPEXRenderer                  11
  997. #define BadPEXSearchContext             12
  998. #define BadPEXStructure                 13
  999. #define BadPEXOutputCommand             14
  1000. #define PEXMaxError                     14
  1001.  
  1002.  
  1003. /*
  1004.  * protocol output command codes
  1005.  */
  1006. #define PEXOCAll                        0
  1007. #define PEXOCMarkerType                 1
  1008. #define PEXOCMarkerScale                2
  1009. #define PEXOCMarkerColorIndex           3
  1010. #define PEXOCMarkerColor                4
  1011. #define PEXOCMarkerBundleIndex          5
  1012. #define PEXOCTextFontIndex              6
  1013. #define PEXOCTextPrecision              7
  1014. #define PEXOCCharExpansion              8
  1015. #define PEXOCCharSpacing                9
  1016. #define PEXOCTextColorIndex             10
  1017. #define PEXOCTextColor                  11
  1018. #define PEXOCCharHeight                 12
  1019. #define PEXOCCharUpVector               13
  1020. #define PEXOCTextPath                   14
  1021. #define PEXOCTextAlignment              15
  1022. #define PEXOCATextHeight                16
  1023. #define PEXOCATextUpVector              17
  1024. #define PEXOCATextPath                  18
  1025. #define PEXOCATextAlignment             19
  1026. #define PEXOCATextStyle                 20
  1027. #define PEXOCTextBundleIndex            21
  1028. #define PEXOCLineType                   22
  1029. #define PEXOCLineWidth                  23
  1030. #define PEXOCLineColorIndex             24
  1031. #define PEXOCLineColor                  25
  1032. #define PEXOCCurveApprox                26
  1033. #define PEXOCPolylineInterpMethod       27
  1034. #define PEXOCLineBundleIndex            28
  1035. #define PEXOCInteriorStyle              29
  1036. #define PEXOCInteriorStyleIndex         30
  1037. #define PEXOCSurfaceColorIndex          31
  1038. #define PEXOCSurfaceColor               32
  1039. #define PEXOCReflectionAttributes       33
  1040. #define PEXOCReflectionModel            34
  1041. #define PEXOCSurfaceInterpMethod        35
  1042. #define PEXOCBFInteriorStyle            36
  1043. #define PEXOCBFInteriorStyleIndex       37
  1044. #define PEXOCBFSurfaceColorIndex        38
  1045. #define PEXOCBFSurfaceColor             39
  1046. #define PEXOCBFReflectionAttributes     40
  1047. #define PEXOCBFReflectionModel          41
  1048. #define PEXOCBFSurfaceInterpMethod      42
  1049. #define PEXOCSurfaceApprox              43
  1050. #define PEXOCFacetCullingMode           44
  1051. #define PEXOCFacetDistinguishFlag       45
  1052. #define PEXOCPatternSize                46
  1053. #define PEXOCPatternAttributes2D        47
  1054. #define PEXOCPatternAttributes          48
  1055. #define PEXOCInteriorBundleIndex        49
  1056. #define PEXOCSurfaceEdgeFlag            50
  1057. #define PEXOCSurfaceEdgeType            51
  1058. #define PEXOCSurfaceEdgeWidth           52
  1059. #define PEXOCSurfaceEdgeColorIndex      53
  1060. #define PEXOCSurfaceEdgeColor           54
  1061. #define PEXOCEdgeBundleIndex            55
  1062. #define PEXOCIndividualASF              56
  1063. #define PEXOCLocalTransform             57
  1064. #define PEXOCLocalTransform2D           58
  1065. #define PEXOCGlobalTransform            59
  1066. #define PEXOCGlobalTransform2D          60
  1067. #define PEXOCModelClipFlag              61
  1068. #define PEXOCModelClipVolume            62
  1069. #define PEXOCModelClipVolume2D          63
  1070. #define PEXOCRestoreModelClipVolume     64
  1071. #define PEXOCViewIndex                  65
  1072. #define PEXOCLightSourceState           66
  1073. #define PEXOCDepthCueIndex              67
  1074. #define PEXOCPickID                     68
  1075. #define PEXOCHLHSRID                    69
  1076. #define PEXOCColorApproxIndex           70
  1077. #define PEXOCRenderingColorModel        71
  1078. #define PEXOCParaSurfCharacteristics    72
  1079. #define PEXOCAddToNameSet               73
  1080. #define PEXOCRemoveFromNameSet          74
  1081. #define PEXOCExecuteStructure           75
  1082. #define PEXOCLabel                      76
  1083. #define PEXOCApplicationData            77
  1084. #define PEXOCGSE                        78
  1085. #define PEXOCMarkers                    79
  1086. #define PEXOCMarkers2D                  80
  1087. #define PEXOCText                       81
  1088. #define PEXOCText2D                     82
  1089. #define PEXOCAnnotationText             83
  1090. #define PEXOCAnnotationText2D           84
  1091. #define PEXOCPolyline                   85
  1092. #define PEXOCPolyline2D                 86
  1093. #define PEXOCPolylineSetWithData        87
  1094. #define PEXOCNURBCurve                  88
  1095. #define PEXOCFillArea                   89
  1096. #define PEXOCFillArea2D                 90
  1097. #define PEXOCFillAreaWithData           91
  1098. #define PEXOCFillAreaSet                92
  1099. #define PEXOCFillAreaSet2D              93
  1100. #define PEXOCFillAreaSetWithData        94
  1101. #define PEXOCTriangleStrip              95
  1102. #define PEXOCQuadrilateralMesh          96
  1103. #define PEXOCSetOfFillAreaSets          97
  1104. #define PEXOCNURBSurface                98
  1105. #define PEXOCCellArray                  99
  1106. #define PEXOCCellArray2D                100
  1107. #define PEXOCExtendedCellArray          101
  1108. #define PEXOCGDP                        102
  1109. #define PEXOCGDP2D                      103
  1110. #define PEXOCNoop                       104
  1111. #define PEXOCNil                        0xffff
  1112.  
  1113.  
  1114. /*
  1115.  * protocol request codes
  1116.  */
  1117. #define PEXRCGetExtensionInfo           1
  1118. #define PEXRCGetEnumTypeInfo            2
  1119. #define PEXRCGetImpDepConstants         3
  1120. #define PEXRCCreateLookupTable          4
  1121. #define PEXRCCopyLookupTable            5
  1122. #define PEXRCFreeLookupTable            6
  1123. #define PEXRCGetTableInfo               7
  1124. #define PEXRCGetPredefinedEntries       8
  1125. #define PEXRCGetDefinedIndices          9
  1126. #define PEXRCGetTableEntry              10
  1127. #define PEXRCGetTableEntries            11
  1128. #define PEXRCSetTableEntries            12
  1129. #define PEXRCDeleteTableEntries         13
  1130. #define PEXRCCreatePipelineContext      14
  1131. #define PEXRCCopyPipelineContext        15
  1132. #define PEXRCFreePipelineContext        16
  1133. #define PEXRCGetPipelineContext         17
  1134. #define PEXRCChangePipelineContext      18
  1135. #define PEXRCCreateRenderer             19
  1136. #define PEXRCFreeRenderer               20
  1137. #define PEXRCChangeRenderer             21
  1138. #define PEXRCGetRendererAttributes      22
  1139. #define PEXRCGetRendererDynamics        23
  1140. #define PEXRCBeginRendering             24
  1141. #define PEXRCEndRendering               25
  1142. #define PEXRCBeginStructure             26
  1143. #define PEXRCEndStructure               27
  1144. #define PEXRCRenderOutputCommands       28
  1145. #define PEXRCRenderNetwork              29
  1146. #define PEXRCCreateStructure            30
  1147. #define PEXRCCopyStructure              31
  1148. #define PEXRCDestroyStructures          32
  1149. #define PEXRCGetStructureInfo           33
  1150. #define PEXRCGetElementInfo             34
  1151. #define PEXRCGetStructuresInNetwork     35
  1152. #define PEXRCGetAncestors               36
  1153. #define PEXRCGetDescendants             37
  1154. #define PEXRCFetchElements              38
  1155. #define PEXRCSetEditingMode             39      
  1156. #define PEXRCSetElementPointer          40
  1157. #define PEXRCSetElementPointerAtLabel   41
  1158. #define PEXRCElementSearch              42
  1159. #define PEXRCStoreElements              43
  1160. #define PEXRCDeleteElements             44
  1161. #define PEXRCDeleteElementsToLabel      45
  1162. #define PEXRCDeleteBetweenLabels        46
  1163. #define PEXRCCopyElements               47
  1164. #define PEXRCChangeStructureRefs        48
  1165. #define PEXRCCreateNameSet              49
  1166. #define PEXRCCopyNameSet                50
  1167. #define PEXRCFreeNameSet                51
  1168. #define PEXRCGetNameSet                 52
  1169. #define PEXRCChangeNameSet              53
  1170. #define PEXRCCreateSearchContext        54
  1171. #define PEXRCCopySearchContext          55
  1172. #define PEXRCFreeSearchContext          56
  1173. #define PEXRCGetSearchContext           57
  1174. #define PEXRCChangeSearchContext        58
  1175. #define PEXRCSearchNetwork              59
  1176. #define PEXRCCreateWorkstation          60
  1177. #define PEXRCFreeWorkstation            61
  1178. #define PEXRCGetWorkstationAttributes   62
  1179. #define PEXRCGetWorkstationDynamics     63
  1180. #define PEXRCGetWorkstationViewRep      64
  1181. #define PEXRCRedrawAllStructures        65
  1182. #define PEXRCUpdateWorkstation          66
  1183. #define PEXRCRedrawClipRegion           67
  1184. #define PEXRCExecuteDeferredActions     68
  1185. #define PEXRCSetWorkstationViewPriority 69
  1186. #define PEXRCSetWorkstationDisplayUpdateMode 70
  1187. #define PEXRCMapDCtoWC                  71
  1188. #define PEXRCMapWCtoDC                  72
  1189. #define PEXRCSetWorkstationViewRep      73
  1190. #define PEXRCSetWorkstationWindow       74
  1191. #define PEXRCSetWorkstationViewport     75
  1192. #define PEXRCSetWorkstationHLHSRMode    76
  1193. #define PEXRCSetWorkstationBufferMode   77
  1194. #define PEXRCPostStructure              78
  1195. #define PEXRCUnpostStructure            79
  1196. #define PEXRCUnpostAllStructures        80
  1197. #define PEXRCGetWorkstationPostings     81
  1198. #define PEXRCGetPickDevice              82
  1199. #define PEXRCChangePickDevice           83
  1200. #define PEXRCCreatePickMeasure          84
  1201. #define PEXRCFreePickMeasure            85
  1202. #define PEXRCGetPickMeasure             86
  1203. #define PEXRCUpdatePickMeasure          87
  1204. #define PEXRCLoadFont                   88
  1205. #define PEXRCUnloadFont                 89
  1206. #define PEXRCQueryFont                  90
  1207. #define PEXRCListFonts                  91
  1208. #define PEXRCListFontsWithInfo          92
  1209. #define PEXRCQueryTextExtents           93
  1210. #define PEXRCMatchRenderingTargets      94
  1211. #define PEXRCEscape                     95
  1212. #define PEXRCEscapeWithReply            96
  1213. #define PEXRCRenderElements             97
  1214. #define PEXRCAccumulateState            98
  1215. #define PEXRCBeginPickOne               99
  1216. #define PEXRCEndPickOne                 100
  1217. #define PEXRCPickOne                    101
  1218. #define PEXRCBeginPickAll               102
  1219. #define PEXRCEndPickAll                 103
  1220. #define PEXRCPickAll                    104
  1221.  
  1222. #endif /* _PEX_H_ */
  1223.