home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.0 / NeXTSTEP3.0.iso / NextDeveloper / Headers / ri / qrman.h next >
Text File  |  1992-02-07  |  7KB  |  147 lines

  1. #ifndef _H_qrman
  2. #define _H_qrman
  3.  
  4. #ifndef RI_H
  5. #include <ri.h>
  6. #endif
  7.  
  8. /*
  9.  * picking callback
  10.  */
  11. typedef struct {
  12.     RtInt    tagCount;    /* number of elements in tagList */
  13.     RtInt    *tagList;    /* list of picktags */
  14.     RtFloat    z;
  15. } RtPickCallback;
  16.  
  17. RtVoid QRMSetPickCallback(RtVoid (*func)(RtPickCallback *));
  18.  
  19. /*
  20.  * info callback
  21.  */
  22. typedef struct {
  23.     RtFloat bound[6]; /* rendered camera space bounds */
  24. } RtInfoCallback;
  25.  
  26. RtVoid QRMSetInfoCallback(RtVoid (*func)(RtInfoCallback *));
  27.  
  28. /*
  29.  * RIB reader intercept
  30.  */
  31. typedef struct RIBHandlers {
  32.     RtToken (*AreaLightSourceV)(char *, RtToken, RtInt, RtToken *, RtPointer *);
  33.     RtVoid (*AtmosphereV)(RtToken, RtInt, RtToken [], R3nter []);
  34.     RtVoid (*AttributeBegin)(void);
  35.     RtVoid (*AttributeEnd)(void);
  36.     RtVoid (*AttributeV)(RtToken, RtInt, RtToken *, RtPointer *);
  37.     RtVoid (*Basis)(RtBasis, RtInt, RtBasis, RtInt);
  38.     RtVoid (*Bound)(RtBound);
  39.     RtVoid (*CircleV)(RtFloat, RtFloat, RtInt, RtToken *, RtPointer *);
  40.     RtVoid (*Clipping)(RtFloat, RtFloat);
  41.     RtVoid (*Color)(RtColor);
  42.     RtVoid (*ColorSamples)(RtInt, RtFloat *, RtFloat *);
  43.     RtVoid (*ConcatTransform)(RtMatrix);
  44.     RtVoid (*ConeV)(RtFloat, RtFloat, RtFloat, RtInt, RtToken [], RtPointer []);
  45.     RtVoid (*CoordSysTransform)(RtToken);
  46.     RtToken (*CoordinateSystem)(char *);
  47.     RtToken (*CreateHandle)(char *, RtToken);
  48.     RtVoid (*CropWindow)(RtFloat, RtFloat, RtFloat, RtFloat);
  49.     RtVoid (*CurveV)(RtToken, RtInt, RtToken, RtInt, RtToken *, RtPointer *);
  50.     RtVoid (*CylinderV)(RtFloat, RtFloat, RtFloat, RtFloat, RtInt, RtToken [], RtPointer []);
  51.     RtToken (*Declare)(char *, char *);
  52.     RtVoid (*DeformationV)(RtToken, RtInt, RtToken [], RtPointer []);
  53.     RtVoid (*DepthOfField)(RtFloat, RtFloat, RtFloat);
  54.     RtVoid (*Detail)(RtBound);
  55.     RtVoid (*DetailRange)(RtFloat, RtFloat, RtFloat, RtFloat);
  56.     RtVoid (*DiskV)(RtFloat, RtFloat, RtFloat, RtInt, RtToken [], RtPointer []);
  57.     RtVoid (*DisplacementV)(RtToken, RtInt, RtToken *, RtPointer *);
  58.     RtToken (*DisplayV)(char *, RtToken, RtToken, RtInt, RtToken *, RtPointer *);
  59.     RtVoid (*DrawingV)(RtToken, RtInt, RtToken [], RtPointer []);
  60.     RtVoid (*ErrorHandler)(RtVoid (*)(RtInt, RtInt, char *, RtToken, RtToken));
  61.     RtVoid (*Exposure)(RtFloat, RtFloat);
  62.     RtVoid (*ExteriorV)(RtToken, RtInt, RtToken [], RtPointer []);
  63.     RtVoid (*Format)(RtInt, RtInt, RtFloat);
  64.     RtVoid (*FrameAspectRatio)(RtFloat);
  65.     RtVoid (*FrameBegin)(RtInt);
  66.     RtVoid (*FrameEnd)(void);
  67.     RtVoid (*FreeHandle)(RtToken, RtToken);
  68.     RtVoid (*GeneralPolygonV)(RtInt, RtInt [], RtInt, RtToken [], RtPointer []);
  69.     RtVoid (*GeometricApproximationV)(RtToken, RtInt, RtToken *, RtPointer *);
  70.     RtVoid (*GeometricRepresentation)(RtToken);
  71.     RtVoid (*GeometryV)(RtToken, RtInt, RtToken [], RtPointer []);
  72.     RtVoid (*HiderV)(RtToken, RtInt, RtToken [], RtPointer []);
  73.     RtVoid (*HyperboloidV)(RtPoint, RtPoint, RtFloat, RtInt, RtToken [], RtPointer []);
  74.     RtVoid (*Identity)(void);
  75.     RtVoid (*Illuminate)(RtToken, RtBoolean);
  76.     RtVoid (*ImagerV)(RtToken, RtInt, RtToken [], RtPointer []);
  77.     RtVoid (*InteriorV)(RtToken, RtInt, RtToken [], RtPoin3[]);
  78.     RtToken (*LightSourceV)(char *, RtToken, RtInt, RtToken *, RtPointer *);
  79.     RtVoid (*LineV)(RtInt, RtInt, RtToken *, RtPointer *);
  80.     RtVoid (*LineStyle)(RtFloat, RtInt, RtFloat [], RtToken, RtToken);
  81.     RtToken (*MacroBeginV)(char *, RtInt, RtToken *, RtPointer *);
  82.     RtVoid (*MacroEnd)(void);
  83.     RtVoid (*MacroInstanceV)(RtToken, RtInt, RtToken *, RtPointer *);
  84.     RtToken (*MakeBumpV)(RtToken, char *, RtToken, RtToken, RtFloatFunc, RtFloat, RtFloat, RtInt, RtToken *, RtPointer *);
  85.     RtToken (*MakeCubeFaceEnvironmentV)(RtToken, RtToken, RtToken, RtToken, RtToken, RtToken, char *, RtFloat, RtFloatFunc, RtFloat, RtFloat, RtInt, RtToken *, RtPointer *);
  86.     RtToken (*MakeLatLongEnvironmentV)(RtToken, char *, RtFloatFunc, RtFloat, RtFloat, RtInt, RtToken *, RtPointer *);
  87.     RtToken (*MakeShadowV)(RtToken, char *, RtInt, RtToken *, RtPointer *);
  88.     RtToken (*MakeTextureV)(RtToken, char *, RtToken, RtToken, RtFloatFunc, RtFloat, RtFloat, RtInt, RtToken *, RtPointer *);
  89.     RtVoid (*Matte)(RtBoolean);
  90.     RtVoid (*MotionBeginV)(RtInt, RtFloat []);
  91.     RtVoid (*MotionEnd)(void);
  92.     RtVoid (*NuCurveV)(RtInt, RtInt, RtFloat *, RtFloat, RtFloat, RtInt, RtToken *, RtPointer *);
  93.     RtVoid (*NuPatchV)(RtInt, RtInt, RtFloat [], RtFloat, RtFloat, RtInt, RtInt, RtFloat [], RtFloat, RtFloat, RtInt, RtToken [], RtPointer []);
  94.     RtToken (*ObjectBegin)(RtToken);
  95.     RtVoid (*ObjectEnd)(void);
  96.     RtVoid (*ObjectInstance)(RtToken);
  97.     RtVoid (*Opacity)(RtColor);
  98.     RtVoid (*OptionV)(RtToken, RtInt, RtToken [], RtPointer []);
  99.     RtVoid (*Orientation)(RtToken);
  100.     RtVoid (*ParaboloidV)(RtFloat, RtFloat, RtFloat, RtFloat, RtInt, RtToken [], RtPointer []);
  101.     RtVoid (*PatchMeshV)(RtToken, RtInt, RtToken, RtInt, RtToken, RtInt, RtToken [], RtPointer []);
  102.     RtVoid (*PatchV)(RtToken, RtInt, RtToken [], RtPointer []);
  103.     RtVoid (*Perspective)(RtFloat);
  104.     RtVoid (*PixelFilter)(RtFloatFunc, RtFloat, RtFloat);
  105.     RtVoid (*PixelSamples)(RtFloat, RtFloat);
  106.     RtVoid (*PixelVariance)(RtFloat);
  107.     RtVoid (*PointsGeneralPolygonsV)(RtInt, RtInt [], RtInt [], RtInt [], RtInt, RtToken [], RtPointer []);
  108.     RtVoid (*PointsLinesV)(RtInt, RtInt *, RtInt *, RtInt, RtToken *, RtPointer *);
  109.     RtVoid (*PointsPolygonsV)(RtInt, RtInt [], RtInt [], RtInt, RtToken [], RtPointer []);
  110.     RtVoid (*PolygonV)(RtInt, RtInt, RtToken *, RtPointer *);
  111.     RtVoid (*PreemptBegin)(void);
  112.     RtVoid (*PreemptEnd)(void);
  113.     RtVoid (*Proj3onV)(RtToken, RtInt, RtToken [], RtPointer []);
  114.     RtVoid (*Quantize)(RtToken, RtInt, RtInt, RtInt, RtFloat);
  115.     RtVoid (*ReadArchiveV)(char *, RtVoid (*)(RtToken, char *, char *), RtInt, RtToken *, RtPointer *);
  116.     RtVoid (*RelativeDetail)(RtFloat);
  117.     RtToken (*ResourceV)(char *, RtToken, RtInt, RtToken *, RtPointer *);
  118.     RtVoid (*ReverseOrientation)(void);
  119.     RtVoid (*Rotate)(RtFloat, RtFloat, RtFloat, RtFloat);
  120.     RtVoid (*Scale)(RtFloat, RtFloat, RtFloat);
  121.     RtVoid (*ScreenWindow)(RtFloat, RtFloat, RtFloat, RtFloat);
  122.     RtVoid (*ShadingInterpolation)(RtToken);
  123.     RtVoid (*ShadingRate)(RtFloat);
  124.     RtVoid (*Shutter)(RtFloat, RtFloat);
  125.     RtVoid (*Sides)(RtInt);
  126.     RtVoid (*Skew)(RtFloat, RtFloat, RtFloat, RtFloat, RtFloat, RtFloat, RtFloat);
  127.     RtVoid (*SolidBegin)(RtToken);
  128.     RtVoid (*SolidEnd)(void);
  129.     RtVoid (*SphereV)(RtFloat, RtFloat, RtFloat, RtFloat, RtInt, RtToken [], RtPointer []);
  130.     RtVoid (*SurfaceV)(RtToken, RtInt, RtToken [], RtPointer []);
  131.     RtVoid (*Synchronize)(RtToken);
  132.     RtVoid (*TextureCoordinates)(RtFloat, RtFloat, RtFloat, RtFloat, RtFloat, RtFloat, RtFloat, RtFloat);
  133.     RtVoid (*TorusV)(RtFloat, RtFloat, RtFloat, RtFloat, RtFloat, RtInt, RtToken [], RtPointer []);
  134.     RtVoid (*Transform)(RtMatrix);
  135.     RtVoid (*TransformBegin)(void);
  136.     RtVoid (*TransformEnd)(void);
  137.     RtVoid (*Translate)(RtFloat, RtFloat, RtFloat);
  138.     RtVoid (*TrimCurve)(RtInt, RtInt [], RtInt [], RtFloat [], RtFloat [], RtFloat [], RtInt [], RtFloat [], RtFloat [], RtFloat []);
  139.     RtVoid (*WorldBegin)(void);
  140.     RtVoid (*WorldEnd)(void);
  141. } RtRIBHandlers;
  142.  
  143. RtVoid    QRMGetRIBHandlers(RtRIBHandlers *h),
  144.     QRMSetRIBHandlers(RtRIBHandlers *h);
  145.  
  146. #endif /* _H_qrman */
  147.