#! Generated by VisualDCT v2.5
#! DBDSTART
#! DBD("../../../../dbd/saIoc.dbd")
#! DBDEND


record(calc, "$(DEVICE,undefined):X") {
  field(DESC, "X")
  field(PINI, "YES")
  field(CALC, "C>=A?-A:C+(RNDM*B)")
  field(A, "0.8")
  field(B, "0.01")
  field(EGU, "mm")
  field(HOPR, "3")
  field(LOPR, "-3")
  field(PREC, "3")
  field(ADEL, ".01")
  field(MDEL, ".001")
  field(INPC, "$(DEVICE,undefined):X")
  field(FLNK, "$(DEVICE,undefined):XHST")
}

record(compress, "$(DEVICE,undefined):XHST") {
  field(DESC, "X History")
  field(EGU, "mm")
  field(HOPR, "3")
  field(LOPR, "-3")
  field(PREC, "3")
  field(INP, "$(DEVICE,undefined):X")
  field(ALG, "Circular Buffer")
  field(NSAM, "500")
}

record(ao, "$(DEVICE,undefined):XRES") {
  field(DESC, "X Resolution")
  field(PREC, "3")
  field(EGU, "mm")
  field(DRVH, "3")
  field(DRVL, ".001")
  field(MDEL, "-1")
  field(PINI, "YES")
  field(VAL, ".020")
}

#! Further lines contain data used by VisualDCT
#! View(1901,2122,1.0)
#! Record("$(DEVICE,undefined):X",2122,2164,0,0,"$(DEVICE,undefined):X")
#! Field("$(DEVICE,undefined):X.VAL",16777215,1,"$(DEVICE,undefined):X.VAL")
#! Field("$(DEVICE,undefined):X.INPC",16777215,0,"$(DEVICE,undefined):X.INPC")
#! Link("$(DEVICE,undefined):X.INPC","$(DEVICE,undefined):X.VAL")
#! Field("$(DEVICE,undefined):X.FLNK",16777215,1,"$(DEVICE,undefined):X.FLNK")
#! Link("$(DEVICE,undefined):X.FLNK","$(DEVICE,undefined):XHST")
#! Record("$(DEVICE,undefined):XHST",2440,2492,0,0,"$(DEVICE,undefined):XHST")
#! Field("$(DEVICE,undefined):XHST.INP",16777215,0,"$(DEVICE,undefined):XHST.INP")
#! Link("$(DEVICE,undefined):XHST.INP","$(DEVICE,undefined):X.VAL")
#! Record("$(DEVICE,undefined):XRES",2140,2572,0,1,"$(DEVICE,undefined):XRES")
#! TextBox(TB4,2360,2160,2700,2440,0,"Dialog",12,1,16777215,"Macros:\nDEV = PRIM:LOCA:UNIT\nSECN = for BPMS- TMIT, X, Y\n            = for TORO- TMIT\n            = for ARRY- DATA\n            = for pattern - PULSEID, YY, PP, MODIFIER1 to 5\nCALC = Calculation based on A and B\nA = First Input to Calculation\nB = Second Input to Calculation\nEGU = Engineering Units \nHOPR, LOPR  =High and Low Operating Limits\nPREC = Precision (# after the decimal point)\nADEL = Archive Delta Amount\nMDEL = Monitor Delta Amount\n,null)
#! TextBox(TB3,2120,2140,2340,2180,0,"Dialog",14,1,16777215,"Simulated BSAC Input",null)
#! TextBox(TB1,2047,2511,2307,2571,0,"Dialog",12,0,16777215,"$(DEVICE,undefined):X\n  is processed by $(DEVICE,undefined):FANOUT.LNKx\n",null)
#! Generated by VisualDCT v2.5
#! DBDSTART
#! DBD("../../../../dbd/saIoc.dbd")
#! DBDEND


