Man Linux: Main Page and Category List

NAME

       comedi_get_subdevice_flags - properties of subdevice

SYNOPSIS

       #include <comedilib.h>

       int   comedi_get_subdevice_flags   (comedi_t  *  device,  unsigned  int
       subdevice);

DESCRIPTION

       This function returns a bitfield describing  the  capabilities  of  the
       specified  subdevice.   If  there  is an error, -1 is returned, and the
       Comedilib error value is set.

       "SUBDEVICE            FLAGS"            Subdevice             FlagValue
       (hexadecimal)DescriptionSDF_BUSY0x00000001The    subdevice    is   busy
       performing an  asynchronous  command.   A  subdevice  being  "busy"  is
       slightly  different from the "running" state flagged by SDF_RUNNING.  A
       "running" subdevice is always "busy", but a  "busy"  subdevice  is  not
       necessarily  "running".   For  example, suppose an analog input command
       has been completed by the hardware, but  there  are  still  samples  in
       Comedi’s buffer waiting to be read out.  In this case, the subdevice is
       not "running", but is still "busy" until all the samples are  read  out
       or  comedi_cancel()  is called.SDF_BUSY_OWNER0x00000002The subdevice is
       "busy", and the command it  is  running  was  started  by  the  current
       process.SDF_LOCKED0x00000004The    subdevice   has   been   locked   by
       comedi_lock().SDF_LOCK_OWNER0x00000008The subdevice is locked, and  was
       locked  by  the  current  process.SDF_MAXDATA0x00000010The maximum data
       value for the subdevice depends on  the  channel.SDF_FLAGS0x00000020The
       subdevice  flags  depend  on  the channel (unfinished/broken support in
       library).SDF_RANGETYPE0x00000040The   range   type   depends   on   the
       channel.SDF_CMD0x00001000The     subdevice     supports    asynchronous
       commands.SDF_SOFT_CALIBRATED0x00002000The subdevice relies on the  host
       to  do  calibration in software.  Software calibration coefficients are
       determined by the comedi_soft_calibrate utility.  See  the  description
       of     the    comedi_get_softcal_converter()    function    for    more
       information.SDF_READABLE0x00010000The  subdevice  can  be  read   (e.g.
       analog  input).SDF_WRITABLE0x00020000The  subdevice  can  be written to
       (e.g. analog output).SDF_INTERNAL0x00040000The subdevice does not  have
       externally  visible  lines.SDF_GROUND0x00100000The  subdevice  supports
       AREF_GROUND.SDF_COMMON0x00200000The         subdevice          supports
       AREF_COMMON.SDF_DIFF0x00400000The           subdevice          supports
       AREF_DIFF.SDF_OTHER0x00800000The           subdevice           supports
       AREF_OTHERSDF_DITHER0x01000000The subdevice supports dithering (via the
       CR_ALT_FILTER   chanspec   flag).SDF_DEGLITCH0x02000000The    subdevice
       supports     deglitching     (via     the     CR_ALT_FILTER    chanspec
       flag).SDF_RUNNING0x08000000An asynchronous command is running.  You can
       use   this   flag   to   poll   for   the   completion   of  an  output
       command.SDF_LSAMPL0x10000000The subdevice uses the 32 bit lsampl_t type
       instead    of   the   16   bit   sampl_t   for   asynchronous   command
       data.SDF_PACKED0x20000000The  subdevice  uses  bitfield   samples   for
       asynchronous  command  data, one bit per channel (otherwise it uses one
       sampl_t  or  lsampl_t  per  channel).   Commonly   used   for   digital
       subdevices.

                                28 October 2007