New file for firewireWinDCAM support

git-svn-id: https://subversion.xor.aps.anl.gov/synApps/areaDetector/trunk@8623 dc6c5ff5-0b8b-c028-a01f-ffb33f00fc8b
This commit is contained in:
rivers
2009-03-14 19:58:30 +00:00
parent 3e9d801107
commit ad97768ae2
3 changed files with 382 additions and 0 deletions
+161
View File
@@ -0,0 +1,161 @@
## firewireDCAM.db
## Template database file to control the features of a firewire camera.
## See the detailled description for information about macros and how features
## can be controlled and read out:
##
## Video Format
record(mbbo, "$(P)$(R)FORMAT") {
field(SCAN, "Passive")
field(PINI, "NO")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT) 0)FDC_FORMAT")
field(ZRST, "VGA")
field(ONST, "Super VGA 1")
field(TWST, "Super VGA 2")
field(THST, "Still image")
field(FRST, "User-defined")
field(ZRVL, "0x0")
field(ONVL, "0x1")
field(TWVL, "0x2")
field(THVL, "0x6")
field(FRVL, "0x7")
}
## Read back the framerate setting when not in ROI/format7 mode.
record(mbbi, "$(P)$(R)FORMAT_RBV") {
field(SCAN, "I/O Intr")
field(PINI, "YES")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) 0)FDC_FORMAT")
field(ZRST, "VGA")
field(ONST, "Super VGA 1")
field(TWST, "Super VGA 2")
field(THST, "Still image")
field(FRST, "User-defined")
field(ZRVL, "0x0")
field(ONVL, "0x1")
field(TWVL, "0x2")
field(THVL, "0x6")
field(FRVL, "0x7")
}
## VideoMode
record(mbbo, "$(P)$(R)MODE") {
field(SCAN, "Passive")
field(PINI, "NO")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT) 0)FDC_MODE")
field(ZRST, "0")
field(ONST, "1")
field(TWST, "2")
field(THST, "3")
field(FRST, "4")
field(FVST, "5")
field(SXST, "6")
field(SVST, "7")
field(ZRVL, "0x0")
field(ONVL, "0x1")
field(TWVL, "0x2")
field(THVL, "0x3")
field(FRVL, "0x4")
field(FVVL, "0x5")
field(SXVL, "0x6")
field(SVVL, "0x7")
}
## Read back the framerate setting when not in ROI/format7 mode.
record(mbbi, "$(P)$(R)MODE_RBV") {
field(SCAN, "I/O Intr")
field(PINI, "YES")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) 0)FDC_MODE")
field(ZRST, "0")
field(ONST, "1")
field(TWST, "2")
field(THST, "3")
field(FRST, "4")
field(FVST, "5")
field(SXST, "6")
field(SVST, "7")
field(ZRVL, "0x0")
field(ONVL, "0x1")
field(TWVL, "0x2")
field(THVL, "0x3")
field(FRVL, "0x4")
field(FVVL, "0x5")
field(SXVL, "0x6")
field(SVVL, "0x7")
}
## Change the framerate when the camera is not in the ROI/format7 mode
record(mbbo, "$(P)$(R)FR") {
field(SCAN, "Passive")
field(PINI, "NO")
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT) 0)FDC_FRAMERATE")
field(ZRST, "1.875")
field(ONST, "3.75")
field(TWST, "7.5")
field(THST, "15")
field(FRST, "30")
field(FVST, "60")
field(SXST, "120")
field(SVST, "240")
field(ZRVL, "0x0")
field(ONVL, "0x1")
field(TWVL, "0x2")
field(THVL, "0x3")
field(FRVL, "0x4")
field(FVVL, "0x5")
field(SXVL, "0x6")
field(SVVL, "0x7")
}
## Read back the framerate setting when not in ROI/format7 mode.
record(mbbi, "$(P)$(R)FR_RBV") {
field(SCAN, "I/O Intr")
field(PINI, "YES")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) 0)FDC_FRAMERATE")
field(ZRST, "1.875")
field(ONST, "3.75")
field(TWST, "7.5")
field(THST, "15")
field(FRST, "30")
field(FVST, "60")
field(SXST, "120")
field(SVST, "240")
field(ZRVL, "0x0")
field(ONVL, "0x1")
field(TWVL, "0x2")
field(THVL, "0x3")
field(FRVL, "0x4")
field(FVVL, "0x5")
field(SXVL, "0x6")
field(SVVL, "0x7")
}
# Current format string
record(stringin, "$(P)$(R)CURRENT_FORMAT") {
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT) 0)FDC_CURRENT_FORMAT")
field(SCAN, "I/O Intr")
}
# Current mode string
record(stringin, "$(P)$(R)CURRENT_MODE") {
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT) 0)FDC_CURRENT_MODE")
field(SCAN, "I/O Intr")
}
# Current frame rate string
record(stringin, "$(P)$(R)CURRENT_RATE") {
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT) 0)FDC_CURRENT_FRAMERATE")
field(SCAN, "I/O Intr")
}
+163
View File
@@ -0,0 +1,163 @@
## firewireFeature.db
# Set the value (int32)
record(ao, "$(P)$(R)$(FEATURE)") {
field(DTYP, "asynInt32")
field(DESC, "$(DESC)")
field(OUT, "@asyn($(PORT) $(N))FDC_FEAT_VAL")
}
# Read the value (int32)
record(ai, "$(P)$(R)$(FEATURE)_RBV") {
field(SCAN, "I/O Intr")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) $(N))FDC_FEAT_VAL")
field(PINI, "YES")
}
## Set the control mode (manual = user configured /auto = camera sets values)
record(bo, "$(P)$(R)$(FEATURE)_CTRL") {
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT) $(N))FDC_FEAT_MODE")
field(ZNAM, "Manual")
field(ONAM, "Auto")
}
## Read back the control mode
record(bi, "$(P)$(R)$(FEATURE)_CTRL_RBV") {
field(SCAN, "I/O Intr")
field(PINI, "YES")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) $(N))FDC_FEAT_MODE")
field(ZNAM, "Manual")
field(ONAM, "Auto")
}
## Read whether the camera supports this feature
record(bi, "$(P)$(R)$(FEATURE)_AVL") {
field(SCAN, "I/O Intr")
field(PINI, "YES")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) $(N))FDC_FEAT_AVAILABLE")
field(ZNAM, "not available")
field(ONAM, "available")
}
# Read value boundaries
record(ai, "$(P)$(R)$(FEATURE)_MIN") {
field(SCAN, "I/O Intr")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) $(N))FDC_FEAT_VAL_MIN")
field(PINI, "YES")
field(FLNK, "$(P)$(R)$(FEATURE)_DRVL")
}
# Set DRLV field of the value PV
record(ao, "$(P)$(R)$(FEATURE)_DRVL") {
field(DOL, "$(P)$(R)$(FEATURE)_MIN NPP NMS")
field(OMSL, "closed_loop")
field(OUT, "$(P)$(R)$(FEATURE).DRVL NPP NMS")
field(FLNK, "$(P)$(R)$(FEATURE)_LOPR")
}
# Set LOPR field of the value PV
record(ao, "$(P)$(R)$(FEATURE)_LOPR") {
field(DOL, "$(P)$(R)$(FEATURE)_MIN NPP NMS")
field(OMSL, "closed_loop")
field(OUT, "$(P)$(R)$(FEATURE).LOPR NPP NMS")
}
record(ai, "$(P)$(R)$(FEATURE)_MAX") {
field(SCAN, "I/O Intr")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) $(N))FDC_FEAT_VAL_MAX")
field(PINI, "YES")
field(FLNK, "$(P)$(R)$(FEATURE)_DRVH")
}
# Set DRLH field of the value PV
record(ao, "$(P)$(R)$(FEATURE)_DRVH") {
field(DOL, "$(P)$(R)$(FEATURE)_MAX NPP NMS")
field(OMSL, "closed_loop")
field(OUT, "$(P)$(R)$(FEATURE).DRVH NPP NMS")
field(FLNK, "$(P)$(R)$(FEATURE)_HOPR")
}
# Set HOPR field of the value PV
record(ao, "$(P)$(R)$(FEATURE)_HOPR") {
field(DOL, "$(P)$(R)$(FEATURE)_MAX NPP NMS")
field(OMSL, "closed_loop")
field(OUT, "$(P)$(R)$(FEATURE).HOPR NPP NMS")
}
## Read whether the camera supports absolute (floating point) control of this feature
record(bi, "$(P)$(R)$(FEATURE)_ABS_AVL") {
field(SCAN, "I/O Intr")
field(PINI, "YES")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) $(N))FDC_FEAT_ABSOLUTE")
field(ZNAM, "not available")
field(ONAM, "available")
}
# Set the feature absolute value (floating point)
record(ao, "$(P)$(R)$(FEATURE)_ABS") {
field(DTYP, "asynFloat64")
field(OUT, "@asyn($(PORT) $(N))FDC_FEAT_VAL_ABS")
field(PREC, "3")
}
# Read the feature absolute value
record(ai, "$(P)$(R)$(FEATURE)_ABS_RBV") {
field(SCAN, "I/O Intr")
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT) $(N))FDC_FEAT_VAL_ABS")
field(PINI, "YES")
field(PREC, "3")
}
# Read the feature absolute value max boundary
record(ai, "$(P)$(R)$(FEATURE)_ABS_MAX") {
field(SCAN, "I/O Intr")
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT) $(N))FDC_FEAT_VAL_ABS_MAX")
field(PINI, "YES")
field(PREC, "3")
field(FLNK, "$(P)$(R)$(FEATURE)_ABS_DRVH")
}
# Set DRLH field of the value PV
record(ao, "$(P)$(R)$(FEATURE)_ABS_DRVH") {
field(DOL, "$(P)$(R)$(FEATURE)_ABS_MAX NPP NMS")
field(OMSL, "closed_loop")
field(OUT, "$(P)$(R)$(FEATURE)_ABS.DRVH NPP NMS")
field(FLNK, "$(P)$(R)$(FEATURE)_ABS_HOPR")
}
# Set HOPR field of the value PV
record(ao, "$(P)$(R)$(FEATURE)_ABS_HOPR") {
field(DOL, "$(P)$(R)$(FEATURE)_ABS_MAX NPP NMS")
field(OMSL, "closed_loop")
field(OUT, "$(P)$(R)$(FEATURE)_ABS.HOPR NPP NMS")
}
# Read the feature absolute value min boundary
record(ai, "$(P)$(R)$(FEATURE)_ABS_MIN") {
field(SCAN, "I/O Intr")
field(DTYP, "asynFloat64")
field(INP, "@asyn($(PORT) $(N))FDC_FEAT_VAL_ABS_MIN")
field(PINI, "YES")
field(PREC, "3")
field(FLNK, "$(P)$(R)$(FEATURE)_ABS_DRVL")
}
# Set DRLV field of the value PV
record(ao, "$(P)$(R)$(FEATURE)_ABS_DRVL") {
field(DOL, "$(P)$(R)$(FEATURE)_ABS_MIN NPP NMS")
field(OMSL, "closed_loop")
field(OUT, "$(P)$(R)$(FEATURE)_ABS.DRVL NPP NMS")
field(FLNK, "$(P)$(R)$(FEATURE)_ABS_LOPR")
}
# Set LOPR field of the value PV
record(ao, "$(P)$(R)$(FEATURE)_ABS_LOPR") {
field(DOL, "$(P)$(R)$(FEATURE)_ABS_MIN NPP NMS")
field(OMSL, "closed_loop")
field(OUT, "$(P)$(R)$(FEATURE)_ABS.LOPR NPP NMS")
}
+58
View File
@@ -0,0 +1,58 @@
## firewireVideoModes.db
# Valid format strings
record(stringin, "$(P)$(R)VALID_FORMAT_$(N)") {
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT) $(N))FDC_VALID_FORMAT")
field(SCAN, "I/O Intr")
}
# Has format bi
record(bi, "$(P)$(R)HAS_FORMAT_$(N)") {
field(PINI, "YES")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) $(N))FDC_HAS_FORMAT")
field(ZNAM, "No")
field(ONAM, "Yes")
field(SCAN, "I/O Intr")
}
# Valid mode strings
record(stringin, "$(P)$(R)VALID_MODE_$(N)") {
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT) $(N))FDC_VALID_MODE")
field(SCAN, "I/O Intr")
}
#
# Has mode bi
record(bi, "$(P)$(R)HAS_MODE_$(N)") {
field(PINI, "YES")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) $(N))FDC_HAS_MODE")
field(ZNAM, "No")
field(ONAM, "Yes")
field(SCAN, "I/O Intr")
}
# Valid frame rate strings
record(stringin, "$(P)$(R)VALID_RATE_$(N)") {
field(PINI, "YES")
field(DTYP, "asynOctetRead")
field(INP, "@asyn($(PORT) $(N))FDC_VALID_FRAMERATE")
field(SCAN, "I/O Intr")
}
# Has rate bi
record(bi, "$(P)$(R)HAS_RATE_$(N)") {
field(PINI, "YES")
field(DTYP, "asynInt32")
field(INP, "@asyn($(PORT) $(N))FDC_HAS_RATE")
field(ZNAM, "No")
field(ONAM, "Yes")
field(SCAN, "I/O Intr")
}