BFLinux
Data Structures | Macros | Typedefs | Enumerations | Functions
BFciLib.h File Reference

Go to the source code of this file.

Data Structures

struct  tCISGentry
 
struct  tCItypedData
 
struct  tCIvfgStateEntry
 Structure used for array of VFG state info. More...
 
struct  tCIsignalEventData
 Data struct representing a signal event. More...
 
union  tCItrigConfig
 
struct  tCITSentry
 Entry structure used to read and write sequences to the Timing Sequencer. More...
 
struct  tCIextraFrameInfo
 
struct  tCiCXPheartbeat
 
struct  tCiCXPeventPacket
 
struct  tCiCXPeventMessage
 
union  tCIdiagStruct
 

Macros

#define kBFenvVar   "BITFLOW_INSTALL_DIRS"
 
#define kBFbinDir   "bin"
 kernel module and test tools More...
 
#define kBFcameraDir   "camf"
 camera files More...
 
#define kBFfirmwareDir   "fshf"
 firmware More...
 
#define kBFconfigDir   "config"
 board configuration More...
 
#define kBFusrCustomFlags   "BITFLOW_CUSTOM_USER_FLAGS"
 
#define kBFformatPPC   "BITFLOW_FORMAT_PPC"
 
#define kBFenvPerIoctlDelay   "BITFLOW_PER_IOCTL_DELAY"
 
#define kBFenvOverrideCamFN   "BITFLOW_OVERRIDE_CAMFN"
 
#define kBFdefaultCXPretry   0
 
#define kBFenvCXPretry   "BITFLOW_CXP_RETRY"
 
#define kBFenvCXPioDelay   "BITFLOW_CXP_IO_DELAY"
 
#define kBFdefaultCXPioDelay   0
 
#define CiSysBrdEnum   CiSysVFGenum
 
#define CiSysBrdInfo   CiSysVFGinfo
 
#define CiSysBrdInfo2   CiSysVFGinfo2
 
#define CiBrdOpen   CiVFGopen
 
#define CiBrdIndex   CiVFGindex
 
#define CiBrdFileDescriptor   CiVFGfileDescriptor
 
#define CiBrdQueryInfo   CiVFGqueryInfo
 
#define CiBrdQueryState   CiVFGqueryState
 
#define kBFDEFAULTCFGFILE   NULL
 
#define CiBrdInitialize   CiVFGinitialize
 
#define CiBrdInquire   CiVFGinquire
 
#define CiBrdInquire2   CiVFGinquire2
 
#define CiBrdClose   CiVFGclose
 
#define kCIRDCXP_ENCB_DIF   kCIGPIN0
 
#define kCIRDCXP_ENCB_TTL   kCIGPIN1
 
#define kCIRDCXP_ENCB_VFG0   kCIGPIN2
 
#define kCIRDCXP_ENCB_SW   kCIGPIN3
 
#define kCIRDCXP_ENCA_DIF   kCIRD_ENC_DIFF
 
#define kCIRDCXP_ENCA_TTL   kCIRD_ENC_TTL
 
#define kCIRDCXP_ENCA_VFG0   kCIRD_ENC_OPTO
 
#define kCIRDCXP_ENCA_SW   kCIRD_swEncoder
 
#define kCIRDCXP_TRIG_TTL   kCIRD_TRIG_TTL
 
#define kCIRDCXP_TRIG_DIF   kCIRD_TRIG_DIFF
 
#define kCIRDCXP_TRIG_VFG0   kCIRD_TRIG_OPTO
 
#define kCIRDCXP_SW_TRIG   kCIRD_swTrigger
 
#define kCIRDCXP_SCAN_STEP   kCIGPIN4
 
#define BYTES_PER_PIXEL(bitsPerPixel)   (((bitsPerPixel) == 36) ? (6) : (((bitsPerPixel) + 7) >> 3))
 

Typedefs

typedef struct tCIinterface * tCIp
 anonymous access token More...
 
typedef int tCIRC
 function result code More...
 
typedef unsigned char tCIU8
 data pointer More...
 
typedef unsigned short tCIU16
 CTABs mostly. More...
 
typedef unsigned int tCIU32
 everything but CTABs More...
 
typedef unsigned long long tCIU64
 really big sizes More...
 
typedef char * tCISTRZ
 null-terminated string More...
 
typedef double tCIDOUBLE
 floating point More...
 
typedef void * tCIVOIDP
 pointer to something More...
 
typedef struct tCISGentrytCISGP
 
typedef struct tCItypedDatatCITDP
 
typedef struct tCIvfgStateEntrytCIVFGSEP
 
typedef struct tCIsignalHandle * tCISHP
 anonymous signal handle More...
 
typedef struct tCIsignalEventDatatCISEDP
 
typedef struct tCITSentrytCITSEP
 
typedef struct tCIextraFrameInfotCIXBIP
 
typedef struct tCiCXPheartbeattCICXPHBP
 
typedef struct tCiCXPeventPackettCICXPEP
 