record(calc, "$(DEVICE,undefined):Y") {
  field(DESC, "Y")
  field(PINI, "YES")
  field(CALC, "C>=A?-A:C+(RNDM*B)")
  field(A, "0.9")
  field(B, "0.001")
  field(EGU, "mm")
  field(HOPR, "3")
  field(LOPR, "-3")
  field(PREC, "3")
  field(ADEL, ".01")
  field(MDEL, ".001")
  field(INPC, "$(DEVICE,undefined):Y")
  field(FLNK, "$(DEVICE,undefined):YHST")
}

record(compress, "$(DEVICE,undefined):YHST") {
  field(DESC, "Y History")
  field(EGU, "mm")
  field(HOPR, "3")
  field(LOPR, "-3")
  field(PREC, "3")
  field(INP, "$(DEVICE,undefined):Y")
  field(ALG, "Circular Buffer")
  field(NSAM, "500")
}

record(ao, "$(DEVICE,undefined):YRES") {
  field(DESC, "Y Resolution")
  field(PREC, "3")
  field(EGU, "mm")
  field(DRVH, "3")
  field(DRVL, ".001")
  field(MDEL, "-1")
  field(PINI, "YES")
  field(VAL, ".020")
}

#! Further lines contain data used by VisualDCT
#! View(1901,2122,1.0)
#! Record("$(DEVICE,undefined):Y",2122,2164,0,0,"$(DEVICE,undefined):Y")
#! Field("$(DEVICE,undefined):Y.VAL",16777215,1,"$(DEVICE,undefined):Y.VAL")
#! Field("$(DEVICE,undefined):Y.INPC",16777215,0,"$(DEVICE,undefined):Y.INPC")
#! Link("$(DEVICE,undefined):Y.INPC","$(DEVICE,undefined):Y.VAL")
#! Field("$(DEVICE,undefined):Y.FLNK",16777215,1,"$(DEVICE,undefined):Y.FLNK")
#! Link("$(DEVICE,undefined):Y.FLNK","$(DEVICE,undefined):YHST")
#! Record("$(DEVICE,undefined):YHST",2440,2492,0,0,"$(DEVICE,undefined):YHST")
#! Field("$(DEVICE,undefined):YHST.INP",16777215,0,"$(DEVICE,undefined):YHST.INP")
#! Link("$(DEVICE,undefined):YHST.INP","$(DEVICE,undefined):Y.VAL")
#! Record("$(DEVICE,undefined):YRES",2140,2572,0,1,"$(DEVICE,undefined):YRES")
#! TextBox(TB4,2360,2160,2700,2440,0,"Dialog",12,1,16777215,"Macros:\nDEV = PRIM:LOCA:UNIT\nSECN = for BPMS- TMIT, X, Y\n            = for TORO- TMIT\n            = for ARRY- DATA\n            = for pattern - PULSEID, YY, PP, MODIFIER1 to 5\nCALC = Calculation based on A and B\nA = First Input to Calculation\nB = Second Input to Calculation\nEGU = Engineering Units \nHOPR, LOPR  =High and Low Operating Limits\nPREC = Precision (# after the decimal point)\nADEL = Archive Delta Amount\nMDEL = Monitor Delta Amount\n,null)
#! TextBox(TB3,2120,2140,2340,2180,0,"Dialog",14,1,16777215,"Simulated BSAC Input",null)
#! TextBox(TB1,2047,2511,2307,2571,0,"Dialog",12,0,16777215,"$(DEVICE,undefined):Y\n  is processed by $(DEVICE,undefined):FANOUT.LNKx\n",null)
#! Generated by VisualDCT v2.5
#! DBDSTART
#! DBD("../../../../dbd/saIoc.dbd")
#! DBDEND


record(calc, "$(DEVICE,undefined):TMIT") {
  field(DESC, "TMIT")
  field(PINI, "YES")
  field(CALC, "C>=A?1E10:C+(RNDM*B)")
  field(A, "3E10")
  field(B, "5E9")
  field(EGU, "")
  field(HOPR, "3E10")
  field(LOPR, "1E10")
  field(PREC, "3")
  field(ADEL, "1E8")
  field(MDEL, "1E7")
  field(INPC, "$(DEVICE,undefined):TMIT")
  field(FLNK, "$(DEVICE,undefined):TMITHST")
}

