00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef PS1080_H
00022 #define PS1080_H
00023
00024 #include <OniCTypes.h>
00025
00027 #define XN_DEVICE_MAX_STRING_LENGTH 200
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041 enum
00042 {
00043
00044
00045
00046
00048 XN_MODULE_PROPERTY_USB_INTERFACE = 0x1080F001,
00050 XN_MODULE_PROPERTY_MIRROR = 0x1080F002,
00052 XN_MODULE_PROPERTY_RESET_SENSOR_ON_STARTUP = 0x1080F004,
00054 XN_MODULE_PROPERTY_LEAN_INIT = 0x1080F005,
00056 XN_MODULE_PROPERTY_SERIAL_NUMBER = 0x1080F006,
00058 XN_MODULE_PROPERTY_VERSION = 0x1080F007,
00060 XN_MODULE_PROPERTY_FIRMWARE_FRAME_SYNC = 0x1080F008,
00062 XN_MODULE_PROPERTY_HOST_TIMESTAMPS = 0x1080FF77,
00064 XN_MODULE_PROPERTY_CLOSE_STREAMS_ON_SHUTDOWN = 0x1080FF78,
00066 XN_MODULE_PROPERTY_FIRMWARE_LOG_INTERVAL = 0x1080FF7F,
00068 XN_MODULE_PROPERTY_PRINT_FIRMWARE_LOG = 0x1080FF80,
00070 XN_MODULE_PROPERTY_FIRMWARE_LOG_FILTER = 0x1080FF81,
00072 XN_MODULE_PROPERTY_FIRMWARE_LOG = 0x1080FF82,
00074 XN_MODULE_PROPERTY_FIRMWARE_CPU_INTERVAL = 0x1080FF83,
00076 XN_MODULE_PROPERTY_PHYSICAL_DEVICE_NAME = 0x1080FF7A,
00078 XN_MODULE_PROPERTY_VENDOR_SPECIFIC_DATA = 0x1080FF7B,
00080 XN_MODULE_PROPERTY_SENSOR_PLATFORM_STRING = 0x1080FF7C,
00081
00082
00083
00084
00085
00087 XN_MODULE_PROPERTY_FIRMWARE_PARAM = 0x1080E001,
00089 XN_MODULE_PROPERTY_RESET = 0x1080E002,
00091 XN_MODULE_PROPERTY_IMAGE_CONTROL = 0x1080E003,
00093 XN_MODULE_PROPERTY_DEPTH_CONTROL = 0x1080E004,
00095 XN_MODULE_PROPERTY_AHB = 0x1080E005,
00097 XN_MODULE_PROPERTY_LED_STATE = 0x1080E006,
00099 XN_MODULE_PROPERTY_EMITTER_STATE = 0x1080E007,
00100
00102 XN_MODULE_PROPERTY_CMOS_BLANKING_UNITS = 0x1080FF74,
00104 XN_MODULE_PROPERTY_CMOS_BLANKING_TIME = 0x1080FF75,
00106 XN_MODULE_PROPERTY_FILE_LIST = 0x1080FF84,
00108 XN_MODULE_PROPERTY_FLASH_CHUNK = 0x1080FF85,
00109 XN_MODULE_PROPERTY_FILE = 0x1080FF86,
00111 XN_MODULE_PROPERTY_DELETE_FILE = 0x1080FF87,
00112 XN_MODULE_PROPERTY_FILE_ATTRIBUTES = 0x1080FF88,
00113 XN_MODULE_PROPERTY_TEC_SET_POINT = 0x1080FF89,
00115 XN_MODULE_PROPERTY_TEC_STATUS = 0x1080FF8A,
00117 XN_MODULE_PROPERTY_TEC_FAST_CONVERGENCE_STATUS = 0x1080FF8B,
00118 XN_MODULE_PROPERTY_EMITTER_SET_POINT = 0x1080FF8C,
00120 XN_MODULE_PROPERTY_EMITTER_STATUS = 0x1080FF8D,
00121 XN_MODULE_PROPERTY_I2C = 0x1080FF8E,
00123 XN_MODULE_PROPERTY_BIST = 0x1080FF8F,
00125 XN_MODULE_PROPERTY_PROJECTOR_FAULT = 0x1080FF90,
00127 XN_MODULE_PROPERTY_APC_ENABLED = 0x1080FF91,
00129 XN_MODULE_PROPERTY_FIRMWARE_TEC_DEBUG_PRINT = 0x1080FF92,
00131 XN_MODULE_PROPERTY_READ_ALL_ENDPOINTS = 0x1080FF93,
00132
00133 XN_MODULE_PROPERTY_IRFLOOD_STATE = 0x1080FF94,
00134
00135
00136 XN_MODULE_PROPERTY_IRGAIN = 0x1080FF95,
00137 XN_MODULE_PROPERTY_IREXP = 0x1080FF96,
00138
00139 XN_MODULE_PROPERTY_SENSOR_CHANGE = 0x1080FF97,
00140
00141 XN_MODULE_PROPERTY_PUBLIC_KEY = 0x1080FF98,
00142 XN_MODULE_PROPERTY_RANDOM_STRING = 0x1080FF99,
00143
00144 XN_MODULE_PROPERTY_RS_KEY = 0x1080FF9A,
00145
00146 XN_MODULE_PROPERTY_IS_SUPPORT_LASER_SECURE = 0x1080FF9B,
00147 XN_MODULE_PROPERTY_LASER_SECURE_STATUS = 0x1080FF9C,
00148 XN_MODULE_PROPERTY_LASER_SECURE_KEEPALIVE = 0x1080FF9D,
00149
00150 XN_MODULE_PROPERTY_LASER_CURRENT = 0x1080FF9E,
00151
00152
00153 XN_MODULE_PROPERTY_SOFT_RESET = 0x1080FF9F,
00154
00155 XN_MODULE_PROPERTY_SWITCH_IR = 0x1080FFB0,
00156
00157
00158 XN_MODULE_PROPERTY_RGB_AE_MODE = 0x1080FFB1,
00159
00160
00161
00162
00163
00164
00166 XN_STREAM_PROPERTY_INPUT_FORMAT = 0x10800001,
00168 XN_STREAM_PROPERTY_CROPPING_MODE = 0x10800002,
00169
00170
00171
00172
00173
00175 XN_STREAM_PROPERTY_CLOSE_RANGE = 0x1080F003,
00177 XN_STREAM_PROPERTY_FAST_ZOOM_CROP = 0x1080F009,
00179 XN_STREAM_PROPERTY_PIXEL_REGISTRATION = 0x10801001,
00181 XN_STREAM_PROPERTY_PIXEL_C2D_REGISTRATION = 0x20801001,
00183 XN_STREAM_PROPERTY_PIXEL_D2C_REGISTRATION = 0x20801002,
00185 XN_STREAM_PROPERTY_WHITE_BALANCE_ENABLED = 0x10801002,
00187 XN_STREAM_PROPERTY_GAIN = 0x10801003,
00189 XN_STREAM_PROPERTY_HOLE_FILTER = 0x10801004,
00191 XN_STREAM_PROPERTY_REGISTRATION_TYPE = 0x10801005,
00193 XN_STREAM_PROPERTY_AGC_BIN = 0x10801006,
00195 XN_STREAM_PROPERTY_CONST_SHIFT = 0x10801007,
00197 XN_STREAM_PROPERTY_PIXEL_SIZE_FACTOR = 0x10801008,
00199 XN_STREAM_PROPERTY_MAX_SHIFT = 0x10801009,
00201 XN_STREAM_PROPERTY_PARAM_COEFF = 0x1080100A,
00203 XN_STREAM_PROPERTY_SHIFT_SCALE = 0x1080100B,
00205 XN_STREAM_PROPERTY_ZERO_PLANE_DISTANCE = 0x1080100C,
00207 XN_STREAM_PROPERTY_ZERO_PLANE_PIXEL_SIZE = 0x1080100D,
00209 XN_STREAM_PROPERTY_EMITTER_DCMOS_DISTANCE = 0x1080100E,
00211 XN_STREAM_PROPERTY_DCMOS_RCMOS_DISTANCE = 0x1080100F,
00212
00213 XN_STREAM_PROPERTY_DUAL_FOCALL_LENGTH = 0x06010011,
00214
00215 XN_STREAM_PROPERTY_DUAL_COEFF_DISPARITY = 0x06010012,
00217 XN_STREAM_PROPERTY_S2D_TABLE = 0x10801112,
00219 XN_STREAM_PROPERTY_D2S_TABLE = 0x10801113,
00221 XN_STREAM_PROPERTY_DEPTH_SENSOR_CALIBRATION_INFO = 0x10801012,
00223 XN_STREAM_PROPERTY_GMC_MODE = 0x1080FF44,
00225 XN_STREAM_PROPERTY_GMC_DEBUG = 0x1080FF45,
00227 XN_STREAM_PROPERTY_WAVELENGTH_CORRECTION = 0x1080FF46,
00229 XN_STREAM_PROPERTY_WAVELENGTH_CORRECTION_DEBUG = 0x1080FF47,
00230
00232 XN_STREAM_PROPERTY_SOFTWARE_REGISTRATION = 0x2080FF42,
00233
00234
00235
00236
00238 XN_STREAM_PROPERTY_FLICKER = 0x10802001,
00239 };
00240
00241 typedef enum
00242 {
00243 XN_SENSOR_FW_VER_UNKNOWN = 0,
00244 XN_SENSOR_FW_VER_0_17 = 1,
00245 XN_SENSOR_FW_VER_1_1 = 2,
00246 XN_SENSOR_FW_VER_1_2 = 3,
00247 XN_SENSOR_FW_VER_3_0 = 4,
00248 XN_SENSOR_FW_VER_4_0 = 5,
00249 XN_SENSOR_FW_VER_5_0 = 6,
00250 XN_SENSOR_FW_VER_5_1 = 7,
00251 XN_SENSOR_FW_VER_5_2 = 8,
00252 XN_SENSOR_FW_VER_5_3 = 9,
00253 XN_SENSOR_FW_VER_5_4 = 10,
00254 XN_SENSOR_FW_VER_5_5 = 11,
00255 XN_SENSOR_FW_VER_5_6 = 12,
00256 XN_SENSOR_FW_VER_5_7 = 13,
00257 XN_SENSOR_FW_VER_5_8 = 14,
00258 XN_SENSOR_FW_VER_5_9 = 15,
00259 } XnFWVer;
00260
00261 typedef enum {
00262 XN_SENSOR_VER_UNKNOWN = 0,
00263 XN_SENSOR_VER_2_0 = 1,
00264 XN_SENSOR_VER_3_0 = 2,
00265 XN_SENSOR_VER_4_0 = 3,
00266 XN_SENSOR_VER_5_0 = 4
00267 } XnSensorVer;
00268
00269 typedef enum {
00270 XN_SENSOR_HW_VER_UNKNOWN = 0,
00271 XN_SENSOR_HW_VER_FPDB_10 = 1,
00272 XN_SENSOR_HW_VER_CDB_10 = 2,
00273 XN_SENSOR_HW_VER_RD_3 = 3,
00274 XN_SENSOR_HW_VER_RD_5 = 4,
00275 XN_SENSOR_HW_VER_RD1081 = 5,
00276 XN_SENSOR_HW_VER_RD1082 = 6,
00277 XN_SENSOR_HW_VER_RD109 = 7
00278 } XnHWVer;
00279
00280 typedef enum {
00281 XN_SENSOR_CHIP_VER_UNKNOWN = 0,
00282 XN_SENSOR_CHIP_VER_PS1000 = 1,
00283 XN_SENSOR_CHIP_VER_PS1080 = 2,
00284 XN_SENSOR_CHIP_VER_PS1080A6 = 3,
00285 XN_SENSOR_CHIP_VER_MX6000 = 6,
00286 XN_SENSOR_CHIP_VER_DUAL_MX6000 = 7
00287
00288 } XnChipVer;
00289
00290 typedef enum
00291 {
00292 XN_CMOS_TYPE_IMAGE = 0,
00293 XN_CMOS_TYPE_DEPTH = 1,
00294
00295 XN_CMOS_COUNT
00296 } XnCMOSType;
00297
00298 typedef enum
00299 {
00300 XN_IO_IMAGE_FORMAT_BAYER = 0,
00301 XN_IO_IMAGE_FORMAT_YUV422 = 1,
00302 XN_IO_IMAGE_FORMAT_JPEG = 2,
00303 XN_IO_IMAGE_FORMAT_JPEG_420 = 3,
00304 XN_IO_IMAGE_FORMAT_JPEG_MONO = 4,
00305 XN_IO_IMAGE_FORMAT_UNCOMPRESSED_YUV422 = 5,
00306 XN_IO_IMAGE_FORMAT_UNCOMPRESSED_BAYER = 6,
00307 XN_IO_IMAGE_FORMAT_UNCOMPRESSED_YUYV = 7,
00308 } XnIOImageFormats;
00309
00310 typedef enum
00311 {
00312 XN_IO_DEPTH_FORMAT_UNCOMPRESSED_16_BIT = 0,
00313 XN_IO_DEPTH_FORMAT_COMPRESSED_PS = 1,
00314 XN_IO_DEPTH_FORMAT_UNCOMPRESSED_10_BIT = 2,
00315 XN_IO_DEPTH_FORMAT_UNCOMPRESSED_11_BIT = 3,
00316 XN_IO_DEPTH_FORMAT_UNCOMPRESSED_12_BIT = 4,
00317 } XnIODepthFormats;
00318
00319 typedef enum
00320 {
00321 XN_RESET_TYPE_POWER = 0,
00322 XN_RESET_TYPE_SOFT = 1,
00323 XN_RESET_TYPE_SOFT_FIRST = 2,
00324 } XnParamResetType;
00325
00326 typedef enum XnSensorUsbInterface
00327 {
00328 XN_SENSOR_USB_INTERFACE_DEFAULT = 0,
00329 XN_SENSOR_USB_INTERFACE_ISO_ENDPOINTS = 1,
00330 XN_SENSOR_USB_INTERFACE_BULK_ENDPOINTS = 2,
00331 XN_SENSOR_USB_INTERFACE_ISO_ENDPOINTS_LOW_DEPTH = 3,
00332 } XnSensorUsbInterface;
00333
00334 typedef enum XnProcessingType
00335 {
00336 XN_PROCESSING_DONT_CARE = 0,
00337 XN_PROCESSING_HARDWARE = 1,
00338 XN_PROCESSING_SOFTWARE = 2,
00339 } XnProcessingType;
00340
00341 typedef enum XnCroppingMode
00342 {
00343 XN_CROPPING_MODE_NORMAL = 1,
00344 XN_CROPPING_MODE_INCREASED_FPS = 2,
00345 XN_CROPPING_MODE_SOFTWARE_ONLY = 3,
00346 } XnCroppingMode;
00347
00348 enum
00349 {
00350 XN_ERROR_STATE_OK = 0,
00351 XN_ERROR_STATE_DEVICE_PROJECTOR_FAULT = 1,
00352 XN_ERROR_STATE_DEVICE_OVERHEAT = 2,
00353 };
00354
00355 typedef enum XnFirmwareCroppingMode
00356 {
00357 XN_FIRMWARE_CROPPING_MODE_DISABLED = 0,
00358 XN_FIRMWARE_CROPPING_MODE_NORMAL = 1,
00359 XN_FIRMWARE_CROPPING_MODE_INCREASED_FPS = 2,
00360 } XnFirmwareCroppingMode;
00361
00362 typedef enum
00363 {
00364 XnLogFilterDebug = 0x0001,
00365 XnLogFilterInfo = 0x0002,
00366 XnLogFilterError = 0x0004,
00367 XnLogFilterProtocol = 0x0008,
00368 XnLogFilterAssert = 0x0010,
00369 XnLogFilterConfig = 0x0020,
00370 XnLogFilterFrameSync = 0x0040,
00371 XnLogFilterAGC = 0x0080,
00372 XnLogFilterTelems = 0x0100,
00373
00374 XnLogFilterAll = 0xFFFF
00375 } XnLogFilter;
00376
00377 typedef enum
00378 {
00379 XnFileAttributeReadOnly = 0x8000
00380 } XnFilePossibleAttributes;
00381
00382 typedef enum
00383 {
00384 XnFlashFileTypeFileTable = 0x00,
00385 XnFlashFileTypeScratchFile = 0x01,
00386 XnFlashFileTypeBootSector = 0x02,
00387 XnFlashFileTypeBootManager = 0x03,
00388 XnFlashFileTypeCodeDownloader = 0x04,
00389 XnFlashFileTypeMonitor = 0x05,
00390 XnFlashFileTypeApplication = 0x06,
00391 XnFlashFileTypeFixedParams = 0x07,
00392 XnFlashFileTypeDescriptors = 0x08,
00393 XnFlashFileTypeDefaultParams = 0x09,
00394 XnFlashFileTypeImageCmos = 0x0A,
00395 XnFlashFileTypeDepthCmos = 0x0B,
00396 XnFlashFileTypeAlgorithmParams = 0x0C,
00397 XnFlashFileTypeReferenceQVGA = 0x0D,
00398 XnFlashFileTypeReferenceVGA = 0x0E,
00399 XnFlashFileTypeMaintenance = 0x0F,
00400 XnFlashFileTypeDebugParams = 0x10,
00401 XnFlashFileTypePrimeProcessor = 0x11,
00402 XnFlashFileTypeGainControl = 0x12,
00403 XnFlashFileTypeRegistartionParams = 0x13,
00404 XnFlashFileTypeIDParams = 0x14,
00405 XnFlashFileTypeSensorTECParams = 0x15,
00406 XnFlashFileTypeSensorAPCParams = 0x16,
00407 XnFlashFileTypeSensorProjectorFaultParams = 0x17,
00408 XnFlashFileTypeProductionFile = 0x18,
00409 XnFlashFileTypeUpgradeInProgress = 0x19,
00410 XnFlashFileTypeWavelengthCorrection = 0x1A,
00411 XnFlashFileTypeGMCReferenceOffset = 0x1B,
00412 XnFlashFileTypeSensorNESAParams = 0x1C,
00413 XnFlashFileTypeSensorFault = 0x1D,
00414 XnFlashFileTypeVendorData = 0x1E,
00415 } XnFlashFileType;
00416
00417 typedef enum XnBistType
00418 {
00419
00420 XN_BIST_IMAGE_CMOS = 1 << 0,
00421 XN_BIST_IR_CMOS = 1 << 1,
00422 XN_BIST_POTENTIOMETER = 1 << 2,
00423 XN_BIST_FLASH = 1 << 3,
00424 XN_BIST_FULL_FLASH = 1 << 4,
00425 XN_BIST_PROJECTOR_TEST_MASK = 1 << 5,
00426 XN_BIST_TEC_TEST_MASK = 1 << 6,
00427
00428
00429 XN_BIST_NESA_TEST_MASK = 1 << 7,
00430 XN_BIST_NESA_UNLIMITED_TEST_MASK = 1 << 8,
00431
00432
00433 XN_BIST_ALL = (0xFFFFFFFF & ~XN_BIST_NESA_TEST_MASK & ~XN_BIST_NESA_UNLIMITED_TEST_MASK),
00434
00435 } XnBistType;
00436
00437 typedef enum XnBistError
00438 {
00439 XN_BIST_RAM_TEST_FAILURE = 1 << 0,
00440 XN_BIST_IR_CMOS_CONTROL_BUS_FAILURE = 1 << 1,
00441 XN_BIST_IR_CMOS_DATA_BUS_FAILURE = 1 << 2,
00442 XN_BIST_IR_CMOS_BAD_VERSION = 1 << 3,
00443 XN_BIST_IR_CMOS_RESET_FAILUE = 1 << 4,
00444 XN_BIST_IR_CMOS_TRIGGER_FAILURE = 1 << 5,
00445 XN_BIST_IR_CMOS_STROBE_FAILURE = 1 << 6,
00446 XN_BIST_COLOR_CMOS_CONTROL_BUS_FAILURE = 1 << 7,
00447 XN_BIST_COLOR_CMOS_DATA_BUS_FAILURE = 1 << 8,
00448 XN_BIST_COLOR_CMOS_BAD_VERSION = 1 << 9,
00449 XN_BIST_COLOR_CMOS_RESET_FAILUE = 1 << 10,
00450 XN_BIST_FLASH_WRITE_LINE_FAILURE = 1 << 11,
00451 XN_BIST_FLASH_TEST_FAILURE = 1 << 12,
00452 XN_BIST_POTENTIOMETER_CONTROL_BUS_FAILURE = 1 << 13,
00453 XN_BIST_POTENTIOMETER_FAILURE = 1 << 14,
00454 XN_BIST_AUDIO_TEST_FAILURE = 1 << 15,
00455 XN_BIST_PROJECTOR_TEST_LD_FAIL = 1 << 16,
00456 XN_BIST_PROJECTOR_TEST_LD_FAILSAFE_TRIG_FAIL = 1 << 17,
00457 XN_BIST_PROJECTOR_TEST_FAILSAFE_HIGH_FAIL = 1 << 18,
00458 XN_BIST_PROJECTOR_TEST_FAILSAFE_LOW_FAIL = 1 << 19,
00459 XN_TEC_TEST_HEATER_CROSSED = 1 << 20,
00460 XN_TEC_TEST_HEATER_DISCONNETED = 1 << 21,
00461 XN_TEC_TEST_TEC_CROSSED = 1 << 22,
00462 XN_TEC_TEST_TEC_FAULT = 1 << 23,
00463 } XnBistError;
00464
00465 typedef enum XnDepthCMOSType
00466 {
00467 XN_DEPTH_CMOS_NONE = 0,
00468 XN_DEPTH_CMOS_MT9M001 = 1,
00469 XN_DEPTH_CMOS_AR130 = 2,
00470 XN_DEPTH_CMOS_OV9151 = 3,
00471
00472 XN_DEPTH_CMOS_OV9282 = 7,
00473 XN_DEPTH_CMOS_AR0144 = 8,
00474 } XnDepthCMOSType;
00475
00476 typedef enum XnImageCMOSType
00477 {
00478 XN_IMAGE_CMOS_NONE = 0,
00479 XN_IMAGE_CMOS_MT9M112 = 1,
00480 XN_IMAGE_CMOS_MT9D131 = 2,
00481 XN_IMAGE_CMOS_MT9M114 = 3,
00482 } XnImageCMOSType;
00483
00484 #define XN_IO_MAX_I2C_BUFFER_SIZE 10
00485 #define XN_MAX_LOG_SIZE (6*1024)
00486
00487 #pragma pack (push, 1)
00488
00489 typedef struct XnSDKVersion
00490 {
00491 unsigned char nMajor;
00492 unsigned char nMinor;
00493 unsigned char nMaintenance;
00494 unsigned short nBuild;
00495 } XnSDKVersion;
00496
00497 typedef struct {
00498 unsigned char nMajor;
00499 unsigned char nMinor;
00500 unsigned short nBuild;
00501 unsigned int nChip;
00502 unsigned short nFPGA;
00503 unsigned short nSystemVersion;
00504
00505 XnSDKVersion SDK;
00506
00507 XnHWVer HWVer;
00508 XnFWVer FWVer;
00509 XnSensorVer SensorVer;
00510 XnChipVer ChipVer;
00511 } XnVersions;
00512
00513 typedef struct
00514 {
00515 unsigned short nParam;
00516 unsigned short nValue;
00517 } XnInnerParamData;
00518
00519 typedef struct XnDepthAGCBin
00520 {
00521 unsigned short nBin;
00522 unsigned short nMin;
00523 unsigned short nMax;
00524 } XnDepthAGCBin;
00525
00526 typedef struct XnControlProcessingData
00527 {
00528 unsigned short nRegister;
00529 unsigned short nValue;
00530 } XnControlProcessingData;
00531
00532 typedef struct XnAHBData
00533 {
00534 unsigned int nRegister;
00535 unsigned int nValue;
00536 unsigned int nMask;
00537 } XnAHBData;
00538
00539 typedef struct XnPixelRegistration
00540 {
00541 unsigned int nDepthX;
00542 unsigned int nDepthY;
00543 uint16_t nDepthValue;
00544 unsigned int nImageXRes;
00545 unsigned int nImageYRes;
00546 unsigned int nImageX;
00547 unsigned int nImageY;
00548 } XnPixelRegistration;
00549
00550 typedef struct XnLedState
00551 {
00552 uint16_t nLedID;
00553 uint16_t nState;
00554 } XnLedState;
00555
00556
00557 typedef struct XnCmosBlankingTime
00558 {
00559 XnCMOSType nCmosID;
00560 float nTimeInMilliseconds;
00561 uint16_t nNumberOfFrames;
00562 } XnCmosBlankingTime;
00563
00564 typedef struct XnCmosBlankingUnits
00565 {
00566 XnCMOSType nCmosID;
00567 uint16_t nUnits;
00568 uint16_t nNumberOfFrames;
00569 } XnCmosBlankingUnits;
00570
00571 typedef struct XnI2CWriteData
00572 {
00573 uint16_t nBus;
00574 uint16_t nSlaveAddress;
00575 uint16_t cpWriteBuffer[XN_IO_MAX_I2C_BUFFER_SIZE];
00576 uint16_t nWriteSize;
00577 } XnI2CWriteData;
00578
00579 typedef struct XnI2CReadData
00580 {
00581 uint16_t nBus;
00582 uint16_t nSlaveAddress;
00583 uint16_t cpReadBuffer[XN_IO_MAX_I2C_BUFFER_SIZE];
00584 uint16_t cpWriteBuffer[XN_IO_MAX_I2C_BUFFER_SIZE];
00585 uint16_t nReadSize;
00586 uint16_t nWriteSize;
00587 } XnI2CReadData;
00588
00589 typedef struct XnTecData
00590 {
00591 uint16_t m_SetPointVoltage;
00592 uint16_t m_CompensationVoltage;
00593 uint16_t m_TecDutyCycle;
00594 uint16_t m_HeatMode;
00595 int32_t m_ProportionalError;
00596 int32_t m_IntegralError;
00597 int32_t m_DerivativeError;
00598 uint16_t m_ScanMode;
00599 } XnTecData;
00600
00601 typedef struct XnTecFastConvergenceData
00602 {
00603 int16_t m_SetPointTemperature;
00604
00605 int16_t m_MeasuredTemperature;
00606
00607 int32_t m_ProportionalError;
00608 int32_t m_IntegralError;
00609 int32_t m_DerivativeError;
00610 uint16_t m_ScanMode;
00611 uint16_t m_HeatMode;
00612 uint16_t m_TecDutyCycle;
00613 uint16_t m_TemperatureRange;
00614 } XnTecFastConvergenceData;
00615
00616 typedef struct XnEmitterData
00617 {
00618 uint16_t m_State;
00619 uint16_t m_SetPointVoltage;
00620 uint16_t m_SetPointClocks;
00621 uint16_t m_PD_Reading;
00622 uint16_t m_EmitterSet;
00623 uint16_t m_EmitterSettingLogic;
00624 uint16_t m_LightMeasureLogic;
00625 uint16_t m_IsAPCEnabled;
00626 uint16_t m_EmitterSetStepSize;
00627 uint16_t m_ApcTolerance;
00628 uint16_t m_SubClocking;
00629 uint16_t m_Precision;
00630 } XnEmitterData;
00631
00632 typedef struct
00633 {
00634 uint16_t nId;
00635 uint16_t nAttribs;
00636 } XnFileAttributes;
00637
00638 typedef struct
00639 {
00640 uint32_t nOffset;
00641 const char* strFileName;
00642 uint16_t nAttributes;
00643 } XnParamFileData;
00644
00645 typedef struct
00646 {
00647 uint32_t nOffset;
00648 uint32_t nSize;
00649 unsigned char* pData;
00650 } XnParamFlashData;
00651
00652 typedef struct {
00653 uint16_t nId;
00654 uint16_t nType;
00655 uint32_t nVersion;
00656 uint32_t nOffset;
00657 uint32_t nSize;
00658 uint16_t nCrc;
00659 uint16_t nAttributes;
00660 uint16_t nReserve;
00661 } XnFlashFile;
00662
00663 typedef struct
00664 {
00665 XnFlashFile* pFiles;
00666 uint16_t nFiles;
00667 } XnFlashFileList;
00668
00669 typedef struct XnProjectorFaultData
00670 {
00671 uint16_t nMinThreshold;
00672 uint16_t nMaxThreshold;
00673 int32_t bProjectorFaultEvent;
00674 } XnProjectorFaultData;
00675
00676 typedef struct XnBist
00677 {
00678 uint32_t nTestsMask;
00679 uint32_t nFailures;
00680 } XnBist;
00681
00682
00683 typedef struct OBEccVerify
00684 {
00685 char Pub_x[48];
00686 char Pub_y[48];
00687 char Batch_Ver[12];
00688 }OBEccVerify;
00689
00690
00691 typedef struct OBEccInit
00692 {
00693 char RandomStr[48];
00694 char Batch_Ver[12];
00695 }OBEccInit;
00696
00697
00698 typedef struct OBEccRSKey
00699 {
00700 char R_key[48];
00701 char S_key[48];
00702 }OBEccRSKey;
00703
00704
00705 typedef struct XnRgbAeMode
00706 {
00707 uint16_t nAeMode;
00708 uint16_t nAeTarget;
00709 } XnRgbAeMode;
00710
00711 #pragma pack (pop)
00712
00713 #endif // PS1080_H