typedef struct tCiCXPeventMessagetCICXPEM
 
typedef void(* tCIstrDisplayF) (char *fmt,...)
 

Enumerations

enum  tCIdataTypeEnums {
  kBF_invalidData = 0, kBF_tCIU32, kBF_tCIDOUBLE, kBF_tCISTRZ,
  kBF_tCIU32_pair, kBF_tCIU32_list_pair, kBF_tCIU32_tCISTRZ_pair
}
 
enum  tCIerrorCode {
  kCIEnoErr = 0, kCIEfirstEC = -30000, kCIEnoAccessibleVideo =kCIEfirstEC, kCIErangeErr,
  kCIEmemoryErr, kCIEbadToken, kCIEnullArg, kCIEinvalidArg,
  kCIEnotInitialized, kCIEnotConfigured, kCIEexclusiveFail, kCIEexclusiveAlready,
  kCIEuserDMAnoWrite, kCIEnoWrPermission, kCIEfileError, kCIEfailureErr,
  kCIEbadFileFormat, kCIEbadCRC, kCIEparseErr, kCIEfileNotFound,
  kCIEnoEnvVar, kCIEversionErr, kCIEbadInstallErr, kCIEnotSupported,
  kCIEinvalidStateErr, kCIEnoDataErr, kCIEdmaOverrunErr, kCIEdataErr,
  kCIEdmaErr, kCIEuserDMAerr, kCIEnoNewData, kCIEbufferUnderrunErr,
  kCIEinfoAgedOut, kCIEwrongMode, kCIEbadID, kCIEtimeoutErr,
  kCIEaqAbortedErr, kCIEresourceBusy, kCIEnotOpen, kCIEnotMaster,
  kCIEnotCompatibleWithMaster, kCIEdeviceRevisionErr, kCIEdataHWerr, kCIEdataOVSTEPerr,
  kCIEplatformFail, kCIEcfgNotLoaded, kCIEcfgNotApplied, kCIEcanceledErr,
  kCIEnotImplemented, kCIEerrCodeLast
}
 
enum  tCIusrCustomFlagsEnum { kBFnoTouchAllPages = 1, kBFCXPnoLinkOK = 1<<1, kBFallPagesZero = 1<<2 }
 
enum  tCImaxDevEnum { kCIlibMaxDevScan = 25 }
 
enum  tCIcamTypeEnums {
  kCICT_Neon = 1, kCICT_NeonDIF, kCICT_Karbon, kCICT_Alta,
  kCICT_KbnCXP, kCICT_CtnCXP, kCICT_AxnCL, kCICT_AonCXP,
  kCICT_ClxCXP, kCICT_VFGmask = 31, kCICT_isMaster = 0x1000
}
 
enum  tCIboardOpenEnums { kCIBO_readOnly = 0, kCIBO_writeAccess = 1, kCIBO_exclusiveWrAccess = 1 << 1 }
 
enum  tCIboardQueryEnums {
  kCIBQ_shuttingDown = 1, kCIBQ_startingUp, kCIBQ_usrDMAerr, kCIBQ_needsFirmware,
  kCIBQ_firmwareLoaded, kCIBQ_dmaBufferReady, kCIBQ_dmaIsActive, kCIBQ_dmaIsAborted,
  kCIBQ_stateUnknown = 9999
}
 
enum  tCIinitFlagsEnums { kCIIF_default = 0, kCIIF_noGenTLinit = 1 }
 
enum  tCIvfgTestTraitEnums {
  kCIVTT_R64 = 0, kCIVTT_CL, kCIVTT_CXP, kCIVTT_Kbn,
  kCIVTT_Kbn2, kCIVTT_Kbn4, kCIVTT_KbnBase, kCIVTT_KbnFull,
  kCIVTT_Neon, kCIVTT_NeonBase, kCIVTT_NeonD, kCIVTT_NeonQ,
  kCIVTT_NeonDif, kCIVTT_Master, kCIVTT_Slave, kCIVTT_EncDiv,
  kCIVTT_NTG, kCIVTT_Gn2, kCIVTT_Ctn, kCIVTT_CtnCXP2,
  kCIVTT_CtnCXP4, kCIVTT_CtnII, kCIVTT_Axn, kCIVTT_AxnBase,
  kCIVTT_Axn1xE, kCIVTT_Axn2xE, kCIVTT_Axn1xB, kCIVTT_Axn2xB,
  kCIVTT_Axn4xB, kCIVTT_AxnII, kCIVTT_Aon, kCIVTT_AonCXP1,
  kCIVTT_AonII, kCIVTT_Clx, kCIVTT_ClxCXP1, kCIVTT_ClxCXP2,
  kCIVTT_ClxCXP4, kCIVTT_HasSerialPort, kCIVTT_Synthetic, kCIVTT_CXPlinkPowerUp,
  kCIVTT_CXPlinkAlive, kCIVTT_CLclockDetected, kCIVTT_CameraReady, kCIVTT_traitCount
}
 
