BFLinux
BFciLib.h
Go to the documentation of this file.
1 /*****************************************************************************
2 
3  BFciLib.h Generic camera interface API
4 
5  May 29, 2008 CIW/SJT original entry
6 
7  © Copyright 2008, BitFlow, Inc. All rights reserved.
8 
9  Tabstops are 4
10 
11  $Author: steve $
12 
13  $Date: 2022/02/17 00:55:18 $
14 
15  $Id: BFciLib.h,v 1.94 2022/02/17 00:55:18 steve Exp $
16 
17 *****************************************************************************/
37 /*==========================================================================*/
38 #ifndef _BFciLib_h_
39 #define _BFciLib_h_ 1
40 /*==========================================================================*/
41 #ifdef __cplusplus
42 extern "C" {
43 #endif
44 /*==========================================================================*/
49 typedef struct tCIinterface *tCIp;
50 typedef int tCIRC;
51 typedef unsigned char tCIU8;
52 typedef unsigned short tCIU16;
53 typedef unsigned int tCIU32;
54 typedef unsigned long long tCIU64;
55 typedef char *tCISTRZ;
56 typedef double tCIDOUBLE;
57 typedef void *tCIVOIDP;
58 
65 typedef struct {
68  } tCISGentry,*tCISGP;
69 /*--------------------------------------------------------------------------*/
73 typedef enum {
89 typedef struct {
94  } tCItypedData, *tCITDP;
95 /*--------------------------------------------------------------------------*/
99 typedef enum {
100  kCIEnoErr = 0,
101  kCIEfirstEC = -30000,
150  } tCIerrorCode;
151 /*==========================================================================*/
152 
153 /* String constants associated with installation and configuration. */
154 
158 #define kBFenvVar "BITFLOW_INSTALL_DIRS"
159 
160 #define kBFbinDir "bin"
161 
162 #define kBFcameraDir "camf"
163 
164 #define kBFfirmwareDir "fshf"
165 
166 #define kBFconfigDir "config"
167 /*--------------------------------------------------------------------------*/
168 
173 #define kBFusrCustomFlags "BITFLOW_CUSTOM_USER_FLAGS"
174 
175 typedef enum {
180 
184 #define kBFformatPPC "BITFLOW_FORMAT_PPC"
185 
188 #define kBFenvPerIoctlDelay "BITFLOW_PER_IOCTL_DELAY"
189 
192 #define kBFenvOverrideCamFN "BITFLOW_OVERRIDE_CAMFN"
193 
196 #define kBFdefaultCXPretry 0
197 
198 #define kBFenvCXPretry "BITFLOW_CXP_RETRY"
199 
204 #define kBFenvCXPioDelay "BITFLOW_CXP_IO_DELAY"
205 
206 #define kBFdefaultCXPioDelay 0
207 
208 /*==========================================================================*/
209 /* System Version, Open, and Initialization */
210 /*==========================================================================*/
215 typedef enum { kCIlibMaxDevScan = 25 } tCImaxDevEnum;
216 
218 
227 void CiSetMaxDevices(tCIU32 maxDev);
228 /*--------------------------------------------------------------------------*/
231  tCIU32 *libVers,
232  tCIU32 *drvVers
233  ); /* kCIEnoErr
234  kCIEnullArg
235  kCIEnoAccessibleVideo
236  kCIEversionErr
237  */
238 /*--------------------------------------------------------------------------*/
241  tCIU32 *nFound
242  ); /* kCIEnoErr
243  kCIEnullArg
244  kCIEnoAccessibleVideo
245  */
246 #define CiSysBrdEnum CiSysVFGenum
247 /*--------------------------------------------------------------------------*/
249 
257  tCIU32 which,
258  tCIU32 *ifaceType,
259  tCIU32 *switches,
260  tCIU32 *devNdx,
261  tCISTRZ busName
262  ); /* kCIEnoErr
263  kCIEnullArg
264  kCIEnoAccessibleVideo
265  kCIErangeErr
266  kCIEfailureErr
267  */
268 
269 typedef enum {
280 
283  kCICT_isMaster = 0x1000
284  } tCIcamTypeEnums;
285 
286 #define CiSysBrdInfo CiSysVFGinfo
287 /*--------------------------------------------------------------------------*/
289 
295  tCIU32 which,
296  tCIU32 *ifaceType,
297  tCIU32 *switches,
298  tCIU32 *devNdx,
299  tCISTRZ busName,
300  tCIU32 *infoHi,
301  tCIU32 *infoLo,
302  tCISTRZ VFGname,
303  tCIU32 *NUMAnode
304  ); /* kCIEnoErr
305  kCIEnullArg
306  kCIEnoAccessibleVideo
307  kCIErangeErr
308  kCIEfailureErr
309  */
310 
311 #define CiSysBrdInfo2 CiSysVFGinfo2
312 /*--------------------------------------------------------------------------*/
314 typedef struct {
325  tCIU32 myLinks[4];
326  tCIU32 myCamerasLinks[4];
330 
332 
341  tCIU32 recSize,
342  tCIVFGSEP vfgAry
343  ); /* kCIEnoErr
344  kCIEnullArg
345  kCIEnoAccessibleVideo
346  kCIErangeErr
347  kCIEmemoryErr
348  kCIEfailureErr
349  */
350 
351 /*--------------------------------------------------------------------------*/
354  tCIU32 devNdx,
355  tCIU32 modeFlags,
356  tCIp *cip
357  ); /* kCIEnoErr
358  kCIEnullArg
359  kCIEnoAccessibleVideo
360  kCIEmemoryErr
361  kCIErangeErr
362  kCIEexclusiveFail
363  kCIEexclusiveAlready
364  kCIEfileError
365  kCIEversionErr
366  */
367 
368 typedef enum {
373 
374 #define CiBrdOpen CiVFGopen
375 /*--------------------------------------------------------------------------*/
377 tCIU32 CiVFGindex(tCIp cip);
378 
379 #define CiBrdIndex CiVFGindex
380 /*--------------------------------------------------------------------------*/
383  tCIp cip,
384  int *fdp
385  ); /* kCIEnoErr
386  kCIEbadToken
387  kCIEnullArg
388  */
389 
390 #define CiBrdFileDescriptor CiVFGfileDescriptor
391 /*--------------------------------------------------------------------------*/
394  tCIp cip,
395  tCIU32 *ifaceType,
396  tCIU32 *switches,
397  tCIU32 *devNdx,
398  tCISTRZ busName,
399  tCIU32 *infoHi,
400  tCIU32 *infoLo,
401  tCISTRZ VFGname,
402  tCIU32 *NUMAnode
403  ); /* kCIEnoErr
404  kCIEnullArg
405  kCIEfailureErr
406  */
407 
408 #define CiBrdQueryInfo CiVFGqueryInfo
409 /*--------------------------------------------------------------------------*/
412  tCIp cip,
413  tCIU32 *nOpen
414  ); /* kCIEnoErr
415  kCIEbadToken
416  kCIEnullArg
417  */
418 /*--------------------------------------------------------------------------*/
420 
433  tCIp cip,
434  tCIU32 *state
435  ); /* kCIEnoErr
436  kCIEbadToken
437  kCIEnullArg
438  */
439 
440 typedef enum {
449 
452 
453 #define CiBrdQueryState CiVFGqueryState
454 /*--------------------------------------------------------------------------*/
456 
467  tCIp cip,
468  tCISTRZ cfgFN
469  ); /* kCIEnoErr
474  kCIEbadToken
475  kCIEnullArg
476  kCIEnoEnvVar
477  kCIErangeErr
478  kCIEmemoryErr
479  kCIEinvalidArg
480  kCIEnoWrPermission
481  kCIEfileError
482  kCIEfailureErr
483  kCIEnotMaster
484  kCIEnotCompatibleWithMaster
485  */
486 
487 #define kBFDEFAULTCFGFILE NULL
488 
489 #define CiBrdInitialize CiVFGinitialize
490 /*--------------------------------------------------------------------------*/
492 
500  tCIp cip,
501  tCISTRZ camFN
502  ); /* kCIEnoErr
503  kCIEbadToken
504  kCIEnullArg
505  kCIEinvalidArg
506  kCIEnoEnvVar
507  kCIEnoWrPermission
508  kCIEfileError
509  kCIEfailureErr
510  kCIEnotMaster
511  kCIEnotCompatibleWithMaster
512  */
513 /*--------------------------------------------------------------------------*/
515 
531  tCIp cip,
532  tCISTRZ cfgFN
533  ); /* kCIEnoErr
538  kCIEbadToken
539  kCIEnullArg
540  kCIEnoEnvVar
541  kCIErangeErr
542  kCIEmemoryErr
543  kCIEinvalidArg
544  kCIEnoWrPermission
545  kCIEfileError
546  kCIEfailureErr
547  kCIEnotMaster
548  kCIEnotCompatibleWithMaster
549  */
550 /*--------------------------------------------------------------------------*/
552 
565  tCIp cip,
566  tCISTRZ camFN
567  ); /* kCIEnoErr
568  kCIEbadToken
569  kCIEnullArg
570  kCIEinvalidArg
571  kCIEnoEnvVar
572  kCIEnoWrPermission
573  kCIEfileError
574  kCIEfailureErr
575  kCIEnotMaster
576  kCIEnotCompatibleWithMaster
577  */
578 /*--------------------------------------------------------------------------*/
580 
596  tCIp cip,
597  tCIU32 initFlags
598  ); /* kCIEnoErr
599  kCIEbadToken
600  kCIEnullArg
601  kCIEnoEnvVar
602  kCIErangeErr
603  kCIEmemoryErr
604  kCIEinvalidArg
605  kCIEnoWrPermission
606  kCIEfileError
607  kCIEfailureErr
608  kCIEnotMaster
609  kCIEnotCompatibleWithMaster
610  kCIEcfgNotLoaded
611  */
612 
613 typedef enum {
617 /*--------------------------------------------------------------------------*/
619 
632  tCIp cip,
633  tCITDP *cfgFN,
634  tCITDP *config,
635  tCITDP *cameraFN,
636  tCITDP *camera,
637  tCITDP *firmFN,
638  tCITDP *firmware,
639  tCITDP *serial
640  ); /* kCIEnoErr
641  kCIEbadToken
642  kCIEnotInitialized
643  kCIEfailureErr
644  kCIEnoWrPermission
645  */
646 
647 #define CiBrdInquire CiVFGinquire
648 /*--------------------------------------------------------------------------*/
650  tCIp cip,
651  tCITDP *cfgFN,
652  tCITDP *config,
653  tCITDP *cameraFN,
654  tCITDP *camera,
655  tCITDP *firmFN,
656  tCITDP *firmware,
657  tCITDP *serial,
658  tCITDP *cxpLink,
659  tCITDP *spare,
660  char **fmtPtr
661  ); /* kCIEnoErr
662  kCIEbadToken
663  kCIEnotInitialized
664  kCIEfailureErr
665  kCIEnoWrPermission
666  */
667 
668 #define CiBrdInquire2 CiVFGinquire2
669 /*--------------------------------------------------------------------------*/
671 
678  tCIp cip,
679  tCIU32 trait,
680  tCIU32 opt
681  );
682 
683 typedef enum {
721 
723 
725 
728 
730 
732 
733  /*
734  ** Enum count.
735  */
738 
739 /*--------------------------------------------------------------------------*/
742  tCIp cip,
743  tCIU32 param,
744  tCIU32 *value
745  );
746 
747 typedef enum {
760 
763 
764  /*
765  ** Flags to query metadata of the camera file parameters
766  */
767  kCIcamFile_isDefault = 0x80000000,
769 
770 typedef enum {
776 
777 /*--------------------------------------------------------------------------*/
780  tCIp cip
781  ); /* kCIEnoErr
782  kCIEnullArg
783  kCIEbadToken
784  */
787 #define CiBrdClose CiVFGclose
788 /*==========================================================================*/
789 /* Interrupt Signals */
790 /*==========================================================================*/
795 short int CiPollConfigure(
797  tCIU32 desired
798  );
799 
812 typedef enum {
814  kCIPEintTRIG = 1 << 1,
815  kCIPEintSERIAL = 1 << 2,
816  kCIPEintQUAD = 1 << 3,
817  kCIPEintDTR = 1 << 3,
818  kCIPEintCTAB = 1 << 4,
819  kCIPEintEOF = 1 << 5,
820  kCIPEintOVSTEP = 1 << 6,
821  kCIPEdrvrErr = 1 << 7,
822  kCIPEnoFirmware = 1 << 8,
823  kCIPEintCXP = 1 << 9,
824  kCIPEintGn2 = 1 << 10,
825 
836 
838 /*--------------------------------------------------------------------------*/
840 
857  short int revents
858  );
859 /*--------------------------------------------------------------------------*/
861 
867  tCIp cip,
868  tCIU32 mask
869  ); /* kCIEnoErr
870  kCIEbadToken
871  kCIEnotInitialized
872  */
873 /*--------------------------------------------------------------------------*/
876  tCIp cip
877  ); /* kCIEnoErr
878  kCIEbadToken
879  kCIEnoWrPermission
880  kCIEnotInitialized
881  */
882 /*--------------------------------------------------------------------------*/
885  tCIp cip
886  ); /* kCIEnoErr
887  kCIEbadToken
888  kCIEnoWrPermission
889  kCIEnotInitialized
890  */
891 /*--------------------------------------------------------------------------*/
894  tCIp cip,
895  tCIU32 zAelseB
896  ); /* kCIEnoErr
897  kCIEbadToken
898  kCIEnoWrPermission
899  kCIEnotInitialized
900  kCIEnotSupported
901  */
902 /*--------------------------------------------------------------------------*/
905  tCIp cip,
906  tCIU32 zAelseB
907  ); /* kCIEnoErr
908  kCIEbadToken
909  kCIEnoWrPermission
910  kCIEnotInitialized
911  kCIEnotSupported
912  */
913 /*--------------------------------------------------------------------------*/
914 typedef enum {
929  /*
930  ** These are bitmasks, not counters
931  */
934 
938  /*
939  ** These two are mapped to CTAB [Cyton/KbnCXP class boards]
940  */
941  kCIintCountENCA = kCIintCountCTAB, //<! Cyton ENCA
942  kCIintCountENCB = kCIintCountCTAB, //<! Cyton ENCB
943  /*
944  ** Cyton reports DOWN_TRIG_RCVD as QUAD
945  */
946  kCIintCountDTR = kCIintCountQUAD //<! Cyton DOWN_TRIG_RCVD
948 
951  tCIp cip,
952  tCIU32 *ic
953  ); /* kCIEnoErr
954  kCIEbadToken
955  kCIEnullArg
956  kCIErangeErr
957  */
959 /*==========================================================================*/
960 /* High level signal interface */
961 /*==========================================================================*/
967 typedef struct tCIsignalHandle *tCISHP;
968 
970 
981  tCIp cip,
982  tCIU32 signal,
983  tCIU32 link,
984  tCISHP *cish
985  ); /* kCIEnoErr
986  kCIEbadToken
987  kCIEnullArg
988  kCIEmemoryErr
989  kCIErangeErr
990  */
991 
993 typedef enum {
994  kCIsigHW = 0,
1001 
1018 
1044 
1045  /*
1046  ** Total count of signals.
1047  */
1049  } tCIsignalEnums;
1050 /*--------------------------------------------------------------------------*/
1052 
1063  tCIp cip,
1064  tCISHP cish,
1065  tCIU32 operation,
1066  tCIU32 *count
1067  ); /* kCIEnoErr
1068  kCIEnoWrPermission
1069  kCIEmemoryErr
1070  kCIErangeErr
1071  kCIEnotInitialized
1072  */
1073 
1075 typedef enum {
1081 /*--------------------------------------------------------------------------*/
1083 
1120  tCIp cip,
1121  tCIU32 cishCnt,
1122  tCISHP *cishAry,
1123  tCIU32 maxWakeCnt,
1124  tCIU32 *pWakeCnt,
1125  int timeoutMsec
1126  ); /* kCIEnoErr
1127  kCIEbadToken
1128  kCIErangeErr
1129  kCIEnotSupported
1130  kCIEcanceledErr
1131  kCIEtimeoutErr
1132  kCIEfailureErr
1133  */
1134 /*--------------------------------------------------------------------------*/
1136 
1143 typedef struct {
1148 
1150 
1173  tCIp cip,
1174  tCISHP cish,
1175  tCIU32 recSize,
1176  tCISEDP storeHere,
1177  int timeoutMsec
1178  ); /* kCIEnoErr
1179  kCIEbadToken
1180  kCIErangeErr
1181  kCIEnotSupported
1182  kCIEcanceledErr
1183  kCIEtimeoutErr
1184  kCIEfailureErr
1185  */
1186 /*--------------------------------------------------------------------------*/
1188 
1201  tCIp cip,
1202  tCISHP cish
1203  ); /* kCIEnoErr
1204  kCIEbadToken
1205  kCIEnullArg
1206  kCIEfailureErr
1207  */
1208 /*--------------------------------------------------------------------------*/
1210 
1222  tCIp cip,
1223  tCISHP cish,
1224  tCIU32 queueOp,
1225  tCIU32 *count
1226  ); /* kCIEnoErr
1227  kCIEbadToken
1228  kCIErangeErr
1229  kCIEnotSupported
1230  kCIEfailureErr
1231  */
1233 /*==========================================================================*/
1234 /* GPOUT/GPIN/CCL Access */
1235 /*==========================================================================*/
1243  tCIp cip,
1244  tCIU32 which,
1245  tCIU32 value
1246  ); /* kCIEnoErr
1247  kCIEbadToken
1248  kCIEnotInitialized
1249  kCIEnoWrPermission
1250  kCIEinvalidArg
1251  */
1252 
1253 typedef enum {
1262  } tCIGPOUTCONenums;
1263 /*--------------------------------------------------------------------------*/
1266  tCIp cip,
1267  tCIU32 which,
1268  tCIU32 value
1269  ); /* kCIEnoErr
1270  kCIEbadToken
1271  kCIEnotInitialized
1272  kCIEnoWrPermission
1273  kCIEinvalidArg
1274  */
1275 
1276 typedef enum {
1277  /*
1278  ** ******************************************
1279  ** Karbon, Neon, and Alta info
1280  ** ******************************************
1281  */
1290  /*
1291  ** CC4 has a separate config value from 1, 2, and 3
1292  */
1294  /*
1295  ** ******************************************
1296  ** Karbon CXP info
1297  ** ******************************************
1298  */
1310  /*
1311  ** ******************************************
1312  ** Cyton CXP/Aon CXP/Claxon CXP/Axion CL info
1313  ** ******************************************
1314  */
1326 
1328  } tCICCCONenums;
1329 /*--------------------------------------------------------------------------*/
1331 tCIRC CiGPOUTset(
1332  tCIp cip,
1333  tCIU32 mask,
1334  tCIU32 value
1335  ); /* kCIEnoErr
1336  kCIEbadToken
1337  kCIEnotInitialized
1338  kCIEnoWrPermission
1339  */
1340 typedef enum {
1342  kCIGPOUT1 = 1 << 1,
1343  kCIGPOUT2 = 1 << 2,
1344  kCIGPOUT3 = 1 << 3,
1345  kCIGPOUT4 = 1 << 4,
1346  kCIGPOUT5 = 1 << 5,
1347  kCIGPOUT6 = 1 << 6,
1348  /*
1349  ** Only available on KbnCXP (deprecated)
1350  */
1351  kCIGPOUT7 = 1 << 7,
1352  kCIGPOUT8 = 1 << 8,
1353  kCIGPOUT9 = 1 << 9,
1354  kCIGPOUT10 = 1 << 10,
1355  kCIGPOUT11 = 1 << 11
1356  } kCIGPOUTenums;
1357 /*--------------------------------------------------------------------------*/
1359 tCIRC CiGPOUTget(
1360  tCIp cip,
1361  tCIU32 *value
1362  ); /* kCIEnoErr
1363  kCIEbadToken
1364  kCIEnullArg
1365  kCIEnotInitialized
1366  */
1367 /*--------------------------------------------------------------------------*/
1369 tCIRC CiGPINget(
1370  tCIp cip,
1371  tCIU32 *value
1372  ); /* kCIEnoErr
1373  kCIEbadToken
1374  kCIEnullArg
1375  kCIEnotInitialized
1376  */
1377 typedef enum {
1378  /*
1379  ** ************************************
1380  ** Karbon, Neon, Alta GPIN status
1381  ** ************************************
1382  */
1384  kCIGPIN1 = 1 << 1,
1385  kCIGPIN2 = 1 << 2,
1386  kCIGPIN3 = 1 << 3,
1387  kCIGPIN4 = 1 << 4,
1389  kCIRD_TRIG_TTL = 1 << 6,
1391  kCIRD_ENC_DIFF = 1 << 8,
1392  kCIRD_ENC_TTL = 1 << 9,
1393  kCIRD_ENC_OPTO = 1 << 10,
1394  kCIRD_FEN = 1 << 11,
1398  kCIRD_swTrigger = 1 << 12,
1399  kCIRD_swEncoder = 1 << 13,
1400  /*
1401  ** ************************************
1402  ** CXP GPIN status
1403  ** ************************************
1404  */
1405 #define kCIRDCXP_ENCB_DIF kCIGPIN0
1406 #define kCIRDCXP_ENCB_TTL kCIGPIN1
1407 #define kCIRDCXP_ENCB_VFG0 kCIGPIN2
1408 #define kCIRDCXP_ENCB_SW kCIGPIN3
1409  /*
1410  ** CXP ENCA info is returned in these fields:
1411  */
1412 #define kCIRDCXP_ENCA_DIF kCIRD_ENC_DIFF
1413 #define kCIRDCXP_ENCA_TTL kCIRD_ENC_TTL
1414 #define kCIRDCXP_ENCA_VFG0 kCIRD_ENC_OPTO
1415 #define kCIRDCXP_ENCA_SW kCIRD_swEncoder
1416  /*
1417  ** CXP TRIG info is returned in these fields
1418  */
1419 #define kCIRDCXP_TRIG_TTL kCIRD_TRIG_TTL
1420 #define kCIRDCXP_TRIG_DIF kCIRD_TRIG_DIFF
1421 #define kCIRDCXP_TRIG_VFG0 kCIRD_TRIG_OPTO
1422 #define kCIRDCXP_SW_TRIG kCIRD_swTrigger
1423  /*
1424  ** Other CXP specific input info
1425  */
1426 #define kCIRDCXP_SCAN_STEP kCIGPIN4
1427  kCIRDCXP_BUTTON = 1 << 16,
1428  kCIRDCXP_TRIG_IN = 1 << 17,
1433  } kCIGPINenums;
1435 /*==========================================================================*/
1436 /* Acquisition Setup */
1437 /*==========================================================================*/
1443 
1452  tCIp cip,
1453  tCIU32 count,
1454  tCIU32 hROIoffset,
1455  tCIU32 hROIsize,
1456  tCIU32 vROIoffset,
1457  tCIU32 vROIsize
1458  ); /* kCIEnoErr
1459  kCIEbadToken
1460  kCIEnotInitialized
1461  kCIEnotConfigured
1462  kCIEcfgNotLoaded
1463  kCIEcfgNotApplied
1464  kCIEmemoryErr
1465  kCIEnoWrPermission
1466  kCIEfailureErr
1467  kCIEinvalidArg
1468  kCIEresourceBusy
1469  */
1470 /*--------------------------------------------------------------------------*/
1472 
1492  tCIp cip,
1493  tCIU32 count,
1494  tCIU8 *buffer,
1495  tCIU64 bufferBytes,
1496  tCIU32 hROIoffset,
1497  tCIU32 hROIsize,
1498  tCIU32 vROIoffset,
1499  tCIU32 vROIsize
1500  ); /* kCIEnoErr
1501  kCIEbadToken
1502  kCIEnotInitialized
1503  kCIEnotConfigured
1504  kCIEcfgNotLoaded
1505  kCIEcfgNotApplied
1506  kCIEnullArg
1507  kCIEmemoryErr
1508  kCIEnoWrPermission
1509  kCIEfailureErr
1510  kCIEinvalidArg
1511  kCIEresourceBusy
1512  kCIEexclusiveFail
1513  */
1514 /*--------------------------------------------------------------------------*/
1516 
1563  tCIp cip,
1564  tCIU32 nSGentry,
1565  tCISGP sgList,
1566  tCIU32 hROIoffset,
1567  tCIU32 hROIsize,
1568  tCIU32 vROIoffset,
1569  tCIU32 vROIsize
1570  ); /* kCIEnoErr
1571  kCIEbadToken
1572  kCIEnotInitialized
1573  kCIEnotConfigured
1574  kCIEcfgNotLoaded
1575  kCIEcfgNotApplied
1576  kCIEinvalidArg
1577  kCIEmemoryErr
1578  kCIEnoWrPermission
1579  kCIEfailureErr
1580  kCIEinvalidArg
1581  kCIEresourceBusy
1582  kCIEexclusiveFail
1583  */
1584 /*--------------------------------------------------------------------------*/
1586 
1639  tCIp cipA,
1640  tCIU32 hROIoffsetA,
1641  tCIU32 hROIsizeA,
1642  tCIU32 vROIoffsetA,
1643  tCIU32 vROIsizeA,
1644  tCIp cipB,
1645  tCIU32 hROIoffsetB,
1646  tCIU32 hROIsizeB,
1647  tCIU32 vROIoffsetB,
1648  tCIU32 vROIsizeB,
1649  tCIU32 nFrames,
1650  tCIU8 *userBuffer,
1651  tCIU64 buffSz,
1652  tCIU32 vertHoriz
1653  ); /* kCIEnoErr
1654  kCIEbadToken
1655  kCIEnotInitialized
1656  kCIEnotConfigured
1657  kCIEcfgNotLoaded
1658  kCIEcfgNotApplied
1659  kCIEinvalidArg
1660  kCIEmemoryErr
1661  kCIEnoWrPermission
1662  kCIEfailureErr
1663  kCIEresourceBusy
1664  kCIEexclusiveFail
1665  */
1666 typedef enum {
1669  /*
1670  ** Flags to allow DMA into each frame from bottom line to top line.
1671  */
1674  } tBFsplitEnums;
1675 /*--------------------------------------------------------------------------*/
1677 
1714  tCIp cipEven,
1715  tCIp cipOdd,
1716  tCIU32 hROIoffset,
1717  tCIU32 hROIsize,
1718  tCIU32 vROIoffset,
1719  tCIU32 vROIsizeOdd,
1720  tCIU32 nFrames,
1721  tCIU8 *userBuffer,
1722  tCIU64 buffSz
1723  ); /* kCIEnoErr
1724  kCIEbadToken
1725  kCIEnotInitialized
1726  kCIEnotConfigured
1727  kCIEcfgNotLoaded
1728  kCIEcfgNotApplied
1729  kCIEinvalidArg
1730  kCIEmemoryErr
1731  kCIEnoWrPermission
1732  kCIEfailureErr
1733  kCIEresourceBusy
1734  kCIEexclusiveFail
1735  */
1736 /*--------------------------------------------------------------------------*/
1738 
1747  tCIp cip,
1748  tCIU32 *nFrames,
1749  tCIU32 *bitsPerPix,
1750  tCIU32 *hROIoffset,
1751  tCIU32 *hROIsize,
1752  tCIU32 *vROIoffset,
1753  tCIU32 *vROIsize,
1754  tCIU32 *stride
1755  ); /* kCIEnoErr
1756  kCIEbadToken
1757  kCIEnullArg
1758  kCIEnotInitialized
1759  kCIEnotConfigured
1760  kCIEuserDMAerr
1761  kCIErangeErr
1762  */
1763 
1764 #define BYTES_PER_PIXEL(bitsPerPixel) \
1765  (((bitsPerPixel) == 36) ? (6) : (((bitsPerPixel) + 7) >> 3))
1766 /*--------------------------------------------------------------------------*/
1768 
1793  tCIp cip,
1794  tCIU32 nzWrite,
1795  tCIU32 *nPtrs,
1796  tCIU8 ***uPtrs
1797  ); /* kCIEnoErr
1798  kCIEbadToken
1799  kCIEnullArg
1800  kCIEnotInitialized
1801  kCIEnotConfigured
1802  kCIEnoWrPermission
1803  kCIEmemoryErr
1804  kCIEuserDMAerr
1805  kCIEuserDMAnoWrite
1806  */
1807 /*--------------------------------------------------------------------------*/
1809 /*
1810 ** NOTE: DMA memory cannot be reconfigured so long as any CiVFGopen() call
1811 ** has an active map of the kernel buffers.
1812 */
1814  tCIp cip
1815  ); /* kCIEnoErr
1816  kCIEbadToken
1817  kCIEnotInitialized
1818  kCIEnotConfigured
1819  */
1820 /*--------------------------------------------------------------------------*/
1821 typedef union {
1823  /*
1824  ** ******************************************
1825  ** Karbon, Neon, and Alta info
1826  ** ******************************************
1827  */
1828  struct {
1829  unsigned int trigDelay : 10;
1830  unsigned int trigIntCfg : 2;
1831  unsigned int trigSel : 2;
1832  unsigned int trigPol : 1;
1833  unsigned int trigEnable : 1;
1834  unsigned int _unsused : 16;
1835  } vCfg;
1836 
1837  struct {
1838  unsigned int encDiv : 10;
1839  unsigned int encSel : 2;
1840  unsigned int encPol : 1;
1841  unsigned int encEnable : 1;
1842  unsigned int _unused : 18;
1843  } hCfg;
1844  /*
1845  ** ********************************************
1846  ** Karbon CXP, Cyton CXP, AON CXP, AxionCL info
1847  ** ********************************************
1848  */
1849  struct {
1850  unsigned int trigDelay : 10;
1851  unsigned int trigSel : 6;
1852  unsigned int trigPol : 1;
1853  unsigned int trigEnable : 1;
1854  unsigned int _unused : 14;
1855  } vCfgCXP;
1856 
1857  struct {
1858  unsigned int encSelA : 6;
1859  unsigned int encPolA : 1;
1860  unsigned int encEnA : 1;
1861  unsigned int encSelB : 6;
1862  unsigned int encPolB : 1;
1863  unsigned int encEnB : 1;
1864  unsigned int _unsused : 16;
1865  } hCfgCXP;
1866 
1867  } tCItrigConfig;
1868 
1870 
1877  tCIp cip,
1878  tCItrigConfig vCfg,
1879  tCItrigConfig hCfg
1880  ); /* kCIEnoErr
1881  kCIEbadToken
1882  kCIEnotInitialized
1883  kCIEnoWrPermission
1884  */
1885 /*--------------------------------------------------------------------------*/
1888  tCIp cip,
1889  tCItrigConfig *vCfg,
1890  tCItrigConfig *hCfg,
1891  tCIU32 *mode
1892  ); /* kCIEnoErr
1893  kCIEbadToken
1894  kCIEnullArg
1895  kCIEnotInitialized
1896  */
1897 /*--------------------------------------------------------------------------*/
1900  tCIp cip,
1901  tCIU32 mode
1902  ); /* kCIEnoErr
1903  kCIEbadToken
1904  kCIEnotInitialized
1905  kCIEnoWrPermission
1906  */
1907 
1908 typedef enum {
1912  /*
1913  ** Not valid for Cyton class VFG
1914  */
1917 
1923  } kCIVTrigModeEnum;
1924 
1926 /*==========================================================================*/
1927 /* Timing Sequencer */
1928 /*==========================================================================*/
1934 typedef struct {
1942  } tCITSentry, *tCITSEP;
1943 
1945 
1957  tCIp cip,
1958  tCIU32 sequencer,
1959  tCIU32 *tsArySize,
1960  tCITSEP tsAry,
1961  tCIU32 *preTrigCT0,
1962  tCIU32 *preTrigCT1,
1963  tCIU32 *preTrigCT2,
1964  tCIU32 *preTrigCT3,
1965  tCIU32 *triggerSrc
1966  ); /* kCIEnoErr
1967  kCIEinvalidArg
1968  kCIEnullArg
1969  kCIErangeErr
1970  kCIEnotSupported
1971  */
1972 
1974 
1981  tCIp cip,
1982  tCIU32 sequencer,
1983  tCIU32 tsArySize,
1984  tCITSEP tsAry,
1985  tCIU32 preTrigCT0,
1986  tCIU32 preTrigCT1,
1987  tCIU32 preTrigCT2,
1988  tCIU32 preTrigCT3,
1989  tCIU32 triggerSrc
1990  ); /* kCIEnoErr
1991  kCIEinvalidArg
1992  kCIEnullArg
1993  kCIErangeErr
1994  kCIEnotSupported
1995  */
1996 
1998 typedef enum {
2002 
2004 typedef enum {
2019  kBFTSTunknown = 0xffff
2021 
2023 typedef enum
2024 {
2033 
2035 /*==========================================================================*/
2036 /* Acquisition */
2037 /*==========================================================================*/
2043 
2052 tCIRC CiAqStart(
2053  tCIp cip,
2054  tCIU32 nFrames
2055  ); /* kCIEnoErr
2056  kCIEbadToken
2057  kCIEnullArg
2058  kCIEnotInitialized
2059  kCIEnotConfigured
2060  kCIEnoWrPermission
2061  kCIEinvalidStateErr
2062  kCIEmemoryErr
2063  kCIErangeErr
2064  */
2065 /*--------------------------------------------------------------------------*/
2067 
2082  tCIp cip,
2083  tCIU32 nFrames
2084  ); /* kCIEnoErr
2085  kCIEbadToken
2086  kCIEnullArg
2087  kCIEnotInitialized
2088  kCIEnotConfigured
2089  kCIEnoWrPermission
2090  kCIEinvalidStateErr
2091  kCIEmemoryErr
2092  kCIErangeErr
2093  */
2094 /*--------------------------------------------------------------------------*/
2096 
2105  tCIp cip,
2106  tCIU32 nFrames
2107  ); /* kCIEnoErr
2108  kCIEbadToken
2109  kCIEnullArg
2110  kCIEnotInitialized
2111  kCIEnotConfigured
2112  kCIEnoWrPermission
2113  kCIEinvalidStateErr
2114  kCIEmemoryErr
2115  kCIErangeErr
2116  */
2117 /*--------------------------------------------------------------------------*/
2119 tCIRC CiAqStop(
2120  tCIp cip
2121  ); /* kCIEnoErr
2122  kCIEbadToken
2123  kCIEnotInitialized
2124  kCIEnotConfigured
2125  kCIEnoWrPermission
2126  kCIEinvalidStateErr
2127  */
2128 /*--------------------------------------------------------------------------*/
2130 
2134 tCIRC CiAqAbort(
2135  tCIp cip
2136  ); /* kCIEnoErr
2137  kCIEbadToken
2138  kCIEnotInitialized
2139  kCIEnotConfigured
2140  kCIEnoWrPermission
2141  */
2142 /*--------------------------------------------------------------------------*/
2145  tCIp cip,
2146  tCIU32 trigValue,
2147  tCIU32 encValue
2148  ); /* kCIEnoErr
2150  kCIEbadToken
2151  kCIEnotInitialized
2152  kCIEnoWrPermission
2153  */
2154 /*--------------------------------------------------------------------------*/
2156 
2160  tCIp cip
2161  ); /* kCIEnoErr
2162  kCIEbadToken
2163  kCIEnotInitialized
2164  kCIEnoWrPermission
2165  */
2166 /*--------------------------------------------------------------------------*/
2169  tCIp cip,
2170  tCIU32 *state,
2171  tCIU32 *nFrames,
2172  tCIU32 *nErrors
2173  ); /* kCIEnoErr
2174  kCIEbadToken
2175  kCIEnullArg
2176  kCIEnotInitialized
2177  kCIEnotConfigured
2178  kCIEfailureErr
2179  kCIEuserDMAerr
2180  */
2181 
2182 typedef enum {
2185 
2188 
2191 
2194 
2196  /*
2197  ** A status bit to indicate SIP data acquisition.
2198  */
2200  /*
2201  ** A status bit to indicate "consume buffer" mode buffer underrun.
2202  **
2203  ** If set the driver has already aborted any DMA.
2204  */
2206  /*
2207  ** A status bit to indicate CiAqAbort() stopped acquisition.
2208  */
2211 /*--------------------------------------------------------------------------*/
2213 
2224  tCIp cip,
2225  int timeoutMsec
2226  ); /* kCIEnoErr
2227  kCIEbadToken
2228  kCIEnullArg
2229  kCIEnotInitialized
2230  kCIEnotConfigured
2231  kCIEdmaOverrunErr
2232  kCIEdataErr
2233  kCIEdataHWerr
2234  kCIEdataOVSTEPerr
2235  kCIEdmaErr
2236  kCIEuserDMAerr
2237  kCIEbufferUnderrunErr
2238  kCIEtimeoutErr
2239  kCIEaqAbortedErr
2240  */
2241 /*--------------------------------------------------------------------------*/
2243 
2253  tCIp cip,
2254  tCIU32 *frameID,
2255  tCIU8 **frameData
2256  ); /* kCIEnoErr
2257  kCIEbadToken
2258  kCIEnullArg
2259  kCIEnotInitialized
2260  kCIEnotConfigured
2261  kCIEdataErr
2262  kCIEdataHWerr
2263  kCIEdataOVSTEPerr
2264  kCIEdmaErr
2265  kCIEuserDMAerr
2266  kCIEnoNewData
2267  kCIEbufferUnderrunErr
2268  kCIEinfoAgedOut
2269  kCIEaqAbortedErr
2270  */
2271 /*--------------------------------------------------------------------------*/
2273 
2288  tCIp cip,
2289  tCIU32 *frameID,
2290  tCIU8 **frameData
2291  ); /* kCIEnoErr
2292  kCIEbadToken
2293  kCIEnullArg
2294  kCIEnotInitialized
2295  kCIEnotConfigured
2296  kCIEdmaOverrunErr
2297  kCIEdataErr
2298  kCIEdataHWerr
2299  kCIEdataOVSTEPerr
2300  kCIEdmaErr
2301  kCIEuserDMAerr
2302  kCIEnoNewData
2303  kCIEbufferUnderrunErr
2304  kCIEinfoAgedOut
2305  kCIEaqAbortedErr
2306  */
2307 /*--------------------------------------------------------------------------*/
2309 /*
2310 ** NOTE: Use this function to effectively acknowledge delivery of frames
2311 ** and clear the kCIEdmaOverrunErr without restarting acquisition.
2312 **
2313 ** This implements a "drop frames on the floor" functionality.
2314 */
2316  tCIp cip,
2317  tCIU32 frameID
2318  ); /* kCIEnoErr
2319  kCIEbadToken
2320  */
2321 /*--------------------------------------------------------------------------*/
2323 /*
2324 ** Number of undelivered frames.
2325 */
2327  tCIp cip,
2328  tCIU32 *count
2329  ); /* kCIEnoErr
2330  kCIEbadToken
2331  */
2332 /*--------------------------------------------------------------------------*/
2335  tCIp cip
2336  ); /* kCIEnoErr
2337  kCIEbadToken
2338  kCIEnoWrPermission
2339  */
2340 /*--------------------------------------------------------------------------*/
2341 typedef struct {
2345  tCIU32 fill; /* -- */
2350  /*
2351  ** Note: future versions of BFciLib.h may add more fields to this struct.
2352  */
2354 
2356 
2369  tCIp cip,
2370  tCIU32 recSize,
2371  tCIXBIP storeHere
2372  ); /* kCIEnoErr
2373  kCIEbadToken
2374  kCIEnullArg
2375  kCIEnotInitialized
2376  kCIEnotConfigured
2377  kCIEbadID
2378  kCIEinfoAgedOut
2379  kCIErangeErr
2380  */
2382 /*==========================================================================*/
2383 /* Consume buffers */
2384 /*==========================================================================*/
2450 /*--------------------------------------------------------------------------*/
2452 
2458  tCIp cip,
2459  tCIU32 mode
2460  ); /* kCIEnoErr
2461  kCIEbadToken
2462  kCIEnullArg
2463  kCIEinvalidArg
2464  kCIEnotInitialized
2465  kCIEnoWrPermission
2466  kCIEresourceBusy
2467  */
2468 
2469 typedef enum {
2473 /*--------------------------------------------------------------------------*/
2476  tCIp cip,
2477  tCIU32 *mode
2478  ); /* kCIEnoErr
2479  kCIEbadToken
2480  kCIEnullArg
2481  */
2482 /*--------------------------------------------------------------------------*/
2485  tCIp cip,
2486  tCIU32 frameID,
2487 
2489  tCIU32 *buffID
2490  ); /* kCIEnoErr
2491  kCIEbadToken
2492  kCIEnullArg
2493  kCIEnotInitialized
2494  kCIEwrongMode
2495  kCIEbadID
2496  kCIEinfoAgedOut
2497  */
2498 /*--------------------------------------------------------------------------*/
2501  tCIp cip,
2502  tCIU32 buffID,
2503  tCIU32 *status
2504  ); /* kCIEnoErr
2505  kCIEbadToken
2506  kCIEnullArg
2507  kCIEnotInitialized
2508  kCIEwrongMode
2509  kCIEbadID
2510  */
2511 typedef enum {
2516 
2521 
2525 
2530 /*--------------------------------------------------------------------------*/
2533  tCIp cip,
2534  tCIU32 buffID
2535  ); /* kCIEnoErr
2536  kCIEbadToken
2537  kCIEnullArg
2538  kCIEnoWrPermission
2539  kCIEnotInitialized
2540  kCIEwrongMode
2541  kCIEbadID
2542  */
2544 /*==========================================================================*/
2545 /* CON Register Access */
2546 /*==========================================================================*/
2553  tCIp cip,
2554  tCIU32 *nReg
2555  ); /* kCIEnoErr
2556  kCIEbadToken
2557  kCIEnullArg
2558  */
2559 /*--------------------------------------------------------------------------*/
2561 tCIRC CiRegPeek(
2562  tCIp cip,
2563  tCIU32 ndx,
2564  tCIU32 *result
2565  ); /* kCIEnoErr
2566  kCIEbadToken
2567  kCIErangeErr
2568  kCIEnullArg
2569  kCIEnotImplemented
2570  */
2571 /*--------------------------------------------------------------------------*/
2573 tCIRC CiRegPoke(
2574  tCIp cip,
2575  tCIU32 ndx,
2576  tCIU32 value,
2577  tCIU32 mask
2578  ); /* kCIEnoErr
2579  kCIEbadToken
2580  kCIErangeErr
2581  kCIEnoWrPermission
2582  kCIEnotImplemented
2583  */
2584 /*--------------------------------------------------------------------------*/
2586 
2590 char *CiRegName(
2591  tCIp cip,
2592  tCIU32 ndx
2593  ); /* NULL if not implemented or
2594  ndx out of range, else name
2595  */
2596 /*--------------------------------------------------------------------------*/
2598 
2603  tCIp cip,
2604  tCIU32 ndx,
2605  tCIU32 *ndxAry,
2606  tCIU32 *cnt
2607  ); /* kCIEnoErr
2608  kCIEbadToken
2609  kCIEnullArg
2610  kCIErangeErr
2611  */
2613 /*==========================================================================*/
2614 /* CON Register Field Access */
2615 /*==========================================================================*/
2621 
2626 int CiFieldNdxFromStr(
2627  tCIp cip,
2628  char *str
2629  ); /* -1 label not found
2630  >=0 valid enumerate
2631  */
2632 /*--------------------------------------------------------------------------*/
2634 
2637 int CiFieldWidth(
2638  tCIp cip,
2639  int fieldNdx
2640  ); /* -1 ndx not found
2641  >=0 valid field width
2642  */
2643 /*--------------------------------------------------------------------------*/
2645 
2649 char *CiFieldNameFromNdx(
2650  tCIp cip,
2651  int ndx
2652  ); /* NULL if ndx out of range
2653  else label
2654  */
2655 /*--------------------------------------------------------------------------*/
2658  tCIp cip,
2659  tCIU32 ndx,
2660  tCIU32 *result
2661  ); /* kCIEnoErr
2662  kCIEbadToken
2663  kCIErangeErr
2664  kCIEnullArg
2665  kCIEnotImplemented
2666  */
2667 /*--------------------------------------------------------------------------*/
2670  tCIp cip,
2671  tCIU32 ndx,
2672  tCIU32 value
2673  ); /* kCIEnoErr
2674  kCIEbadToken
2675  kCIErangeErr
2676  kCIEnoWrPermission
2677  kCIEnotImplemented
2678  */
2680 /*==========================================================================*/
2681 /* Camera Link Functions */
2682 /*==========================================================================*/
2687 
2709 tCIRC CiCLinit(
2710  tCIp cip,
2711  tCIU32 dataBits,
2712  tCIU32 parity,
2713  tCIU32 stopBits,
2714  tCIU32 baud9600
2715  ); /* kCIEnoErr
2716  kCIEbadToken
2717  kCIEnotSupported
2718  kCIEinvalidArg
2719  kCIEnotInitialized
2720  kCIEresourceBusy
2721  kCIEnoWrPermission
2722  kCIEfailureErr
2723  */
2724 /*--------------------------------------------------------------------------*/
2727  tCIp cip,
2728  tCIU32 *avail
2729  ); /* kCIEnoErr
2730  kCIEbadToken
2731  kCIEnullArg
2732  kCIEnotOpen
2733  */
2734 /*--------------------------------------------------------------------------*/
2737  tCIp cip,
2738  tCIU32 buffSize,
2739  tCIU32 *bytesRead,
2740  tCIU8 *buffer
2741  ); /* kCIEnoErr
2742  kCIEbadToken
2743  kCIEnullArg
2744  kCIEnotOpen
2745  */
2746 /*--------------------------------------------------------------------------*/
2748 
2752  tCIp cip,
2753  tCIU32 buffSize,
2754  tCIU8 *buffer
2755  ); /* kCIEnoErr
2756  kCIEbadToken
2757  kCIEnullArg
2758  kCIEtimeoutErr
2759  kCIEnotOpen
2760  */
2761 /*--------------------------------------------------------------------------*/
2763 
2767  tCIp cip,
2768  tCIU32 buffSize,
2769  tCIU8 *buffer
2770  ); /* kCIEnoErr
2771  kCIEbadToken
2772  kCIEnullArg
2773  kCIEtimeoutErr
2774  kCIEnotOpen
2775  */
2776 /*--------------------------------------------------------------------------*/
2778 
2782  tCIp cip,
2783  tCIU32 *status
2784  ); /* kCIEnoErr
2785  kCIEbadToken
2786  kCIEnullArg
2787  kCIEnotOpen
2788  kCIEfailureErr
2789  */
2790 
2791 typedef enum {
2795  } tBFCLenums;
2796 /*--------------------------------------------------------------------------*/
2798 tCIRC CiCLinfo(
2799  tCIp cip,
2800  tCIU32 *dataBits,
2801  tCIU32 *parity,
2802  tCIU32 *stopBits,
2803  tCIU32 *baud
2804  ); /* kCIEnoErr
2805  kCIEbadToken
2806  kCIEnullArg
2807  kCIEnotOpen
2808  kCIEfailureErr
2809  */
2810 /*--------------------------------------------------------------------------*/
2812 
2816  tCIp cip,
2817  tCIU32 nzSet
2818  ); /* kCIEnoErr
2819  kCIEbadToken
2820  kCIEnotOpen
2821  */
2822 /*--------------------------------------------------------------------------*/
2824 tCIRC CiCLterm(
2825  tCIp cip
2826  ); /* kCIEnoErr
2827  kCIEnotOpen
2828  */
2830 /*==========================================================================*/
2831 /* CXP */
2832 /*==========================================================================*/
2838 
2841  tCIp cip,
2842  tCIU32 link,
2843  tCIU32 address,
2844  tCIU32 value
2845  ); /* kCIEnoErr
2846  kCIEbadToken
2847  kCIEnotSupported
2848  kCIEnoWrPermission
2849  kCIEfailureErr
2850  kCIEinvalidArg
2851  kCIEtimeoutErr
2852  kCIEnotInitialized
2853  */
2854 /*--------------------------------------------------------------------------*/
2856 
2858  tCIp cip,
2859  tCIU32 link,
2860  tCIU32 address,
2861  tCIU32 *value
2862  ); /* kCIEnoErr
2863  kCIEbadToken
2864  kCIEnullArg
2865  kCIEnotSupported
2866  kCIEfailureErr
2867  kCIEinvalidArg
2868  kCIEtimeoutErr
2869  kCIEnotInitialized
2870  */
2871 /*--------------------------------------------------------------------------*/
2873 
2875  tCIp cip,
2876  tCIU32 link,
2877  tCIU32 address,
2878  tCIU8 *data,
2879  tCIU32 byteCount
2880  ); /* kCIEnoErr
2881  kCIEbadToken
2882  kCIEnullArg
2883  kCIEnotSupported
2884  kCIEnoWrPermission
2885  kCIEfailureErr
2886  kCIEinvalidArg
2887  kCIEtimeoutErr
2888  kCIEnotInitialized
2889  */
2890 /*--------------------------------------------------------------------------*/
2892 
2894  tCIp cip,
2895  tCIU32 link,
2896  tCIU32 address,
2897  tCIU8 *buffer,
2898  tCIU32 readBytes,
2899  tCIU32 *actualSz
2900  ); /* kCIEnoErr
2901  kCIEbadToken
2902  kCIEnullArg
2903  kCIEnotSupported
2904  kCIEfailureErr
2905  kCIEinvalidArg
2906  kCIEtimeoutErr
2907  kCIEnotInitialized
2908  kCIErangeErr
2909  */
2910 /*--------------------------------------------------------------------------*/
2912 
2920  tCIp cip,
2921  tCIU32 *links
2922  ); /* kCIEnoErr
2923  kCIEbadToken
2924  kCIEnullArg
2925  kCIEnotSupported
2926  kCIEfailureErr
2927  */
2928 typedef enum {
2930  kCiCXPlinkSpeedMask = 0xFF000000,
2931 
2933 
2934  } tCXPlinkEnums;
2935 /*--------------------------------------------------------------------------*/
2937 
2939  tCIp cip,
2940  tCIU32 links
2941  ); /* kCIEnoErr
2942  kCIEbadToken
2943  kCIEnullArg
2944  kCIEnotSupported
2945  kCIEfailureErr
2946  kCIEinvalidArg
2947  */
2948 /*--------------------------------------------------------------------------*/
2950 
2954  tCIp cip,
2955  tCIU32 link,
2956  tCIU64 *hostTime
2957  );
2958 /*--------------------------------------------------------------------------*/
2959 typedef struct {
2963  /*
2964  ** Note: future versions of BFciLib.h may add more fields to this struct.
2965  */
2967 
2969 
2975  tCIp cip,
2976  tCIU32 link,
2977  tCIU32 recSize,
2978  tCICXPHBP storeHere
2979  ); /* kCIEnoErr
2980  kCIEbadToken
2981  kCIEnullArg
2982  kCIEnotSupported
2983  kCIEfailureErr
2984  kCIEinvalidArg
2985  kCIErangeErr
2986  */
2987 /*--------------------------------------------------------------------------*/
2988 typedef enum {
2991 
2992 typedef struct {
2999  /*
3000  ** Note: future versions of BFciLib.h may add more fields to this struct.
3001  */
3003 
3005 
3010  tCIp cip,
3011  tCIU32 link,
3012  tCIU32 recSize,
3013  tCICXPEP storeHere
3014  ); /* kCIEnoErr
3015  kCIEbadToken
3016  kCIEnullArg
3017  kCIEnotSupported
3018  kCIEfailureErr
3019  kCIEinvalidArg
3020  kCIErangeErr
3021  kCIEbadCRC
3022  */
3023 /*--------------------------------------------------------------------------*/
3024 typedef struct {
3030  /*
3031  ** Note: future versions of BFciLib.h may add more fields to this struct.
3032  */
3034 
3036 
3042  tCIp cip,
3043  tCIU32 index,
3044  tCIU32 evtPktSize,
3045  tCICXPEP evtPkt,
3046  tCIU32 recSize,
3047  tCICXPEM storeHere
3048  ); /* kCIEnoErr
3049  kCIEbadToken
3050  kCIEnullArg
3051  kCIEnotSupported
3052  kCIEfailureErr
3053  kCIEinvalidArg
3054  kCIErangeErr
3055  */
3056 
3057 typedef enum {
3063 
3065 /*==========================================================================*/
3066 /* CytonCXP and other second generation issues */
3067 /*==========================================================================*/
3073 
3076  tCIp cip,
3077  tCITDP *modeData
3078  ); /* kCIEnoErr
3079  kCIEbadToken
3080  kCIEnullArg
3081  kCIEnotSupported
3082  kCIEfileErr
3083  kCIEfailureErr
3084  kCIEparseErr
3085  */
3086 /*--------------------------------------------------------------------------*/
3088 /*==========================================================================*/
3089 /* LUTs */
3090 /*==========================================================================*/
3096 tCIRC CiLUTcount(
3098  tCIp cip,
3099  tCIU32 *nBank,
3100  tCIU32 *nLane
3101  ); /* kCIEnoErr
3102  kCIEbadToken
3103  kCIEnullArg
3104  */
3105 /*--------------------------------------------------------------------------*/
3107 tCIRC CiLUTsize(
3108  tCIp cip,
3109  tCIU32 bank,
3110  tCIU32 lane,
3111  tCIU32 *size,
3112  tCIU32 *width
3113  ); /* kCIEnoErr
3114  kCIEbadToken
3115  kCIEnullArg
3116  kCIErangeErr
3117  */
3118 /*--------------------------------------------------------------------------*/
3120 tCIRC CiLUTwrite(
3121  tCIp cip,
3122  tCIU32 bank,
3123  tCIU32 lane,
3124  tCIU32 count,
3125  tCIU32 *values
3126  ); /* kCIEnoErr
3127  kCIEbadToken
3128  kCIErangeErr
3129  kCIEnullArg
3130  kCIEnotInitialized
3131  kCIEnoWrPermission
3132  */
3133 /*--------------------------------------------------------------------------*/
3135 tCIRC CiLUTread(
3136  tCIp cip,
3137  tCIU32 bank,
3138  tCIU32 lane,
3139  tCIU32 count,
3140  tCIU32 *values
3141  ); /* kCIEnoErr
3142  kCIEbadToken
3143  kCIErangeErr
3144  kCIEnullArg
3145  kCIEnotInitialized
3146  */
3148 /*==========================================================================*/
3149 /* Quad Table Functions */
3150 /*==========================================================================*/
3151 /*
3152 ** The linux BitFlow interface does not support access to the quad tables.
3153 */
3154 /*==========================================================================*/
3155 /* Miscellaneous */
3156 /*==========================================================================*/
3175 typedef void (*tCIstrDisplayF)(char *fmt, ...);
3176 
3178 tCIRC CiSetDebug(
3179  tCIp cip,
3180  int drvDebug,
3181  tCIstrDisplayF dispFunc
3182  ); /* kCIEnoErr
3183  kCIEbadToken
3184  kCIEnoWrPermission
3185  */
3186 /*--------------------------------------------------------------------------*/
3189  tCIp cip,
3190  tCIstrDisplayF dispFunc
3191  ); /* kCIEnoErr
3192  kCIEbadToken
3193  */
3194 /*--------------------------------------------------------------------------*/
3197  tCIp cip,
3198  tCIU32 level,
3199  char *str
3200  ); /* kCIEnoErr
3201  kCIEbadToken
3202  kCIEnullArg
3203  */
3204 /*--------------------------------------------------------------------------*/
3207  tCIp cip,
3208  char *str
3209  ); /* kCIEnoErr
3210  kCIEbadToken
3211  kCIEnullArg
3212  kCIEnotSupported
3213  kCIEnotMaster
3214  */
3215 /*--------------------------------------------------------------------------*/
3218  tCIp cip,
3219  char *str
3220  ); /* kCIEnoErr
3221  kCIEbadToken
3222  kCIEnullArg
3223  kCIEnotSupported
3224  kCIEnotMaster
3225  */
3226 /*--------------------------------------------------------------------------*/
3229  tCIp cip,
3230  char *fName
3231  ); /* kCIEnoErr
3232  kCIEbadToken
3233  kCIEnullArg
3234  kCIEnotSupported
3235  kCIEnotMaster
3236  kCIEfileError
3237  kCIEfailureError
3238  */
3239 /*--------------------------------------------------------------------------*/
3241 
3248  tCIU32 devNdx,
3249  tCIU32 hROIoffset,
3250  tCIU32 hROIsize,
3251  tCIU32 vROIoffset,
3252  tCIU32 vROIsize
3253  ); /* kCIEnoErr
3254  kCIEfailureErr
3255  kCIEuserDMAerr
3256  */
3257 /*--------------------------------------------------------------------------*/
3259 
3266  tCIU32 devNdx,
3267  tCIU32 nBuff,
3268  tCIU32 hROIoffset,
3269  tCIU32 hROIsize,
3270  tCIU32 vROIoffset,
3271  tCIU32 vROIsize
3272  ); /* kCIEnoErr
3273  kCIEfailureErr
3274  kCIEuserDMAerr
3275  */
3276 /*--------------------------------------------------------------------------*/
3278 tCIRC CiVerifyCIP(tCIp cip);
3279 /*--------------------------------------------------------------------------*/
3281 tCISTRZ CiErrStr(tCIRC circ);
3282 /*--------------------------------------------------------------------------*/
3284 tCISTRZ CiFmtStr(int fmtCode);
3285 /*--------------------------------------------------------------------------*/
3286 typedef union {
3288 
3289  struct {
3290  /*
3291  ** R64 version
3292  */
3293  unsigned int aqStat : 2;
3294  unsigned int fActive : 1;
3295  unsigned int fCount : 3;
3296  unsigned int lCount : 2;
3297  unsigned int pCount : 2;
3298  unsigned int fenCount : 2;
3299  unsigned int vCount : 17;
3300  unsigned int hCount : 2;
3301  unsigned int _unused : 1;
3302  } db;
3303 
3304  struct {
3305  /*
3306  ** Cyton/Aon version.
3307  */
3308  unsigned int rcvCnt : 4;
3309  unsigned int errCnt : 4;
3310  unsigned int dropCnt : 4;
3311  unsigned int gntCnt : 4;
3312  unsigned int unexp : 8;
3313  unsigned int speed : 3;
3314  unsigned int encd : 1;
3315  unsigned int encq : 1;
3316  unsigned int encb : 1;
3317  unsigned int enca : 1;
3318  unsigned int trig : 1;
3319  } dbCtn;
3320 
3321  struct {
3322  /*
3323  ** Axion version.
3324  */
3325  unsigned int fixed : 13;
3326  unsigned int tmode : 1;
3327  unsigned int o16 : 1;
3328  unsigned int fval : 1;
3329  unsigned int dval : 1;
3330  unsigned int chan : 3;
3331  unsigned int cmode : 3;
3332  unsigned int clClk0 : 1;
3333  unsigned int clClk1 : 1;
3334  unsigned int clClk2 : 1;
3335  unsigned int clClk3 : 1;
3336  unsigned int encd : 1;
3337  unsigned int encq : 1;
3338  unsigned int encb : 1;
3339  unsigned int enca : 1;
3340  unsigned int trig : 1;
3341  } dbAxn;
3342 
3343  } tCIdiagStruct;
3344 
3346 tCIRC CiGetDiag(
3347  tCIp cip,
3348  tCIdiagStruct *ds
3349  ); /* kCIEnoErr
3350  kCIEbadToken
3351  kCIEnullArg
3352  */
3353 /*--------------------------------------------------------------------------*/
3354 typedef enum {
3356  } tCIszCTABenum;
3357 
3360  tCIp cip,
3361  tCIU32 horizVERT,
3362  tCIU32 *data
3363  ); /* kCIEnoErr
3364  kCIEbadToken
3365  kCIEnullArg
3366  kCIEnotInitialized
3367  kCIEfailureErr
3368  */
3369 /*--------------------------------------------------------------------------*/
3372  tCIp cip,
3373  tCIU32 horizVERT,
3374  tCIU32 *data
3375  ); /* kCIEnoErr
3376  kCIEbadToken
3377  kCIEnullArg
3378  kCIEnotInitialized
3379  kCIEnoWrPermission
3380  kCIEfailureErr
3381  */
3383 /*==========================================================================*/
3384 #ifdef __cplusplus
3385 }
3386 #endif
3387 /*==========================================================================*/
3388 #endif /* _BFciLib_h_ */
3389 /*==========================================================================*/
3390 /*
3391  $Log: BFciLib.h,v $
3392  Revision 1.94 2022/02/17 00:55:18 steve
3393  Add kCIVTT_CLclockDetected and kCIVTT_CameraValid.
3394 
3395  CiSysFindLiveVFGs finalized.
3396 
3397  Revision 1.93 2022/02/11 00:10:37 steve
3398  Add kCIVTT_traitCount.
3399 
3400  kCIcamFile_loadedToDrvr = 0x1000.
3401 
3402  Revision 1.92 2022/02/09 01:15:09 steve
3403  Add CiVFGtest and related methods.
3404 
3405  LDB ERR: messages now use ELDB.
3406 
3407  Revision 1.91 2022/02/04 21:23:49 steve
3408  Add kCIcamFile_loadedToDrvr
3409 
3410  Index kCIcamFile_loadedToDrvr and kCIcamFile_appliedToVFG from 1000
3411 
3412  Revision 1.90 2022/02/04 20:46:07 steve
3413  Add kCIEcfgNotLoaded and kCIEcfgNotApplied.
3414 
3415  Add kCIcamFile_appliedToVFG.
3416 
3417  Revision 1.89 2022/02/03 00:42:02 steve
3418  Add CiVFGloadConfig, CiVFGloadCameraFile and CiVFGapplyCurrent.
3419 
3420  Revision 1.88 2022/01/28 00:36:12 steve
3421  Pass tsAry by byte size, not array length.
3422 
3423  Revision 1.87 2022/01/14 23:47:30 steve
3424  Add CiTSsequenceGet.
3425 
3426  Revision 1.86 2022/01/14 00:12:54 steve
3427  Add CiTSsequenceSet.
3428 
3429  Revision 1.85 2020/11/12 23:23:19 steve
3430  Implement optional BFML feature, requires_tlparamslocked. Add kCIcamFile_requiresTLParamsLocked.
3431 
3432  Revision 1.84 2020/10/02 21:15:56 steve
3433  *** empty log message ***
3434 
3435  Revision 1.83 2020/09/22 22:16:52 steve
3436  Clarify CiReg and CiField index function.
3437 
3438  Revision 1.82 2020/09/02 23:43:39 steve
3439  Add kCIcamFile_bitDepthOption.
3440 
3441  Revision 1.81 2020/06/24 23:09:24 steve
3442  Add CiRegName for Gn2 wide name support, and CiRegGetFields to allow dynamic query of CON register components.
3443 
3444  Revision 1.80 2020/04/25 00:03:03 steve
3445  Karbon CXP is deprecated.
3446 
3447  Revision 1.79 2020/04/22 23:55:43 steve
3448  Disable KCXP support. CXP 2.0 event packet read and parse CXP1 AfterConInit should always prefer master link; correctly placed CXP version negotiate. findLinkSpeed now matches Windows behavior. Additional Claxon integration.
3449 
3450  Revision 1.78 2020/04/01 23:25:38 steve
3451  maxCXPversion, CiCXPgetHostTime, and CiCXPgetLastHeartbeat.
3452 
3453  Revision 1.77 2020/03/06 00:15:55 steve
3454  Initial Claxon CXP support. Needs work.
3455 
3456  Revision 1.76 2019/11/28 00:14:10 steve
3457  Added kCIcamFile_isDefault inquire flag.
3458 
3459  Revision 1.75 2019/11/11 19:15:07 steve
3460  Added kCIcamFile_acqOffWhenClosing inquire parameter.
3461 
3462  Revision 1.74 2019/10/16 17:51:00 steve
3463  Added format and acquisition timeout inquire parameters.
3464 
3465  Revision 1.73 2019/04/29 21:32:30 steve
3466  Elaborate CiAqStartHiFrameRate description.
3467 
3468  Revision 1.72 2019/04/26 23:59:53 steve
3469  Initial implementation of High Frame Rate Polling
3470 
3471  Revision 1.71 2019/04/06 00:05:04 steve
3472  Implemented new BFciLib method CiCamFileInquire. This method allows for several camera file parameters to be queried immediately after CiVFGinitialize, so that the user need not configure a temporary buffer to extract those values. Furthermore, this method will always return the value taken from the camera file, rather than returning any custom ROI value.
3473 
3474  CiCamFileInquire may be accessed in CIcmdln as the "-m 49" command.
3475 
3476  Revision 1.70 2018/02/24 23:16:43 steve
3477  Fix 32b disk fillup
3478 
3479  Revision 1.69 2017/12/12 11:05:50 steve
3480  Fixes for axn+vivid
3481 
3482  Revision 1.68 2017/12/04 21:33:34 steve
3483  Much gn2 isr work; diag work; base options
3484 
3485  Revision 1.67 2017/10/30 02:50:29 steve
3486  Now w/down_trig_rcvd and fixes
3487 
3488  Revision 1.66 2017/09/29 09:13:59 steve
3489  Now dump all camf
3490 
3491  Revision 1.65 2017/05/31 14:10:38 steve
3492  before first release test
3493 
3494  Revision 1.64 2016/07/11 20:02:54 steve
3495  Gn2 xx-2Y/2YE, GPUD, DGMA
3496 
3497  Revision 1.63 2016/03/06 23:16:06 steve
3498  Support CXP_usualInit and support Axion
3499 
3500  Revision 1.62 2015/06/23 17:11:02 steve
3501  Ready for ndif and cxp2
3502 
3503  Revision 1.61 2015-01-24 19:35:51 steve
3504  Almost done
3505 
3506  Revision 1.60 2015-01-15 17:24:38 steve
3507  Cyton available
3508 
3509  Revision 1.59 2014-06-09 10:49:25 steve
3510  Address release test errs
3511 
3512  Revision 1.58 2014-05-29 13:14:14 steve
3513  User lib c++ supporting Neon/Alta/Kbn/KbnCXP
3514 
3515  Revision 1.57 2014-03-15 20:57:26 steve
3516  Reorg for c++, SDK 9.00
3517 
3518  Revision 1.56 2013-03-29 01:39:01 steve
3519  CXP master enable slaves even if fail init
3520 
3521  Revision 1.55 2013-03-18 03:29:31 steve
3522  Tweak test
3523 
3524  Revision 1.54 2013-03-08 20:13:07 steve
3525  Fix array size
3526 
3527  Revision 1.53 2013-03-08 18:58:44 steve
3528  Fix bad counter
3529 
3530  Revision 1.52 2013-03-03 18:58:10 steve
3531  Ready w/CXP
3532 
3533  Revision 1.51 2012-11-20 00:43:13 steve
3534  Fixed CCx_CON issue w/ISR
3535 
3536  Revision 1.50 2012-09-14 14:25:56 steve
3537  CiSetDebugCL(), CON51, fix sscanf(), cust kern dir
3538 
3539  Revision 1.49 2012-06-01 00:14:19 steve
3540  Final on 8.10
3541 
3542  Revision 1.48 2012-04-27 21:15:31 steve
3543  Fix CONFIG_X86_NOPAT, doc iommu, add CIsimpleSG
3544 
3545  Revision 1.47 2012-04-20 12:49:51 tim
3546  Reformatted and Rearranged comments for Doxygen. tim
3547 
3548  Revision 1.46 2012-02-09 22:01:36 steve
3549  Fix small ROI, ready kernel 3.x, add FORMAT
3550 
3551  Revision 1.45 2011-08-17 12:56:18 steve
3552  Compatible w/2.6.38.8\+; hooks for guidriver
3553 
3554  Revision 1.44 2011-05-20 12:47:44 steve
3555  Consistent serial i/o
3556 
3557  Revision 1.43 2011-05-19 21:56:55 steve
3558  Separated serial write/wait for max i/o speed.
3559 
3560  Revision 1.42 2011-05-16 21:11:15 steve
3561  Faster serial out. Abort wakes all sleepers.
3562 
3563  Revision 1.41 2011-03-30 21:34:45 steve
3564  Changed snapshot to use hardare counter
3565 
3566  Revision 1.40 2011-03-27 16:01:37 steve
3567  Minimize SIP restart time
3568 
3569  Revision 1.39 2011-02-14 04:10:05 steve
3570  Karbon, SIP, DMA fixes
3571 
3572  Revision 1.38 2011-01-03 19:30:24 steve
3573  SIP lines, TSC, bugfix CCn, cb nolog err
3574 
3575  Revision 1.37 2010-11-17 18:42:30 steve
3576  Special return reg not mapped
3577 
3578  Revision 1.36 2010-11-17 14:29:31 steve
3579  First consume buffers
3580 
3581  Revision 1.35 2010-09-05 23:36:47 steve
3582  Now upside-down flags for split buffers
3583 
3584  Revision 1.34 2010-08-27 21:45:06 steve
3585  Final v7 w/customFlags, CIcustomTest1,2, etc
3586 
3587  Revision 1.33 2010-08-10 16:21:47 steve
3588  Now CIcustomTest1, customFlags module param, custom env var
3589 
3590  Revision 1.32 2010-08-04 16:59:49 steve
3591  Now support CLD/CLQ
3592 
3593  Revision 1.31 2010-02-24 21:21:09 steve
3594  v706 candidate w/SIP
3595 
3596  Revision 1.30 2009-07-15 20:20:52 steve
3597  Added CiBuffConfigureSplit(), delays on Kbn flash
3598 
3599  Revision 1.29 2009-06-18 13:37:54 steve
3600  Full ROI, s-g DMA, flush CL, Kbn flash delay
3601 
3602  Revision 1.28 2009-03-19 00:28:54 steve
3603  Added CiResetDelibered. Added demo.
3604 
3605  Revision 1.27 2009-01-29 17:27:12 steve
3606  kernel NULL ptr fix
3607 
3608  Revision 1.26 2009-01-22 11:38:52 steve
3609  User-alloc DMA; full ROI; register fields
3610 
3611  Revision 1.25 2008-12-06 11:47:38 steve
3612  Basic user allocated DMA.
3613 
3614  Revision 1.24 2008-11-15 23:20:26 steve
3615  Now have (primitive) ROI
3616 
3617  Revision 1.23 2008-11-14 18:36:58 steve
3618  Alta in; STATUS now STATIC/DYNAMIC; DRIVER_LOG
3619 
3620  Revision 1.22 2008-10-31 13:52:26 steve
3621  Karbon ready for test
3622 
3623  Revision 1.21 2008-10-17 04:40:30 steve
3624  Fix typos.
3625 
3626  Revision 1.20 2008-10-16 02:50:24 steve
3627  Beta2: now have .so library.
3628 
3629  Revision 1.19 2008-10-08 18:13:40 steve
3630  Release test ready.
3631 
3632  Revision 1.18 2008-09-29 13:47:16 steve
3633  Stub out unimplemented functions.
3634 
3635  Revision 1.17 2008-09-29 06:41:12 steve
3636  CIexample now exists. Version pumped.
3637 
3638  Revision 1.16 2008-09-17 18:00:54 steve
3639  Change serial i/o parity specification (now works)
3640 
3641  Revision 1.15 2008-09-15 04:14:57 steve
3642  CameraLink test in CIcmdln now available.
3643 
3644  Revision 1.14 2008-09-15 03:13:24 steve
3645  Now report TrigMode
3646 
3647  Revision 1.13 2008-09-15 03:01:33 steve
3648  Subset of trigger modes now available.
3649 
3650  Revision 1.12 2008-09-14 05:43:19 steve
3651  Now have CiCLinit() and CiCLloopback()
3652 
3653  Revision 1.11 2008-09-13 14:51:45 steve
3654  We have serial port locking
3655 
3656  Revision 1.10 2008-09-13 13:59:12 steve
3657  DESC_SET lock and GET_SERIAL_DATA added
3658 
3659  Revision 1.9 2008-09-12 19:32:48 steve
3660  UART register access available
3661 
3662  Revision 1.8 2008-09-11 04:25:27 steve
3663  CiDrvrBuffConfigure() is explicit
3664 
3665  Revision 1.7 2008-09-10 00:50:43 steve
3666  Now have Aq wait/get frame functions
3667 
3668  Revision 1.6 2008-09-04 18:33:10 steve
3669  Added CiGetDiag() and more AqStart work.
3670 
3671  Revision 1.5 2008-09-04 12:12:09 steve
3672  No limit on max BitFlow devices installed
3673 
3674  Revision 1.4 2008-09-03 13:43:14 steve
3675  Acquisition state working
3676 
3677  Revision 1.3 2008-08-31 16:02:27 steve
3678  Acquistion start/stop/abort logic in
3679 
3680  Revision 1.2 2008-08-18 23:01:49 steve
3681  First driver state management
3682 
3683  Revision 1.1.1.1 2008-08-28 14:59:55 steve
3684  Linux driver under CVS
3685 
3686 */
kCIEbadFileFormat
@ kCIEbadFileFormat
bad file format
Definition: BFciLib.h:116
kCIsigGn2encA
@ kCIsigGn2encA
Gn2 encoder A interrupt.
Definition: BFciLib.h:1013
kCIEinvalidArg
@ kCIEinvalidArg
arg not valid for frame grabber
Definition: BFciLib.h:107
CiPollConfigure
short int CiPollConfigure(tCIU32 desired)
Return events field of pollfd.
tCITSentry::ct3state
tCIU32 ct3state
State of CT3 (0 or 1) for this segment.
Definition: BFciLib.h:1940
tCIdiagStruct::encb
unsigned int encb
RD_ENCB_SELECTED.
Definition: BFciLib.h:3316
kCIBPP_formatterRGBSwap
@ kCIBPP_formatterRGBSwap
Swap R&B.
Definition: BFciLib.h:772
kCIVTT_Kbn2
@ kCIVTT_Kbn2
VFG is Karbon CL 2.
Definition: BFciLib.h:688
tCISTRZ
char * tCISTRZ
null-terminated string
Definition: BFciLib.h:55
kBFTSaux
@ kBFTSaux
The auxiliary timing sequencer.
Definition: BFciLib.h:2000
tCISGentry::blockSize
tCIU64 blockSize
size of this entry
Definition: BFciLib.h:67
kCICCCCXP_1
@ kCICCCCXP_1
1
Definition: BFciLib.h:1316
kCIbsUnassigned
@ kCIbsUnassigned
never released (owned by user)
Definition: BFciLib.h:2515
CiResetDelivered
tCIRC CiResetDelivered(tCIp cip, tCIU32 frameID)
Restart delivery from here.
tCItrigConfig::encEnB
unsigned int encEnB
enable selected encoder B
Definition: BFciLib.h:1863
CiAqStop
tCIRC CiAqStop(tCIp cip)
Terminate continous DMA after next EOF.
kCImaxEventPayload
@ kCImaxEventPayload
maximum event packet data size in 32-bit words.
Definition: BFciLib.h:2989
kCIPEintOVSTEP
@ kCIPEintOVSTEP
OVSTEP interrupt.
Definition: BFciLib.h:820
CiAqStart
tCIRC CiAqStart(tCIp cip, tCIU32 nFrames)
Start filling first frame buffer.
kCIPEintPollAll
@ kCIPEintPollAll
Definition: BFciLib.h:828
CiAqAbort
tCIRC CiAqAbort(tCIp cip)
Terminate any DMA immediately.
kCIsigCXPstrmNotEnoughDat
@ kCIsigCXPstrmNotEnoughDat
CXP not implemented (reserved)
Definition: BFciLib.h:1038
tCIvfgStateEntry::which
tCIU32 which
Driver index of VFG.
Definition: BFciLib.h:315
CiVFGloadCameraFile
tCIRC CiVFGloadCameraFile(tCIp cip, tCISTRZ camFN)
Load camera file data into the VFG driver data store.
tCIbufferModeEnums
tCIbufferModeEnums
Definition: BFciLib.h:2469
kCIRDCXP_ENCB_SELECTED
@ kCIRDCXP_ENCB_SELECTED
Definition: BFciLib.h:1431
kCIsigCXPstrmOverflow
@ kCIsigCXPstrmOverflow
CXP stream packet buffer overflow.
Definition: BFciLib.h:1041
tCISGentry
Definition: BFciLib.h:65
kCIVTT_KbnBase
@ kCIVTT_KbnBase
VFG is Karbon CL base configuration.
Definition: BFciLib.h:690
tCiCXPeventPacket::numWords
tCIU32 numWords
message data size in 32-bit words
Definition: BFciLib.h:2997
CiCamFileInquire
tCIRC CiCamFileInquire(tCIp cip, tCIU32 param, tCIU32 *value)
Query camera file parameters initialized on the VFG.
kCISQenumQueued
@ kCISQenumQueued
count events queued presently
Definition: BFciLib.h:1076
CiVFGapplyCurrent
tCIRC CiVFGapplyCurrent(tCIp cip, tCIU32 initFlags)
Initialize a VFG from its driver data store.
kCIVTT_NeonBase
@ kCIVTT_NeonBase
VFG is Neon CL base configuration.
Definition: BFciLib.h:693
kCIsigCTAB
@ kCIsigCTAB
CTAB interrupt.
Definition: BFciLib.h:998
CiVFGloadConfig
tCIRC CiVFGloadConfig(tCIp cip, tCISTRZ cfgFN)
Load configuration data into the VFG driver data store.
kCIGPOC_CT0
@ kCIGPOC_CT0
CT0 from CTAB.
Definition: BFciLib.h:1255
tCiCXPeventMessage::nameSpace
tCIU32 nameSpace
event name space (see tCiCXPeventNamespaceEnum)
Definition: BFciLib.h:3026
tCIboardQueryEnums
tCIboardQueryEnums
Definition: BFciLib.h:440
kCIVTT_Master
@ kCIVTT_Master
VFG is master.
Definition: BFciLib.h:697
tCIvfgStateEntry::devNdx
tCIU32 devNdx
/dev/video<Ndx> of entry
Definition: BFciLib.h:316
tCIdiagStruct::_unused
unsigned int _unused
Definition: BFciLib.h:3301
kBFTSmain
@ kBFTSmain
The main timing sequencer.
Definition: BFciLib.h:1999
kBFTShigh
@ kBFTShigh
Trigger high.
Definition: BFciLib.h:2028
kCIEexclusiveAlready
@ kCIEexclusiveAlready
board already open w/write
Definition: BFciLib.h:111
tCiCXPeventMessage
Definition: BFciLib.h:3024
kCIGPOUT3
@ kCIGPOUT3
Definition: BFciLib.h:1344
kCIintCountTRIG
@ kCIintCountTRIG
TRIG ints not reset at AqStart.
Definition: BFciLib.h:921
kCIEresourceBusy
@ kCIEresourceBusy
resource in use
Definition: BFciLib.h:137
CiRegPeek
tCIRC CiRegPeek(tCIp cip, tCIU32 ndx, tCIU32 *result)
< Read a 32b register.
kBFTSTsol
@ kBFTSTsol
Start-of-Line.
Definition: BFciLib.h:2013
kCIRDCXP_TRIG_SELECTED
@ kCIRDCXP_TRIG_SELECTED
Definition: BFciLib.h:1429
CiMapFrameBuffers
tCIRC CiMapFrameBuffers(tCIp cip, tCIU32 nzWrite, tCIU32 *nPtrs, tCIU8 ***uPtrs)
Returns user ptrs to frame buff(s).
tCIdiagStruct::fCount
unsigned int fCount
3b counter on vert aq window
Definition: BFciLib.h:3295
kCIsigCXPctlAckVerErr
@ kCIsigCXPctlAckVerErr
CXP control packet ack version mismatch.
Definition: BFciLib.h:1025
tCIdiagStruct::vCount
unsigned int vCount
CTAB vCount.
Definition: BFciLib.h:3299
tCIdiagStruct::dropCnt
unsigned int dropCnt
PKT_DROP_CNT.
Definition: BFciLib.h:3310
CiSysVFGinfo
tCIRC CiSysVFGinfo(tCIU32 which, tCIU32 *ifaceType, tCIU32 *switches, tCIU32 *devNdx, tCISTRZ busName)
Identify a single VFG.
kCIEnoErr
@ kCIEnoErr
no error
Definition: BFciLib.h:100
kCICT_NeonDIF
@ kCICT_NeonDIF
NeonDIF frame grabber.
Definition: BFciLib.h:271
CiPollResult
tCIU32 CiPollResult(short int revents)
Return mask of kCIPollEventEnums.
CiGetDiag
tCIRC CiGetDiag(tCIp cip, tCIdiagStruct *ds)
Retrieve diagnostic information.
kCIVTT_HasSerialPort
@ kCIVTT_HasSerialPort
VFG has a serial port.
Definition: BFciLib.h:722
CiCLwriteBytes
tCIRC CiCLwriteBytes(tCIp cip, tCIU32 buffSize, tCIU8 *buffer)
Write bytes to CL interface.
CiRegGetCount
tCIRC CiRegGetCount(tCIp cip, tCIU32 *nReg)
Number of 32b registers.
kCIVTT_Ctn
@ kCIVTT_Ctn
VFG is Cyton CXP.
Definition: BFciLib.h:702
CiFieldPeek
tCIRC CiFieldPeek(tCIp cip, tCIU32 ndx, tCIU32 *result)
Read a CON register field.
kCIintCountDTR
@ kCIintCountDTR
Definition: BFciLib.h:946
kCIVTT_NeonD
@ kCIVTT_NeonD
VFG is Neon CL Dual.
Definition: BFciLib.h:694
tCItypedData::dataID
tCIU32 dataID
not used at present
Definition: BFciLib.h:91
kCICCKCXP_CT1
@ kCICCKCXP_CT1
CT1 from CTAB.
Definition: BFciLib.h:1302
kCIEbadCRC
@ kCIEbadCRC
file has bad CRC
Definition: BFciLib.h:117
kCIAQScontinuousInProcess
@ kCIAQScontinuousInProcess
after Start w/0 nFrames
Definition: BFciLib.h:2189
kCIsigGn2bmError
@ kCIsigGn2bmError
Gn2 buffer manager error interrupt.
Definition: BFciLib.h:1010
CiLUTread
tCIRC CiLUTread(tCIp cip, tCIU32 bank, tCIU32 lane, tCIU32 count, tCIU32 *values)
Examine a LUT.
kCIPEintTRIG
@ kCIPEintTRIG
TRIG interrupt.
Definition: BFciLib.h:814
kCICXPEnamespaceReserved
@ kCICXPEnamespaceReserved
Reserved event message namespace.
Definition: BFciLib.h:3061
tCIsignalEventData::timestamp
tCIU64 timestamp
TSC or Gn2 timestamp of the signal event.
Definition: BFciLib.h:1145
CiReadSerialNo
tCIRC CiReadSerialNo(tCIp cip, char *str)
Get the board serial number for this VFG (if it exists).
CiGPOUTset
tCIRC CiGPOUTset(tCIp cip, tCIU32 mask, tCIU32 value)
Set the GPOUT values.
kCItrigPerFrame
@ kCItrigPerFrame
trigger assert starts frame
Definition: BFciLib.h:1915
kCIGPOUT6
@ kCIGPOUT6
Definition: BFciLib.h:1347
kCIVTT_Gn2
@ kCIVTT_Gn2
VFG is Gen 2.
Definition: BFciLib.h:701
CiTrigConfigGet
tCIRC CiTrigConfigGet(tCIp cip, tCItrigConfig *vCfg, tCItrigConfig *hCfg, tCIU32 *mode)
Retrieve current trigger setup.
kCIbsUnknown
@ kCIbsUnknown
Definition: BFciLib.h:2528
tCITSentry::period
tCIDOUBLE period
Time (in milliseconds) for this segment.
Definition: BFciLib.h:1936
tCiCXPeventPacket::masterHostConnectionID
tCIU32 masterHostConnectionID
connection ID on which the event packet was sent
Definition: BFciLib.h:2993
kCIEnoDataErr
@ kCIEnoDataErr
no such data
Definition: BFciLib.h:125
kCIVTT_Kbn4
@ kCIVTT_Kbn4
VFG is Karbon CL 4.
Definition: BFciLib.h:689
kCIBQ_firmwareLoaded
@ kCIBQ_firmwareLoaded
Definition: BFciLib.h:445
tCItimingSequencerEnum
tCItimingSequencerEnum
Timing Sequencer selection.
Definition: BFciLib.h:1998
kCIVTT_Clx
@ kCIVTT_Clx
VFG is Claxon CXP.
Definition: BFciLib.h:717
CiCLinfo
tCIRC CiCLinfo(tCIp cip, tCIU32 *dataBits, tCIU32 *parity, tCIU32 *stopBits, tCIU32 *baud)
Get settings of CL serial port.
tCItrigConfig::encSelA
unsigned int encSelA
(see documentation)
Definition: BFciLib.h:1858
CiCLreadBytes
tCIRC CiCLreadBytes(tCIp cip, tCIU32 buffSize, tCIU32 *bytesRead, tCIU8 *buffer)
Read bytes from buffer.
tCIdiagStruct::pCount
unsigned int pCount
2b counter on PCLK
Definition: BFciLib.h:3297
tCiCXPeventPacket
Definition: BFciLib.h:2992
kCItrigOneShot
@ kCItrigOneShot
trig asserts starts frame
Definition: BFciLib.h:1920
CiGetMostRecentFrame
tCIRC CiGetMostRecentFrame(tCIp cip, tCIU32 *frameID, tCIU8 **frameData)
Return most recently acquired.
tCICCCONenums
tCICCCONenums
Definition: BFciLib.h:1276
kCIVTT_Axn1xB
@ kCIVTT_Axn1xB
VFG is Axion CL 1xB.
Definition: BFciLib.h:710
kCIlibMaxDevScan
@ kCIlibMaxDevScan
Definition: BFciLib.h:215
kCIszCTAB
@ kCIszCTAB
length of compressed CTAB
Definition: BFciLib.h:3355
tCIextraFrameInfo::linesLastFrame
tCIU32 linesLastFrame
mostly for SIP
Definition: BFciLib.h:2344
kCIEaqAbortedErr
@ kCIEaqAbortedErr
acquisition was aborted
Definition: BFciLib.h:136
kBF_tCIU32_pair
@ kBF_tCIU32_pair
two 32b values
Definition: BFciLib.h:78
CiGetExtraFrameInfo
tCIRC CiGetExtraFrameInfo(tCIp cip, tCIU32 recSize, tCIXBIP storeHere)
Retrieve non-pixel information.
kCIVTT_AonCXP1
@ kCIVTT_AonCXP1
VFG is Aon CXP 1.
Definition: BFciLib.h:715
tCIdiagStruct::fActive
unsigned int fActive
camera within vert aq window
Definition: BFciLib.h:3294
kCICT_AxnCL
@ kCICT_AxnCL
Axion CL frame grabber.
Definition: BFciLib.h:276
kCICCCCXP_NTGx
@ kCICCCCXP_NTGx
VFGx_TS.
Definition: BFciLib.h:1324
tCIU16
unsigned short tCIU16
CTABs mostly.
Definition: BFciLib.h:52
kCIPEintSERIAL
@ kCIPEintSERIAL
SERIAL interrupt.
Definition: BFciLib.h:815
tCIboardOpenEnums
tCIboardOpenEnums
Definition: BFciLib.h:368
tCItrigConfig::trigPol
unsigned int trigPol
0 => assert is rising edge
Definition: BFciLib.h:1832
tCItrigConfig::_unsused
unsigned int _unsused
Definition: BFciLib.h:1834
kCIRD_ENC_OPTO
@ kCIRD_ENC_OPTO
Definition: BFciLib.h:1393
kCIcamFile_vROIoffset
@ kCIcamFile_vROIoffset
vertical ROI offset
Definition: BFciLib.h:752
tCIU8
unsigned char tCIU8
data pointer
Definition: BFciLib.h:51
tCIvfgStateEntry::isCL
tCIU8 isCL
True if the VFG is Camera Link.
Definition: BFciLib.h:321
kCIcamFile_acqTimeout
@ kCIcamFile_acqTimeout
acquisition timeout in ms
Definition: BFciLib.h:755
kBFTSTtrigSel
@ kBFTSTtrigSel
Trigger Select.
Definition: BFciLib.h:2005
tCIstrDisplayF
void(* tCIstrDisplayF)(char *fmt,...)
Definition: BFciLib.h:3175
tCIdiagStruct::chan
unsigned int chan
CL_CHAN_EN.
Definition: BFciLib.h:3330
tCISGP
struct tCISGentry * tCISGP
kCICT_Karbon
@ kCICT_Karbon
Karbon frame grabber.
Definition: BFciLib.h:272
tCiCXPheartbeat::packetHostTime
tCIU64 packetHostTime
packet timestamp of host
Definition: BFciLib.h:2961
tCIdiagStruct::fixed
unsigned int fixed
TAP_FIXED_VAL (13 of 16)
Definition: BFciLib.h:3325
tCIdataTypeEnums
tCIdataTypeEnums
Definition: BFciLib.h:73
tCITSentry::waitForTrig
tCIU32 waitForTrig
Trigger condition to execute period (tCITSwaitForTriggerTypeEnum)
Definition: BFciLib.h:1941
kCIEbufferUnderrunErr
@ kCIEbufferUnderrunErr
not enough released buffers
Definition: BFciLib.h:131
kCIRD_TRIG_DIFF
@ kCIRD_TRIG_DIFF
Definition: BFciLib.h:1388
kCIGPOC_CLOCK
@ kCIGPOC_CLOCK
CLOCK; freq from CFREQ in CON1.
Definition: BFciLib.h:1259
kCIEplatformFail
@ kCIEplatformFail
no DirectGMA/GPUDirect support
Definition: BFciLib.h:144
kCIsigGn2encB
@ kCIsigGn2encB
Gn2 encoder B interrupt.
Definition: BFciLib.h:1014
kCIVTT_Axn2xE
@ kCIVTT_Axn2xE
VFG is Axion CL 2xE.
Definition: BFciLib.h:709
kCIsigCXPctlRspFIFOovf
@ kCIsigCXPctlRspFIFOovf
CXP detected overflow in control response FIFO.
Definition: BFciLib.h:1029
tCItypedData::descriptor
tCISTRZ descriptor
pointer to description of value
Definition: BFciLib.h:92
tCIU64
unsigned long long tCIU64
really big sizes
Definition: BFciLib.h:54
kCIVTT_KbnFull
@ kCIVTT_KbnFull
VFG is Karbon CL full configuration.
Definition: BFciLib.h:691
tCIusrCustomFlagsEnum
tCIusrCustomFlagsEnum
Definition: BFciLib.h:175
kCIGPOUT11
@ kCIGPOUT11
Definition: BFciLib.h:1355
kCIintCountQUAD
@ kCIintCountQUAD
CXP: QUAD is DOWN_TRIG_RCVD.
Definition: BFciLib.h:923
CiGetBufferID
tCIRC CiGetBufferID(tCIp cip, tCIU32 frameID, tCIU32 *buffID)
Get the buffer ID of a frame.
tCiCXPheartbeat::packetConnectionID
tCIU32 packetConnectionID
packet connection ID
Definition: BFciLib.h:2962
tCIvfgStateEntry::isSynthetic
tCIU8 isSynthetic
True if the VFG has a synthetic camera file attached.
Definition: BFciLib.h:322
kCIsigCXPctlReqFIFOovf
@ kCIsigCXPctlReqFIFOovf
CXP detected overflow in control request FIFO.
Definition: BFciLib.h:1030
kCItrigFreeRun
@ kCItrigFreeRun
board is slave to camera
Definition: BFciLib.h:1911
kCIPEintError
@ kCIPEintError
Definition: BFciLib.h:834
CiVFGtest
tCIU8 CiVFGtest(tCIp cip, tCIU32 trait, tCIU32 opt)
Test the VFG to determine whether or not it matches the trait.
kCIRD_swEncoder
@ kCIRD_swEncoder
Definition: BFciLib.h:1399
kCIintCountEOF
@ kCIintCountEOF
Definition: BFciLib.h:925
kCIBO_readOnly
@ kCIBO_readOnly
cannot modify board state
Definition: BFciLib.h:369
CiCLloopback
tCIRC CiCLloopback(tCIp cip, tCIU32 nzSet)
Set/clear CameraLink loopback.
tCIcamTypeEnums
tCIcamTypeEnums
Definition: BFciLib.h:269
kBFallPagesZero
@ kBFallPagesZero
Definition: BFciLib.h:178
CiVFGinquire2
tCIRC CiVFGinquire2(tCIp cip, tCITDP *cfgFN, tCITDP *config, tCITDP *cameraFN, tCITDP *camera, tCITDP *firmFN, tCITDP *firmware, tCITDP *serial, tCITDP *cxpLink, tCITDP *spare, char **fmtPtr)
kCICCCCXP_TS
@ kCICCCCXP_TS
VFGx_TRIG_SEL.
Definition: BFciLib.h:1321
CiCXPwriteData
tCIRC CiCXPwriteData(tCIp cip, tCIU32 link, tCIU32 address, tCIU8 *data, tCIU32 byteCount)
Write to CXP data space.
kCIAQSinvalidState
@ kCIAQSinvalidState
Definition: BFciLib.h:2183
kCIsigCXPoverCurrent
@ kCIsigCXPoverCurrent
CXP over current detected.
Definition: BFciLib.h:1023
kCIBQ_dmaIsAborted
@ kCIBQ_dmaIsAborted
Definition: BFciLib.h:448
kCIsigGn2zStart
@ kCIsigGn2zStart
Gn2 start-of-volume interrupt.
Definition: BFciLib.h:1017
kCIintCountSERIAL
@ kCIintCountSERIAL
Definition: BFciLib.h:922
kCIsigCXPioackUnknownType
@ kCIsigCXPioackUnknownType
CXP I/O acknowledgement has unknown type.
Definition: BFciLib.h:1033
tCImaxDevEnum
tCImaxDevEnum
Definition: BFciLib.h:215
kCIBPP_formatterNormal
@ kCIBPP_formatterNormal
No special processing.
Definition: BFciLib.h:771
tCIbufferStatusEnums
tCIbufferStatusEnums
Definition: BFciLib.h:2511
CiUserBuffConfigureSG
tCIRC CiUserBuffConfigureSG(tCIp cip, tCIU32 nSGentry, tCISGP sgList, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
Scatter-gather DMA resources.
CiSetDebugCL
tCIRC CiSetDebugCL(tCIp cip, tCIstrDisplayF dispFunc)
Allow debug display of all CameraLink init, term, and i/o.
tCIdiagStruct::encd
unsigned int encd
RD_ENCDIV_SELECTED.
Definition: BFciLib.h:3314
kCIRDCXP_ENCA_SELECTED
@ kCIRDCXP_ENCA_SELECTED
Definition: BFciLib.h:1430
tCItrigConfig::trigSel
unsigned int trigSel
00diff/01TTL/10opto/11FEN
Definition: BFciLib.h:1831
CiGetIntCounts
tCIRC CiGetIntCounts(tCIp cip, tCIU32 *ic)
Interrupts since last AqStart.
kCICCKCXP_NTGx
@ kCICCKCXP_NTGx
VFGx_NTG.
Definition: BFciLib.h:1308
kCIcamFile_appliedToVFG
@ kCIcamFile_appliedToVFG
whether or not a camera file has been applied to the VFG
Definition: BFciLib.h:762
kCIPEintDTR
@ kCIPEintDTR
DOWN_TRIG_RCVD)
Definition: BFciLib.h:817
CiGetBufferStatus
tCIRC CiGetBufferStatus(tCIp cip, tCIU32 buffID, tCIU32 *status)
Get the status of a frame buffer.
kBFTSTencASel
@ kBFTSTencASel
Encoder A Select.
Definition: BFciLib.h:2006
tCItrigConfig::trigIntCfg
unsigned int trigIntCfg
00rsrv/01rise/10fall/11bothEdge
Definition: BFciLib.h:1830
kCIEcfgNotApplied
@ kCIEcfgNotApplied
not initialized or config not applied
Definition: BFciLib.h:146
kCICCKCXP_0
@ kCICCKCXP_0
0
Definition: BFciLib.h:1299
kCIEfirstEC
@ kCIEfirstEC
Definition: BFciLib.h:101
kCIRD_TRIG_OPTO
@ kCIRD_TRIG_OPTO
Definition: BFciLib.h:1390
kCIGPOC_CT2
@ kCIGPOC_CT2
CT2 from CTAB.
Definition: BFciLib.h:1257
kCIGPOUT9
@ kCIGPOUT9
Definition: BFciLib.h:1353
kBFTSTencBSel
@ kBFTSTencBSel
Encoder B Select.
Definition: BFciLib.h:2007
tCIdiagStruct::dval
unsigned int dval
CL_USE_DVAL.
Definition: BFciLib.h:3329
kCIPollEventEnums
kCIPollEventEnums
Definition: BFciLib.h:812
kCICCOC_onBoard
@ kCICCOC_onBoard
on-board signal
Definition: BFciLib.h:1285
kCIGPOUT5
@ kCIGPOUT5
Definition: BFciLib.h:1346
kCICT_AonCXP
@ kCICT_AonCXP
Aon CXP frame grabber.
Definition: BFciLib.h:277
tCItypedData::datap
tCIVOIDP datap
pointer to data
Definition: BFciLib.h:93
kCIBQ_startingUp
@ kCIBQ_startingUp
Definition: BFciLib.h:442
tCIRC
int tCIRC
function result code
Definition: BFciLib.h:50
kCIVTT_Axn2xB
@ kCIVTT_Axn2xB
VFG is Axion CL 2xB.
Definition: BFciLib.h:711
kCINinterruptCounters
@ kCINinterruptCounters
size of storage array
Definition: BFciLib.h:937
CiCXPgetHostTime
tCIRC CiCXPgetHostTime(tCIp cip, tCIU32 link, tCIU64 *hostTime)
Retrieve the host time value.
kCIVTT_EncDiv
@ kCIVTT_EncDiv
VFG supports the encoder-divider.
Definition: BFciLib.h:699
kCIEbadToken
@ kCIEbadToken
invalid tCIp
Definition: BFciLib.h:105
tCiCXPeventPacket::camCRC
tCIU32 camCRC
CRC indicated by the camera.
Definition: BFciLib.h:2995
CiConfigROI
tCIRC CiConfigROI(tCIU32 devNdx, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
Attempt to configure for xawtv.
kCICT_Alta
@ kCICT_Alta
Alta frame grabber (deprecated)
Definition: BFciLib.h:273
kCIcircularBuffers
@ kCIcircularBuffers
Definition: BFciLib.h:2470
CiVFGfileDescriptor
tCIRC CiVFGfileDescriptor(tCIp cip, int *fdp)
Return file descriptor for VFG.
kCICCOC_CT2
@ kCICCOC_CT2
CT2 from CTAB.
Definition: BFciLib.h:1284
kCIEversionErr
@ kCIEversionErr
driver/library do not match
Definition: BFciLib.h:121
kCICXPEnamespaceCXP
@ kCICXPEnamespaceCXP
CXP event message.
Definition: BFciLib.h:3059
kCIintCountCXP
@ kCIintCountCXP
Definition: BFciLib.h:927
kCIEinfoAgedOut
@ kCIEinfoAgedOut
bufferID not on history list
Definition: BFciLib.h:132
CiCXPgetLink
tCIRC CiCXPgetLink(tCIp cip, tCIU32 *links)
Retrieve link affinity for VFG.
tCISEDP
struct tCIsignalEventData * tCISEDP
tCIdiagStruct::hCount
unsigned int hCount
CTAB hCount (2 LSB)
Definition: BFciLib.h:3300
tCiCXPheartbeat
Definition: BFciLib.h:2959
tCICXPEP
struct tCiCXPeventPacket * tCICXPEP
kCIGPOC_CT3
@ kCIGPOC_CT3
CT3 from CTAB.
Definition: BFciLib.h:1258
CiGetOpenCount
tCIRC CiGetOpenCount(tCIp cip, tCIU32 *nOpen)
Get count of open file descriptors for this VFG.
tCIextraFrameInfo::CXPyOffset
tCIU32 CXPyOffset
CXP y-offset.
Definition: BFciLib.h:2349
kCIBQ_shuttingDown
@ kCIBQ_shuttingDown
Definition: BFciLib.h:441
CiEncInterruptEnable
tCIRC CiEncInterruptEnable(tCIp cip, tCIU32 zAelseB)
Enable ENCA/B interrupts.
CiConfigROI2
tCIRC CiConfigROI2(tCIU32 devNdx, tCIU32 nBuff, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
Attempt to config for xawtv(v4l2).
tCIsignalEventData
Data struct representing a signal event.
Definition: BFciLib.h:1143
tCIsignalQueueOpEnums
tCIsignalQueueOpEnums
< Signal queue operations
Definition: BFciLib.h:1075
kCIsigSERIAL
@ kCIsigSERIAL
SERIAL interrupt.
Definition: BFciLib.h:996
CiDriverLog
tCIRC CiDriverLog(tCIp cip, tCIU32 level, char *str)
String to system log via driver.
tCIvfgStateEntry::numLinks
tCIU32 numLinks
Total number of links associated with this VFG.
Definition: BFciLib.h:327
CiFieldNameFromNdx
char * CiFieldNameFromNdx(tCIp cip, int ndx)
Return label for enumerate.
kCISQenumDropped
@ kCISQenumDropped
count events dropped
Definition: BFciLib.h:1078
kBFTSTgatedTrig
@ kBFTSTgatedTrig
Gated Trigger.
Definition: BFciLib.h:2009
CiTrigInterruptEnable
tCIRC CiTrigInterruptEnable(tCIp cip)
Enable TRIG interrupts.
kCICCCCXP_CT0
@ kCICCCCXP_CT0
CT0 from TS.
Definition: BFciLib.h:1317
CiTrigInterruptDisable
tCIRC CiTrigInterruptDisable(tCIp cip)
Disable TRIG interrupts.
kCIVTT_R64
@ kCIVTT_R64
VFG belongs to the R64 family.
Definition: BFciLib.h:684
tCITDP
struct tCItypedData * tCITDP
tCIcamFileQueryEnums
tCIcamFileQueryEnums
Definition: BFciLib.h:747
kCIsigCXPtrigAckRcvd
@ kCIsigCXPtrigAckRcvd
CXP trigger acknowledgement received.
Definition: BFciLib.h:1024
kCICCOC_GPIN0
@ kCICCOC_GPIN0
GPIN0.
Definition: BFciLib.h:1287
CiSignalSetup
tCIRC CiSignalSetup(tCIp cip, tCIU32 signal, tCIU32 link, tCISHP *cish)
Create a signal handle.
CiErrStr
tCISTRZ CiErrStr(tCIRC circ)
Text description of error code.
tCIextraFrameInfo::timestamp
tCIU64 timestamp
TSC when EOF interrupt reset.
Definition: BFciLib.h:2346
CiSetMaxDevices
void CiSetMaxDevices(tCIU32 maxDev)
Max /dev/video<n> to scan.
kCIsigGn2aeLossOfSync
@ kCIsigGn2aeLossOfSync
Gn2 acquisition engine loss-of-sync interrupt.
Definition: BFciLib.h:1011
kCIIF_default
@ kCIIF_default
default VFG intiailization
Definition: BFciLib.h:614
tCItypedData
Definition: BFciLib.h:89
kCIVTT_AonII
@ kCIVTT_AonII
VFG is Aon CXP Mark II.
Definition: BFciLib.h:716
kCIEfileError
@ kCIEfileError
error opening/reading file
Definition: BFciLib.h:114
kCICT_Neon
@ kCICT_Neon
Neon frame grabber.
Definition: BFciLib.h:270
tCItrigConfig::encEnable
unsigned int encEnable
0 => no hardware encoder
Definition: BFciLib.h:1841
kCIBPP_formatterIgnore
@ kCIBPP_formatterIgnore
ignore bpp; assume 8b
Definition: BFciLib.h:774
kCIEdmaErr
@ kCIEdmaErr
DMA aborted and did not terminate.
Definition: BFciLib.h:128
tCIdiagStruct::cmode
unsigned int cmode
CL_MODE.
Definition: BFciLib.h:3331
kCIsigOVSTEP
@ kCIsigOVSTEP
OVSTEP interrupt.
Definition: BFciLib.h:1000
kCIintCountHW
@ kCIintCountHW
Definition: BFciLib.h:920
kCIsigCXPioackNoMatch
@ kCIsigCXPioackNoMatch
CXP problem decoding IO acknowledgement.
Definition: BFciLib.h:1034
tCIdiagStruct::clClk1
unsigned int clClk1
1_CL_CLOCK_DETECTED
Definition: BFciLib.h:3333
tCIvfgStateEntry::ifaceType
tCIU32 ifaceType
Neon, Karbon, etc.
Definition: BFciLib.h:319
kCIEwrongMode
@ kCIEwrongMode
consume buffers not configured
Definition: BFciLib.h:133
kCIAQSaqIsSIP
@ kCIAQSaqIsSIP
modifies snapShot/continuous states
Definition: BFciLib.h:2199
tCITSentry::ct0state
tCIU32 ct0state
State of CT0 (0 or 1) for this segment.
Definition: BFciLib.h:1937
kCIsigGn2zAcquired
@ kCIsigGn2zAcquired
Gn2 end-of-volume interrupt.
Definition: BFciLib.h:1009
tCIextraFrameInfo::CXPxOffset
tCIU32 CXPxOffset
CXP x-offset.
Definition: BFciLib.h:2348
kCIVTT_ClxCXP4
@ kCIVTT_ClxCXP4
VFG is Claxon CXP 4.
Definition: BFciLib.h:720
kCIsigCXPstrmTooMuchDat
@ kCIsigCXPstrmTooMuchDat
CXP not implemented (reserved)
Definition: BFciLib.h:1039
kBFTSTeol
@ kBFTSTeol
End-of-Line.
Definition: BFciLib.h:2014
CiAqSWreset
tCIRC CiAqSWreset(tCIp cip)
Software reset to hardware/drvr.
kCIBPP_formatterManual
@ kCIBPP_formatterManual
use the manual tap format
Definition: BFciLib.h:773
kCIEfileNotFound
@ kCIEfileNotFound
could not find file
Definition: BFciLib.h:119
tCIdiagStruct::unexp
unsigned int unexp
UNEXP_PKT_TAG_CNT.
Definition: BFciLib.h:3312
kCICCCCXP_last
@ kCICCCCXP_last
Definition: BFciLib.h:1327
CiRegPoke
tCIRC CiRegPoke(tCIp cip, tCIU32 ndx, tCIU32 value, tCIU32 mask)
Write a 32b register.
kCISQenumReceived
@ kCISQenumReceived
count events received (including dropped)
Definition: BFciLib.h:1077
kCIPEintQUAD
@ kCIPEintQUAD
QUAD intrpt (CXP:DOWN_TRIG_RCVD)
Definition: BFciLib.h:816
tCIvfgStateEntry
Structure used for array of VFG state info.
Definition: BFciLib.h:314
CiCXPreadReg
tCIRC CiCXPreadReg(tCIp cip, tCIU32 link, tCIU32 address, tCIU32 *value)
Read from CXP register.
kCIPEintHW
@ kCIPEintHW
frame grabber HW interrupt
Definition: BFciLib.h:813
CiVerifyCIP
tCIRC CiVerifyCIP(tCIp cip)
Check integrity of token.
kCIAQScontinuousDone
@ kCIAQScontinuousDone
EOF after Stop rqst, DMA idle.
Definition: BFciLib.h:2193
kCIGPINenums
kCIGPINenums
Definition: BFciLib.h:1377
kCIsigHW
@ kCIsigHW
frame grabber HW interrupt
Definition: BFciLib.h:994
kCIGPIN4
@ kCIGPIN4
Definition: BFciLib.h:1387
kCIVTT_CLclockDetected
@ kCIVTT_CLclockDetected
Camera Link clock detected.
Definition: BFciLib.h:729
kCIsigQUAD
@ kCIsigQUAD
QUAD intrpt.
Definition: BFciLib.h:997
kCICCKCXP_EAS
@ kCICCKCXP_EAS
VFGx_ENCA_SEL.
Definition: BFciLib.h:1306
kCICCKCXP_EBS
@ kCICCKCXP_EBS
VFGx_ENCB_SEL.
Definition: BFciLib.h:1307
tCIdiagStruct::rcvCnt
unsigned int rcvCnt
PKT_RCVD_CNT.
Definition: BFciLib.h:3308
tCIXBIP
struct tCIextraFrameInfo * tCIXBIP
tCItrigConfig
Definition: BFciLib.h:1821
tCIerrorCode
tCIerrorCode
Definition: BFciLib.h:99
kCIBQ_dmaBufferReady
@ kCIBQ_dmaBufferReady
Definition: BFciLib.h:446
kCIBQ_dmaIsActive
@ kCIBQ_dmaIsActive
Definition: BFciLib.h:447
kCIVTT_CtnCXP4
@ kCIVTT_CtnCXP4
VFG is Cyton CXP 4.
Definition: BFciLib.h:704
kCIEbadID
@ kCIEbadID
invalid bufferID or frameID
Definition: BFciLib.h:134
kCIVTT_NeonDif
@ kCIVTT_NeonDif
VFG is Neon Dif.
Definition: BFciLib.h:696
CiUserBuffConfigureSplit
tCIRC CiUserBuffConfigureSplit(tCIp cipA, tCIU32 hROIoffsetA, tCIU32 hROIsizeA, tCIU32 vROIoffsetA, tCIU32 vROIsizeA, tCIp cipB, tCIU32 hROIoffsetB, tCIU32 hROIsizeB, tCIU32 vROIoffsetB, tCIU32 vROIsizeB, tCIU32 nFrames, tCIU8 *userBuffer, tCIU64 buffSz, tCIU32 vertHoriz)
DMA 2 VFG into one user buffer.
kCIsigCXPhbRcvd
@ kCIsigCXPhbRcvd
CXP heart beat packet received.
Definition: BFciLib.h:1036
CiCXPgetLastHeartbeat
tCIRC CiCXPgetLastHeartbeat(tCIp cip, tCIU32 link, tCIU32 recSize, tCICXPHBP storeHere)
Retrieve the latest CXP heartbeat value.
CiReleaseBuffer
tCIRC CiReleaseBuffer(tCIp cip, tCIU32 buffID)
Release a frame buffer for DMA.
CiWriteCTABcompressed
tCIRC CiWriteCTABcompressed(tCIp cip, tCIU32 horizVERT, tCIU32 *data)
Write the compressed CTAB information.
kBFCLoutFIFOhasRoom
@ kBFCLoutFIFOhasRoom
room for at least one byte
Definition: BFciLib.h:2792
kCICCOC_CT3
@ kCICCOC_CT3
only CC4; CLOCK not available
Definition: BFciLib.h:1293
kCIGPIN3
@ kCIGPIN3
Definition: BFciLib.h:1386
kCIEuserDMAerr
@ kCIEuserDMAerr
user-allocated DMA buffer gone
Definition: BFciLib.h:129
kBFTStrigUnknown
@ kBFTStrigUnknown
Definition: BFciLib.h:2031
kCIintBitsGn2
@ kCIintBitsGn2
bitmask, not counter
Definition: BFciLib.h:933
kCIEexclusiveFail
@ kCIEexclusiveFail
board not or already open w/exclusive wr
Definition: BFciLib.h:110
tCIdiagStruct::o16
unsigned int o16
TAP_OUTPUT_16.
Definition: BFciLib.h:3327
kCIEparseErr
@ kCIEparseErr
error parsing file
Definition: BFciLib.h:118
tCITSEP
struct tCITSentry * tCITSEP
kCIintBitsCXP
@ kCIintBitsCXP
bitmask, not counter
Definition: BFciLib.h:932
kCIVTT_ClxCXP1
@ kCIVTT_ClxCXP1
VFG is Claxon CXP 1.
Definition: BFciLib.h:718
kCItrigOneShotStartAStopA
@ kCItrigOneShotStartAStopA
acquire while trigger asserted
Definition: BFciLib.h:1921
CiCLgetOutputFIFOstatus
tCIRC CiCLgetOutputFIFOstatus(tCIp cip, tCIU32 *status)
Test status of CL output FIFO.
CiReadCTABcompressed
tCIRC CiReadCTABcompressed(tCIp cip, tCIU32 horizVERT, tCIU32 *data)
Read the compressed CTAB information.
tCiCXPeventPacketEnum
tCiCXPeventPacketEnum
Definition: BFciLib.h:2988
kCIsigTRIG
@ kCIsigTRIG
TRIG interrupt.
Definition: BFciLib.h:995
kBFTSTfvalRising
@ kBFTSTfvalRising
Definition: BFciLib.h:2015
kCIVTT_Axn1xE
@ kCIVTT_Axn1xE
VFG is Axion CL 1xE.
Definition: BFciLib.h:708
CiRegGetFields
tCIU32 CiRegGetFields(tCIp cip, tCIU32 ndx, tCIU32 *ndxAry, tCIU32 *cnt)
Return register Field indices.
kCIBQ_usrDMAerr
@ kCIBQ_usrDMAerr
Definition: BFciLib.h:443
kCIGPIN2
@ kCIGPIN2
Definition: BFciLib.h:1385
kCIsigGn2yStart
@ kCIsigGn2yStart
Gn2 start-of-frame interrupt.
Definition: BFciLib.h:1016
kCIcamFile_format
@ kCIcamFile_format
format of the image sensor
Definition: BFciLib.h:754
tCITSentry::ct2state
tCIU32 ct2state
State of CT2 (0 or 1) for this segment.
Definition: BFciLib.h:1939
kCIconsumeBuffers
@ kCIconsumeBuffers
Definition: BFciLib.h:2471
kCICCKCXP_CT3
@ kCICCKCXP_CT3
CT3 from CTAB.
Definition: BFciLib.h:1304
CiReadHWrev
tCIRC CiReadHWrev(tCIp cip, char *str)
Get the hardware revision string for this VFG (if it exists).
kCIGPOUT7
@ kCIGPOUT7
Definition: BFciLib.h:1351
kBFTSTlvalFalling
@ kBFTSTlvalFalling
Definition: BFciLib.h:2018
CiDrvrBuffConfigure
tCIRC CiDrvrBuffConfigure(tCIp cip, tCIU32 count, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
Driver allocates DMA resources.
kCIBO_exclusiveWrAccess
@ kCIBO_exclusiveWrAccess
no previous/subsequent wr access
Definition: BFciLib.h:371
kCIVTT_Synthetic
@ kCIVTT_Synthetic
VFG is configured for synthetic acquisition.
Definition: BFciLib.h:724
CiWaitNextUndeliveredFrame
tCIRC CiWaitNextUndeliveredFrame(tCIp cip, int timeoutMsec)
Return at EOF of next undelivered.
kCIEcanceledErr
@ kCIEcanceledErr
operation canceled
Definition: BFciLib.h:147
CiCLgetBytesAvail
tCIRC CiCLgetBytesAvail(tCIp cip, tCIU32 *avail)
Return number of bytes in buffer.
CiVFGinitialize
tCIRC CiVFGinitialize(tCIp cip, tCISTRZ cfgFN)
Initialize board or VFG.
tCIdiagStruct::errCnt
unsigned int errCnt
CRC_ERR_CNT.
Definition: BFciLib.h:3309
CiUserBuffConfigure
tCIRC CiUserBuffConfigure(tCIp cip, tCIU32 count, tCIU8 *buffer, tCIU64 bufferBytes, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
User allocates DMA resources.
kCIVTrigModeEnum
kCIVTrigModeEnum
Definition: BFciLib.h:1908
kCIEnotMaster
@ kCIEnotMaster
only master VFG can do this
Definition: BFciLib.h:139
kCICT_ClxCXP
@ kCICT_ClxCXP
Claxon CXP frame grabber.
Definition: BFciLib.h:278
tCItrigConfig::encSel
unsigned int encSel
00diff/01TTL/10opto/11reserved *
Definition: BFciLib.h:1839
kCIcamFile_isDefault
@ kCIcamFile_isDefault
determine if a parameter is Default/Auto
Definition: BFciLib.h:767
tCiCXPeventPacket::hostCRC
tCIU32 hostCRC
CRC calculated by the host.
Definition: BFciLib.h:2996
kCIintCountTOTAL
@ kCIintCountTOTAL
Definition: BFciLib.h:928
tCIdiagStruct::clClk2
unsigned int clClk2
2_CL_CLOCK_DETECTED
Definition: BFciLib.h:3334
tCiCXPheartbeat::packetDeviceTime
tCIU64 packetDeviceTime
packet timestamp from device
Definition: BFciLib.h:2960
kCIintCountOVSTEP
@ kCIintCountOVSTEP
Definition: BFciLib.h:926
kCiCXPuseMasterLink
@ kCiCXPuseMasterLink
Definition: BFciLib.h:2932
CiTrigConfigure
tCIRC CiTrigConfigure(tCIp cip, tCItrigConfig vCfg, tCItrigConfig hCfg)
Configure vert/horiz data trig.
tCiCXPeventPacket::packetTag
tCIU32 packetTag
packet tag of this event
Definition: BFciLib.h:2994
CiGetUndeliveredCount
tCIRC CiGetUndeliveredCount(tCIp cip, tCIU32 *count)
Return number of undelivered frames.
kCIEnotSupported
@ kCIEnotSupported
operation not supported on hw
Definition: BFciLib.h:123
tCIsignalEnums
tCIsignalEnums
Signals.
Definition: BFciLib.h:993
kCIVTT_CtnCXP2
@ kCIVTT_CtnCXP2
VFG is Cyton CXP 2.
Definition: BFciLib.h:703
tCIvfgStateEntry::masterLink
tCIU32 masterLink
For CXP cameras, the link connected to the camera's master link.
Definition: BFciLib.h:324
kCICCCCXP_CT2
@ kCICCCCXP_CT2
CT2 from TS.
Definition: BFciLib.h:1319
kCIcamFile_bitDepthOption
@ kCIcamFile_bitDepthOption
bit-depth options (see tCIbitDepthOptionEnums)
Definition: BFciLib.h:758
tCIdiagStruct::trig
unsigned int trig
RD_TRIG_SELECTED.
Definition: BFciLib.h:3318
kCIErangeErr
@ kCIErangeErr
parameter out of range
Definition: BFciLib.h:103
tCIdiagStruct
Definition: BFciLib.h:3286
tCIdiagStruct::tmode
unsigned int tmode
TAP_MODE.
Definition: BFciLib.h:3326
CiSysVFGinfo2
tCIRC CiSysVFGinfo2(tCIU32 which, tCIU32 *ifaceType, tCIU32 *switches, tCIU32 *devNdx, tCISTRZ busName, tCIU32 *infoHi, tCIU32 *infoLo, tCISTRZ VFGname, tCIU32 *NUMAnode)
More info on a single VFG.
kBF_invalidData
@ kBF_invalidData
descriptor is invalid
Definition: BFciLib.h:74
CiSignalCleanup
tCIRC CiSignalCleanup(tCIp cip, tCISHP cish, tCIU32 queueOp, tCIU32 *count)
Cleanup the signal handle, and all associated resources.
kCIAQSstateMask
@ kCIAQSstateMask
reserve 4b for actual state
Definition: BFciLib.h:2195
tBFCLenums
tBFCLenums
Definition: BFciLib.h:2791
kCICCOC_CT0
@ kCICCOC_CT0
CT0 from CTAB.
Definition: BFciLib.h:1282
kCIVTT_NTG
@ kCIVTT_NTG
VFG supports the NTG.
Definition: BFciLib.h:700
CiCXPreadEventPacket
tCIRC CiCXPreadEventPacket(tCIp cip, tCIU32 link, tCIU32 recSize, tCICXPEP storeHere)
Read a CXP event packet from the event packet queue.
kCIRD_swTrigger
@ kCIRD_swTrigger
Definition: BFciLib.h:1398
CiFieldWidth
int CiFieldWidth(tCIp cip, int fieldNdx)
Return field width.
kBFTSTlvalRising
@ kBFTSTlvalRising
Definition: BFciLib.h:2017
kCIPEdrvrErr
@ kCIPEdrvrErr
non-hardware driver error
Definition: BFciLib.h:821
kCIGPOC_Internal
@ kCIGPOC_Internal
freq/duty cycle from CON17
Definition: BFciLib.h:1260
kCIsigCXPserdesLostAlign
@ kCIsigCXPserdesLostAlign
CXP SERDES lost alignment.
Definition: BFciLib.h:1043
kCIPEintCXP
@ kCIPEintCXP
CXP interrupt.
Definition: BFciLib.h:823
kCIPEnoFirmware
@ kCIPEnoFirmware
not ready to poll()
Definition: BFciLib.h:822
kCICT_KbnCXP
@ kCICT_KbnCXP
Karbon CXP frame grabber (deprecated)
Definition: BFciLib.h:274
kBFTSrisingEdge
@ kBFTSrisingEdge
Rising edge.
Definition: BFciLib.h:2026
kCIAQScontinuousStopping
@ kCIAQScontinuousStopping
after Stop requested, before EOF
Definition: BFciLib.h:2192
kCICT_VFGmask
@ kCICT_VFGmask
Neon/Karbon/Alta/KCXP/Ctn/Axn/Aon/Clx.
Definition: BFciLib.h:279
kCIbsPending
@ kCIbsPending
ready for DMA (owned by drvr)
Definition: BFciLib.h:2520
kCIGPOC_CT1
@ kCIGPOC_CT1
CT1 from CTAB.
Definition: BFciLib.h:1256
tCItrigConfig::_unused
unsigned int _unused
Definition: BFciLib.h:1842
kCIRD_FEN
@ kCIRD_FEN
Definition: BFciLib.h:1394
kCIsigCXPhbError
@ kCIsigCXPhbError
CXP problem decoding heart beat packet.
Definition: BFciLib.h:1035
kCISQflush
@ kCISQflush
flush entries from the queue
Definition: BFciLib.h:1079
kCIsigCXPdownTrigRcvd
@ kCIsigCXPdownTrigRcvd
CXP trigger received from camera.
Definition: BFciLib.h:1031
kBF_tCISTRZ
@ kBF_tCISTRZ
a '\0' terminated string
Definition: BFciLib.h:77
tCISHP
struct tCIsignalHandle * tCISHP
anonymous signal handle
Definition: BFciLib.h:967
kBF_tCIU32_tCISTRZ_pair
@ kBF_tCIU32_tCISTRZ_pair
number and a '\0' term string
Definition: BFciLib.h:80
kCIEnoAccessibleVideo
@ kCIEnoAccessibleVideo
no access to BitFlow /dev/video<n>
Definition: BFciLib.h:102
tCIvfgStateEntry::isCXP
tCIU8 isCXP
True if the VFG is CXP.
Definition: BFciLib.h:320
tCICXPHBP
struct tCiCXPheartbeat * tCICXPHBP
kCICCCCXP_CT1
@ kCICCCCXP_CT1
CT1 from TS.
Definition: BFciLib.h:1318
kCIBO_writeAccess
@ kCIBO_writeAccess
can modify board state
Definition: BFciLib.h:370
tCIinterruptCounterEnums
tCIinterruptCounterEnums
Definition: BFciLib.h:914
kCIVTT_Slave
@ kCIVTT_Slave
VFG is slave.
Definition: BFciLib.h:698
tCISGentry::block
tCIU8 * block
data pointer for DMA
Definition: BFciLib.h:66
kCIcamFile_hROIoffset
@ kCIcamFile_hROIoffset
horizontal ROI offset
Definition: BFciLib.h:750
kCiCXPlinkBitMask
@ kCiCXPlinkBitMask
Definition: BFciLib.h:2929
tCItrigConfig::encDiv
unsigned int encDiv
divisor for encoder pulses
Definition: BFciLib.h:1838
CiVFGqueryInfo
tCIRC CiVFGqueryInfo(tCIp cip, tCIU32 *ifaceType, tCIU32 *switches, tCIU32 *devNdx, tCISTRZ busName, tCIU32 *infoHi, tCIU32 *infoLo, tCISTRZ VFGname, tCIU32 *NUMAnode)
Return SysVFGinfo for open VFG.
CiRegName
char * CiRegName(tCIp cip, tCIU32 ndx)
Return register name.
kCIVTT_CameraReady
@ kCIVTT_CameraReady
Camera is connected and has power up.
Definition: BFciLib.h:731
CiEncInterruptDisable
tCIRC CiEncInterruptDisable(tCIp cip, tCIU32 zAelseB)
Disable ENCA/B interrupts.
CiLUTsize
tCIRC CiLUTsize(tCIp cip, tCIU32 bank, tCIU32 lane, tCIU32 *size, tCIU32 *width)
Return size of a specific LUT.
CiBufferInterrogate
tCIRC CiBufferInterrogate(tCIp cip, tCIU32 *nFrames, tCIU32 *bitsPerPix, tCIU32 *hROIoffset, tCIU32 *hROIsize, tCIU32 *vROIoffset, tCIU32 *vROIsize, tCIU32 *stride)
Return DMA resource description.
kCICXPEnamespaceDevice
@ kCICXPEnamespaceDevice
Device event message.
Definition: BFciLib.h:3060
tCIdiagStruct::clClk0
unsigned int clClk0
0_CL_CLOCK_DETECTED
Definition: BFciLib.h:3332
CiUnmapFrameBuffers
tCIRC CiUnmapFrameBuffers(tCIp cip)
Release user access to DMA buffs.
kBFTSTsof
@ kBFTSTsof
Start-of-Frame.
Definition: BFciLib.h:2011
kCIPEintCTAB
@ kCIPEintCTAB
CTAB interrupt.
Definition: BFciLib.h:818
kCIVTT_Axn
@ kCIVTT_Axn
VFG is Axion CL.
Definition: BFciLib.h:706
tCIdiagStruct::aqStat
unsigned int aqStat
current AQSTAT command
Definition: BFciLib.h:3293
CiAqSWtrigEnc
tCIRC CiAqSWtrigEnc(tCIp cip, tCIU32 trigValue, tCIU32 encValue)
Set software trig and/or encoder.
kCIAqGetStatEnums
kCIAqGetStatEnums
Definition: BFciLib.h:2182
tCIdiagStruct::enca
unsigned int enca
RD_ENCA_SELECTED.
Definition: BFciLib.h:3317
kCIVTT_AxnII
@ kCIVTT_AxnII
VFG is Axion CL Mark II.
Definition: BFciLib.h:713
kCIsigCXPtrigNoMatch
@ kCIsigCXPtrigNoMatch
CXP problem decoding trig packet.
Definition: BFciLib.h:1032
kBFTSTunknown
@ kBFTSTunknown
Definition: BFciLib.h:2019
kCIVTT_AxnBase
@ kCIVTT_AxnBase
VFG is Axion CL base configuration.
Definition: BFciLib.h:707
CiVFGindex
tCIU32 CiVFGindex(tCIp cip)
Returns devNdx of CiVFGopen()
CiLUTcount
tCIRC CiLUTcount(tCIp cip, tCIU32 *nBank, tCIU32 *nLane)
Return count of LUT resources.
CiGPINget
tCIRC CiGPINget(tCIp cip, tCIU32 *value)
Get the GPIN values.
tCIVOIDP
void * tCIVOIDP
pointer to something
Definition: BFciLib.h:57
kCIAQSsnapShotInProcess
@ kCIAQSsnapShotInProcess
after start w/NZ nFrames
Definition: BFciLib.h:2186
kCIRD_TRIG_TTL
@ kCIRD_TRIG_TTL
Definition: BFciLib.h:1389
kCIVTT_traitCount
@ kCIVTT_traitCount
Definition: BFciLib.h:736
kCIIF_noGenTLinit
@ kCIIF_noGenTLinit
skip GenTL device_commands
Definition: BFciLib.h:615
tCIU32
unsigned int tCIU32
everything but CTABs
Definition: BFciLib.h:53
kCIRDCXP_TRIG_IN
@ kCIRDCXP_TRIG_IN
Definition: BFciLib.h:1428
tCIdiagStruct::fval
unsigned int fval
CL_USE_FVAL.
Definition: BFciLib.h:3328
tCIdiagStruct::speed
unsigned int speed
linkspeed
Definition: BFciLib.h:3313
kCIcamFile_requiresTLParamsLocked
@ kCIcamFile_requiresTLParamsLocked
whether or not TLParamsLocked is required by the camera
Definition: BFciLib.h:759
kCICCCCXP_NTG0
@ kCICCCCXP_NTG0
VFG0_TS.
Definition: BFciLib.h:1325
kCIAQSaqUnderrun
@ kCIAQSaqUnderrun
modifies all states
Definition: BFciLib.h:2205
kCICCKCXP_1
@ kCICCKCXP_1
1
Definition: BFciLib.h:1300
kCIAQSaqAbort
@ kCIAQSaqAbort
modifies all states
Definition: BFciLib.h:2209
CiSetBufferMode
tCIRC CiSetBufferMode(tCIp cip, tCIU32 mode)
Set the VFG/library buffer mode.
tCITSentry
Entry structure used to read and write sequences to the Timing Sequencer.
Definition: BFciLib.h:1935
kCIEnoWrPermission
@ kCIEnoWrPermission
do not have write permission
Definition: BFciLib.h:113
kCICXPEnamespaceGenICam
@ kCICXPEnamespaceGenICam
GenICam event message.
Definition: BFciLib.h:3058
kCIEnullArg
@ kCIEnullArg
unexpected NULL argument
Definition: BFciLib.h:106
kCIEtimeoutErr
@ kCIEtimeoutErr
timeout expired error
Definition: BFciLib.h:135
tCIvfgStateEntry::maxLinks
tCIU32 maxLinks
Max number of links possible from this VFG.
Definition: BFciLib.h:328
kBFTSnoWait
@ kBFTSnoWait
No wait/no trigger.
Definition: BFciLib.h:2025
CiCXPparseEventPacket
tCIRC CiCXPparseEventPacket(tCIp cip, tCIU32 index, tCIU32 evtPktSize, tCICXPEP evtPkt, tCIU32 recSize, tCICXPEM storeHere)
Parse one message stored in an event packet.
tCiCXPeventNamespaceEnum
tCiCXPeventNamespaceEnum
Definition: BFciLib.h:3057
kCIEnotCompatibleWithMaster
@ kCIEnotCompatibleWithMaster
incompatible master VFG setting
Definition: BFciLib.h:140
kCIVTT_CtnII
@ kCIVTT_CtnII
VFG is Cyton CXP Mark II.
Definition: BFciLib.h:705
kCItrigUnknown
@ kCItrigUnknown
trig mode not known to library
Definition: BFciLib.h:1909
kCIEnotConfigured
@ kCIEnotConfigured
camera/DMA/poll()/mmap() not configured
Definition: BFciLib.h:109
kCItrigQualified
@ kCItrigQualified
acquire while trigger asserted
Definition: BFciLib.h:1916
CiPollClear
tCIRC CiPollClear(tCIp cip, tCIU32 mask)
Clear all pending poll() events.
CiCXPwriteReg
tCIRC CiCXPwriteReg(tCIp cip, tCIU32 link, tCIU32 address, tCIU32 value)
Write to CXP register.
kCIVTT_Kbn
@ kCIVTT_Kbn
VFG is Karbon CL.
Definition: BFciLib.h:687
CiVFGqueryState
tCIRC CiVFGqueryState(tCIp cip, tCIU32 *state)
? Is frame grabber initialized ?
kCIcamFile_maxCXPversion
@ kCIcamFile_maxCXPversion
maximum supported CXP version
Definition: BFciLib.h:757
tCiCXPeventMessage::data
tCIU32 * data
event data
Definition: BFciLib.h:3029
kCIsigGn2xAcquired
@ kCIsigGn2xAcquired
Gn2 end-of-line interrupt.
Definition: BFciLib.h:1008
tCIinitFlagsEnums
tCIinitFlagsEnums
Definition: BFciLib.h:613
tCItrigConfig::encPolB
unsigned int encPolB
0 => asser is rising edge
Definition: BFciLib.h:1862
kCIsigCXPunderCurrent
@ kCIsigCXPunderCurrent
CXP under current detected.
Definition: BFciLib.h:1022
kCIVTT_CXPlinkPowerUp
@ kCIVTT_CXPlinkPowerUp
CXP link has power up (opt = link)
Definition: BFciLib.h:726
kBFCLoutputFIFOidle
@ kBFCLoutputFIFOidle
Definition: BFciLib.h:2794
kCICCCCXP_CT3
@ kCICCCCXP_CT3
CT3 from TS.
Definition: BFciLib.h:1320
kCICCOC_CLOCK
@ kCICCOC_CLOCK
on-board CLOCK signal
Definition: BFciLib.h:1286
CiUserBuffConfigureEvenOdd
tCIRC CiUserBuffConfigureEvenOdd(tCIp cipEven, tCIp cipOdd, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsizeOdd, tCIU32 nFrames, tCIU8 *userBuffer, tCIU64 buffSz)
DMA 2 VFG into one user buffer.
CiAqStartSIP
tCIRC CiAqStartSIP(tCIp cip, tCIU32 nFrames)
Begin Start-Stop Image Processing.
kCICCCCXP_EAS
@ kCICCCCXP_EAS
VFGx_ENCA_SEL.
Definition: BFciLib.h:1322
tCItrigConfig::allBits
tCIU32 allBits
Definition: BFciLib.h:1822
kCIEerrCodeLast
@ kCIEerrCodeLast
– invalid error code –
Definition: BFciLib.h:149
tCIdiagStruct::lCount
unsigned int lCount
2b counter on LEN
Definition: BFciLib.h:3296
kCIRDCXP_TRIG_OUT
@ kCIRDCXP_TRIG_OUT
Definition: BFciLib.h:1432
kBFTSTencDivSel
@ kBFTSTencDivSel
Encoder Divider.
Definition: BFciLib.h:2010
kCIintCountENCA
@ kCIintCountENCA
Definition: BFciLib.h:941
kCICCOC_CT1
@ kCICCOC_CT1
CT1 from CTAB.
Definition: BFciLib.h:1283
tCIextraFrameInfo::CXPsrcTag
tCIU32 CXPsrcTag
CXP source tag.
Definition: BFciLib.h:2347
tCIextraFrameInfo
Definition: BFciLib.h:2341
tCiCXPeventMessage::size
tCIU32 size
event message size in bytes
Definition: BFciLib.h:3025
kCIsigCOUNT
@ kCIsigCOUNT
Definition: BFciLib.h:1048
tBFsplitEnums
tBFsplitEnums
Definition: BFciLib.h:1666
kCICCOC_1
@ kCICCOC_1
1
Definition: BFciLib.h:1289
tCIdiagStruct::allBits
tCIU32 allBits
Definition: BFciLib.h:3287
tCIp
struct tCIinterface * tCIp
anonymous access token
Definition: BFciLib.h:49
kCIEdataOVSTEPerr
@ kCIEdataOVSTEPerr
OVSTEP detected.
Definition: BFciLib.h:143
tCIvfgStateEntry::isValid
tCIU8 isValid
True if the VFG can be opened.
Definition: BFciLib.h:323
tCItrigConfig::encPolA
unsigned int encPolA
0 => assert is rising edge
Definition: BFciLib.h:1859
kCIsigGn2xStart
@ kCIsigGn2xStart
Gn2 start-of-line interrupt.
Definition: BFciLib.h:1015
kCIcamFile_vROIsize
@ kCIcamFile_vROIsize
vertical ROI size (aka, height)
Definition: BFciLib.h:753
kCIBQ_stateUnknown
@ kCIBQ_stateUnknown
Definition: BFciLib.h:450
CiFieldPoke
tCIRC CiFieldPoke(tCIp cip, tCIU32 ndx, tCIU32 value)
Write a CON register field.
kCICT_CtnCXP
@ kCICT_CtnCXP
Cyton CXP frame grabber.
Definition: BFciLib.h:275
kCIEbadInstallErr
@ kCIEbadInstallErr
invalid install directory tree
Definition: BFciLib.h:122
kCIAQSidle
@ kCIAQSidle
initial state, after Abort/SW reset
Definition: BFciLib.h:2184
kCIEuserDMAnoWrite
@ kCIEuserDMAnoWrite
no write access to DMA buffers
Definition: BFciLib.h:112
kCICCKCXP_CT2
@ kCICCKCXP_CT2
CT2 from CTAB.
Definition: BFciLib.h:1303
CiCLterm
tCIRC CiCLterm(tCIp cip)
Close CameraLink access.
tCXPlinkEnums
tCXPlinkEnums
Definition: BFciLib.h:2928
tCITStrigTypeEnum
tCITStrigTypeEnum
Timing Sequencer Trigger sources.
Definition: BFciLib.h:2004
kBFCLoutFIFOempty
@ kBFCLoutFIFOempty
all data is gone
Definition: BFciLib.h:2793
kCIVTT_Aon
@ kCIVTT_Aon
VFG is Aon CXP.
Definition: BFciLib.h:714
tCITSwaitForTriggerTypeEnum
tCITSwaitForTriggerTypeEnum
Trigger conditions for Timing Sequencer.
Definition: BFciLib.h:2023
tCIvfgStateEntry::isMaster
tCIU8 isMaster
True if the VFG is the board master.
Definition: BFciLib.h:318
CiFmtStr
tCISTRZ CiFmtStr(int fmtCode)
Text description of format code.
tCIdiagStruct::fenCount
unsigned int fenCount
2b counter on FEN
Definition: BFciLib.h:3298
kCIsigEOF
@ kCIsigEOF
EOF interrupt (acquisition)
Definition: BFciLib.h:999
tCIszCTABenum
tCIszCTABenum
Definition: BFciLib.h:3354
kCIbsBusy
@ kCIbsBusy
in DMA queue (owned by drvr)
Definition: BFciLib.h:2519
kCIGPOC_ENC
@ kCIGPOC_ENC
GPOUTCON0/GPOUTCON1 only.
Definition: BFciLib.h:1261
CiCCnCONset
tCIRC CiCCnCONset(tCIp cip, tCIU32 which, tCIU32 value)
Set the CCn source(s)
tCiCXPeventMessage::eventID
tCIU32 eventID
event ID
Definition: BFciLib.h:3027
kCItrigInvalid
@ kCItrigInvalid
invalid trigger mode
Definition: BFciLib.h:1910
tCItrigConfig::trigDelay
unsigned int trigDelay
delays trigger 8N lines
Definition: BFciLib.h:1829
tCIsignalEventData::signal
tCIU32 signal
the signal returned (tCIsignalEnums)
Definition: BFciLib.h:1144
CiFieldNdxFromStr
int CiFieldNdxFromStr(tCIp cip, char *str)
Return enumerate from string.
kCICCCCXP_0
@ kCICCCCXP_0
0
Definition: BFciLib.h:1315
kCIEnotOpen
@ kCIEnotOpen
resource not initilized
Definition: BFciLib.h:138
CiGPOUTCONset
tCIRC CiGPOUTCONset(tCIp cip, tCIU32 which, tCIU32 value)
Set the GPOUT source(s).
kCIEdmaOverrunErr
@ kCIEdmaOverrunErr
possible DMA into undelivered frame
Definition: BFciLib.h:126
kCIEfailureErr
@ kCIEfailureErr
could not flash, mmap() etc.
Definition: BFciLib.h:115
CiGetModes
tCIRC CiGetModes(tCIp cip, tCITDP *modeData)
Get list of modes available for the present XXXX.bfml camera file.
kBF_tCIU32
@ kBF_tCIU32
an unsigned integer
Definition: BFciLib.h:75
tCIdiagStruct::encq
unsigned int encq
RD_ENCQ_SELECTED.
Definition: BFciLib.h:3315
CiGPOUTget
tCIRC CiGPOUTget(tCIp cip, tCIU32 *value)
Get the GPOUT values.
kCIEnoEnvVar
@ kCIEnoEnvVar
could not find kBFenvVar
Definition: BFciLib.h:120
kCIEmemoryErr
@ kCIEmemoryErr
could not allocate memory
Definition: BFciLib.h:104
kCIGPOC_CON4
@ kCIGPOC_CON4
host sets CON4
Definition: BFciLib.h:1254
kCIsigCXPstrmCorner
@ kCIsigCXPstrmCorner
CXP not implemented (reserved)
Definition: BFciLib.h:1042
kCIEdataErr
@ kCIEdataErr
HW and OVSTEP detected.
Definition: BFciLib.h:127
CiAqGetStatus
tCIRC CiAqGetStatus(tCIp cip, tCIU32 *state, tCIU32 *nFrames, tCIU32 *nErrors)
Describe the acquisition state.
kBFTSfallingEdge
@ kBFTSfallingEdge
Falling edge.
Definition: BFciLib.h:2027
CiTSsequenceSet
tCIRC CiTSsequenceSet(tCIp cip, tCIU32 sequencer, tCIU32 tsArySize, tCITSEP tsAry, tCIU32 preTrigCT0, tCIU32 preTrigCT1, tCIU32 preTrigCT2, tCIU32 preTrigCT3, tCIU32 triggerSrc)
Set a sequence in the timing sequencer from a linked list of segments.
tCIdiagStruct::gntCnt
unsigned int gntCnt
PKT_GNT_CNT.
Definition: BFciLib.h:3311
CiVFGclose
tCIRC CiVFGclose(tCIp cip)
Close a VFG.
kCIVTT_NeonQ
@ kCIVTT_NeonQ
VFG is Neon CL Quad.
Definition: BFciLib.h:695
kCIcamFile_loadedToDrvr
@ kCIcamFile_loadedToDrvr
whether or not a camera file has been loaded to the driver store
Definition: BFciLib.h:761
kCIGPOUTenums
kCIGPOUTenums
Definition: BFciLib.h:1340
kBFupsideDownB
@ kBFupsideDownB
VFG B fills frame bottom up.
Definition: BFciLib.h:1673
kCIVTT_CXP
@ kCIVTT_CXP
VFG interface is CoaXPress.
Definition: BFciLib.h:686
CiSysGetVersions
tCIRC CiSysGetVersions(tCIU32 *libVers, tCIU32 *drvVers)
Return library revision level.
kCIcamFile_bitsPerPix
@ kCIcamFile_bitsPerPix
bit-depth
Definition: BFciLib.h:748
kCIAQSsnapShotDone
@ kCIAQSsnapShotDone
nFrames collected, DMA idle
Definition: BFciLib.h:2187
kCICCKCXP_NTG0
@ kCICCKCXP_NTG0
VFG0_NTG.
Definition: BFciLib.h:1309
kCIbsFilled
@ kCIbsFilled
frame complete (owned by user)
Definition: BFciLib.h:2524
kCIEnoNewData
@ kCIEnoNewData
no undelivered frames
Definition: BFciLib.h:130
kCIVTT_CXPlinkAlive
@ kCIVTT_CXPlinkAlive
CXP link is aligned (opt = link)
Definition: BFciLib.h:727
tCIbitDepthOptionEnums
tCIbitDepthOptionEnums
Definition: BFciLib.h:770
CiResetHWOVSTEP
tCIRC CiResetHWOVSTEP(tCIp cip)
Reset HW/OVSTEP error w/o acquisition restart.
kCIPEintGn2
@ kCIPEintGn2
Gn2 interrupts not mapped above (X_START, etc.)
Definition: BFciLib.h:824
CiVFGinquire
tCIRC CiVFGinquire(tCIp cip, tCITDP *cfgFN, tCITDP *config, tCITDP *cameraFN, tCITDP *camera, tCITDP *firmFN, tCITDP *firmware, tCITDP *serial)
Interrogate configuration.
kBF_tCIDOUBLE
@ kBF_tCIDOUBLE
a floating point value
Definition: BFciLib.h:76
kCiCXPlinkSpeedMask
@ kCiCXPlinkSpeedMask
Definition: BFciLib.h:2930
kBF_tCIU32_list_pair
@ kBF_tCIU32_list_pair
count then value pairs of 32b
Definition: BFciLib.h:79
tCiCXPeventMessage::timeStamp
tCIU64 timeStamp
timestamp
Definition: BFciLib.h:3028
kBFTSTeof
@ kBFTSTeof
End-of-Frame.
Definition: BFciLib.h:2012
kCIRD_ENC_DIFF
@ kCIRD_ENC_DIFF
Definition: BFciLib.h:1391
tCITSentry::ct1state
tCIU32 ct1state
State of CT1 (0 or 1) for this segment.
Definition: BFciLib.h:1938
tCICXPEM
struct tCiCXPeventMessage * tCICXPEM
tCIVFGSEP
struct tCIvfgStateEntry * tCIVFGSEP
kCIRD_ENC_TTL
@ kCIRD_ENC_TTL
Definition: BFciLib.h:1392
kCIcamFile_acqOffWhenClosing
@ kCIcamFile_acqOffWhenClosing
camera acq stopped at close
Definition: BFciLib.h:756
CiSignalExec
tCIRC CiSignalExec(tCIp cip, tCIU32 cishCnt, tCISHP *cishAry, tCIU32 maxWakeCnt, tCIU32 *pWakeCnt, int timeoutMsec)
Execute the signal wait service.
kCICCOC_0
@ kCICCOC_0
0
Definition: BFciLib.h:1288
kCIVTT_ClxCXP2
@ kCIVTT_ClxCXP2
VFG is Claxon CXP 2.
Definition: BFciLib.h:719
CiCLwriteBytesToFIFO
tCIRC CiCLwriteBytesToFIFO(tCIp cip, tCIU32 buffSize, tCIU8 *buffer)
Write bytes to CL interface.
kCIGPOUT0
@ kCIGPOUT0
Definition: BFciLib.h:1341
CiCXPreadData
tCIRC CiCXPreadData(tCIp cip, tCIU32 link, tCIU32 address, tCIU8 *buffer, tCIU32 readBytes, tCIU32 *actualSz)
Read from CXP data space (buffer size should be multiple of 4)
tCIdiagStruct::clClk3
unsigned int clClk3
3_CL_CLOCK_DETECTED
Definition: BFciLib.h:3335
kCIGPOUT2
@ kCIGPOUT2
Definition: BFciLib.h:1343
kCICCCCXP_EBS
@ kCICCCCXP_EBS
VFGx_ENCB_SEL.
Definition: BFciLib.h:1323
kCIsigCXPstrmPktDrop
@ kCIsigCXPstrmPktDrop
CXP problem decoding stream packet header, remainder dropped.
Definition: BFciLib.h:1037
kCIsigCXPctlAckRcvd
@ kCIsigCXPctlAckRcvd
CXP control acknowledgement received.
Definition: BFciLib.h:1026
kCIGPOUT10
@ kCIGPOUT10
Definition: BFciLib.h:1354
kBFsplitHorizontal
@ kBFsplitHorizontal
Definition: BFciLib.h:1668
kBFTSTfvalFalling
@ kBFTSTfvalFalling
Definition: BFciLib.h:2016
CiSignalQueueOp
tCIRC CiSignalQueueOp(tCIp cip, tCISHP cish, tCIU32 operation, tCIU32 *count)
Signal queue inquiry and manipulation.
tCItrigConfig::encSelB
unsigned int encSelB
(see documentation)
Definition: BFciLib.h:1861
CiSignalWaitCancel
tCIRC CiSignalWaitCancel(tCIp cip, tCISHP cish)
Cancel one call to CiSignalWait.
kCIPEintEOF
@ kCIPEintEOF
EOF interrupt (acquisition)
Definition: BFciLib.h:819
CiSetDebug
tCIRC CiSetDebug(tCIp cip, int drvDebug, tCIstrDisplayF dispFunc)
CiLUTwrite
tCIRC CiLUTwrite(tCIp cip, tCIU32 bank, tCIU32 lane, tCIU32 count, tCIU32 *values)
Load a LUT.
CiCXPsetLink
tCIRC CiCXPsetLink(tCIp cip, tCIU32 links)
Assign link affinity for VFG.
tCItrigConfig::encEnA
unsigned int encEnA
enable selected encoder A
Definition: BFciLib.h:1860
tCIextraFrameInfo::fill
tCIU32 fill
Definition: BFciLib.h:2345
tCIextraFrameInfo::frameID
tCIU32 frameID
which frame
Definition: BFciLib.h:2342
kCIsigCXPstrmBadCRC
@ kCIsigCXPstrmBadCRC
CXP detected CRC error in stream packet.
Definition: BFciLib.h:1040
CiVFGapplyCameraFile
tCIRC CiVFGapplyCameraFile(tCIp cip, tCISTRZ camFN)
Initialize a VFG directly from a camera file.
kCIcamFile_packed
@ kCIcamFile_packed
pixel packing (non-zero if packed)
Definition: BFciLib.h:749
kCIVTT_Neon
@ kCIVTT_Neon
VFG is Neon CL.
Definition: BFciLib.h:692
CiAqStartHiFrameRate
tCIRC CiAqStartHiFrameRate(tCIp cip, tCIU32 nFrames)
Start filling first frame buffer using High Frame Rate Polling.
kCIsigCXPeventRcvd
@ kCIsigCXPeventRcvd
CXP event received.
Definition: BFciLib.h:1027
kCIEdataHWerr
@ kCIEdataHWerr
HW detected.
Definition: BFciLib.h:142
tCIvfgTestTraitEnums
tCIvfgTestTraitEnums
Definition: BFciLib.h:683
kCICT_isMaster
@ kCICT_isMaster
master frame grabber for board
Definition: BFciLib.h:283
kCIGPIN0
@ kCIGPIN0
Definition: BFciLib.h:1383
CiTrigModeSet
tCIRC CiTrigModeSet(tCIp cip, tCIU32 mode)
Set vertical trigger mode.
kCICCKCXP_TS
@ kCICCKCXP_TS
VFGx_TRIG_SEL.
Definition: BFciLib.h:1305
kCIcamFile_hROIsize
@ kCIcamFile_hROIsize
horizontal ROI size (aka, width)
Definition: BFciLib.h:751
kCIRDCXP_BUTTON
@ kCIRDCXP_BUTTON
Definition: BFciLib.h:1427
kCIEcfgNotLoaded
@ kCIEcfgNotLoaded
no config data in driver store
Definition: BFciLib.h:145
kBFsplitVertical
@ kBFsplitVertical
Definition: BFciLib.h:1667
kCIEinvalidStateErr
@ kCIEinvalidStateErr
operation invalid in this state
Definition: BFciLib.h:124
kCIAQSerrorDone
@ kCIAQSerrorDone
forced to abort
Definition: BFciLib.h:2190
CiGetBufferMode
tCIRC CiGetBufferMode(tCIp cip, tCIU32 *mode)
Get the VFG/library buffer mode.
tCItrigConfig::trigEnable
unsigned int trigEnable
0 => no hardware trigger
Definition: BFciLib.h:1833
kBFTSeitherEdge
@ kBFTSeitherEdge
Either edge.
Definition: BFciLib.h:2030
tCItypedData::dataType
tCIU32 dataType
one of tCIdataTypeEnums
Definition: BFciLib.h:90
CiGetOldestNotDeliveredFrame
tCIRC CiGetOldestNotDeliveredFrame(tCIp cip, tCIU32 *frameID, tCIU8 **frameData)
Return oldest not delivered.
kCIVTT_Axn4xB
@ kCIVTT_Axn4xB
VFG is Axion CL 4xB.
Definition: BFciLib.h:712
kCIGPOUT4
@ kCIGPOUT4
Definition: BFciLib.h:1345
kCIBQ_needsFirmware
@ kCIBQ_needsFirmware
Definition: BFciLib.h:444
CiSysVFGenum
tCIRC CiSysVFGenum(tCIU32 *nFound)
Count the BitFlow VFG.
kCIsigGn2pciePktDropped
@ kCIsigGn2pciePktDropped
Gn2 PCIe packet dropped.
Definition: BFciLib.h:1012
kCIEnotInitialized
@ kCIEnotInitialized
camera not initialized
Definition: BFciLib.h:108
kCIVTT_CL
@ kCIVTT_CL
VFG interface is Camera Link.
Definition: BFciLib.h:685
kCIEdeviceRevisionErr
@ kCIEdeviceRevisionErr
device unsupported by this board
Definition: BFciLib.h:141
CiTSsequenceGet
tCIRC CiTSsequenceGet(tCIp cip, tCIU32 sequencer, tCIU32 *tsArySize, tCITSEP tsAry, tCIU32 *preTrigCT0, tCIU32 *preTrigCT1, tCIU32 *preTrigCT2, tCIU32 *preTrigCT3, tCIU32 *triggerSrc)
Get a sequence in the timing sequencer, returning an array of segments.
kCIsigCXPeventFIFOoverflow
@ kCIsigCXPeventFIFOoverflow
CXP event FIFO overflow.
Definition: BFciLib.h:1028
kBFupsideDownA
@ kBFupsideDownA
VFG A fills frame bottom up.
Definition: BFciLib.h:1672
tCItrigConfig::encPol
unsigned int encPol
0 => assert is rising edge
Definition: BFciLib.h:1840
kCIintCountENCB
@ kCIintCountENCB
Definition: BFciLib.h:942
tCIextraFrameInfo::buffNdx
tCIU32 buffNdx
index of buffer in list
Definition: BFciLib.h:2343
kBFTSlow
@ kBFTSlow
Trigger low.
Definition: BFciLib.h:2029
tCIDOUBLE
double tCIDOUBLE
floating point
Definition: BFciLib.h:56
CiSysFindLiveVFGs
tCIRC CiSysFindLiveVFGs(tCIU32 recSize, tCIVFGSEP vfgAry)
Query live status of VFGs and connected cameras.
CiLoadFirmware
tCIRC CiLoadFirmware(tCIp cip, char *fName)
Load a specific firmware file to VFG.
kBFnoTouchAllPages
@ kBFnoTouchAllPages
Definition: BFciLib.h:176
CiVFGopen
tCIRC CiVFGopen(tCIU32 devNdx, tCIU32 modeFlags, tCIp *cip)
Open a VFG.
kCIEnotImplemented
@ kCIEnotImplemented
function not available
Definition: BFciLib.h:148
kCIintCountCTAB
@ kCIintCountCTAB
Definition: BFciLib.h:924
kCItrigOneShotStartAStopAlevel
@ kCItrigOneShotStartAStopAlevel
acq wh/trgr asserted; wait hi/lo
Definition: BFciLib.h:1922
kCIGPOUT1
@ kCIGPOUT1
Definition: BFciLib.h:1342
kCIGPIN1
@ kCIGPIN1
Definition: BFciLib.h:1384
tCIvfgStateEntry::VFGnum
tCIU32 VFGnum
Board VFG number.
Definition: BFciLib.h:317
kBFTSTencQSel
@ kBFTSTencQSel
Quadrature Encoder.
Definition: BFciLib.h:2008
tCIsignalEventData::count
tCIU32 count
number of events represented.
Definition: BFciLib.h:1146
tCIGPOUTCONenums
tCIGPOUTCONenums
Definition: BFciLib.h:1253
kCIGPOUT8
@ kCIGPOUT8
Definition: BFciLib.h:1352
kCICCKCXP_CT0
@ kCICCKCXP_CT0
CT0 from CTAB.
Definition: BFciLib.h:1301
CiSignalWait
tCIRC CiSignalWait(tCIp cip, tCISHP cish, tCIU32 recSize, tCISEDP storeHere, int timeoutMsec)
Wait for a signal.
CiCLinit
tCIRC CiCLinit(tCIp cip, tCIU32 dataBits, tCIU32 parity, tCIU32 stopBits, tCIU32 baud9600)
Initialize the frame grabber CL port.
kBFCXPnoLinkOK
@ kBFCXPnoLinkOK
Definition: BFciLib.h:177