record(compress, "$(DEVICE,undefined):TMITHST") {
  field(DESC, "TMIT History")
  field(EGU, "")
  field(HOPR, "3E10")
  field(LOPR, "1E10")
  field(PREC, "3")
  field(INP, "$(DEVICE,undefined):TMIT")
  field(ALG, "Circular Buffer")
  field(NSAM, "500")
}

record(ao, "$(DEVICE,undefined):TMITRES") {
  field(DESC, "TMIT Resolution")
  field(PREC, "3")
  field(EGU, "")
  field(DRVH, "3E10")
  field(DRVL, "1E7")
  field(MDEL, "-1")
  field(PINI, "YES")
  field(VAL, "6E7")
}

#! Further lines contain data used by VisualDCT
#! View(1901,2122,1.0)
#! Record("$(DEVICE,undefined):TMIT",2122,2164,0,0,"$(DEVICE,undefined):TMIT")
#! Field("$(DEVICE,undefined):TMIT.VAL",16777215,1,"$(DEVICE,undefined):TMIT.VAL")
#! Field("$(DEVICE,undefined):TMIT.INPC",16777215,0,"$(DEVICE,undefined):TMIT.INPC")
#! Link("$(DEVICE,undefined):TMIT.INPC","$(DEVICE,undefined):TMIT.VAL")
#! Field("$(DEVICE,undefined):TMIT.FLNK",16777215,1,"$(DEVICE,undefined):TMIT.FLNK")
#! Link("$(DEVICE,undefined):TMIT.FLNK","$(DEVICE,undefined):TMITHST")
#! Record("$(DEVICE,undefined):TMITHST",2440,2492,0,0,"$(DEVICE,undefined):TMITHST")
#! Field("$(DEVICE,undefined):TMITHST.INP",16777215,0,"$(DEVICE,undefined):TMITHST.INP")
#! Link("$(DEVICE,undefined):TMITHST.INP","$(DEVICE,undefined):TMIT.VAL")
#! Record("$(DEVICE,undefined):TMITRES",2140,2572,0,1,"$(DEVICE,undefined):TMITRES")
#! TextBox(TB4,2360,2160,2700,2440,0,"Dialog",12,1,16777215,"Macros:\nDEV = PRIM:LOCA:UNIT\nSECN = for BPMS- TMIT, X, Y\n            = for TORO- TMIT\n            = for ARRY- DATA\n            = for pattern - PULSEID, YY, PP, MODIFIER1 to 5\nCALC = Calculation based on A and B\nA = First Input to Calculation\nB = Second Input to Calculation\nEGU = Engineering Units \nHOPR, LOPR  =High and Low Operating Limits\nPREC = Precision (# after the decimal point)\nADEL = Archive Delta Amount\nMDEL = Monitor Delta Amount\n,null)
#! TextBox(TB3,2120,2140,2340,2180,0,"Dialog",14,1,16777215,"Simulated BSAC Input",null)
#! TextBox(TB1,2047,2511,2307,2571,0,"Dialog",12,0,16777215,"$(DEVICE,undefined):TMIT\n  is processed by $(DEVICE,undefined):FANOUT.LNKx\n",null)
record(fanout, "$(DEVICE,undefined):FANOUT") {
  field(DESC, "Test Fanout")
  field(SCAN, "$(S,undefined)")
  field(EVNT, "10")
  field(LNK1, "$(DEVICE,undefined):X PP")
  field(LNK2, "$(DEVICE,undefined):Y PP")
  field(LNK3, "$(DEVICE,undefined):TMIT PP")
  field(LNK4, "$(DEVICE,undefined):EFX PP")
  field(LNK5, "")
}