enum  tCIcamFileQueryEnums {
  kCIcamFile_bitsPerPix = 0, kCIcamFile_packed, kCIcamFile_hROIoffset, kCIcamFile_hROIsize,
  kCIcamFile_vROIoffset, kCIcamFile_vROIsize, kCIcamFile_format, kCIcamFile_acqTimeout,
  kCIcamFile_acqOffWhenClosing, kCIcamFile_maxCXPversion, kCIcamFile_bitDepthOption, kCIcamFile_requiresTLParamsLocked,
  kCIcamFile_loadedToDrvr = 0x1000, kCIcamFile_appliedToVFG, kCIcamFile_isDefault = 0x80000000
}
 
enum  tCIbitDepthOptionEnums { kCIBPP_formatterNormal = 0, kCIBPP_formatterRGBSwap = 1, kCIBPP_formatterManual = 1 << 1, kCIBPP_formatterIgnore = 1 << 2 }
 
enum  kCIPollEventEnums {
  kCIPEintHW = 1, kCIPEintTRIG = 1 << 1, kCIPEintSERIAL = 1 << 2, kCIPEintQUAD = 1 << 3,
  kCIPEintDTR = 1 << 3, kCIPEintCTAB = 1 << 4, kCIPEintEOF = 1 << 5, kCIPEintOVSTEP = 1 << 6,
  kCIPEdrvrErr = 1 << 7, kCIPEnoFirmware = 1 << 8, kCIPEintCXP = 1 << 9, kCIPEintGn2 = 1 << 10,
  kCIPEintPollAll, kCIPEintError
}
 
enum  tCIinterruptCounterEnums {
  kCIintCountHW = 0, kCIintCountTRIG, kCIintCountSERIAL, kCIintCountQUAD,
  kCIintCountCTAB, kCIintCountEOF, kCIintCountOVSTEP, kCIintCountCXP,
  kCIintCountTOTAL, kCIintBitsCXP, kCIintBitsGn2, kCINinterruptCounters,
  kCIintCountENCA = kCIintCountCTAB, kCIintCountENCB = kCIintCountCTAB, kCIintCountDTR = kCIintCountQUAD
}
 
enum  tCIsignalEnums {
  kCIsigHW = 0, kCIsigTRIG, kCIsigSERIAL, kCIsigQUAD,
  kCIsigCTAB, kCIsigEOF, kCIsigOVSTEP, kCIsigGn2xAcquired,
  kCIsigGn2zAcquired, kCIsigGn2bmError, kCIsigGn2aeLossOfSync, kCIsigGn2pciePktDropped,
  kCIsigGn2encA, kCIsigGn2encB, kCIsigGn2xStart, kCIsigGn2yStart,
  kCIsigGn2zStart, kCIsigCXPunderCurrent, kCIsigCXPoverCurrent, kCIsigCXPtrigAckRcvd,
  kCIsigCXPctlAckVerErr, kCIsigCXPctlAckRcvd, kCIsigCXPeventRcvd, kCIsigCXPeventFIFOoverflow,
  kCIsigCXPctlRspFIFOovf, kCIsigCXPctlReqFIFOovf, kCIsigCXPdownTrigRcvd, kCIsigCXPtrigNoMatch,
  kCIsigCXPioackUnknownType, kCIsigCXPioackNoMatch, kCIsigCXPhbError, kCIsigCXPhbRcvd,
  kCIsigCXPstrmPktDrop, kCIsigCXPstrmNotEnoughDat, kCIsigCXPstrmTooMuchDat, kCIsigCXPstrmBadCRC,
  kCIsigCXPstrmOverflow, kCIsigCXPstrmCorner, kCIsigCXPserdesLostAlign, kCIsigCOUNT
}
 Signals. More...
 
enum  tCIsignalQueueOpEnums { kCISQenumQueued = 0, kCISQenumReceived, kCISQenumDropped, kCISQflush }
 < Signal queue operations More...
 
enum  tCIGPOUTCONenums {
  kCIGPOC_CON4 = 0, kCIGPOC_CT0 = 1, kCIGPOC_CT1 = 2, kCIGPOC_CT2 = 3,
  kCIGPOC_CT3 = 4, kCIGPOC_CLOCK = 5, kCIGPOC_Internal = 6, kCIGPOC_ENC = 7
}
 
