PVCAM  3.9.x
Programmable Virtual Camera Access Method library
pvcam.h
Go to the documentation of this file.
1 /******************************************************************************/
2 /* Copyright (C) Teledyne Photometrics. All rights reserved. */
3 /******************************************************************************/
4 
5 #ifndef _PVCAM_H
6 #define _PVCAM_H
7 
8 /******************************************************************************/
9 /* Constants */
10 /******************************************************************************/
11 
13 #define MAX_CAM 16
14 
15 /******************************************************************************/
16 /* Name/ID sizes */
17 /******************************************************************************/
18 
21 #define CAM_NAME_LEN 32
22 
23 #define PARAM_NAME_LEN 32
24 
26 #define ERROR_MSG_LEN 255
27 
29 #define CCD_NAME_LEN 17
30 
33 #define MAX_ALPHA_SER_NUM_LEN 32
34 
37 #define MAX_PP_NAME_LEN 32
38 
40 #define MAX_SYSTEM_NAME_LEN 32
41 
43 #define MAX_VENDOR_NAME_LEN 32
44 
46 #define MAX_PRODUCT_NAME_LEN 32
47 
49 #define MAX_CAM_PART_NUM_LEN 32
50 
52 #define MAX_GAIN_NAME_LEN 32
53 
55 #define MAX_SPDTAB_NAME_LEN 32
56 
58 #define MAX_CAM_SYSTEMS_INFO_LEN 1024
59 
60 /******************************************************************************/
61 /* Data types */
62 /******************************************************************************/
63 
68 {
72  uns8 f4[8];
73 }
75 
88 typedef struct _TAG_FRAME_INFO
89 {
96 }
98 
104 typedef enum PL_OPEN_MODES
105 {
109 }
111 
116 typedef enum PL_COOL_MODES
117 {
132 }
134 
139 typedef enum PL_MPP_MODES
140 {
145 }
147 
152 typedef enum PL_SHTR_MODES
153 {
160 }
162 
167 typedef enum PL_PMODES
168 {
177 }
178 PL_PMODES;
179 
185 typedef enum PL_COLOR_MODES
186 {
193 }
195 
205 typedef enum PL_IMAGE_FORMATS
206 {
218 }
220 
229 {
231  /* Bit-packing compression modes */
245  /* Other compression modes below */
246 }
248 
254 {
259 }
261 
267 {
272 }
274 
280 {
375 }
377 
382 typedef enum PL_PARAM_ACCESS
383 {
392 }
394 
399 typedef enum PL_IO_TYPE
400 {
403 }
404 PL_IO_TYPE;
405 
410 typedef enum PL_IO_DIRECTION
411 {
415 }
417 
422 typedef enum PL_READOUT_PORTS
423 {
428 }
430 
435 typedef enum PL_CLEAR_MODES
436 {
482 
483  /* Should be the last and never used value. */
485 }
487 
492 typedef enum PL_SHTR_OPEN_MODES
493 {
518 }
520 
528 typedef enum PL_EXPOSURE_MODES
529 {
564 
565  /*
566  Extended EXPOSURE modes used with #PARAM_EXPOSURE_MODE when
567  camera dynamically reports its capabilities.
568  The "7" in each of these calculations comes from the previous
569  definition of #MAX_EXPOSE_MODE when this file was defined.
570  */
571 
578  EXT_TRIG_INTERNAL = (7 + 0) << 8,
586  EXT_TRIG_TRIG_FIRST = (7 + 1) << 8,
593  EXT_TRIG_EDGE_RISING = (7 + 2) << 8,
600  EXT_TRIG_LEVEL = (7 + 3) << 8,
608  EXT_TRIG_SOFTWARE_FIRST = (7 + 4) << 8,
615  EXT_TRIG_SOFTWARE_EDGE = (7 + 5) << 8,
622  EXT_TRIG_LEVEL_OVERLAP = (7 + 6) << 8,
632  EXT_TRIG_LEVEL_PULSED = (7 + 7) << 8
633 }
635 
641 {
650 }
652 
660 {
691 
692  /* Should be the last and never used value. */
694 }
696 
701 typedef enum PL_FAN_SPEEDS
702 {
707 }
709 
714 typedef enum PL_TRIGTAB_SIGNALS
715 {
717 }
719 
725 {
741 }
743 
764 {
789 }
791 
797 {
801 }
803 
808 typedef enum PL_CENTROIDS_MODES
809 {
813 }
815 
816 
821 typedef enum PL_SCAN_MODES
822 {
834 }
836 
837 
842 typedef enum PL_SCAN_DIRECTIONS
843 {
853 }
855 
860 typedef enum PP_FEATURE_IDS
861 {
882 }
884 
888 #define PP_MAX_PARAMETERS_PER_FEATURE 10
889 
894 typedef enum PP_PARAMETER_IDS
895 {
901  PP_FEATURE_QUANT_VIEW_ENABLED = (PP_FEATURE_QUANT_VIEW * PP_MAX_PARAMETERS_PER_FEATURE),
905  PP_FEATURE_TOP_LOCK_ENABLED = (PP_FEATURE_TOP_LOCK * PP_MAX_PARAMETERS_PER_FEATURE),
921  PP_FEATURE_DENOISING_ENABLED = (PP_FEATURE_DENOISING * PP_MAX_PARAMETERS_PER_FEATURE),
935 }
937 
943 typedef struct smart_stream_type
944 {
947 }
949 
954 typedef enum PL_SMT_MODES
955 {
958 }
960 
966 typedef enum PL_IMAGE_STATUSES
967 {
983 
986  /* Should be the last and never used value. */
988 }
990 
997 typedef enum PL_CCS_ABORT_MODES
998 {
1033 }
1035 
1040 typedef enum PL_IRQ_MODES
1041 {
1046 }
1047 PL_IRQ_MODES;
1048 
1053 typedef enum PL_CIRC_MODES
1054 {
1072 }
1074 
1081 typedef enum PL_EXP_RES_MODES
1082 {
1086 }
1088 
1093 typedef enum PL_SRC_MODES
1094 {
1105 }
1106 PL_SRC_MODES;
1107 
1120 typedef enum PL_CALLBACK_EVENT
1121 {
1146 }
1148 
1159 typedef struct rgn_type
1160 {
1167 }
1168 rgn_type;
1169 
1170 typedef struct io_struct
1171 {
1175  struct io_struct* next;
1176 }
1177 io_entry;
1178 
1179 typedef struct io_list
1180 {
1191 }
1192 io_list;
1193 
1198 typedef struct active_camera_type
1199 {
1220 }
1222 
1223 /******************************************************************************/
1224 /* Start of Frame Metadata Types */
1225 /******************************************************************************/
1226 
1227 /******************************************************************************/
1228 /* Data headers and camera shared types */
1229 
1234 typedef enum PL_MD_FRAME_FLAGS
1235 {
1244 }
1246 
1251 typedef enum PL_MD_ROI_FLAGS
1252 {
1268 }
1270 
1275 #define PL_MD_FRAME_SIGNATURE 5328208
1276 
1277 /*
1278 The structures are shared between platforms, thus we must ensure that no
1279 compiler will apply different struct alignment.
1280 */
1281 #pragma pack(push)
1282 #pragma pack(1)
1283 
1289 typedef struct md_frame_header
1290 { /* TOTAL: 48 bytes */
1320 }
1322 
1328 typedef struct md_frame_header_v3
1329 { /* TOTAL: 48 bytes */
1348 }
1350 
1356 typedef struct md_frame_roi_header
1357 { /* TOTAL: 32 bytes */
1373 }
1375 
1376 #pragma pack(pop)
1377 
1378 /******************************************************************************/
1379 /* Extended metadata related structures */
1380 
1384 #define PL_MD_EXT_TAGS_MAX_SUPPORTED 255
1385 
1391 typedef enum PL_MD_EXT_TAGS
1392 {
1397 }
1399 
1405 typedef struct md_ext_item_info
1406 {
1410  const char* name;
1411 }
1413 
1418 typedef struct md_ext_item
1419 {
1421  void* value;
1422 }
1423 md_ext_item;
1424 
1429 {
1433 }
1435 
1445 typedef struct md_frame_roi
1446 {
1448  void* data;
1450  void* extMdData;
1452 }
1453 md_frame_roi;
1454 
1463 typedef struct md_frame
1464 {
1466  void* extMdData;
1473 }
1474 md_frame;
1475 
1476 /******************************************************************************/
1477 /*End of Frame Metadata Types */
1478 /******************************************************************************/
1479 
1480 /******************************************************************************/
1490 typedef const rgn_type* rgn_const_ptr;
1495  /* grp_pm_deprecated_typedefs */
1497 
1498 /******************************************************************************/
1506 #define MS16_BYTE(two_byte_value)((uns8)(((uns16)(two_byte_value) >> 8) & 0xFF))
1507 
1508 #define LS16_BYTE(two_byte_value)((uns8)(((uns16)(two_byte_value) >> 0) & 0xFF))
1509 
1511 #define MS32_BYTE(four_byte_value)((uns8)(((uns32)(four_byte_value) >> 24) & 0xFF))
1512 
1513 #define MH32_BYTE(four_byte_value)((uns8)(((uns32)(four_byte_value) >> 16) & 0xFF))
1514 
1515 #define ML32_BYTE(four_byte_value)((uns8)(((uns32)(four_byte_value) >> 8) & 0xFF))
1516 
1517 #define LS32_BYTE(four_byte_value)((uns8)(((uns32)(four_byte_value) >> 0) & 0xFF))
1518 
1520 #define VAL_UNS16(ms_byte,ls_byte)(\
1521  ((uns16)((uns8)(ms_byte)) << 8) |\
1522  ((uns16)((uns8)(ls_byte)) << 0))
1523 
1525 #define VAL_UNS32(ms_byte,mh_byte,ml_byte,ls_byte)(\
1526  ((uns32)((uns8)(ms_byte)) << 24) |\
1527  ((uns32)((uns8)(mh_byte)) << 16) |\
1528  ((uns32)((uns8)(ml_byte)) << 8) |\
1529  ((uns32)((uns8)(ls_byte)) << 0))
1530 
1532 #define VAL_INT64(b0,b1,b2,b3,b4,b5,b6,b7)(\
1533  ((long64)((uns8)(b0)) << 56) |\
1534  ((long64)((uns8)(b1)) << 48) |\
1535  ((long64)((uns8)(b2)) << 40) |\
1536  ((long64)((uns8)(b3)) << 32) |\
1537  ((long64)((uns8)(b4)) << 24) |\
1538  ((long64)((uns8)(b5)) << 16) |\
1539  ((long64)((uns8)(b6)) << 8) |\
1540  ((long64)((uns8)(b7)) << 0))
1541 
1544 /******************************************************************************/
1545 /* Content which is needed to communicate with the PVCAM DLLs */
1546 
1548  uns16 exp_total,
1549  uns16 rgn_total,
1550  const rgn_type* rgn_array,
1551  int16 mode,
1552  uns32 exposure_time,
1553  uns32* pixels,
1554  active_camera_type* active_camera);
1555 
1560 #define TYPE_INT16 1
1561 #define TYPE_INT32 2
1562 #define TYPE_FLT64 4
1563 #define TYPE_UNS8 5
1564 #define TYPE_UNS16 6
1565 #define TYPE_UNS32 7
1566 #define TYPE_UNS64 8
1567 #define TYPE_ENUM 9
1568 #define TYPE_BOOLEAN 11
1569 #define TYPE_INT8 12
1570 #define TYPE_CHAR_PTR 13
1571 #define TYPE_VOID_PTR 14
1572 #define TYPE_VOID_PTR_PTR 15
1573 #define TYPE_INT64 16
1574 #define TYPE_SMART_STREAM_TYPE 17
1575 #define TYPE_SMART_STREAM_TYPE_PTR 18
1576 #define TYPE_FLT32 19
1577 
1579 /*
1580 Defines for classes.
1581 */
1582 #define CLASS0 0 /* Camera Communications */
1583 #define CLASS2 2 /* Configuration/Setup */
1584 #define CLASS3 3 /* Data Acquisition */
1585 
1586 /******************************************************************************/
1587 /* Start of parameter ID definitions. */
1588 /* Format: TTCCxxxx, where TT = Data type, CC = Class, xxxx = ID number */
1589 /* Please note that some data types encoded in the parameter IDs do not */
1590 /* correspond to the actual parameter data type. Please always check the */
1591 /* ATTR_TYPE before using the parameter. */
1592 /******************************************************************************/
1593 
1603 /* CAMERA COMMUNICATION PARAMETERS */
1604 
1614 #define PARAM_DD_INFO_LENGTH ((CLASS0<<16) + (TYPE_INT16<<24) + 1)
1615 
1639 #define PARAM_DD_VERSION ((CLASS0<<16) + (TYPE_UNS16<<24) + 2)
1640 
1658 #define PARAM_DD_RETRIES ((CLASS0<<16) + (TYPE_UNS16<<24) + 3)
1659 
1675 #define PARAM_DD_TIMEOUT ((CLASS0<<16) + (TYPE_UNS16<<24) + 4)
1676 
1687 #define PARAM_DD_INFO ((CLASS0<<16) + (TYPE_CHAR_PTR<<24) + 5)
1688 
1701 #define PARAM_CAM_INTERFACE_TYPE ((CLASS0<<16) + (TYPE_ENUM<<24) + 10)
1702 
1726 #define PARAM_CAM_INTERFACE_MODE ((CLASS0<<16) + (TYPE_ENUM<<24) + 11)
1727 
1728 /* CONFIGURATION AND SETUP PARAMETERS */
1729 
1749 #define PARAM_ADC_OFFSET ((CLASS2<<16) + (TYPE_INT16<<24) + 195)
1750 
1758 #define PARAM_CHIP_NAME ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 129)
1759 
1773 #define PARAM_SYSTEM_NAME ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 130)
1774 
1785 #define PARAM_VENDOR_NAME ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 131)
1786 
1798 #define PARAM_PRODUCT_NAME ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 132)
1799 
1809 #define PARAM_CAMERA_PART_NUMBER ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 133)
1810 
1818 #define PARAM_COOLING_MODE ((CLASS2<<16) + (TYPE_ENUM<<24) + 214)
1819 
1827 #define PARAM_PREAMP_DELAY ((CLASS2<<16) + (TYPE_UNS16<<24) + 502)
1828 
1841 #define PARAM_COLOR_MODE ((CLASS2<<16) + (TYPE_ENUM<<24) + 504)
1842 
1851 #define PARAM_MPP_CAPABLE ((CLASS2<<16) + (TYPE_ENUM<<24) + 224)
1852 
1860 #define PARAM_PREAMP_OFF_CONTROL ((CLASS2<<16) + (TYPE_UNS32<<24) + 507)
1861 
1862 /* Sensor dimensions and physical characteristics */
1863 
1876 #define PARAM_PREMASK ((CLASS2<<16) + (TYPE_UNS16<<24) + 53)
1877 
1885 #define PARAM_PRESCAN ((CLASS2<<16) + (TYPE_UNS16<<24) + 55)
1886 
1896 #define PARAM_POSTMASK ((CLASS2<<16) + (TYPE_UNS16<<24) + 54)
1897 
1907 #define PARAM_POSTSCAN ((CLASS2<<16) + (TYPE_UNS16<<24) + 56)
1908 
1917 #define PARAM_PIX_PAR_DIST ((CLASS2<<16) + (TYPE_UNS16<<24) + 500)
1918 
1925 #define PARAM_PIX_PAR_SIZE ((CLASS2<<16) + (TYPE_UNS16<<24) + 63)
1926 
1935 #define PARAM_PIX_SER_DIST ((CLASS2<<16) + (TYPE_UNS16<<24) + 501)
1936 
1943 #define PARAM_PIX_SER_SIZE ((CLASS2<<16) + (TYPE_UNS16<<24) + 62)
1944 
1953 #define PARAM_SUMMING_WELL ((CLASS2<<16) + (TYPE_BOOLEAN<<24) + 505)
1954 
1961 #define PARAM_FWELL_CAPACITY ((CLASS2<<16) + (TYPE_UNS32<<24) + 506)
1962 
1972 #define PARAM_PAR_SIZE ((CLASS2<<16) + (TYPE_UNS16<<24) + 57)
1973 
1981 #define PARAM_SER_SIZE ((CLASS2<<16) + (TYPE_UNS16<<24) + 58)
1982 
1991 #define PARAM_ACCUM_CAPABLE ((CLASS2<<16) + (TYPE_BOOLEAN<<24) + 538)
1992 
2003 #define PARAM_FLASH_DWNLD_CAPABLE ((CLASS2<<16) + (TYPE_BOOLEAN<<24) + 539)
2004 
2005 /* General parameters */
2006 
2022 #define PARAM_READOUT_TIME ((CLASS2<<16) + (TYPE_FLT64<<24) + 179)
2023 
2037 #define PARAM_CLEARING_TIME ((CLASS2<<16) + (TYPE_INT64<<24) + 180)
2038 
2052 #define PARAM_POST_TRIGGER_DELAY ((CLASS2<<16) + (TYPE_INT64<<24) + 181)
2053 
2075 #define PARAM_PRE_TRIGGER_DELAY ((CLASS2<<16) + (TYPE_INT64<<24) + 182)
2076 
2077 /* CAMERA PARAMETERS */
2078 
2088 #define PARAM_CLEAR_CYCLES ((CLASS2<<16) + (TYPE_UNS16<<24) + 97)
2089 
2101 #define PARAM_CLEAR_MODE ((CLASS2<<16) + (TYPE_ENUM<<24) + 523)
2102 
2112 #define PARAM_FRAME_CAPABLE ((CLASS2<<16) + (TYPE_BOOLEAN<<24) + 509)
2113 
2125 #define PARAM_PMODE ((CLASS2<<16) + (TYPE_ENUM <<24) + 524)
2126 
2127 /* Temperature parameters for the detector. */
2128 
2142 #define PARAM_TEMP ((CLASS2<<16) + (TYPE_INT16<<24) + 525)
2143 
2158 #define PARAM_TEMP_SETPOINT ((CLASS2<<16) + (TYPE_INT16<<24) + 526)
2159 
2160 /* Parameters used for firmware version retrieval. */
2161 
2172 #define PARAM_CAM_FW_VERSION ((CLASS2<<16) + (TYPE_UNS16<<24) + 532)
2173 
2183 #define PARAM_HEAD_SER_NUM_ALPHA ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 533)
2184 
2193 #define PARAM_PCI_FW_VERSION ((CLASS2<<16) + (TYPE_UNS16<<24) + 534)
2194 
2208 #define PARAM_FAN_SPEED_SETPOINT ((CLASS2<<16) + (TYPE_ENUM<<24) + 710)
2209 
2227 #define PARAM_CAM_SYSTEMS_INFO ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 536)
2228 
2241 #define PARAM_EXPOSURE_MODE ((CLASS2<<16) + (TYPE_ENUM<<24) + 535)
2242 
2255 #define PARAM_EXPOSE_OUT_MODE ((CLASS2<<16) + (TYPE_ENUM<<24) + 560)
2256 
2257 /* SPEED TABLE PARAMETERS */
2258 
2276 #define PARAM_BIT_DEPTH ((CLASS2<<16) + (TYPE_INT16<<24) + 511)
2277 
2289 #define PARAM_IMAGE_FORMAT ((CLASS2<<16) + (TYPE_ENUM<<24) + 248)
2290 
2303 #define PARAM_IMAGE_COMPRESSION ((CLASS2<<16) + (TYPE_ENUM<<24) + 249)
2304 
2322 #define PARAM_SCAN_MODE ((CLASS3<<16) + (TYPE_ENUM<<24) + 250)
2323 
2332 #define PARAM_SCAN_DIRECTION ((CLASS3<<16) + (TYPE_ENUM<<24) + 251)
2333 
2342 #define PARAM_SCAN_DIRECTION_RESET ((CLASS3<<16) + (TYPE_BOOLEAN<<24) + 252)
2343 
2351 #define PARAM_SCAN_LINE_DELAY ((CLASS3<<16) + (TYPE_UNS16<<24) + 253)
2352 
2364 #define PARAM_SCAN_LINE_TIME ((CLASS3<<16) + (TYPE_INT64<<24) + 254)
2365 
2372 #define PARAM_SCAN_WIDTH ((CLASS3<<16) + (TYPE_UNS16<<24) + 255)
2373 
2404 #define PARAM_FRAME_ROTATE ((CLASS2<<16) + (TYPE_ENUM<<24) + 256)
2405 
2434 #define PARAM_FRAME_FLIP ((CLASS2<<16) + (TYPE_ENUM<<24) + 257)
2435 
2452 #define PARAM_GAIN_INDEX ((CLASS2<<16) + (TYPE_INT16<<24) + 512)
2453 
2472 #define PARAM_SPDTAB_INDEX ((CLASS2<<16) + (TYPE_INT16<<24) + 513)
2473 
2485 #define PARAM_GAIN_NAME ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 514)
2486 
2498 #define PARAM_SPDTAB_NAME ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 515)
2499 
2510 #define PARAM_READOUT_PORT ((CLASS2<<16) + (TYPE_ENUM<<24) + 247)
2511 
2522 #define PARAM_PIX_TIME ((CLASS2<<16) + (TYPE_UNS16<<24) + 516)
2523 
2524 /* SHUTTER PARAMETERS */
2525 
2538 #define PARAM_SHTR_CLOSE_DELAY ((CLASS2<<16) + (TYPE_UNS16<<24) + 519)
2539 
2551 #define PARAM_SHTR_OPEN_DELAY ((CLASS2<<16) + (TYPE_UNS16<<24) + 520)
2552 
2562 #define PARAM_SHTR_OPEN_MODE ((CLASS2<<16) + (TYPE_ENUM <<24) + 521)
2563 
2577 #define PARAM_SHTR_STATUS ((CLASS2<<16) + (TYPE_ENUM <<24) + 522)
2578 
2579 /* I/O PARAMETERS */
2580 
2590 #define PARAM_IO_ADDR ((CLASS2<<16) + (TYPE_UNS16<<24) + 527)
2591 
2600 #define PARAM_IO_TYPE ((CLASS2<<16) + (TYPE_ENUM<<24) + 528)
2601 
2610 #define PARAM_IO_DIRECTION ((CLASS2<<16) + (TYPE_ENUM<<24) + 529)
2611 
2632 #define PARAM_IO_STATE ((CLASS2<<16) + (TYPE_FLT64<<24) + 530)
2633 
2644 #define PARAM_IO_BITDEPTH ((CLASS2<<16) + (TYPE_UNS16<<24) + 531)
2645 
2646 /* GAIN MULTIPLIER PARAMETERS */
2647 
2658 #define PARAM_GAIN_MULT_FACTOR ((CLASS2<<16) + (TYPE_UNS16<<24) + 537)
2659 
2670 #define PARAM_GAIN_MULT_ENABLE ((CLASS2<<16) + (TYPE_BOOLEAN<<24) + 541)
2671 
2672 /* POST PROCESSING PARAMETERS */
2673 
2684 #define PARAM_PP_FEAT_NAME ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 542)
2685 
2698 #define PARAM_PP_INDEX ((CLASS2<<16) + (TYPE_INT16<<24) + 543)
2699 
2706 #define PARAM_ACTUAL_GAIN ((CLASS2<<16) + (TYPE_UNS16<<24) + 544)
2707 
2720 #define PARAM_PP_PARAM_INDEX ((CLASS2<<16) + (TYPE_INT16<<24) + 545)
2721 
2732 #define PARAM_PP_PARAM_NAME ((CLASS2<<16) + (TYPE_CHAR_PTR<<24) + 546)
2733 
2741 #define PARAM_PP_PARAM ((CLASS2<<16) + (TYPE_UNS32<<24) + 547)
2742 
2749 #define PARAM_READ_NOISE ((CLASS2<<16) + (TYPE_UNS16<<24) + 548)
2750 
2762 #define PARAM_PP_FEAT_ID ((CLASS2<<16) + (TYPE_UNS16<<24) + 549)
2763 
2775 #define PARAM_PP_PARAM_ID ((CLASS2<<16) + (TYPE_UNS16<<24) + 550)
2776 
2777 /* S.M.A.R.T. STREAMING PARAMETERS */
2778 
2790 #define PARAM_SMART_STREAM_MODE_ENABLED ((CLASS2<<16) + (TYPE_BOOLEAN<<24) + 700)
2791 
2803 #define PARAM_SMART_STREAM_MODE ((CLASS2<<16) + (TYPE_UNS16<<24) + 701)
2804 
2814 #define PARAM_SMART_STREAM_EXP_PARAMS ((CLASS2<<16) + (TYPE_VOID_PTR<<24) + 702)
2815 
2827 #define PARAM_SMART_STREAM_DLY_PARAMS ((CLASS2<<16) + (TYPE_VOID_PTR<<24) + 703)
2828 
2829 /* ACQUISITION PARAMETERS */
2830 
2840 #define PARAM_EXP_TIME ((CLASS3<<16) + (TYPE_UNS16<<24) + 1)
2841 
2852 #define PARAM_EXP_RES ((CLASS3<<16) + (TYPE_ENUM<<24) + 2)
2853 
2863 #define PARAM_EXP_RES_INDEX ((CLASS3<<16) + (TYPE_UNS16<<24) + 4)
2864 
2877 #define PARAM_EXPOSURE_TIME ((CLASS3<<16) + (TYPE_UNS64<<24) + 8)
2878 
2879 /* PARAMETERS FOR BEGIN and END of FRAME Interrupts */
2880 
2890 #define PARAM_BOF_EOF_ENABLE ((CLASS3<<16) + (TYPE_ENUM<<24) + 5)
2891 
2900 #define PARAM_BOF_EOF_COUNT ((CLASS3<<16) + (TYPE_UNS32<<24) + 6)
2901 
2910 #define PARAM_BOF_EOF_CLR ((CLASS3<<16) + (TYPE_BOOLEAN<<24) + 7)
2911 
2920 #define PARAM_CIRC_BUFFER ((CLASS3<<16) + (TYPE_BOOLEAN<<24) + 299)
2921 
2933 #define PARAM_FRAME_BUFFER_SIZE ((CLASS3<<16) + (TYPE_UNS64<<24) + 300)
2934 
2935 /* Binning reported by camera */
2936 
2948 #define PARAM_BINNING_SER ((CLASS3<<16) + (TYPE_ENUM<<24) + 165)
2949 
2960 #define PARAM_BINNING_PAR ((CLASS3<<16) + (TYPE_ENUM<<24) + 166)
2961 
2962 /* Parameters related to multiple ROIs and Centroids */
2963 
2975 #define PARAM_METADATA_ENABLED ((CLASS3<<16) + (TYPE_BOOLEAN<<24) + 168)
2976 
2988 #define PARAM_METADATA_RESET_TIMESTAMP ((CLASS3<<16) + (TYPE_BOOLEAN<<24) + 176)
2989 
2998 #define PARAM_ROI_COUNT ((CLASS3<<16) + (TYPE_UNS16 <<24) + 169)
2999 
3011 #define PARAM_CENTROIDS_ENABLED ((CLASS3<<16) + (TYPE_BOOLEAN<<24) + 170)
3012 
3034 #define PARAM_CENTROIDS_RADIUS ((CLASS3<<16) + (TYPE_UNS16 <<24) + 171)
3035 
3052 #define PARAM_CENTROIDS_COUNT ((CLASS3<<16) + (TYPE_UNS16 <<24) + 172)
3053 
3066 #define PARAM_CENTROIDS_MODE ((CLASS3<<16) + (TYPE_ENUM <<24) + 173)
3067 
3080 #define PARAM_CENTROIDS_BG_COUNT ((CLASS3<<16) + (TYPE_ENUM <<24) + 174)
3081 
3092 #define PARAM_CENTROIDS_THRESHOLD ((CLASS3<<16) + (TYPE_UNS32 <<24) + 175)
3093 
3094 /* Parameters related to triggering table */
3095 
3108 #define PARAM_TRIGTAB_SIGNAL ((CLASS3<<16) + (TYPE_ENUM<<24) + 180)
3109 
3120 #define PARAM_LAST_MUXED_SIGNAL ((CLASS3<<16) + (TYPE_UNS8<<24) + 181)
3121 
3132 #define PARAM_FRAME_DELIVERY_MODE ((CLASS3<<16) + (TYPE_ENUM <<24) + 400)
3133  /* grp_pm_parameters */
3135 
3136 /******************************************************************************/
3137 /* End of parameter ID definitions. */
3138 /******************************************************************************/
3139 
3140 /******************************************************************************/
3141 /* Start of function prototypes. */
3142 /******************************************************************************/
3143 
3144 #ifndef PV_EMBEDDED
3145 
3191 typedef void (PV_DECL *PL_CALLBACK_SIG_LEGACY)(void);
3192 
3199 typedef void (PV_DECL *PL_CALLBACK_SIG_EX)(void* pContext);
3200 
3207 typedef void (PV_DECL *PL_CALLBACK_SIG_EX2)(const FRAME_INFO* pFrameInfo);
3208 
3217 typedef void (PV_DECL *PL_CALLBACK_SIG_EX3)(const FRAME_INFO* pFrameInfo, void* pContext);
3218  /* grp_callbacks */
3220 
3221 #ifdef PV_C_PLUS_PLUS
3222 extern "C"
3223 {
3224 #endif
3225 
3226 /*****************************************************************************/
3227 /*****************************************************************************/
3228 /* */
3229 /* Camera Communications Function Prototypes */
3230 /* */
3231 /*****************************************************************************/
3232 /*****************************************************************************/
3233 
3272 rs_bool PV_DECL pl_pvcam_get_ver(uns16* pvcam_version);
3273 
3289 rs_bool PV_DECL pl_pvcam_init(void);
3290 
3306 rs_bool PV_DECL pl_pvcam_uninit(void);
3307  /* grp_pm_functions */
3309 
3314 DEPRECATED rs_bool PV_DECL pl_cam_check(int16 hcam); /* grp_pm_deprecated_functions */
3316 
3339 rs_bool PV_DECL pl_cam_close(int16 hcam);
3340 
3376 rs_bool PV_DECL pl_cam_get_name(int16 cam_num, char* camera_name);
3377 
3399 rs_bool PV_DECL pl_cam_get_total(int16* totl_cams);
3400 
3429 rs_bool PV_DECL pl_cam_open(char* camera_name, int16* hcam, int16 o_mode);
3430  /* grp_pm_functions */
3432 
3437 DEPRECATED rs_bool PV_DECL pl_cam_register_callback(int16 hcam, int32 callback_event,
3438  void* callback);
3439 DEPRECATED rs_bool PV_DECL pl_cam_register_callback_ex(int16 hcam, int32 callback_event,
3440  void* callback, void* context);
3441 DEPRECATED rs_bool PV_DECL pl_cam_register_callback_ex2(int16 hcam, int32 callback_event,
3442  void* callback); /* grp_pm_deprecated_functions */
3444 
3497 rs_bool PV_DECL pl_cam_register_callback_ex3(int16 hcam, int32 callback_event,
3498  void* callback, void* context);
3499 
3517 rs_bool PV_DECL pl_cam_deregister_callback(int16 hcam, int32 callback_event);
3518 
3519 /*****************************************************************************/
3520 /*****************************************************************************/
3521 /* */
3522 /* Error Reporting Function Prototypes */
3523 /* */
3524 /*****************************************************************************/
3525 /*****************************************************************************/
3526 
3548 int16 PV_DECL pl_error_code(void);
3549 
3574 rs_bool PV_DECL pl_error_message(int16 err_code, char* msg);
3575 
3576 /*****************************************************************************/
3577 /*****************************************************************************/
3578 /* */
3579 /* Configuration/Setup Function Prototypes */
3580 /* */
3581 /*****************************************************************************/
3582 /*****************************************************************************/
3583 
3611 rs_bool PV_DECL pl_get_param(int16 hcam, uns32 param_id,
3612  int16 param_attribute, void* param_value);
3613 
3637 rs_bool PV_DECL pl_set_param(int16 hcam, uns32 param_id, void* param_value);
3638 
3668 rs_bool PV_DECL pl_get_enum_param(int16 hcam, uns32 param_id, uns32 index,
3669  int32* value, char* desc, uns32 length);
3670 
3691 rs_bool PV_DECL pl_enum_str_length(int16 hcam, uns32 param_id, uns32 index,
3692  uns32* length);
3693 
3707 rs_bool PV_DECL pl_pp_reset(int16 hcam);
3708 
3725  uns16 entries);
3726 
3740 
3755 rs_bool PV_DECL pl_create_frame_info_struct(FRAME_INFO** new_frame);
3756 
3769 rs_bool PV_DECL pl_release_frame_info_struct(FRAME_INFO* frame_to_delete);
3770 
3771 /*****************************************************************************/
3772 /*****************************************************************************/
3773 /* */
3774 /* Data Acquisition Function Prototypes */
3775 /* */
3776 /*****************************************************************************/
3777 /*****************************************************************************/
3778 
3824 rs_bool PV_DECL pl_exp_setup_seq(int16 hcam, uns16 exp_total, uns16 rgn_total,
3825  const rgn_type* rgn_array, int16 exp_mode,
3826  uns32 exposure_time, uns32* exp_bytes);
3827 
3850 rs_bool PV_DECL pl_exp_start_seq(int16 hcam, void* pixel_stream);
3851 
3894 rs_bool PV_DECL pl_exp_setup_cont(int16 hcam, uns16 rgn_total,
3895  const rgn_type* rgn_array, int16 exp_mode,
3896  uns32 exposure_time, uns32* exp_bytes,
3897  int16 buffer_mode);
3898 
3921 rs_bool PV_DECL pl_exp_start_cont(int16 hcam, void* pixel_stream, uns32 size);
3922 
3944 rs_bool PV_DECL pl_exp_trigger(int16 hcam, uns32* flags, uns32 value);
3945 
3969 rs_bool PV_DECL pl_exp_check_status(int16 hcam, int16* status, uns32* bytes_arrived);
3970 
3995 rs_bool PV_DECL pl_exp_check_cont_status(int16 hcam, int16* status,
3996  uns32* bytes_arrived, uns32* buffer_cnt);
3997 
4026 rs_bool PV_DECL pl_exp_check_cont_status_ex(int16 hcam, int16* status,
4027  uns32* byte_cnt, uns32* buffer_cnt,
4028  FRAME_INFO* frame_info);
4029 
4045 rs_bool PV_DECL pl_exp_get_latest_frame(int16 hcam, void** frame);
4046 
4069 rs_bool PV_DECL pl_exp_get_latest_frame_ex(int16 hcam, void** frame,
4070  FRAME_INFO* frame_info);
4071 
4092 rs_bool PV_DECL pl_exp_get_oldest_frame(int16 hcam, void** frame);
4093 
4119 rs_bool PV_DECL pl_exp_get_oldest_frame_ex(int16 hcam, void** frame,
4120  FRAME_INFO* frame_info);
4121 
4140 
4160 rs_bool PV_DECL pl_exp_stop_cont(int16 hcam, int16 cam_state);
4161 
4193 rs_bool PV_DECL pl_exp_abort(int16 hcam, int16 cam_state);
4194 
4214 rs_bool PV_DECL pl_exp_finish_seq(int16 hcam, void* pixel_stream, int16 hbuf);
4215 
4237 rs_bool PV_DECL pl_io_script_control(int16 hcam, uns16 addr, flt64 state,
4238  uns32 location);
4239 
4254  /* grp_pm_functions */
4256 
4257 /*****************************************************************************/
4266 DEPRECATED rs_bool PV_DECL pl_exp_init_seq(void);
4267 DEPRECATED rs_bool PV_DECL pl_exp_uninit_seq(void);
4269 DEPRECATED rs_bool PV_DECL pl_dd_get_info(int16 hcam, int16 bytes, char* text);
4271 DEPRECATED rs_bool PV_DECL pl_dd_get_info_length(int16 hcam, int16* bytes);
4273 DEPRECATED rs_bool PV_DECL pl_dd_get_ver(int16 hcam, uns16* dd_version);
4275 DEPRECATED rs_bool PV_DECL pl_dd_get_retries(int16 hcam, uns16* max_retries);
4277 DEPRECATED rs_bool PV_DECL pl_dd_set_retries(int16 hcam, uns16 max_retries);
4279 DEPRECATED rs_bool PV_DECL pl_dd_get_timeout(int16 hcam, uns16* m_sec);
4281 DEPRECATED rs_bool PV_DECL pl_dd_set_timeout(int16 hcam, uns16 m_sec);
4283 DEPRECATED rs_bool PV_DECL pl_ccd_get_adc_offset(int16 hcam, int16* offset);
4285 DEPRECATED rs_bool PV_DECL pl_ccd_set_adc_offset(int16 hcam, int16 offset);
4287 DEPRECATED rs_bool PV_DECL pl_ccd_get_chip_name(int16 hcam, char* chip_name);
4289 DEPRECATED rs_bool PV_DECL pl_ccd_get_clear_cycles(int16 hcam, uns16* clear_cycles);
4291 DEPRECATED rs_bool PV_DECL pl_ccd_set_clear_cycles(int16 hcam, uns16 clr_cycles);
4293 DEPRECATED rs_bool PV_DECL pl_ccd_get_clear_mode(int16 hcam, int16* clear_mode);
4295 DEPRECATED rs_bool PV_DECL pl_ccd_set_clear_mode(int16 hcam, int16 ccd_clear);
4297 DEPRECATED rs_bool PV_DECL pl_ccd_get_color_mode(int16 hcam, uns16* color_mode);
4299 DEPRECATED rs_bool PV_DECL pl_ccd_get_cooling_mode(int16 hcam, int16* cooling);
4301 DEPRECATED rs_bool PV_DECL pl_ccd_get_frame_capable(int16 hcam, rs_bool* frame_capable);
4303 DEPRECATED rs_bool PV_DECL pl_ccd_get_fwell_capacity(int16 hcam, uns32* fwell_capacity);
4305 DEPRECATED rs_bool PV_DECL pl_ccd_get_mpp_capable(int16 hcam, int16* mpp_capable);
4307 DEPRECATED rs_bool PV_DECL pl_ccd_get_preamp_dly(int16 hcam, uns16* preamp_dly);
4309 DEPRECATED rs_bool PV_DECL pl_ccd_get_preamp_off_control(int16 hcam,
4310  uns32* preamp_off_control);
4312 DEPRECATED rs_bool PV_DECL pl_ccd_set_preamp_off_control(int16 hcam,
4313  uns32 preamp_off_control);
4315 DEPRECATED rs_bool PV_DECL pl_ccd_get_preflash(int16 hcam, uns16* pre_flash);
4317 DEPRECATED rs_bool PV_DECL pl_ccd_get_pmode(int16 hcam, int16* pmode);
4319 DEPRECATED rs_bool PV_DECL pl_ccd_set_pmode(int16 hcam, int16 pmode);
4321 DEPRECATED rs_bool PV_DECL pl_ccd_get_premask(int16 hcam, uns16* pre_mask);
4323 DEPRECATED rs_bool PV_DECL pl_ccd_get_prescan(int16 hcam, uns16* prescan);
4325 DEPRECATED rs_bool PV_DECL pl_ccd_get_postmask(int16 hcam, uns16* post_mask);
4327 DEPRECATED rs_bool PV_DECL pl_ccd_get_postscan(int16 hcam, uns16* postscan);
4329 DEPRECATED rs_bool PV_DECL pl_ccd_get_par_size(int16 hcam, uns16* par_size);
4331 DEPRECATED rs_bool PV_DECL pl_ccd_get_ser_size(int16 hcam, uns16* ser_size);
4333 DEPRECATED rs_bool PV_DECL pl_ccd_get_serial_num(int16 hcam, uns16* serial_num);
4335 DEPRECATED rs_bool PV_DECL pl_ccs_get_status(int16 hcam, int16* ccs_status);
4337 DEPRECATED rs_bool PV_DECL pl_ccd_get_summing_well(int16 hcam, rs_bool* s_well_exists);
4339 DEPRECATED rs_bool PV_DECL pl_ccd_get_tmp(int16 hcam, int16* cur_tmp);
4341 DEPRECATED rs_bool PV_DECL pl_ccd_get_tmp_range(int16 hcam, int16* tmp_hi_val,
4342  int16* tmp_lo_val);
4344 DEPRECATED rs_bool PV_DECL pl_ccd_get_tmp_setpoint(int16 hcam, int16* tmp_setpoint);
4346 DEPRECATED rs_bool PV_DECL pl_ccd_set_tmp_setpoint(int16 hcam, int16 tmp_setpoint);
4347 DEPRECATED rs_bool PV_DECL pl_ccd_set_readout_port(int16 , int16 );
4349 DEPRECATED rs_bool PV_DECL pl_ccd_get_pix_par_dist(int16 hcam, uns16* pix_par_dist);
4351 DEPRECATED rs_bool PV_DECL pl_ccd_get_pix_par_size(int16 hcam, uns16* pix_par_size);
4353 DEPRECATED rs_bool PV_DECL pl_ccd_get_pix_ser_dist(int16 hcam, uns16* pix_ser_dist);
4355 DEPRECATED rs_bool PV_DECL pl_ccd_get_pix_ser_size(int16 hcam, uns16* pix_ser_size);
4357 DEPRECATED rs_bool PV_DECL pl_spdtab_get_bits(int16 hcam, int16* spdtab_bits);
4359 DEPRECATED rs_bool PV_DECL pl_spdtab_get_gain(int16 hcam, int16* spdtab_gain);
4361 DEPRECATED rs_bool PV_DECL pl_spdtab_set_gain(int16 hcam, int16 spdtab_gain);
4363 DEPRECATED rs_bool PV_DECL pl_spdtab_get_max_gain(int16 hcam, int16* spdtab_max_gain);
4365 DEPRECATED rs_bool PV_DECL pl_spdtab_get_num(int16 hcam, int16* spdtab_num);
4367 DEPRECATED rs_bool PV_DECL pl_spdtab_set_num(int16 hcam, int16 spdtab_num);
4369 DEPRECATED rs_bool PV_DECL pl_spdtab_get_entries(int16 hcam, int16* spdtab_entries);
4371 DEPRECATED rs_bool PV_DECL pl_spdtab_get_port(int16 hcam, int16* spdtab_port);
4373 DEPRECATED rs_bool PV_DECL pl_spdtab_get_port_total(int16 hcam, int16* total_ports);
4375 DEPRECATED rs_bool PV_DECL pl_spdtab_get_time(int16 hcam, uns16* spdtab_time);
4377 DEPRECATED rs_bool PV_DECL pl_shtr_get_close_dly(int16 hcam, uns16* shtr_close_dly);
4379 DEPRECATED rs_bool PV_DECL pl_shtr_set_close_dly(int16 hcam, uns16 shtr_close_dly);
4381 DEPRECATED rs_bool PV_DECL pl_shtr_get_open_dly(int16 hcam, uns16* shtr_open_dly);
4383 DEPRECATED rs_bool PV_DECL pl_shtr_set_open_dly(int16 hcam, uns16 shtr_open_dly);
4385 DEPRECATED rs_bool PV_DECL pl_shtr_get_open_mode(int16 hcam, int16* shtr_open_mode);
4387 DEPRECATED rs_bool PV_DECL pl_shtr_set_open_mode(int16 hcam, int16 shtr_open_mode);
4389 DEPRECATED rs_bool PV_DECL pl_shtr_get_status(int16 hcam, int16* shtr_status);
4391 DEPRECATED rs_bool PV_DECL pl_exp_get_time_seq(int16 hcam, uns16* exp_time);
4393 DEPRECATED rs_bool PV_DECL pl_exp_set_time_seq(int16 hcam, uns16 exp_time);
4395 DEPRECATED rs_bool PV_DECL pl_exp_check_progress(int16 hcam, int16* status,
4396  uns32* bytes_arrived);
4397 
4399 DEPRECATED rs_bool PV_DECL pl_exp_set_cont_mode(int16 hcam, int16 mode);
4400 DEPRECATED rs_bool PV_DECL pl_subsys_do_diag(int16 hcam, uns8 subsys_id,
4401  uns16* err_code);
4402 DEPRECATED rs_bool PV_DECL pl_subsys_get_id(int16 hcam, uns8 subsys_id,
4403  uns16* part_num, uns8* revision);
4404 DEPRECATED rs_bool PV_DECL pl_subsys_get_name(int16 hcam, uns8 subsys_id,
4405  char* subsys_name);
4406 DEPRECATED rs_bool PV_DECL pl_exp_get_driver_buffer(int16 hcam,
4407  void** pixel_stream,
4408  uns32* byte_cnt);
4409 DEPRECATED rs_bool PV_DECL pl_buf_init(void);
4410 DEPRECATED rs_bool PV_DECL pl_buf_uninit(void);
4411 DEPRECATED rs_bool PV_DECL pl_buf_alloc(int16* hbuf, int16 exp_total,
4412  int16 bit_depth, int16 rgn_total,
4413  const rgn_type* rgn_array);
4414 DEPRECATED rs_bool PV_DECL pl_buf_get_exp_date(int16 hbuf, int16 exp_num, int16* year,
4415  uns8* month, uns8* day, uns8* hour,
4416  uns8* min, uns8* sec, uns16* msec);
4417 DEPRECATED rs_bool PV_DECL pl_buf_set_exp_date(int16 hbuf, int16 exp_num, int16 year,
4418  uns8 month, uns8 day, uns8 hour,
4419  uns8 min, uns8 sec, uns16 msec);
4420 DEPRECATED rs_bool PV_DECL pl_buf_get_exp_time(int16 hbuf, int16 exp_num, uns32* exp_msec);
4421 DEPRECATED rs_bool PV_DECL pl_buf_get_exp_total(int16 hbuf, int16* total_exps);
4422 DEPRECATED rs_bool PV_DECL pl_buf_get_img_bin(int16 himg, int16* ibin, int16* jbin);
4423 DEPRECATED rs_bool PV_DECL pl_buf_get_img_handle(int16 hbuf, int16 exp_num,
4424  int16 img_num, int16* himg);
4425 DEPRECATED rs_bool PV_DECL pl_buf_get_img_ofs(int16 himg, int16* s_ofs, int16* p_ofs);
4426 DEPRECATED rs_bool PV_DECL pl_buf_get_img_ptr(int16 himg, void** img_addr);
4427 DEPRECATED rs_bool PV_DECL pl_buf_get_img_size(int16 himg, int16* x_size, int16* y_size);
4428 DEPRECATED rs_bool PV_DECL pl_buf_get_img_total(int16 hbuf, int16* totl_imgs);
4429 DEPRECATED rs_bool PV_DECL pl_buf_get_size(int16 hbuf, int32* buf_size);
4430 DEPRECATED rs_bool PV_DECL pl_buf_free(int16 hbuf);
4431 DEPRECATED rs_bool PV_DECL pl_buf_get_bits(int16 hbuf, int16* bit_depth);
4432 DEPRECATED rs_bool PV_DECL pl_exp_unravel(int16 hcam, uns16 exposure,
4433  void* pixel_stream, uns16 rgn_total,
4434  const rgn_type* rgn_array,
4435  uns16** array_list);
4436 DEPRECATED rs_bool PV_DECL pl_exp_wait_start_xfer(int16 hcam, uns32 tlimit);
4437 DEPRECATED rs_bool PV_DECL pl_exp_wait_end_xfer(int16 hcam, uns32 tlimit);
4438 
4439 DEPRECATED rs_bool PV_DECL pv_cam_get_ccs_mem(int16 hcam, uns16* size);
4440 DEPRECATED rs_bool PV_DECL pv_cam_send_debug(int16 hcam, char* debug_str,
4441  uns16 reply_len, char* reply_str);
4442 DEPRECATED rs_bool PV_DECL pv_cam_write_read(int16 hcam, uns8 c_class, uns16 write_bytes,
4443  uns8* write_array, uns8* read_array);
4444 DEPRECATED rs_bool PV_DECL pv_dd_active(int16 hcam, void* pixel_stream);
4445 DEPRECATED rs_bool PV_DECL pv_exp_get_bytes(int16 hcam, uns32* exp_bytes);
4446 DEPRECATED rs_bool PV_DECL pv_exp_get_script(int16 hcam, rs_bool* script_valid);
4447 DEPRECATED rs_bool PV_DECL pv_exp_get_status(int16 hcam, int16* status,
4448  uns32* byte_cnt, uns32* frame_cnt);
4449 DEPRECATED rs_bool PV_DECL pv_exp_set_bytes(int16 hcam, uns32 frame_count,
4450  uns32 seq_bytes, void* pixel_stream);
4451 DEPRECATED rs_bool PV_DECL pv_exp_set_script(int16 hcam, rs_bool script_valid);
4452 DEPRECATED rs_bool PV_DECL pv_set_error_code(int16 omode,int16 err_code);
4453 DEPRECATED rs_bool PV_DECL pv_cam_do_reads(int16 hcam);
4454 DEPRECATED rs_bool PV_DECL pv_free(void* block, int16 heap);
4455 DEPRECATED void* PV_DECL pv_malloc(uns32 size, int16 heap);
4456 DEPRECATED void* PV_DECL pv_realloc(void* block, uns32 size, int16 heap);
4457 DEPRECATED rs_bool PV_DECL pv_script_set_hook(pm_script_hook* pfn);
4458 DEPRECATED rs_bool PV_DECL pv_ccd_get_accum_capable(int16 hcam, rs_bool* accum_capable);
4459 DEPRECATED rs_bool PV_DECL pv_exp_get_frames(int16 hcam, uns32* exp_frames);
4460 DEPRECATED rs_bool PV_DECL pv_exp_set_frames(int16 hcam, uns32 exp_frames);
4461 DEPRECATED rs_bool PV_DECL pv_exp_set_no_readout_timeout(int16 hcam);
4462 DEPRECATED rs_bool PV_DECL pv_exp_reset_no_readout_timeout(int16 hcam);
4463 DEPRECATED rs_bool PV_DECL pm_cam_write_read(int16 hcam, uns8 c_class, uns16 write_bytes,
4464  uns8* write_array, uns8* read_array);
4465 
4466 DEPRECATED rs_bool PV_DECL pl_ddi_get_ver(uns16* ddi_version);
4467 DEPRECATED rs_bool PV_DECL pl_cam_get_diags(int16 hcam);
4468  /* grp_pm_deprecated_functions */
4470 
4471 /*****************************************************************************/
4472 /*****************************************************************************/
4473 /* */
4474 /* Frame metadata functions */
4475 /* */
4476 /*****************************************************************************/
4477 /*****************************************************************************/
4478 
4502 rs_bool PV_DECL pl_md_frame_decode(md_frame* pDstFrame, void* pSrcBuf, uns32 srcBufSize);
4503 
4543 rs_bool PV_DECL pl_md_frame_recompose(void* pDstBuf, uns16 offX, uns16 offY,
4544  uns16 dstWidth, uns16 dstHeight,
4545  md_frame* pSrcFrame);
4546 
4561 rs_bool PV_DECL pl_md_create_frame_struct_cont(md_frame** pFrame, uns16 roiCount);
4562 
4577 rs_bool PV_DECL pl_md_create_frame_struct(md_frame** pFrame, void* pSrcBuf,
4578  uns32 srcBufSize);
4579 
4588 
4600 rs_bool PV_DECL pl_md_read_extended(md_ext_item_collection* pOutput, void* pExtMdPtr,
4601  uns32 extMdSize);
4602  /* grp_pm_functions */
4604 
4605 #ifdef PV_C_PLUS_PLUS
4606 };
4607 #endif
4608 
4609 #endif /* PV_EMBEDDED */
4610 
4611 /******************************************************************************/
4612 /* End of function prototypes. */
4613 /******************************************************************************/
4614 
4615 #endif /* _PVCAM_H */
Definition: pvcam.h:876
uns16 pbin
Definition: pvcam.h:1166
Definition: pvcam.h:512
DEPRECATED rs_bool PV_DECL pl_spdtab_get_bits(int16 hcam, int16 *spdtab_bits)
rs_bool PV_DECL pl_create_frame_info_struct(FRAME_INFO **new_frame)
Creates and allocates variable of FRAME_INFO type and returns pointer to it.
Definition: pvcam.h:874
PL_IMAGE_FORMATS
Definition: pvcam.h:205
rs_bool PV_DECL pl_md_read_extended(md_ext_item_collection *pOutput, void *pExtMdPtr, uns32 extMdSize)
Reads all the extended metadata from the given ext. metadata buffer.
rs_bool alt_mode
Definition: pvcam.h:1217
Definition: pvcam.h:230
struct md_ext_item md_ext_item
uns16 p2
Definition: pvcam.h:1165
DEPRECATED rs_bool PV_DECL pl_exp_set_time_seq(int16 hcam, uns16 exp_time)
Definition: pvcam.h:1100
DEPRECATED rs_bool PV_DECL pl_buf_free(int16 hbuf)
Definition: pvcam.h:645
Definition: pvcam.h:1198
uns16 extMdDataSize
Definition: pvcam.h:1467
DEPRECATED rs_bool PV_DECL pl_exp_get_time_seq(int16 hcam, uns16 *exp_time)
DEPRECATED rs_bool PV_DECL pl_shtr_get_open_dly(int16 hcam, uns16 *shtr_open_dly)
Definition: pvcam.h:551
struct md_frame_roi_header md_frame_roi_header
rs_bool PV_DECL pl_io_clear_script_control(int16 hcam)
Clears the current setup for control of the available I/O lines within a camera script.
ulong64 timestampBOF
Definition: pvcam.h:1336
Definition: pvcam.h:670
Definition: pvcam.h:553
Definition: pvcam.h:1009
Definition: pvcam.h:921
uns16 entries
Definition: pvcam.h:945
Definition: pvcam.h:898
uns16 rows
Definition: pvcam.h:1202
struct io_struct io_entry
Definition: pvcam.h:774
PL_CENTROIDS_MODES
Definition: pvcam.h:808
uns8 _reserved[6]
Definition: pvcam.h:1347
Definition: pvcam.h:190
Definition: pvcam.h:497
Definition: pvcam.h:332
DEPRECATED rs_bool PV_DECL pl_subsys_get_id(int16 hcam, uns8 subsys_id, uns16 *part_num, uns8 *revision)
const md_ext_item_info * tagInfo
Definition: pvcam.h:1420
Definition: pvcam.h:233
rs_bool PV_DECL pl_exp_check_cont_status(int16 hcam, int16 *status, uns32 *bytes_arrived, uns32 *buffer_cnt)
Checks the continuous readout status from the camera into a circular buffer.
int int32
Definition: master.h:51
Definition: pvcam.h:845
Definition: pvcam.h:881
rs_bool frame_transfer
Definition: pvcam.h:1216
Definition: pvcam.h:1243
Definition: pvcam.h:825
DEPRECATED rs_bool PV_DECL pl_exp_wait_end_xfer(int16 hcam, uns32 tlimit)
Definition: pvcam.h:258
io_list * io_list_ptr
Definition: pvcam.h:1492
Definition: pvcam.h:899
Definition: pvcam.h:852
DEPRECATED rs_bool PV_DECL pl_spdtab_get_port_total(int16 hcam, int16 *total_ports)
uns32 signature
Definition: pvcam.h:1330
DEPRECATED rs_bool PV_DECL pl_buf_get_img_ofs(int16 himg, int16 *s_ofs, int16 *p_ofs)
DEPRECATED rs_bool PV_DECL pv_exp_set_script(int16 hcam, rs_bool script_valid)
uns16 size
Definition: pvcam.h:1409
Definition: pvcam.h:1263
Definition: pvcam.h:767
Definition: pvcam.h:863
struct md_frame_header md_frame_header
smart_stream_type * smart_stream_type_ptr
Definition: pvcam.h:1488
struct io_struct * next
Definition: pvcam.h:1175
io_entry * io_entry_ptr
Definition: pvcam.h:1491
DEPRECATED rs_bool PV_DECL pl_ccd_get_adc_offset(int16 hcam, int16 *offset)
PL_CCS_ABORT_MODES
Definition: pvcam.h:997
Definition: pvcam.h:1428
rs_bool PV_DECL pl_pp_reset(int16 hcam)
This function will reset all post-processing modules to their default values.
rs_bool PV_DECL pl_md_release_frame_struct(md_frame *pFrame)
Releases the md_frame struct.
rs_bool PV_DECL pl_md_frame_recompose(void *pDstBuf, uns16 offX, uns16 offY, uns16 dstWidth, uns16 dstHeight, md_frame *pSrcFrame)
Optional function that recomposes a multi-ROI frame into a displayable image buffer.
PL_IMAGE_COMPRESSIONS
Definition: pvcam.h:228
md_ext_item list[PL_MD_EXT_TAGS_MAX_SUPPORTED]
Definition: pvcam.h:1430
void * extMdData
Definition: pvcam.h:1466
Definition: pvcam.h:1241
DEPRECATED rs_bool PV_DECL pl_cam_check(int16 hcam)
DEPRECATED rs_bool PV_DECL pl_ccd_get_frame_capable(int16 hcam, rs_bool *frame_capable)
PL_SCAN_DIRECTIONS
Definition: pvcam.h:842
struct active_camera_type active_camera_type
struct _TAG_PVCAM_FRAME_INFO_GUID PVCAM_FRAME_INFO_GUID
Definition: pvcam.h:238
Definition: pvcam.h:924
Definition: pvcam.h:236
rs_bool PV_DECL pl_exp_setup_seq(int16 hcam, uns16 exp_total, uns16 rgn_total, const rgn_type *rgn_array, int16 exp_mode, uns32 exposure_time, uns32 *exp_bytes)
Prepares the camera to perform a readout.
Definition: pvcam.h:1085
Definition: pvcam.h:210
Definition: pvcam.h:1045
Definition: pvcam.h:1240
Definition: pvcam.h:212
uns8 imageCompression
Definition: pvcam.h:1345
DEPRECATED rs_bool PV_DECL pl_buf_get_exp_time(int16 hbuf, int16 exp_num, uns32 *exp_msec)
PL_CAM_INTERFACE_TYPES
Definition: pvcam.h:763
rs_bool PV_DECL pl_exp_unlock_oldest_frame(int16 hcam)
Makes oldest frame in circular buffer overwritable.
Definition: pvcam.h:1394
rgn_type impliedRoi
Definition: pvcam.h:1468
Definition: pvcam.h:1267
md_frame_header * header
Definition: pvcam.h:1465
Definition: pvcam.h:256
Definition: pvcam.h:413
Definition: pvcam.h:812
uns32 timestampBOF
Definition: pvcam.h:1298
uns32 exposureTimeResNs
Definition: pvcam.h:1304
DEPRECATED rs_bool PV_DECL pv_cam_write_read(int16 hcam, uns8 c_class, uns16 write_bytes, uns8 *write_array, uns8 *read_array)
DEPRECATED rs_bool PV_DECL pv_exp_get_bytes(int16 hcam, uns32 *exp_bytes)
Definition: pvcam.h:686
DEPRECATED rs_bool PV_DECL pl_ccd_get_pix_par_dist(int16 hcam, uns16 *pix_par_dist)
Definition: pvcam.h:778
rs_bool PV_DECL pl_exp_start_cont(int16 hcam, void *pixel_stream, uns32 size)
Begins continuous readout into circular buffer.
Definition: pvcam.h:904
Definition: pvcam.h:1042
int16 do_clear
Definition: pvcam.h:1213
Definition: pvcam.h:175
Definition: pvcam.h:1083
Definition: pvcam.h:189
Definition: pvcam.h:1064
Definition: pvcam.h:649
rs_bool PV_DECL pl_enum_str_length(int16 hcam, uns32 param_id, uns32 index, uns32 *length)
Returns the length of the descriptive string for the parameter param_id at index. ...
Definition: pvcam.h:1125
Definition: pvcam.h:798
Definition: pvcam.h:1289
Definition: pvcam.h:703
ulong64 timestampEOF
Definition: pvcam.h:1337
PL_IRQ_MODES
Definition: pvcam.h:1040
md_frame_roi * roiArray
Definition: pvcam.h:1470
long64 TimeStampBOF
Definition: pvcam.h:95
Definition: pvcam.h:141
Definition: pvcam.h:810
Definition: pvcam.h:287
Definition: pvcam.h:690
io_entry pre_close
Definition: pvcam.h:1189
Definition: pvcam.h:905
Definition: pvcam.h:706
uns32 roiTimestampResNs
Definition: pvcam.h:1307
Definition: pvcam.h:1139
void(PV_DECL * PL_CALLBACK_SIG_LEGACY)(void)
Definition: pvcam.h:3191
uns16 roiCount
Definition: pvcam.h:1472
DEPRECATED rs_bool PV_DECL pl_spdtab_get_num(int16 hcam, int16 *spdtab_num)
Definition: pvcam.h:1445
double flt64
Definition: master.h:54
Definition: pvcam.h:773
rs_bool PV_DECL pl_md_create_frame_struct(md_frame **pFrame, void *pSrcBuf, uns32 srcBufSize)
This method creates an empty md_frame structure from an existing buffer.
PL_CLEAR_MODES
Definition: pvcam.h:435
uns16 premask
Definition: pvcam.h:1206
Definition: pvcam.h:426
Definition: pvcam.h:234
Definition: pvcam.h:868
DEPRECATED rs_bool PV_DECL pl_spdtab_get_time(int16 hcam, uns16 *spdtab_time)
io_entry pre_flash
Definition: pvcam.h:1183
Definition: pvcam.h:156
DEPRECATED rs_bool PV_DECL pl_buf_get_img_ptr(int16 himg, void **img_addr)
Definition: pvcam.h:878
Definition: pvcam.h:232
rs_bool PV_DECL pl_io_script_control(int16 hcam, uns16 addr, flt64 state, uns32 location)
Defines control of an I/O line from within a camera script.
Definition: pvcam.h:781
uns8 version
Definition: pvcam.h:1331
Definition: pvcam.h:454
io_entry post_open
Definition: pvcam.h:1182
DEPRECATED rs_bool PV_DECL pl_exp_uninit_seq(void)
DEPRECATED rs_bool PV_DECL pv_exp_get_frames(int16 hcam, uns32 *exp_frames)
DEPRECATED rs_bool PV_DECL pl_buf_get_exp_date(int16 hbuf, int16 exp_num, int16 *year, uns8 *month, uns8 *day, uns8 *hour, uns8 *min, uns8 *sec, uns16 *msec)
PL_SW_TRIG_STATUSES
Definition: pvcam.h:640
rs_bool PV_DECL pl_md_frame_decode(md_frame *pDstFrame, void *pSrcBuf, uns32 srcBufSize)
Decodes a metadata-enabled frame data into provided frame descriptor structure.
DEPRECATED rs_bool PV_DECL pl_ccd_get_preflash(int16 hcam, uns16 *pre_flash)
DEPRECATED rs_bool PV_DECL pl_cam_get_diags(int16 hcam)
DEPRECATED rs_bool PV_DECL pl_ccd_get_postscan(int16 hcam, uns16 *postscan)
Definition: pvcam.h:680
DEPRECATED rs_bool PV_DECL pv_script_set_hook(pm_script_hook *pfn)
Definition: pvcam.h:271
Definition: pvcam.h:799
Definition: pvcam.h:987
DEPRECATED void *PV_DECL pv_malloc(uns32 size, int16 heap)
struct md_frame md_frame
Definition: pvcam.h:772
Definition: pvcam.h:215
Definition: pvcam.h:1144
Definition: pvcam.h:387
rs_bool PV_DECL pl_exp_stop_cont(int16 hcam, int16 cam_state)
Stops continuous readout acquisition. Identical to pl_exp_abort.
void(PV_DECL * PL_CALLBACK_SIG_EX)(void *pContext)
Definition: pvcam.h:3199
rs_bool PV_DECL pl_cam_get_name(int16 cam_num, char *camera_name)
Returns the name of a camera.
Definition: pvcam.h:1356
uns32 timestampEOF
Definition: pvcam.h:1299
uns8 colorMask
Definition: pvcam.h:1310
uns8 bitDepth
Definition: pvcam.h:1340
DEPRECATED rs_bool PV_DECL pl_spdtab_get_gain(int16 hcam, int16 *spdtab_gain)
rs_bool PV_DECL pl_exp_abort(int16 hcam, int16 cam_state)
Stops collecting data, cleans up device driver, halts camera.
int32 FrameNr
Definition: pvcam.h:92
Definition: pvcam.h:534
Definition: pvcam.h:358
DEPRECATED rs_bool PV_DECL pl_ccd_get_par_size(int16 hcam, uns16 *par_size)
Definition: pvcam.h:1257
DEPRECATED rs_bool PV_DECL pl_ccd_set_pmode(int16 hcam, int16 pmode)
Definition: pvcam.h:969
Definition: pvcam.h:1095
void(PV_DECL * PL_CALLBACK_SIG_EX2)(const FRAME_INFO *pFrameInfo)
Definition: pvcam.h:3207
Definition: pvcam.h:731
Definition: pvcam.h:142
rs_bool PV_DECL pl_pvcam_get_ver(uns16 *pvcam_version)
Returns the PVCAM version number.
Definition: pvcam.h:765
DEPRECATED rs_bool PV_DECL pl_exp_wait_start_xfer(int16 hcam, uns32 tlimit)
void(PV_DECL * PL_CALLBACK_SIG_EX3)(const FRAME_INFO *pFrameInfo, void *pContext)
Definition: pvcam.h:3217
Definition: pvcam.h:847
DEPRECATED rs_bool PV_DECL pv_free(void *block, int16 heap)
Definition: pvcam.h:956
Definition: pvcam.h:1170
uns16 extMdDataSize
Definition: pvcam.h:1451
Definition: pvcam.h:154
Definition: pvcam.h:131
DEPRECATED rs_bool PV_DECL pl_shtr_get_close_dly(int16 hcam, uns16 *shtr_close_dly)
Definition: pvcam.h:1097
Definition: pvcam.h:187
Definition: pvcam.h:144
DEPRECATED rs_bool PV_DECL pl_subsys_do_diag(int16 hcam, uns8 subsys_id, uns16 *err_code)
Definition: pvcam.h:1044
Definition: pvcam.h:869
Definition: pvcam.h:1043
Definition: pvcam.h:1102
PL_SCAN_MODES
Definition: pvcam.h:821
uns16 roiCount
Definition: pvcam.h:1334
Definition: pvcam.h:586
uns8 imageFormat
Definition: pvcam.h:1316
PL_MD_EXT_TAGS tag
Definition: pvcam.h:1407
Definition: pvcam.h:1396
md_ext_item * map[PL_MD_EXT_TAGS_MAX_SUPPORTED]
Definition: pvcam.h:1431
Definition: pvcam.h:159
PL_FAN_SPEEDS
Definition: pvcam.h:701
DEPRECATED rs_bool PV_DECL pl_dd_get_info_length(int16 hcam, int16 *bytes)
Definition: pvcam.h:771
Definition: pvcam.h:1393
uns8 colorMask
Definition: pvcam.h:1341
DEPRECATED rs_bool PV_DECL pl_spdtab_get_port(int16 hcam, int16 *spdtab_port)
rs_bool PV_DECL pl_exp_setup_cont(int16 hcam, uns16 rgn_total, const rgn_type *rgn_array, int16 exp_mode, uns32 exposure_time, uns32 *exp_bytes, int16 buffer_mode)
Sets circular buffer mode.
Definition: pvcam.h:982
Definition: pvcam.h:298
Definition: pvcam.h:501
Definition: pvcam.h:425
Definition: pvcam.h:143
Definition: pvcam.h:871
DEPRECATED rs_bool PV_DECL pl_spdtab_get_max_gain(int16 hcam, int16 *spdtab_max_gain)
Definition: pvcam.h:243
rs_bool PV_DECL pl_exp_finish_seq(int16 hcam, void *pixel_stream, int16 hbuf)
Finishes and cleans up after pl_exp_start_seq.
Definition: pvcam.h:474
Definition: pvcam.h:424
rs_bool frame_selectable
Definition: pvcam.h:1212
Definition: pvcam.h:1023
Definition: pvcam.h:448
struct md_frame_roi md_frame_roi
Definition: pvcam.h:481
PL_READOUT_PORTS
Definition: pvcam.h:422
uns16 io_port
Definition: pvcam.h:1172
uns16 extendedMdSize
Definition: pvcam.h:1367
Definition: pvcam.h:1238
PL_PARAM_ACCESS
Definition: pvcam.h:382
Definition: pvcam.h:931
#define PL_MD_EXT_TAGS_MAX_SUPPORTED
Definition: pvcam.h:1384
DEPRECATED rs_bool PV_DECL pv_set_error_code(int16 omode, int16 err_code)
uns8 f4[8]
Definition: pvcam.h:72
void * data
Definition: pvcam.h:1448
Definition: pvcam.h:325
DEPRECATED rs_bool PV_DECL pl_exp_set_cont_mode(int16 hcam, int16 mode)
Definition: pvcam.h:563
#define PP_MAX_PARAMETERS_PER_FEATURE
Definition: pvcam.h:888
io_list ** io_list_ptr_ptr
Definition: pvcam.h:1493
DEPRECATED rs_bool PV_DECL pl_shtr_get_open_mode(int16 hcam, int16 *shtr_open_mode)
Definition: pvcam.h:780
PL_CAM_INTERFACE_MODES
Definition: pvcam.h:796
DEPRECATED rs_bool PV_DECL pl_exp_unravel(int16 hcam, uns16 exposure, void *pixel_stream, uns16 rgn_total, const rgn_type *rgn_array, uns16 **array_list)
PP_FEATURE_IDS
Definition: pvcam.h:860
DEPRECATED rs_bool PV_DECL pl_ccd_get_pix_ser_dist(int16 hcam, uns16 *pix_ser_dist)
DEPRECATED rs_bool PV_DECL pl_subsys_get_name(int16 hcam, uns8 subsys_id, char *subsys_name)
struct md_ext_item_info md_ext_item_info
rs_bool PV_DECL pl_exp_get_oldest_frame_ex(int16 hcam, void **frame, FRAME_INFO *frame_info)
This function returns pointer to the oldest unretrieved frame in the circular buffer.
Definition: pvcam.h:1014
DEPRECATED rs_bool PV_DECL pl_ccd_get_pmode(int16 hcam, int16 *pmode)
struct rgn_type rgn_type
DEPRECATED rs_bool PV_DECL pl_buf_uninit(void)
uns32 * params
Definition: pvcam.h:946
Definition: pvcam.h:877
short int16
Definition: master.h:49
PL_EXP_RES_MODES
Definition: pvcam.h:1081
int16 pm_script_hook(int16 hcam, uns16 exp_total, uns16 rgn_total, const rgn_type *rgn_array, int16 mode, uns32 exposure_time, uns32 *pixels, active_camera_type *active_camera)
Definition: pvcam.h:1547
rs_bool mpp_mode
Definition: pvcam.h:1215
DEPRECATED rs_bool PV_DECL pl_ccd_get_clear_cycles(int16 hcam, uns16 *clear_cycles)
Definition: pvcam.h:1242
uns16 type
Definition: pvcam.h:1408
Definition: pvcam.h:866
uns32 timestampBOR
Definition: pvcam.h:1361
Definition: pvcam.h:1239
Definition: pvcam.h:1405
Definition: pvcam.h:1028
uns32 io_type
Definition: pvcam.h:1173
Definition: pvcam.h:389
rs_bool PV_DECL pl_exp_get_latest_frame(int16 hcam, void **frame)
This function returns a pointer to the most recently acquired frame in the circular buffer...
Definition: pvcam.h:1104
Definition: pvcam.h:67
Definition: pvcam.h:216
int16 PV_DECL pl_error_code(void)
Returns the most recent error condition.
rs_bool PV_DECL pl_cam_close(int16 hcam)
Frees the current camera, prepares it for power-down.
DEPRECATED rs_bool PV_DECL pl_cam_register_callback_ex(int16 hcam, int32 callback_event, void *callback, void *context)
Definition: pvcam.h:768
Definition: pvcam.h:980
Definition: pvcam.h:402
PL_SMT_MODES
Definition: pvcam.h:954
uns16 roiNr
Definition: pvcam.h:1358
uns8 flags
Definition: pvcam.h:1342
DEPRECATED rs_bool PV_DECL pl_ccd_get_pix_ser_size(int16 hcam, uns16 *pix_ser_size)
uns32 frameNr
Definition: pvcam.h:1294
DEPRECATED rs_bool PV_DECL pl_buf_get_img_handle(int16 hbuf, int16 exp_num, int16 img_num, int16 *himg)
Definition: pvcam.h:705
rs_bool PV_DECL pl_cam_deregister_callback(int16 hcam, int32 callback_event)
Uninstalls a function for camera system event.
md_frame_roi_header * header
Definition: pvcam.h:1447
uns8 flags
Definition: pvcam.h:1311
ulong64 exposureTime
Definition: pvcam.h:1338
uns16 s1
Definition: pvcam.h:1161
rs_bool PV_DECL pl_release_smart_stream_struct(smart_stream_type **array)
Frees the space previously allocated by the pl_create_smart_stream_struct function.
uns8 imageFormat
Definition: pvcam.h:1344
uns16 sbin
Definition: pvcam.h:1163
uns16 extendedMdSize
Definition: pvcam.h:1343
uns32 timestampResNs
Definition: pvcam.h:1300
DEPRECATED rs_bool PV_DECL pl_ccd_get_tmp_setpoint(int16 hcam, int16 *tmp_setpoint)
DEPRECATED rs_bool PV_DECL pl_shtr_set_open_dly(int16 hcam, uns16 shtr_open_dly)
Definition: pvcam.h:632
DEPRECATED rs_bool PV_DECL pl_buf_get_img_size(int16 himg, int16 *x_size, int16 *y_size)
uns32 dataSize
Definition: pvcam.h:1449
uns16 preamp_delay
Definition: pvcam.h:1210
PL_FRAME_DELIVERY_MODES
Definition: pvcam.h:724
Definition: pvcam.h:237
DEPRECATED rs_bool PV_DECL pl_ccd_get_summing_well(int16 hcam, rs_bool *s_well_exists)
uns16 postscan
Definition: pvcam.h:1205
Definition: pvcam.h:467
Definition: pvcam.h:122
DEPRECATED rs_bool PV_DECL pl_ccd_set_readout_port(int16, int16)
DEPRECATED rs_bool PV_DECL pl_ccd_get_cooling_mode(int16 hcam, int16 *cooling)
DEPRECATED rs_bool PV_DECL pv_exp_get_status(int16 hcam, int16 *status, uns32 *byte_cnt, uns32 *frame_cnt)
DEPRECATED rs_bool PV_DECL pl_buf_get_size(int16 hbuf, int32 *buf_size)
PL_SHTR_MODES
Definition: pvcam.h:152
Definition: pvcam.h:1071
Definition: pvcam.h:441
rs_bool mpp_selectable
Definition: pvcam.h:1211
uns16 shutter_close_delay
Definition: pvcam.h:1200
DEPRECATED rs_bool PV_DECL pv_ccd_get_accum_capable(int16 hcam, rs_bool *accum_capable)
uns16 count
Definition: pvcam.h:1432
Definition: pvcam.h:906
Definition: pvcam.h:664
uns16 prescan
Definition: pvcam.h:1204
Definition: pvcam.h:704
Definition: pvcam.h:108
Definition: pvcam.h:1237
Definition: pvcam.h:1103
Definition: pvcam.h:879
DEPRECATED rs_bool PV_DECL pl_ddi_get_ver(uns16 *ddi_version)
uns8 imageCompression
Definition: pvcam.h:1317
Definition: pvcam.h:896
DEPRECATED rs_bool PV_DECL pl_buf_init(void)
Definition: pvcam.h:174
void * value
Definition: pvcam.h:1421
Definition: pvcam.h:412
uns8 flags
Definition: pvcam.h:1366
rs_bool PV_DECL pl_exp_get_latest_frame_ex(int16 hcam, void **frame, FRAME_INFO *frame_info)
Returns pointer to the most recent frame in circular buffer.
DEPRECATED rs_bool PV_DECL pl_buf_set_exp_date(int16 hbuf, int16 exp_num, int16 year, uns8 month, uns8 day, uns8 hour, uns8 min, uns8 sec, uns16 msec)
Definition: pvcam.h:170
PL_MPP_MODES
Definition: pvcam.h:139
rs_bool PV_DECL pl_pvcam_init(void)
Opens and initializes the library.
PP_PARAMETER_IDS
Definition: pvcam.h:894
uns16 s2
Definition: pvcam.h:1162
DEPRECATED rs_bool PV_DECL pl_ccs_get_status(int16 hcam, int16 *ccs_status)
io_list * io_hdr
Definition: pvcam.h:1219
Definition: pvcam.h:870
Definition: pvcam.h:608
DEPRECATED rs_bool PV_DECL pl_cam_register_callback(int16 hcam, int32 callback_event, void *callback)
io_entry pre_integrate
Definition: pvcam.h:1185
uns16 f2
Definition: pvcam.h:70
unsigned short uns16
Definition: master.h:50
DEPRECATED rs_bool PV_DECL pl_ccd_get_preamp_off_control(int16 hcam, uns32 *preamp_off_control)
Definition: pvcam.h:374
PVCAM_FRAME_INFO_GUID FrameInfoGUID
Definition: pvcam.h:90
uns16 postmask
Definition: pvcam.h:1207
Definition: pvcam.h:1098
DEPRECATED rs_bool PV_DECL pl_buf_alloc(int16 *hbuf, int16 exp_total, int16 bit_depth, int16 rgn_total, const rgn_type *rgn_array)
Definition: pvcam.h:900
Definition: pvcam.h:1099
Definition: pvcam.h:257
DEPRECATED rs_bool PV_DECL pl_shtr_get_status(int16 hcam, int16 *shtr_status)
Definition: pvcam.h:239
PL_IO_TYPE
Definition: pvcam.h:399
flt64 state
Definition: pvcam.h:1174
uns32 exp_res
Definition: pvcam.h:1218
Definition: pvcam.h:484
Definition: pvcam.h:578
uns32 exposureTime
Definition: pvcam.h:1303
DEPRECATED rs_bool PV_DECL pv_cam_do_reads(int16 hcam)
unsigned int uns32
Definition: master.h:52
uns16 shutter_open_delay
Definition: pvcam.h:1201
uns32 timestampEOR
Definition: pvcam.h:1362
Definition: pvcam.h:269
PL_CIRC_MODES
Definition: pvcam.h:1053
DEPRECATED rs_bool PV_DECL pl_ccd_get_ser_size(int16 hcam, uns16 *ser_size)
PL_IMAGE_STATUSES
Definition: pvcam.h:966
Definition: pvcam.h:1084
DEPRECATED rs_bool PV_DECL pl_ccd_get_prescan(int16 hcam, uns16 *prescan)
Definition: pvcam.h:1328
long64 TimeStamp
Definition: pvcam.h:93
rs_bool PV_DECL pl_exp_check_status(int16 hcam, int16 *status, uns32 *bytes_arrived)
Checks the status of sequence acquisition.
rs_bool PV_DECL pl_cam_register_callback_ex3(int16 hcam, int32 callback_event, void *callback, void *context)
Installs a function that will be called when an event occurs in a camera providing information about ...
DEPRECATED rs_bool PV_DECL pv_exp_get_script(int16 hcam, rs_bool *script_valid)
DEPRECATED rs_bool PV_DECL pl_exp_get_driver_buffer(int16 hcam, void **pixel_stream, uns32 *byte_cnt)
Definition: pvcam.h:176
DEPRECATED rs_bool PV_DECL pl_ccd_set_tmp_setpoint(int16 hcam, int16 tmp_setpoint)
Definition: pvcam.h:1003
DEPRECATED rs_bool PV_DECL pl_exp_check_progress(int16 hcam, int16 *status, uns32 *bytes_arrived)
io_entry post_flash
Definition: pvcam.h:1184
FRAME_INFO * PFRAME_INFO
Definition: pvcam.h:1487
Definition: pvcam.h:777
signed long long long64
Definition: master.h:61
Definition: pvcam.h:934
Definition: pvcam.h:539
PL_MD_FRAME_FLAGS
Definition: pvcam.h:1234
Definition: pvcam.h:157
DEPRECATED rs_bool PV_DECL pl_spdtab_get_entries(int16 hcam, int16 *spdtab_entries)
rs_bool PV_DECL pl_create_smart_stream_struct(smart_stream_type **array, uns16 entries)
Creates and allocates variable of smart_stream_type type with the number of entries passed in via the...
Definition: pvcam.h:862
PL_PMODES
Definition: pvcam.h:167
Definition: pvcam.h:693
io_entry pre_open
Definition: pvcam.h:1181
Definition: pvcam.h:907
DEPRECATED rs_bool PV_DECL pl_dd_get_ver(int16 hcam, uns16 *dd_version)
DEPRECATED rs_bool PV_DECL pl_dd_set_retries(int16 hcam, uns16 max_retries)
DEPRECATED rs_bool PV_DECL pl_ccd_get_preamp_dly(int16 hcam, uns16 *preamp_dly)
Definition: pvcam.h:339
DEPRECATED rs_bool PV_DECL pl_buf_get_bits(int16 hbuf, int16 *bit_depth)
uns8 bitDepth
Definition: pvcam.h:1309
Definition: pvcam.h:897
DEPRECATED rs_bool PV_DECL pl_dd_get_info(int16 hcam, int16 bytes, char *text)
Definition: pvcam.h:414
DEPRECATED rs_bool PV_DECL pl_ccd_set_clear_mode(int16 hcam, int16 ccd_clear)
Definition: pvcam.h:427
Definition: pvcam.h:902
const rgn_type * rgn_const_ptr
Definition: pvcam.h:1490
Definition: pvcam.h:192
DEPRECATED rs_bool PV_DECL pv_exp_set_bytes(int16 hcam, uns32 frame_count, uns32 seq_bytes, void *pixel_stream)
Definition: pvcam.h:270
struct smart_stream_type smart_stream_type
unsigned short rs_bool
Definition: master.h:46
Definition: pvcam.h:173
DEPRECATED rs_bool PV_DECL pl_cam_register_callback_ex2(int16 hcam, int32 callback_event, void *callback)
uns8 _reserved[6]
Definition: pvcam.h:1319
Definition: pvcam.h:783
Definition: pvcam.h:385
Definition: pvcam.h:1135
Definition: pvcam.h:155
PL_FRAME_ROTATE_MODES
Definition: pvcam.h:253
PL_OPEN_MODES
Definition: pvcam.h:104
Definition: pvcam.h:214
rs_bool PV_DECL pl_error_message(int16 err_code, char *msg)
Returns a string explaining input error code.
PL_CALLBACK_EVENT
Definition: pvcam.h:1120
DEPRECATED rs_bool PV_DECL pl_shtr_set_open_mode(int16 hcam, int16 shtr_open_mode)
DEPRECATED rs_bool PV_DECL pl_ccd_get_pix_par_size(int16 hcam, uns16 *pix_par_size)
Definition: pvcam.h:560
Definition: pvcam.h:242
unsigned char uns8
Definition: master.h:48
PL_COLOR_MODES
Definition: pvcam.h:185
struct io_list io_list
rs_bool PV_DECL pl_pvcam_uninit(void)
Closes the library, closes all devices, frees memory.
Definition: pvcam.h:1159
Definition: pvcam.h:1101
Definition: pvcam.h:923
rs_bool PV_DECL pl_cam_get_total(int16 *totl_cams)
Returns the number of cameras attached to the system.
Definition: pvcam.h:1059
rs_bool PV_DECL pl_exp_get_oldest_frame(int16 hcam, void **frame)
This function returns pointer to the oldest unretrieved frame in the circular buffer.
Definition: pvcam.h:775
io_entry pre_readout
Definition: pvcam.h:1187
Definition: pvcam.h:908
Definition: pvcam.h:369
DEPRECATED rs_bool PV_DECL pl_ccd_get_color_mode(int16 hcam, uns16 *color_mode)
Definition: pvcam.h:188
Definition: pvcam.h:517
Definition: pvcam.h:615
Definition: pvcam.h:158
DEPRECATED rs_bool PV_DECL pv_cam_send_debug(int16 hcam, char *debug_str, uns16 reply_len, char *reply_str)
Definition: pvcam.h:169
PL_PARAM_ATTRIBUTES
Definition: pvcam.h:279
rs_bool PV_DECL pl_exp_check_cont_status_ex(int16 hcam, int16 *status, uns32 *byte_cnt, uns32 *buffer_cnt, FRAME_INFO *frame_info)
Checks the continuous readout status from the camera into a circular buffer.
Definition: pvcam.h:1266
Definition: pvcam.h:800
DEPRECATED rs_bool PV_DECL pl_exp_init_seq(void)
uns16 extendedMdSize
Definition: pvcam.h:1312
io_entry post_integrate
Definition: pvcam.h:1186
Definition: pvcam.h:782
PL_SHTR_OPEN_MODES
Definition: pvcam.h:492
io_entry post_close
Definition: pvcam.h:1190
Definition: pvcam.h:1145
Definition: pvcam.h:208
DEPRECATED rs_bool PV_DECL pl_spdtab_set_num(int16 hcam, int16 spdtab_num)
DEPRECATED rs_bool PV_DECL pl_dd_get_retries(int16 hcam, uns16 *max_retries)
Definition: pvcam.h:1463
Definition: pvcam.h:562
Definition: pvcam.h:544
uns32 frameNr
Definition: pvcam.h:1333
DEPRECATED rs_bool PV_DECL pm_cam_write_read(int16 hcam, uns8 c_class, uns16 write_bytes, uns8 *write_array, uns8 *read_array)
Definition: pvcam.h:976
Definition: pvcam.h:925
Definition: pvcam.h:1130
Definition: pvcam.h:769
void * extMdData
Definition: pvcam.h:1450
Definition: pvcam.h:1019
Definition: pvcam.h:401
Definition: pvcam.h:978
rs_bool PV_DECL pl_exp_start_seq(int16 hcam, void *pixel_stream)
Begins exposing, returns immediately.
DEPRECATED void *PV_DECL pv_realloc(void *block, uns32 size, int16 heap)
DEPRECATED rs_bool PV_DECL pl_spdtab_set_gain(int16 hcam, int16 spdtab_gain)
Definition: pvcam.h:211
uns8 _reserved[3]
Definition: pvcam.h:1372
DEPRECATED rs_bool PV_DECL pl_ccd_get_fwell_capacity(int16 hcam, uns32 *fwell_capacity)
DEPRECATED rs_bool PV_DECL pl_dd_get_timeout(int16 hcam, uns16 *m_sec)
const char * name
Definition: pvcam.h:1410
PL_IO_DIRECTION
Definition: pvcam.h:410
rs_bool PV_DECL pl_cam_open(char *camera_name, int16 *hcam, int16 o_mode)
Reserves and initializes the camera hardware.
rs_bool PV_DECL pl_get_enum_param(int16 hcam, uns32 param_id, uns32 index, int32 *value, char *desc, uns32 length)
Returns the enumerated value of the parameter param_id at index.
DEPRECATED rs_bool PV_DECL pv_dd_active(int16 hcam, void *pixel_stream)
rgn_type roi
Definition: pvcam.h:1364
DEPRECATED rs_bool PV_DECL pl_ccd_get_chip_name(int16 hcam, char *chip_name)
Definition: pvcam.h:126
PL_MD_ROI_FLAGS
Definition: pvcam.h:1251
Definition: pvcam.h:1395
uns16 clear_count
Definition: pvcam.h:1209
DEPRECATED rs_bool PV_DECL pl_ccd_get_mpp_capable(int16 hcam, int16 *mpp_capable)
Definition: pvcam.h:867
active_camera_type * active_camera_ptr
Definition: pvcam.h:1494
DEPRECATED rs_bool PV_DECL pl_ccd_set_clear_cycles(int16 hcam, uns16 clr_cycles)
unsigned long long ulong64
Definition: master.h:60
DEPRECATED rs_bool PV_DECL pl_ccd_set_preamp_off_control(int16 hcam, uns32 preamp_off_control)
Definition: pvcam.h:241
DEPRECATED rs_bool PV_DECL pl_ccd_get_tmp_range(int16 hcam, int16 *tmp_hi_val, int16 *tmp_lo_val)
Definition: pvcam.h:1418
Definition: pvcam.h:784
PL_EXPOSE_OUT_MODES
Definition: pvcam.h:659
DEPRECATED rs_bool PV_DECL pl_shtr_set_close_dly(int16 hcam, uns16 shtr_close_dly)
uns16 cols
Definition: pvcam.h:1203
Definition: pvcam.h:172
Definition: pvcam.h:593
Definition: pvcam.h:1264
Definition: pvcam.h:461
DEPRECATED rs_bool PV_DECL pl_ccd_get_postmask(int16 hcam, uns16 *post_mask)
Definition: pvcam.h:1265
Definition: pvcam.h:213
uns8 version
Definition: pvcam.h:1292
struct _TAG_FRAME_INFO FRAME_INFO
DEPRECATED rs_bool PV_DECL pl_buf_get_img_bin(int16 himg, int16 *ibin, int16 *jbin)
Definition: pvcam.h:209
uns32 signature
Definition: pvcam.h:1291
Definition: pvcam.h:346
Definition: pvcam.h:240
Definition: pvcam.h:171
DEPRECATED rs_bool PV_DECL pl_buf_get_exp_total(int16 hbuf, int16 *total_exps)
int32 ReadoutTime
Definition: pvcam.h:94
struct md_frame_header_v3 md_frame_header_v3
DEPRECATED rs_bool PV_DECL pv_cam_get_ccs_mem(int16 hcam, uns16 *size)
rs_bool PV_DECL pl_get_param(int16 hcam, uns32 param_id, int16 param_attribute, void *param_value)
Returns the requested attribute for a PVCAM parameter.
PL_MD_EXT_TAGS
Definition: pvcam.h:1391
Definition: pvcam.h:875
Definition: pvcam.h:391
uns16 p1
Definition: pvcam.h:1164
DEPRECATED rs_bool PV_DECL pv_exp_set_frames(int16 hcam, uns32 exp_frames)
Definition: pvcam.h:716
io_entry post_readout
Definition: pvcam.h:1188
uns32 f1
Definition: pvcam.h:69
DEPRECATED rs_bool PV_DECL pl_ccd_get_serial_num(int16 hcam, uns16 *serial_num)
DEPRECATED rs_bool PV_DECL pl_buf_get_img_total(int16 hbuf, int16 *totl_imgs)
Definition: pvcam.h:207
rs_bool PV_DECL pl_release_frame_info_struct(FRAME_INFO *frame_to_delete)
Deletes variable of FRAME_INFO type.
DEPRECATED rs_bool PV_DECL pl_ccd_get_premask(int16 hcam, uns16 *pre_mask)
Definition: pvcam.h:217
DEPRECATED rs_bool PV_DECL pl_ccd_get_clear_mode(int16 hcam, int16 *clear_mode)
PL_TRIGTAB_SIGNALS
Definition: pvcam.h:714
Definition: pvcam.h:811
Definition: pvcam.h:674
DEPRECATED rs_bool PV_DECL pl_ccd_set_adc_offset(int16 hcam, int16 offset)
PL_FRAME_FLIP_MODES
Definition: pvcam.h:266
DEPRECATED rs_bool PV_DECL pv_exp_reset_no_readout_timeout(int16 hcam)
Definition: pvcam.h:191
Definition: pvcam.h:255
rs_bool PV_DECL pl_md_create_frame_struct_cont(md_frame **pFrame, uns16 roiCount)
This method creates an empty md_frame structure for known number of ROIs.
PL_EXPOSURE_MODES
Definition: pvcam.h:528
Definition: pvcam.h:903
Definition: pvcam.h:1032
DEPRECATED rs_bool PV_DECL pl_ccd_get_tmp(int16 hcam, int16 *cur_tmp)
Definition: pvcam.h:88
Definition: pvcam.h:984
Definition: pvcam.h:1262
uns32 roiDataSize
Definition: pvcam.h:1370
rs_bool PV_DECL pl_exp_trigger(int16 hcam, uns32 *flags, uns32 value)
Sends a software trigger to the device.
Definition: pvcam.h:974
DEPRECATED rs_bool PV_DECL pv_exp_set_no_readout_timeout(int16 hcam)
Definition: pvcam.h:235
PVCAM_FRAME_INFO_GUID * PPVCAM_FRAME_INFO_GUID
Definition: pvcam.h:1486
Definition: pvcam.h:943
uns16 f3
Definition: pvcam.h:71
uns16 roiCount
Definition: pvcam.h:1295
Definition: pvcam.h:901
int16 hCam
Definition: pvcam.h:91
uns16 preflash
Definition: pvcam.h:1208
int16 open_shutter
Definition: pvcam.h:1214
uns16 roiCapacity
Definition: pvcam.h:1471
Definition: pvcam.h:1096
Definition: pvcam.h:268
Definition: pvcam.h:506
Definition: pvcam.h:786
rs_bool PV_DECL pl_set_param(int16 hcam, uns32 param_id, void *param_value)
Sets the current value for a PVCAM parameter.
PL_COOL_MODES
Definition: pvcam.h:116
struct md_ext_item_collection md_ext_item_collection
Definition: pvcam.h:600
PL_SRC_MODES
Definition: pvcam.h:1093
Definition: pvcam.h:864
Definition: pvcam.h:622
rgn_type * rgn_ptr
Definition: pvcam.h:1489
Definition: pvcam.h:1179
Definition: pvcam.h:788
DEPRECATED rs_bool PV_DECL pl_dd_set_timeout(int16 hcam, uns16 m_sec)
Definition: pvcam.h:244
Definition: pvcam.h:865
Definition: pvcam.h:930
Definition: pvcam.h:957