RenderManAPI  24.0
ndspy.h
Go to the documentation of this file.
1 /*
2 # ------------------------------------------------------------------------------
3 #
4 # Copyright (c) 2020 Pixar. All rights reserved.
5 #
6 # The information in this file (the "Software") is provided for the exclusive
7 # use of the software licensees of Pixar ("Licensees"). Licensees have the
8 # right to incorporate the Software into other products for use by other
9 # authorized software licensees of Pixar, without fee. Except as expressly
10 # permitted herein, the Software may not be disclosed to third parties, copied
11 # or duplicated in any form, in whole or in part, without the prior written
12 # permission of Pixar.
13 #
14 # The copyright notices in the Software and this entire statement, including the
15 # above license grant, this restriction and the following disclaimer, must be
16 # included in all copies of the Software, in whole or in part, and all permitted
17 # derivative works of the Software, unless such copies or derivative works are
18 # solely in the form of machine-executable object code generated by a source
19 # language processor.
20 #
21 # PIXAR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
22 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL PIXAR BE
23 # LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
24 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
25 # OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
26 # CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. IN NO CASE WILL
27 # PIXAR'S TOTAL LIABILITY FOR ALL DAMAGES ARISING OUT OF OR IN CONNECTION WITH
28 # THE USE OR PERFORMANCE OF THIS SOFTWARE EXCEED $50.
29 #
30 # Pixar
31 # 1200 Park Ave
32 # Emeryville CA 94608
33 #
34 # ------------------------------------------------------------------------------
35 */
36 
37 #ifndef NDSPY_H
38 #define NDSPY_H
39 
40 #include <math.h> // for floorf
41 #include "prmanapi.h" // for PRMANAPI, PRMANEXPORT
42 #include "ri.h" // for RtPointer
43 
44 // 2^17 - 8. This makes the dsyp server channel buffer large enough to send
45 // float RGBA 64x64 buckets without splitting them vertically.
46 #define PkDspyMaxMsgSize 131064
47 
48 #define PkDspyServerMsgOpen (65 + 1)
49 #define PkDspyServerMsgImage (65 + 2)
50 #define PkDspyServerMsgData (65 + 3)
51 #define PkDspyServerMsgQuery (65 + 4)
52 #define PkDspyServerMsgClose (65 + 5)
53 #define PkDspyServerMsgDeepData (65 + 6)
54 #define PkDspyServerMsgActiveRegion (65 + 7)
55 #define PkDspyServerMsgMetadata (65 + 8)
56 #define PkDspyServerMsgMetadataPart (65 + 9)
57 
58 /*
59 PtDspyUnsigned64
60 PtDspySigned64
61 */
62 typedef double PtDspyFloat64;
63 typedef float PtDspyFloat32;
64 
65 #if defined(__mips)
66 #define PkDspyByteOrderNative PkDspyByteOrderHiLo
67 #elif defined(__mips64)
68 #define PkDspyByteOrderNative PkDspyByteOrderHiLo
69 #elif defined(__sparc)
70 #define PkDspyByteOrderNative PkDspyByteOrderHiLo
71 #elif defined(__alpha)
72 #define PkDspyByteOrderNative PkDspyByteOrderLoHi
73 #elif defined(__ppc__)
74 #define PkDspyByteOrderNative PkDspyByteOrderHiLo
75 #else
76 #define PkDspyByteOrderNative PkDspyByteOrderLoHi
77 #endif
78 
79 typedef unsigned int PtDspyUnsigned32;
80 typedef int PtDspySigned32;
81 
82 typedef unsigned short PtDspyUnsigned16;
83 typedef short PtDspySigned16;
84 
85 typedef unsigned char PtDspyUnsigned8;
86 typedef char PtDspySigned8;
87 
90 
91 #define PkDspyClassFloat 1
92 #define PkDspyClassInt 2
93 
94 #define PkDspyNone 0
95 #define PkDspyFloat32 1
96 #define PkDspyUnsigned32 2
97 #define PkDspySigned32 3
98 #define PkDspyUnsigned16 4
99 #define PkDspySigned16 5
100 #define PkDspyUnsigned8 6
101 #define PkDspySigned8 7
102 #define PkDspyArrayBegin 10
103 #define PkDspyArrayEnd 11
104 
105 #define PkDspyMaskType 8191
106 
107 #define PkDspyMaskOrder (PkDspyByteOrderHiLo | PkDspyByteOrderLoHi)
108 #define PkDspyShiftOrder 13
109 #define PkDspyByteOrderHiLo 8192
110 #define PkDspyByteOrderLoHi 16384
111 
112 /*
113  * PkDspyOpenPortCount controls the number of open display connections are used
114  * by netrender/windows - or any process with an "internal" display server.
115  */
116 #define PkDspyOpenPortCount 1024
117 
118 typedef struct
119 {
120  char const* name;
121  unsigned type;
123 
124 typedef struct
125 {
130 
131 typedef struct
132 {
136 typedef struct
137 {
140 
141 typedef struct
142 {
145 
146 typedef struct
147 {
153 
154 typedef struct
155 {
159 
160 typedef struct
161 {
164 
165 typedef struct
166 {
169 
170 typedef struct
171 {
174 
175 typedef struct
176 {
179 
180 typedef struct
181 {
182  int zero, one, min, max;
186 
187 typedef struct
188 {
191 
192 typedef struct
193 {
196 
197 typedef enum
198 {
212 
213 typedef enum
214 {
219 
220 typedef enum
221 {
230 
231 typedef enum
232 {
240 } PtDspyError;
241 
242 #define PkDspyFlagsWantsScanLineOrder 1
243 #define PkDspyFlagsWantsEmptyBuckets 2
244 #define PkDspyFlagsWantsNullEmptyBuckets 4
245 typedef struct
246 {
247  int flags;
248 } PtFlagStuff;
249 
250 typedef void* PtDspyImageHandle;
251 
252 typedef void* PtDspyChannel;
253 
254 typedef void* PtDspyOutput;
255 
256 typedef struct
257 {
263 } PtDspyMsgOpen;
264 typedef struct
265 {
273 
274 typedef struct
275 {
281 
282 typedef struct
283 {
290 } PtDspyMsgData;
291 
292 typedef struct
293 {
301 
302 typedef struct
303 {
312 
313 typedef struct
314 {
320 
321 typedef struct
322 {
326 
327 typedef struct
328 {
332 
333 typedef struct
334 {
342 
343 typedef struct uparam
344 {
346  char vtype, vcount;
348  int nbytes;
349 } UserParameter;
350 
351 #ifdef __cplusplus
352 extern "C" {
353 #endif
354 
355 typedef PtDspyError (*PtDspyOpenFuncPtr)(PtDspyImageHandle* image, const char* drivername,
356  const char* filename, int width, int height,
357  int paramCount, const UserParameter* parameters,
358  int iFormatCount, PtDspyDevFormat* format,
359  PtFlagStuff* flagstuff);
360 
361 typedef PtDspyError (*PtDspyWriteFuncPtr)(PtDspyImageHandle image, int xmin, int xmax_plus_one,
362  int ymin, int ymax_plus_one, int entrysize,
363  const unsigned char* data);
364 
365 typedef PtDspyError (*PtDspyDeepWriteFuncPtr)(PtDspyImageHandle image, int xmin, int xmax_plus_one,
366  int ymin, int ymax_plus_one, char* data, int datasize,
367  PtDspyUnsigned32* pixeloffsets,
368  PtDspyUnsigned32* pixelsizes);
369 
371  int xmax_plus_one, int ymin, int ymax_plus_one);
372 
373 typedef PtDspyError (*PtDspyMetadataFuncPtr)(PtDspyImageHandle image, char* metadata);
374 
376 
378 
379 typedef PtDspyError (*PtDspyReopenFuncPtr)(PtDspyImageHandle image, const char* drivername,
380  const char* filename, int width, int height,
381  int paramCount, const UserParameter* parameters,
382  int iFormatCount, PtDspyDevFormat* format,
383  PtFlagStuff* flagstuff);
384 
386 
388 
389 typedef enum
390 {
394 
395 typedef struct
396 {
397  int Version;
405 
406 PRMANAPI void DspyMemReverseCopy(unsigned char* t, const unsigned char* s, int len);
407 
408 PRMANAPI void DspyMemReverse(unsigned char* t, int len);
409 
410 PRMANAPI PtDspyError DspyFindStringInParamList(RtConstString const string, char** result,
411  int paramCount, const UserParameter* parameters);
412 
413 PRMANAPI PtDspyError DspyFindMatrixInParamList(RtConstString const string, float* result,
414  int paramCount, const UserParameter* parameters);
415 
416 PRMANAPI PtDspyError DspyFindFloatInParamList(RtConstString const string, float* result,
417  int paramCount, const UserParameter* parameters);
418 
419 PRMANAPI PtDspyError DspyFindFloatsInParamList(RtConstString const string, int* resultCount,
420  float* result, int paramCount,
421  const UserParameter* parameters);
422 
423 PRMANAPI PtDspyError DspyFindIntInParamList(RtConstString const string, int* result, int paramCount,
424  const UserParameter* parameters);
425 
426 PRMANAPI PtDspyError DspyFindIntsInParamList(RtConstString const string, int* resultCount,
427  int* result, int paramCount,
428  const UserParameter* parameters);
429 
437  int outFormatCount, const PtDspyDevFormat* outFormat);
438 
440  int outFormatCount, const PtDspyDevFormat* outFormat);
441 
442 PRMANAPI void DspyError(const char* module, const char* fmt, ...);
443 
444 PRMANAPI PtDspyError DspyRegisterDriver(const char* name, const PtDspyOpenFuncPtr pOpen,
445  const PtDspyWriteFuncPtr pWrite,
446  const PtDspyCloseFuncPtr pClose,
447  const PtDspyQueryFuncPtr pQuery);
448 
450  const PtDspyDriverFunctionTable* pTable);
451 
453 
454 PRMANEXPORT PtDspyError DspyImageOpen(PtDspyImageHandle* image, const char* drivername,
455  const char* filename, int width, int height, int paramCount,
456  const UserParameter* parameters, int iFormatCount,
457  PtDspyDevFormat* format, PtFlagStuff* flagstuff);
458 
459 PRMANEXPORT PtDspyError DspyImageData(PtDspyImageHandle image, int xmin, int xmax, int ymin,
460  int ymax, int entrysize, const unsigned char* data);
461 
462 PRMANEXPORT PtDspyError DspyImageActiveRegion(PtDspyImageHandle image, int xmin, int xmax, int ymin,
463  int ymax);
464 
466 
467 PRMANEXPORT PtDspyError DspyImageReopen(PtDspyImageHandle image, const char* drivername,
468  const char* filename, int width, int height, int paramCount,
469  const UserParameter* parameters, int iFormatCount,
470  PtDspyDevFormat* format, PtFlagStuff* flagstuff);
471 
473 
475 
477 
478 PRMANEXPORT PtDspyError DspyImageDeepData(PtDspyImageHandle pvImage, int xmin, int xmax, int ymin,
479  int ymax, char* data, int datasize, int* pixeloffsets,
480  int* pixelsizes);
481 
482 PRMAN_INLINE int DspyClamp(float value, int min, int max)
483 {
484  int result = (int)value;
485  result = min > result ? min : result;
486  result = max < result ? max : result;
487  return result;
488 }
489 
491 {
492  return u < 0.0031308f ? 12.92f * u : 1.055f * powf(u, 0.4167f) - 0.055f;
493 }
494 
495 PRMAN_INLINE int DspyQuantize(float value, int x, int y, int k, int min, int max, int dither)
496 {
497  float const s_order[8][8] = {
498  {
499  -0.49219f,
500  0.00781f,
501  -0.36719f,
502  0.13281f,
503  -0.46094f,
504  0.03906f,
505  -0.33594f,
506  0.16406f,
507  },
508  {
509  0.25781f,
510  -0.24219f,
511  0.38281f,
512  -0.11719f,
513  0.28906f,
514  -0.21094f,
515  0.41406f,
516  -0.08594f,
517  },
518  {
519  -0.30469f,
520  0.19531f,
521  -0.42969f,
522  0.07031f,
523  -0.27344f,
524  0.22656f,
525  -0.39844f,
526  0.10156f,
527  },
528  {
529  0.44531f,
530  -0.05469f,
531  0.32031f,
532  -0.17969f,
533  0.47656f,
534  -0.02344f,
535  0.35156f,
536  -0.14844f,
537  },
538  {
539  -0.44531f,
540  0.05469f,
541  -0.32031f,
542  0.17969f,
543  -0.47656f,
544  0.02344f,
545  -0.35156f,
546  0.14844f,
547  },
548  {
549  0.30469f,
550  -0.19531f,
551  0.42969f,
552  -0.07031f,
553  0.27344f,
554  -0.22656f,
555  0.39844f,
556  -0.10156f,
557  },
558  {
559  -0.25781f,
560  0.24219f,
561  -0.38281f,
562  0.11719f,
563  -0.28906f,
564  0.21094f,
565  -0.41406f,
566  0.08594f,
567  },
568  {
569  0.49219f,
570  -0.00781f,
571  0.36719f,
572  -0.13281f,
573  0.46094f,
574  -0.03906f,
575  0.33594f,
576  -0.16406f,
577  },
578  };
579  int dx, dy;
580  switch (k & 3)
581  {
582  case 0:
583  dx = x & 7;
584  dy = y & 7;
585  break;
586  case 1:
587  dx = 7 - (y & 7);
588  dy = x & 7;
589  break;
590  case 2:
591  dx = 7 - (x & 7);
592  dy = 7 - (y & 7);
593  break;
594  case 3:
595  dx = y & 7;
596  dy = 7 - (x & 7);
597  break;
598  } // (k & 3)
599 
600  value *= max - min;
601  if (dither) value += s_order[dy][dx] + 0.49999f;
602  int result = min + (int)floorf(value);
603  result = min > result ? min : result;
604  result = max < result ? max : result;
605  return result;
606 }
607 
608 #ifdef __cplusplus
609 }
610 #endif
611 
612 #endif /* ndef NDSPY_H */
Definition: ndspy.h:239
Definition: ndspy.h:131
PRMANAPI PtDspyError DspyFindIntInParamList(RtConstString const string, int *result, int paramCount, const UserParameter *parameters)
PtDriverVersion
Definition: ndspy.h:389
char const * RtConstString
Definition: ri.h:85
Definition: ndspy.h:154
PRMANEXPORT PtDspyError DspyImageDelayClose(PtDspyImageHandle)
PtDspyUnsigned32 ymax
Definition: ndspy.h:289
PtDspySigned32 xmin
Definition: ndspy.h:148
unsigned short PtDspyUnsigned16
Definition: ndspy.h:82
PRMANAPI void DspyError(const char *module, const char *fmt,...)
PtDspyUnsigned32 height
Definition: ndspy.h:269
PtDspySigned32 xmax
Definition: ndspy.h:149
PtDspyServerMessage msg
Definition: ndspy.h:276
char vcount
Definition: ndspy.h:346
char vtype
Definition: ndspy.h:346
int flags
Definition: ndspy.h:247
PRMANAPI PtDspyError DspyRegisterDriver(const char *name, const PtDspyOpenFuncPtr pOpen, const PtDspyWriteFuncPtr pWrite, const PtDspyCloseFuncPtr pClose, const PtDspyQueryFuncPtr pQuery)
float PtDspyFloat32
Definition: ndspy.h:63
Definition: ndspy.h:228
PtDspyActiveRegionFuncPtr pActiveRegion
Definition: ndspy.h:402
PtDspyUnsigned32 ymin
Definition: ndspy.h:298
PRMANAPI PtDspyError DspyFindIntsInParamList(RtConstString const string, int *resultCount, int *result, int paramCount, const UserParameter *parameters)
PtDspyUnsigned32 ymax
Definition: ndspy.h:309
PtDspyError(* PtDspyFlushFuncPtr)(PtDspyImageHandle)
Definition: ndspy.h:377
PRMANEXPORT PtDspyError DspyMetadata(PtDspyImageHandle, char *metadata)
Definition: ndspy.h:160
PtDspyServerMessage msg
Definition: ndspy.h:266
PtDspyQueryType query
Definition: ndspy.h:317
PtDspyUnsigned32 PtDspyMsgLen
Definition: ndspy.h:88
Definition: ndspy.h:391
void * RtPointer
Definition: ri.h:69
PtDspySigned8 byteorder
Definition: ndspy.h:337
Definition: ndspy.h:227
#define PRMANAPI
Definition: prmanapi.h:124
PtDspyUnsigned32 id
Definition: ndspy.h:267
PtDspyUnsigned32 formatCount
Definition: ndspy.h:270
Definition: ndspy.h:209
PtDspyGridStyle
Definition: ndspy.h:213
PtDspyError(* PtDspyWriteFuncPtr)(PtDspyImageHandle image, int xmin, int xmax_plus_one, int ymin, int ymax_plus_one, int entrysize, const unsigned char *data)
Definition: ndspy.h:361
int zero
Definition: ndspy.h:182
PtDspyUnsigned32 ymax
Definition: ndspy.h:299
PtDspyUnsigned32 xmax
Definition: ndspy.h:297
PtDspyError(* PtDspyCloseFuncPtr)(PtDspyImageHandle)
Definition: ndspy.h:375
PRMAN_INLINE int DspyQuantize(float value, int x, int y, int k, int min, int max, int dither)
Definition: ndspy.h:495
Definition: ndspy.h:187
PtDspyUnsigned32 xmax
Definition: ndspy.h:307
PtDspyServerMessage msg
Definition: ndspy.h:315
PtDspyUnsigned32 nbytes
Definition: ndspy.h:339
PtDspyUnsigned32 ymin
Definition: ndspy.h:288
Definition: ndspy.h:343
PRMANAPI void DspyMemReverseCopy(unsigned char *t, const unsigned char *s, int len)
void * PtDspyImageHandle
Definition: ndspy.h:250
PtDspyUnsigned32 xmin
Definition: ndspy.h:296
Definition: ndspy.h:237
Definition: ndspy.h:124
Definition: ndspy.h:180
PRMANAPI PtDspyError DspyFindFloatInParamList(RtConstString const string, float *result, int paramCount, const UserParameter *parameters)
Definition: ndspy.h:146
Definition: ndspy.h:192
int driverWantsToQuantize
Definition: ndspy.h:184
Definition: ndspy.h:118
PtDspyError
Definition: ndspy.h:231
#define PRMANEXPORT
Definition: prmanapi.h:94
PtDspyUnsigned32 peakkB
Definition: ndspy.h:189
Definition: ndspy.h:256
PRMANEXPORT PtDspyError DspyImageDeepData(PtDspyImageHandle pvImage, int xmin, int xmax, int ymin, int ymax, char *data, int datasize, int *pixeloffsets, int *pixelsizes)
unsigned char PtDspyUnsigned8
Definition: ndspy.h:85
PtDspyError(* PtDspyQueryFuncPtr)(PtDspyImageHandle, PtDspyQueryType, int, void *)
Definition: ndspy.h:387
Definition: ndspy.h:202
PRMANAPI PtDspyError DspyFindStringInParamList(RtConstString const string, char **result, int paramCount, const UserParameter *parameters)
Definition: ndspy.h:226
PtDspyError(* PtDspyDelayCloseFuncPtr)(PtDspyImageHandle)
Definition: ndspy.h:385
int canCheckpoint
Definition: ndspy.h:162
int nbytes
Definition: ndspy.h:348
PtDspyMetadataFuncPtr pMetadata
Definition: ndspy.h:403
Definition: ndspy.h:235
void * PtDspyOutput
Definition: ndspy.h:254
PtDspyServerMessage msg
Definition: ndspy.h:294
Definition: ndspy.h:264
PRMANEXPORT PtDspyError DspyImageOpen(PtDspyImageHandle *image, const char *drivername, const char *filename, int width, int height, int paramCount, const UserParameter *parameters, int iFormatCount, PtDspyDevFormat *format, PtFlagStuff *flagstuff)
Definition: ndspy.h:223
PtDspyUnsigned32 id
Definition: ndspy.h:277
PRMANAPI PtDspyError DspyReorderFormattingRE(int formatCount, PtDspyDevFormat *format, int outFormatCount, const PtDspyDevFormat *outFormat)
reorder incoming channels to match outFormat&#39;s order match incoming channels to outFormat&#39;s regex cha...
PRMANEXPORT PtDspyError DspyImageReopen(PtDspyImageHandle image, const char *drivername, const char *filename, int width, int height, int paramCount, const UserParameter *parameters, int iFormatCount, PtDspyDevFormat *format, PtFlagStuff *flagstuff)
Definition: ndspy.h:208
PtDspyUnsigned32 x
Definition: ndspy.h:156
Definition: ndspy.h:236
PRMAN_INLINE int DspyClamp(float value, int min, int max)
Definition: ndspy.h:482
PtDspyUnsigned8 overwrite
Definition: ndspy.h:133
Definition: ndspy.h:327
PtDspyUnsigned32 paramCount
Definition: ndspy.h:279
int supportsGrids
Definition: ndspy.h:172
PtDspyBucketOrder
Definition: ndspy.h:220
PRMANEXPORT PtDspyError DspyImageQuery(PtDspyImageHandle, PtDspyQueryType, int, void *)
PtDspyUnsigned32 seconds
Definition: ndspy.h:194
Definition: ndspy.h:245
RtConstString name
Definition: ndspy.h:345
void * PtDspyChannel
Definition: ndspy.h:252
Definition: ndspy.h:204
Definition: ndspy.h:234
Definition: ndspy.h:392
int Version
Definition: ndspy.h:397
Definition: ndspy.h:141
PtDspyCloseFuncPtr pClose
Definition: ndspy.h:400
PtDspyUnsigned8 redraw
Definition: ndspy.h:138
Definition: ndspy.h:292
PtDspyUnsigned32 id
Definition: ndspy.h:259
PtDspyOpenFuncPtr pOpen
Definition: ndspy.h:398
PtDspyUnsigned8 rewrite
Definition: ndspy.h:143
PtDspyServerMessage msg
Definition: ndspy.h:304
float ditheramplitude
Definition: ndspy.h:183
Definition: ndspy.h:203
PtDspySigned32 ymax
Definition: ndspy.h:151
Definition: ndspy.h:206
PtDspyError(* PtDspyOpenFuncPtr)(PtDspyImageHandle *image, const char *drivername, const char *filename, int width, int height, int paramCount, const UserParameter *parameters, int iFormatCount, PtDspyDevFormat *format, PtFlagStuff *flagstuff)
Definition: ndspy.h:355
PtDspySigned32 ymin
Definition: ndspy.h:150
int supportsMultiResolution
Definition: ndspy.h:177
PtDspyUnsigned32 y
Definition: ndspy.h:157
PtDspyUnsigned32 formatCount
Definition: ndspy.h:278
PtDspyUnsigned32 type
Definition: ndspy.h:340
PtDspyUnsigned32 height
Definition: ndspy.h:127
Definition: ndspy.h:170
PtDspyError(* PtDspyDeepWriteFuncPtr)(PtDspyImageHandle image, int xmin, int xmax_plus_one, int ymin, int ymax_plus_one, char *data, int datasize, PtDspyUnsigned32 *pixeloffsets, PtDspyUnsigned32 *pixelsizes)
Definition: ndspy.h:365
Definition: ndspy.h:205
Definition: ndspy.h:302
PtDspyUnsigned32 width
Definition: ndspy.h:260
PtDspyError(* PtDspyActiveRegionFuncPtr)(PtDspyImageHandle image, int xmin, int xmax_plus_one, int ymin, int ymax_plus_one)
Definition: ndspy.h:370
Definition: ndspy.h:238
PRMANAPI PtDspyError DspyReorderFormatting(int formatCount, PtDspyDevFormat *format, int outFormatCount, const PtDspyDevFormat *outFormat)
PtDspyServerMessage msg
Definition: ndspy.h:284
#define PRMAN_INLINE
Definition: prmanapi.h:99
PtDspyWriteFuncPtr pWrite
Definition: ndspy.h:399
PRMANAPI PtDspyError DspyFindMatrixInParamList(RtConstString const string, float *result, int paramCount, const UserParameter *parameters)
PtDspySigned8 XunusedpaddingX
Definition: ndspy.h:338
PRMANEXPORT PtDspyError DspyImageClose(PtDspyImageHandle)
PtDspyUnsigned32 xmin
Definition: ndspy.h:286
PtDspyFloat32 aspectRatio
Definition: ndspy.h:128
PtDspyUnsigned32 id
Definition: ndspy.h:285
PtDspyError(* PtDspyMetadataFuncPtr)(PtDspyImageHandle image, char *metadata)
Definition: ndspy.h:373
PRMANAPI int DspyGetNumberOfHosts()
PtDspySigned8 vtype
Definition: ndspy.h:335
PtDspyUnsigned32 id
Definition: ndspy.h:330
double PtDspyFloat64
Definition: ndspy.h:62
Definition: ndspy.h:217
int PtDspySigned32
Definition: ndspy.h:80
Definition: ndspy.h:175
Definition: ndspy.h:274
struct uparam UserParameter
Definition: ndspy.h:321
PtDspyUnsigned32 PtDspyServerMessage
Definition: ndspy.h:89
PRMANEXPORT PtDspyError DspyImageActiveRegion(PtDspyImageHandle image, int xmin, int xmax, int ymin, int ymax)
PtDspyUnsigned32 width
Definition: ndspy.h:268
Definition: ndspy.h:224
Definition: ndspy.h:233
Definition: ndspy.h:313
PtDspyUnsigned32 xmax
Definition: ndspy.h:287
PRMANAPI PtDspyError DspyRegisterDriverTable(const char *name, const PtDspyDriverFunctionTable *pTable)
PtDspyUnsigned32 id
Definition: ndspy.h:316
Definition: ndspy.h:333
PtDspyQueryFuncPtr pQuery
Definition: ndspy.h:401
Definition: ndspy.h:200
PtDspyUnsigned32 id
Definition: ndspy.h:295
PtDspyUnsigned32 height
Definition: ndspy.h:261
PtDspyServerMessage msg
Definition: ndspy.h:258
PtDspyUnsigned32 paramCount
Definition: ndspy.h:271
PtDspyUnsigned8 interactive
Definition: ndspy.h:134
PRMANAPI PtDspyError DspyFindFloatsInParamList(RtConstString const string, int *resultCount, float *result, int paramCount, const UserParameter *parameters)
PtDspyUnsigned32 id
Definition: ndspy.h:324
Definition: ndspy.h:215
PtDspyUnsigned32 xmin
Definition: ndspy.h:306
Definition: ndspy.h:395
Definition: ndspy.h:225
PtDspyUnsigned32 length
Definition: ndspy.h:318
PtDspySigned8 vcount
Definition: ndspy.h:336
Definition: ndspy.h:165
PRMAN_INLINE float DspyLinearTosRGB(float u)
Definition: ndspy.h:490
unsigned type
Definition: ndspy.h:121
Definition: ndspy.h:199
PRMANEXPORT PtDspyError DspyImageData(PtDspyImageHandle image, int xmin, int xmax, int ymin, int ymax, int entrysize, const unsigned char *data)
PtDspyServerMessage msg
Definition: ndspy.h:329
char PtDspySigned8
Definition: ndspy.h:86
short PtDspySigned16
Definition: ndspy.h:83
PtDspyQueryType
Definition: ndspy.h:197
PtDspyUnsigned32 width
Definition: ndspy.h:126
Definition: ndspy.h:222
PtDspyUnsigned32 formatCount
Definition: ndspy.h:262
PRMANAPI void DspyMemReverse(unsigned char *t, int len)
Definition: ndspy.h:216
Definition: ndspy.h:201
PtDspyUnsigned32 ymin
Definition: ndspy.h:308
Definition: ndspy.h:210
PtDspyError(* PtDspyReopenFuncPtr)(PtDspyImageHandle image, const char *drivername, const char *filename, int width, int height, int paramCount, const UserParameter *parameters, int iFormatCount, PtDspyDevFormat *format, PtFlagStuff *flagstuff)
Definition: ndspy.h:379
Definition: ndspy.h:207
PtDspyUnsigned32 datasize
Definition: ndspy.h:310
unsigned int PtDspyUnsigned32
Definition: ndspy.h:79
char const * name
Definition: ndspy.h:120
RtPointer value
Definition: ndspy.h:347
Definition: ndspy.h:282
PtDspyUnsigned32 id
Definition: ndspy.h:305
Definition: ndspy.h:136
int supportsPointClouds
Definition: ndspy.h:167
PtDspyServerMessage msg
Definition: ndspy.h:323