enum  tCICCCONenums {
  kCICCOC_CT0 = 0, kCICCOC_CT1 = 1, kCICCOC_CT2 = 2, kCICCOC_onBoard = 3,
  kCICCOC_CLOCK = 4, kCICCOC_GPIN0 = 5, kCICCOC_0 = 6, kCICCOC_1 = 7,
  kCICCOC_CT3 = 4, kCICCKCXP_0 = 0, kCICCKCXP_1 = 1, kCICCKCXP_CT0 = 2,
  kCICCKCXP_CT1 = 3, kCICCKCXP_CT2 = 4, kCICCKCXP_CT3 = 5, kCICCKCXP_TS = 6,
  kCICCKCXP_EAS = 7, kCICCKCXP_EBS = 8, kCICCKCXP_NTGx = 9, kCICCKCXP_NTG0 = 10,
  kCICCCCXP_0 = 0, kCICCCCXP_1 = 1, kCICCCCXP_CT0 = 2, kCICCCCXP_CT1 = 3,
  kCICCCCXP_CT2 = 4, kCICCCCXP_CT3 = 5, kCICCCCXP_TS = 6, kCICCCCXP_EAS = 7,
  kCICCCCXP_EBS = 8, kCICCCCXP_NTGx = 9, kCICCCCXP_NTG0 = 10, kCICCCCXP_last
}
 
enum  kCIGPOUTenums {
  kCIGPOUT0 = 1, kCIGPOUT1 = 1 << 1, kCIGPOUT2 = 1 << 2, kCIGPOUT3 = 1 << 3,
  kCIGPOUT4 = 1 << 4, kCIGPOUT5 = 1 << 5, kCIGPOUT6 = 1 << 6, kCIGPOUT7 = 1 << 7,
  kCIGPOUT8 = 1 << 8, kCIGPOUT9 = 1 << 9, kCIGPOUT10 = 1 << 10, kCIGPOUT11 = 1 << 11
}
 
enum  kCIGPINenums {
  kCIGPIN0 = 1, kCIGPIN1 = 1 << 1, kCIGPIN2 = 1 << 2, kCIGPIN3 = 1 << 3,
  kCIGPIN4 = 1 << 4, kCIRD_TRIG_DIFF = 1 << 5, kCIRD_TRIG_TTL = 1 << 6, kCIRD_TRIG_OPTO = 1 << 7,
  kCIRD_ENC_DIFF = 1 << 8, kCIRD_ENC_TTL = 1 << 9, kCIRD_ENC_OPTO = 1 << 10, kCIRD_FEN = 1 << 11,
  kCIRD_swTrigger = 1 << 12, kCIRD_swEncoder = 1 << 13, kCIRDCXP_BUTTON = 1 << 16, kCIRDCXP_TRIG_IN = 1 << 17,
  kCIRDCXP_TRIG_SELECTED = 1 << 18, kCIRDCXP_ENCA_SELECTED = 1 << 19, kCIRDCXP_ENCB_SELECTED = 1 << 20, kCIRDCXP_TRIG_OUT = 1 << 21
}
 
enum  tBFsplitEnums { kBFsplitVertical = 0, kBFsplitHorizontal = 1, kBFupsideDownA = 0x10, kBFupsideDownB = 0x20 }
 
enum  kCIVTrigModeEnum {
  kCItrigUnknown = -1, kCItrigInvalid = 0, kCItrigFreeRun, kCItrigPerFrame,
  kCItrigQualified, kCItrigOneShot, kCItrigOneShotStartAStopA, kCItrigOneShotStartAStopAlevel
}
 
enum  tCItimingSequencerEnum { kBFTSmain = 0, kBFTSaux }
 Timing Sequencer selection. More...
 
enum  tCITStrigTypeEnum {
  kBFTSTtrigSel = 0, kBFTSTencASel, kBFTSTencBSel, kBFTSTencQSel,
  kBFTSTgatedTrig, kBFTSTencDivSel, kBFTSTsof, kBFTSTeof,
  kBFTSTsol, kBFTSTeol, kBFTSTfvalRising, kBFTSTfvalFalling,
  kBFTSTlvalRising, kBFTSTlvalFalling, kBFTSTunknown = 0xffff
}
 Timing Sequencer Trigger sources. More...
 
enum  tCITSwaitForTriggerTypeEnum {
  kBFTSnoWait = 0, kBFTSrisingEdge, kBFTSfallingEdge, kBFTShigh,
  kBFTSlow, kBFTSeitherEdge, kBFTStrigUnknown = 0xffff
}
 Trigger conditions for Timing Sequencer. More...
 
enum  kCIAqGetStatEnums {
  kCIAQSinvalidState = 0, kCIAQSidle, kCIAQSsnapShotInProcess, kCIAQSsnapShotDone,
  kCIAQScontinuousInProcess, kCIAQSerrorDone, kCIAQScontinuousStopping, kCIAQScontinuousDone,
  kCIAQSstateMask = 15, kCIAQSaqIsSIP = 16, kCIAQSaqUnderrun = 32, kCIAQSaqAbort = 64
}
 
enum  tCIbufferModeEnums { kCIcircularBuffers = 0, kCIconsumeBuffers = 1 }
 
enum  tCIbufferStatusEnums {
  kCIbsUnassigned = 0, kCIbsBusy = 1, kCIbsPending = 2, kCIbsFilled = 3,
  kCIbsUnknown = 10
}
 
enum  tBFCLenums { kBFCLoutFIFOhasRoom = 1, kBFCLoutFIFOempty = 1<<1, kBFCLoutputFIFOidle = kBFCLoutFIFOhasRoom | kBFCLoutFIFOempty }
 
