Code review comment for lp:~epics-core/epics-base/lockopt

Revision history for this message
Andrew Johnson (anj) wrote :

Here's a database that tests all of the Async Soft Chanel input device types. Run it with:
  softIoc -d <file>.db
Then start the test with
  dbpf anj:aipget.PROC 1
It traces all the ASC records as they process with a 1 second delay between each, and finishes by printing "Chain completed". Runs perfectly for me on the latest 3.16 branch. It may take me a few days to come up with a proper test program, but for now this should help you out.

record(ai,"anj:aipget")
{
    field(DTYP,"Async Soft Channel")
    field(INP,"anj:delayInc")
    field(TPRO,1)
    field(FLNK,"anj:bipget")
}
record(bi,"anj:bipget")
{
    field(DTYP,"Async Soft Channel")
    field(INP,"anj:delayInc")
    field(ZNAM,"zero")
    field(ONAM,"one")
    field(TPRO,1)
    field(FLNK,"anj:longinpget")
}
record(longin,"anj:longinpget")
{
    field(DTYP,"Async Soft Channel")
    field(INP,"anj:delayInc")
    field(TPRO,1)
    field(FLNK,"anj:mbbipget")
}
record(mbbi,"anj:mbbipget")
{
    field(DTYP,"Async Soft Channel")
    field(INP,"anj:delayInc")
    field(ZRST,"zero")
    field(ONST,"one")
    field(TWST,"two")
    field(THST,"three")
    field(TPRO,1)
    field(FLNK,"anj:mbbidirectpget")
}
record(mbbiDirect,"anj:mbbidirectpget")
{
    field(DTYP,"Async Soft Channel")
    field(INP,"anj:delayInc")
    field(TPRO,1)
    field(FLNK,"anj:stringinpget")
}
record(stringin,"anj:stringinpget")
{
    field(DTYP,"Async Soft Channel")
    field(INP,"anj:delayInc")
    field(TPRO,1)
    field(FLNK,"anj:finished")
}
record(stringout,"anj:finished")
{
    field(VAL,"Chain completed")
    field(DTYP,"stdio")
    field(OUT,"@stdout")
}
record(seq,"anj:delayInc")
{
    field(DLY0,1)
    field(LNK0,"anj:delayInc.DO0")
}

« Back to merge proposal