enum  tCXPlinkEnums { kCiCXPlinkBitMask = 0x0F, kCiCXPlinkSpeedMask = 0xFF000000, kCiCXPuseMasterLink = 0x0FF }
 
enum  tCiCXPeventPacketEnum { kCImaxEventPayload = 256 }
 
enum  tCiCXPeventNamespaceEnum { kCICXPEnamespaceGenICam = 0, kCICXPEnamespaceCXP = 1, kCICXPEnamespaceDevice = 2, kCICXPEnamespaceReserved = 3 }
 
enum  tCIszCTABenum { kCIszCTAB = 16 }
 

Functions

void CiSetMaxDevices (tCIU32 maxDev)
 Max /dev/video<n> to scan. More...
 
tCIRC CiSysGetVersions (tCIU32 *libVers, tCIU32 *drvVers)
 Return library revision level. More...
 
tCIRC CiSysVFGenum (tCIU32 *nFound)
 Count the BitFlow VFG. More...
 
tCIRC CiSysVFGinfo (tCIU32 which, tCIU32 *ifaceType, tCIU32 *switches, tCIU32 *devNdx, tCISTRZ busName)
 Identify a single VFG. More...
 
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. More...
 
tCIRC CiSysFindLiveVFGs (tCIU32 recSize, tCIVFGSEP vfgAry)
 Query live status of VFGs and connected cameras. More...
 
tCIRC CiVFGopen (tCIU32 devNdx, tCIU32 modeFlags, tCIp *cip)
 Open a VFG. More...
 
tCIU32 CiVFGindex (tCIp cip)
 Returns devNdx of CiVFGopen() More...
 
tCIRC CiVFGfileDescriptor (tCIp cip, int *fdp)
 Return file descriptor for VFG. More...
 
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. More...
 
tCIRC CiGetOpenCount (tCIp cip, tCIU32 *nOpen)
 Get count of open file descriptors for this VFG. More...
 
tCIRC CiVFGqueryState (tCIp cip, tCIU32 *state)
 ? Is frame grabber initialized ? More...
 
tCIRC CiVFGinitialize (tCIp cip, tCISTRZ cfgFN)
 Initialize board or VFG. More...
 
tCIRC CiVFGapplyCameraFile (tCIp cip, tCISTRZ camFN)
 Initialize a VFG directly from a camera file. More...
 
tCIRC CiVFGloadConfig (tCIp cip, tCISTRZ cfgFN)
 Load configuration data into the VFG driver data store. More...
 
tCIRC CiVFGloadCameraFile (tCIp cip, tCISTRZ camFN)
 Load camera file data into the VFG driver data store. More...
 
tCIRC CiVFGapplyCurrent (tCIp cip, tCIU32 initFlags)
 Initialize a VFG from its driver data store. More...
 
tCIRC CiVFGinquire (tCIp cip, tCITDP *cfgFN, tCITDP *config, tCITDP *cameraFN, tCITDP *camera, tCITDP *firmFN, tCITDP *firmware, tCITDP *serial)
 Interrogate configuration. More...
 
tCIRC CiVFGinquire2 (tCIp cip, tCITDP *cfgFN, tCITDP *config, tCITDP *cameraFN, tCITDP *camera, tCITDP *firmFN, tCITDP *firmware, tCITDP *serial, tCITDP *cxpLink, tCITDP *spare, char **fmtPtr)
 
tCIU8 CiVFGtest (tCIp cip, tCIU32 trait, tCIU32 opt)
 Test the VFG to determine whether or not it matches the trait. More...
 
tCIRC CiCamFileInquire (tCIp cip, tCIU32 param, tCIU32 *value)
 Query camera file parameters initialized on the VFG. More...
 
tCIRC CiVFGclose (tCIp cip)
 Close a VFG. More...
 
short int CiPollConfigure (tCIU32 desired)
 Return events field of pollfd. More...
 
tCIU32 CiPollResult (short int revents)
 Return mask of kCIPollEventEnums. More...
 
tCIRC CiPollClear (tCIp cip, tCIU32 mask)
 Clear all pending poll() events. More...
 
tCIRC CiTrigInterruptEnable (tCIp cip)
 Enable TRIG interrupts. More...
 
tCIRC CiTrigInterruptDisable (tCIp cip)
 Disable TRIG interrupts. More...
 
tCIRC CiEncInterruptEnable (tCIp cip, tCIU32 zAelseB)
 Enable ENCA/B interrupts. More...
 
tCIRC CiEncInterruptDisable (tCIp cip, tCIU32 zAelseB)
 Disable ENCA/B interrupts. More...
 
tCIRC CiGetIntCounts (tCIp cip, tCIU32 *ic)
 Interrupts since last AqStart. More...
 
tCIRC CiSignalSetup (tCIp cip, tCIU32 signal, tCIU32 link, tCISHP *cish)
 Create a signal handle. More...
 
tCIRC CiSignalQueueOp (tCIp cip, tCISHP cish, tCIU32 operation, tCIU32 *count)
 Signal queue inquiry and manipulation. More...
 
tCIRC CiSignalExec (tCIp cip, tCIU32 cishCnt, tCISHP *cishAry, tCIU32 maxWakeCnt, tCIU32 *pWakeCnt, int timeoutMsec)
 Execute the signal wait service. More...
 
tCIRC CiSignalWait (tCIp cip, tCISHP cish, tCIU32 recSize, tCISEDP storeHere, int timeoutMsec)
 Wait for a signal. More...
 
tCIRC CiSignalWaitCancel (tCIp cip, tCISHP cish)
 Cancel one call to CiSignalWait. More...
 
tCIRC CiSignalCleanup (tCIp cip, tCISHP cish, tCIU32 queueOp, tCIU32 *count)
 Cleanup the signal handle, and all associated resources. More...
 
tCIRC CiGPOUTCONset (tCIp cip, tCIU32 which, tCIU32 value)
 Set the GPOUT source(s). More...
 
tCIRC CiCCnCONset (tCIp cip, tCIU32 which, tCIU32 value)
 Set the CCn source(s) More...
 
tCIRC CiGPOUTset (tCIp cip, tCIU32 mask, tCIU32 value)
 Set the GPOUT values. More...
 
tCIRC CiGPOUTget (tCIp cip, tCIU32 *value)
 Get the GPOUT values. More...
 
tCIRC CiGPINget (tCIp cip, tCIU32 *value)
 Get the GPIN values. More...
 
tCIRC CiDrvrBuffConfigure (tCIp cip, tCIU32 count, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
 Driver allocates DMA resources. More...
 
tCIRC CiUserBuffConfigure (tCIp cip, tCIU32 count, tCIU8 *buffer, tCIU64 bufferBytes, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
 User allocates DMA resources. More...
 
tCIRC CiUserBuffConfigureSG (tCIp cip, tCIU32 nSGentry, tCISGP sgList, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
 Scatter-gather DMA resources. More...
 
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. More...
 
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. More...
 
tCIRC CiBufferInterrogate (tCIp cip, tCIU32 *nFrames, tCIU32 *bitsPerPix, tCIU32 *hROIoffset, tCIU32 *hROIsize, tCIU32 *vROIoffset, tCIU32 *vROIsize, tCIU32 *stride)
 Return DMA resource description. More...
 
tCIRC CiMapFrameBuffers (tCIp cip, tCIU32 nzWrite, tCIU32 *nPtrs, tCIU8 ***uPtrs)
 Returns user ptrs to frame buff(s). More...
 
tCIRC CiUnmapFrameBuffers (tCIp cip)
 Release user access to DMA buffs. More...
 
tCIRC CiTrigConfigure (tCIp cip, tCItrigConfig vCfg, tCItrigConfig hCfg)
 Configure vert/horiz data trig. More...
 
tCIRC CiTrigConfigGet (tCIp cip, tCItrigConfig *vCfg, tCItrigConfig *hCfg, tCIU32 *mode)
 Retrieve current trigger setup. More...
 
tCIRC CiTrigModeSet (tCIp cip, tCIU32 mode)
 Set vertical trigger mode. More...
 
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. More...
 
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. More...
 
tCIRC CiAqStart (tCIp cip, tCIU32 nFrames)
 Start filling first frame buffer. More...
 
tCIRC CiAqStartSIP (tCIp cip, tCIU32 nFrames)
 Begin Start-Stop Image Processing. More...
 
tCIRC CiAqStartHiFrameRate (tCIp cip, tCIU32 nFrames)
 Start filling first frame buffer using High Frame Rate Polling. More...
 
tCIRC CiAqStop (tCIp cip)
 Terminate continous DMA after next EOF. More...
 
tCIRC CiAqAbort (tCIp cip)
 Terminate any DMA immediately. More...
 
tCIRC CiAqSWtrigEnc (tCIp cip, tCIU32 trigValue, tCIU32 encValue)
 Set software trig and/or encoder. More...
 
tCIRC CiAqSWreset (tCIp cip)
 Software reset to hardware/drvr. More...
 
tCIRC CiAqGetStatus (tCIp cip, tCIU32 *state, tCIU32 *nFrames, tCIU32 *nErrors)
 Describe the acquisition state. More...
 
tCIRC CiWaitNextUndeliveredFrame (tCIp cip, int timeoutMsec)
 Return at EOF of next undelivered. More...
 
tCIRC CiGetMostRecentFrame (tCIp cip, tCIU32 *frameID, tCIU8 **frameData)
 Return most recently acquired. More...
 
tCIRC CiGetOldestNotDeliveredFrame (tCIp cip, tCIU32 *frameID, tCIU8 **frameData)
 Return oldest not delivered. More...
 
tCIRC CiResetDelivered (tCIp cip, tCIU32 frameID)
 Restart delivery from here. More...
 
tCIRC CiGetUndeliveredCount (tCIp cip, tCIU32 *count)
 Return number of undelivered frames. More...
 
tCIRC CiResetHWOVSTEP (tCIp cip)
 Reset HW/OVSTEP error w/o acquisition restart. More...
 
tCIRC CiGetExtraFrameInfo (tCIp cip, tCIU32 recSize, tCIXBIP storeHere)
 Retrieve non-pixel information. More...
 
tCIRC CiSetBufferMode (tCIp cip, tCIU32 mode)
 Set the VFG/library buffer mode. More...
 
tCIRC CiGetBufferMode (tCIp cip, tCIU32 *mode)
 Get the VFG/library buffer mode. More...
 
tCIRC CiGetBufferID (tCIp cip, tCIU32 frameID, tCIU32 *buffID)
 Get the buffer ID of a frame. More...
 
tCIRC CiGetBufferStatus (tCIp cip, tCIU32 buffID, tCIU32 *status)
 Get the status of a frame buffer. More...
 
tCIRC CiReleaseBuffer (tCIp cip, tCIU32 buffID)
 Release a frame buffer for DMA. More...
 
tCIRC CiRegGetCount (tCIp cip, tCIU32 *nReg)
 Number of 32b registers. More...
 
tCIRC CiRegPeek (tCIp cip, tCIU32 ndx, tCIU32 *result)
 < Read a 32b register. More...
 
tCIRC CiRegPoke (tCIp cip, tCIU32 ndx, tCIU32 value, tCIU32 mask)
 Write a 32b register. More...
 
char * CiRegName (tCIp cip, tCIU32 ndx)
 Return register name. More...
 
tCIU32 CiRegGetFields (tCIp cip, tCIU32 ndx, tCIU32 *ndxAry, tCIU32 *cnt)
 Return register Field indices. More...
 
int CiFieldNdxFromStr (tCIp cip, char *str)
 Return enumerate from string. More...
 
int CiFieldWidth (tCIp cip, int fieldNdx)
 Return field width. More...
 
char * CiFieldNameFromNdx (tCIp cip, int ndx)
 Return label for enumerate. More...
 
tCIRC CiFieldPeek (tCIp cip, tCIU32 ndx, tCIU32 *result)
 Read a CON register field. More...
 
tCIRC CiFieldPoke (tCIp cip, tCIU32 ndx, tCIU32 value)
 Write a CON register field. More...
 
tCIRC CiCLinit (tCIp cip, tCIU32 dataBits, tCIU32 parity, tCIU32 stopBits, tCIU32 baud9600)
 Initialize the frame grabber CL port. More...
 
tCIRC CiCLgetBytesAvail (tCIp cip, tCIU32 *avail)
 Return number of bytes in buffer. More...
 
tCIRC CiCLreadBytes (tCIp cip, tCIU32 buffSize, tCIU32 *bytesRead, tCIU8 *buffer)
 Read bytes from buffer. More...
 
tCIRC CiCLwriteBytesToFIFO (tCIp cip, tCIU32 buffSize, tCIU8 *buffer)
 Write bytes to CL interface. More...
 
tCIRC CiCLwriteBytes (tCIp cip, tCIU32 buffSize, tCIU8 *buffer)
 Write bytes to CL interface. More...
 
tCIRC CiCLgetOutputFIFOstatus (tCIp cip, tCIU32 *status)
 Test status of CL output FIFO. More...
 
tCIRC CiCLinfo (tCIp cip, tCIU32 *dataBits, tCIU32 *parity, tCIU32 *stopBits, tCIU32 *baud)
 Get settings of CL serial port. More...
 
tCIRC CiCLloopback (tCIp cip, tCIU32 nzSet)
 Set/clear CameraLink loopback. More...
 
tCIRC CiCLterm (tCIp cip)
 Close CameraLink access. More...
 
tCIRC CiCXPwriteReg (tCIp cip, tCIU32 link, tCIU32 address, tCIU32 value)
 Write to CXP register. More...
 
tCIRC CiCXPreadReg (tCIp cip, tCIU32 link, tCIU32 address, tCIU32 *value)
 Read from CXP register. More...
 
tCIRC CiCXPwriteData (tCIp cip, tCIU32 link, tCIU32 address, tCIU8 *data, tCIU32 byteCount)
 Write to CXP data space. More...
 
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) More...
 
tCIRC CiCXPgetLink (tCIp cip, tCIU32 *links)
 Retrieve link affinity for VFG. More...
 
tCIRC CiCXPsetLink (tCIp cip, tCIU32 links)
 Assign link affinity for VFG. More...
 
tCIRC CiCXPgetHostTime (tCIp cip, tCIU32 link, tCIU64 *hostTime)
 Retrieve the host time value. More...
 
tCIRC CiCXPgetLastHeartbeat (tCIp cip, tCIU32 link, tCIU32 recSize, tCICXPHBP storeHere)
 Retrieve the latest CXP heartbeat value. More...
 
tCIRC CiCXPreadEventPacket (tCIp cip, tCIU32 link, tCIU32 recSize, tCICXPEP storeHere)
 Read a CXP event packet from the event packet queue. More...
 
tCIRC CiCXPparseEventPacket (tCIp cip, tCIU32 index, tCIU32 evtPktSize, tCICXPEP evtPkt, tCIU32 recSize, tCICXPEM storeHere)
 Parse one message stored in an event packet. More...
 
tCIRC CiGetModes (tCIp cip, tCITDP *modeData)
 Get list of modes available for the present XXXX.bfml camera file. More...
 
tCIRC CiLUTcount (tCIp cip, tCIU32 *nBank, tCIU32 *nLane)
 Return count of LUT resources. More...
 
tCIRC CiLUTsize (tCIp cip, tCIU32 bank, tCIU32 lane, tCIU32 *size, tCIU32 *width)
 Return size of a specific LUT. More...
 
tCIRC CiLUTwrite (tCIp cip, tCIU32 bank, tCIU32 lane, tCIU32 count, tCIU32 *values)
 Load a LUT. More...
 
tCIRC CiLUTread (tCIp cip, tCIU32 bank, tCIU32 lane, tCIU32 count, tCIU32 *values)
 Examine a LUT. More...
 
tCIRC CiSetDebug (tCIp cip, int drvDebug, tCIstrDisplayF dispFunc)
 
tCIRC CiSetDebugCL (tCIp cip, tCIstrDisplayF dispFunc)
 Allow debug display of all CameraLink init, term, and i/o. More...
 
tCIRC CiDriverLog (tCIp cip, tCIU32 level, char *str)
 String to system log via driver. More...
 
tCIRC CiReadHWrev (tCIp cip, char *str)
 Get the hardware revision string for this VFG (if it exists). More...
 
tCIRC CiReadSerialNo (tCIp cip, char *str)
 Get the board serial number for this VFG (if it exists). More...
 
tCIRC CiLoadFirmware (tCIp cip, char *fName)
 Load a specific firmware file to VFG. More...
 
tCIRC CiConfigROI (tCIU32 devNdx, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
 Attempt to configure for xawtv. More...
 
tCIRC CiConfigROI2 (tCIU32 devNdx, tCIU32 nBuff, tCIU32 hROIoffset, tCIU32 hROIsize, tCIU32 vROIoffset, tCIU32 vROIsize)
 Attempt to config for xawtv(v4l2). More...
 
tCIRC CiVerifyCIP (tCIp cip)
 Check integrity of token. More...
 
tCISTRZ CiErrStr (tCIRC circ)
 Text description of error code. More...
 
tCISTRZ CiFmtStr (int fmtCode)
 Text description of format code. More...
 
tCIRC CiGetDiag (tCIp cip, tCIdiagStruct *ds)
 Retrieve diagnostic information. More...
 
tCIRC CiReadCTABcompressed (tCIp cip, tCIU32 horizVERT, tCIU32 *data)
 Read the compressed CTAB information. More...
 
tCIRC CiWriteCTABcompressed (tCIp cip, tCIU32 horizVERT, tCIU32 *data)
 Write the compressed CTAB information. More...
 

Macro Definition Documentation

◆ CiBrdClose

#define CiBrdClose   CiVFGclose

◆ kCIRDCXP_ENCA_DIF

#define kCIRDCXP_ENCA_DIF   kCIRD_ENC_DIFF

◆ kCIRDCXP_ENCA_SW

#define kCIRDCXP_ENCA_SW   kCIRD_swEncoder

◆ kCIRDCXP_ENCA_TTL

#define kCIRDCXP_ENCA_TTL   kCIRD_ENC_TTL

◆ kCIRDCXP_ENCA_VFG0

#define kCIRDCXP_ENCA_VFG0   kCIRD_ENC_OPTO

◆ kCIRDCXP_ENCB_DIF

#define kCIRDCXP_ENCB_DIF   kCIGPIN0

◆ kCIRDCXP_ENCB_SW

#define kCIRDCXP_ENCB_SW   kCIGPIN3

◆ kCIRDCXP_ENCB_TTL

#define kCIRDCXP_ENCB_TTL   kCIGPIN1

◆ kCIRDCXP_ENCB_VFG0

#define kCIRDCXP_ENCB_VFG0   kCIGPIN2

◆ kCIRDCXP_SCAN_STEP

#define kCIRDCXP_SCAN_STEP   kCIGPIN4

◆ kCIRDCXP_SW_TRIG

#define kCIRDCXP_SW_TRIG   kCIRD_swTrigger

◆ kCIRDCXP_TRIG_DIF

#define kCIRDCXP_TRIG_DIF   kCIRD_TRIG_DIFF

◆ kCIRDCXP_TRIG_TTL

#define kCIRDCXP_TRIG_TTL   kCIRD_TRIG_TTL

◆ kCIRDCXP_TRIG_VFG0

#define kCIRDCXP_TRIG_VFG0   kCIRD_TRIG_OPTO