GNU.WIKI: The GNU/Linux Knowledge Base

  [HOME] [PHP Manual] [HowTo] [ABS] [MAN1] [MAN2] [MAN3] [MAN4] [MAN5] [MAN6] [MAN7] [MAN8] [MAN9]

  [0-9] [Aa] [Bb] [Cc] [Dd] [Ee] [Ff] [Gg] [Hh] [Ii] [Jj] [Kk] [Ll] [Mm] [Nn] [Oo] [Pp] [Qq] [Rr] [Ss] [Tt] [Uu] [Vv] [Ww] [Xx] [Yy] [Zz]


NAME

       xdf_set_conf, xdf_get_conf - set or get the configuration of xDF file

SYNOPSIS

       #include <xdfio.h>

       int xdf_set_conf(struct xdf* xdf, enum xdffield field, ...);
       int xdf_get_conf(const struct xdf* xdf, enum xdffield field, ...);

DESCRIPTION

       xdf_set_conf()  sets  the  configuration (usually one of the field file
       header) of a xDF file referenced by xdf according to the variable  list
       of  arguments.  This list is composed of successive couple grouping one
       variable of type enum xdffield defining the feature to  be  set  and  a
       value  whose  type  depends  on  the previous field type. The list must
       finish by XDF_NOF.

       xdf_get_conf() gets the configuration of the channel referenced by  xdf
       according  to  the  variable list of argument. The variable list is the
       same list terminated by XDF_NOF as for  xdf_set_conf()  excepting  that
       the  second  part  of the couple is not that value but a pointer to the
       value.

       Both functions process the argument list from left to right. This means
       that if a particular field request provokes an error, none of the field
       requests on its right will be processed. The  order  of  processing  is
       also  important  for  field requests that influences the value of other
       fields (like XDF_F_REC_NSAMPLE or XDF_F_SAMPLING_FREQ).

       The functions accepts two types of field value. The first one are  file
       configuration  field  (XDF_F_*)  which  set  different  aspects  of the
       general configuration of the file. The  second  type  are  the  channel
       configuration  fields  (XDF_CF_*).  When  used in xdf_set_conf(), those
       fields set the default values that will be used for the creation of the
       next   channel   (see   xdf_add_channel(3)).   The   list   of  channel
       configuration  fields  and  their  meaning   are   specified   in   the
       documentation of xdf_set_chconf(3).

       If  the  file  is  opened  for  writing,  each  field is initialized to
       sensible or  non-informative  values  in  case  of  optional  field  or
       incorrect   values   in   the   case  of  "must  be  set"  field  (only
       XDF_F_REC_NSAMPLE  or  XDF_F_SAMPLING_FREQ).  The  default  value   are
       specified in squared bracked in the list.

       Here  is  the list of file configuration field value. The type of value
       expected is provided in the parenthesis (the expected type of the value
       for  xdf_set_conf(), or a pointer to this type for xdf_get_conf()).  If
       a list of data formats is specified in curl brackets, it means that the
       field  is  supported  only  in  those  formats  (no list means that all
       formats support the field):

       XDF_F_REC_DURATION (double) [1]
              Specify  the  duration  of  one  record.  The  value  should  be
              positive.

       XDF_F_REC_NSAMPLE (int) [0]
              Specify  the number of time points contained in each record. The
              value should be positive.  Setting  the  number  of  sample  per
              record     modifies     the     sampling     frequency    (field
              XDF_SAMPLING_FREQ).

       XDF_F_SAMPLING_FREQ (int) [0]
              Get or set the sampling frequency of the recording. Setting  the
              sampling  frequency  modifies  the  number  of sample per record
              (field XDF_F_REC_NSAMPLE).

       XDF_F_NCHANNEL (int)  (get function only)
              Get the number of channel in the file.

       XDF_F_NEVTTYPE (int)  (get function only)
              Get the number of different event types.

       XDF_F_NEVENT (int)  (get function only)
              Get the number of events.

       XDF_F_FILEFMT (int)  (get function only)
              Get the file format type  (one  of  the  value  defined  by  the
              enumeration xdffiletype other than XDF_ANY)

       XDF_F_RECTIME (double) [current time] {EDF BDF GDF}
              Date and time of recording. It is expressed as number of seconds
              elapsed since the Epoch, 1970-01-01 00:00:00 +0000  (UTC).  This
              number  is the convertion to double of the value returned by the
              function time(3) of the standard C library.  On  file  creation,
              this field is initialized to the current time.

       XDF_F_SUBJ_DESC (const char*) [""] {EDF BDF GDF}
              Specify the string describing the subject.

       XDF_F_SESS_DESC (const char*) [""] {EDF BDF GDF}
              Specify the string describing the session of recording.

       XDF_F_ADDICTION (unsigned int) [0] {GDF}

       XDF_F_BIRTHDAY (double) [0] {GDF}
              Birthday  of  the patient using the same format as specified for
              field XDF_F_RECTIME.

       XDF_F_HEIGHT (double) [0] {GDF}
              Height of the subject in centimeters.

       XDF_F_WEIGHT (double) [0] {GDF}
              Weight of the subject in kilograms.

       XDF_F_GENDER (unsigned int) [0] {GDF}
              Sex of the subject. Use 1 for  male,  2  for  female  and  0  if
              unknown.

       XDF_F_HANDNESS (unsigned int) [0] {GDF}
              Handness of the subject. Use 0 if unknown, 1 if right, 2 if left
              and 3 if ambidextrious.

       XDF_F_VISUAL_IMP (unsigned int) [0] {GDF}
              Visual impairment. Use 0 if unknown, 1 if no  impairment,  2  if
              impaired and 3 if impaired but corrected.

       XDF_F_HEART_IMP (unsigned int) [0] {GDF}
              Heart  impairment.  Use  0  if unknown, 1 if no impairment, 2 if
              impaired and 3 if the subject wear a pacemaker.

       XDF_F_LOCATION (double[3]) [0,0,0] {GDF}
              Location of the recording. The first  2  component  specify  the
              latitude  and  longitude  in  degrees,  the  third specifies the
              altitude in meters.

       XDF_F_ICD_CLASS (char[6]) [0x000000000000] {GDF}
              Patient   classification   according   to   the    International
              Statistical   Classification  of  Diseases  and  Related  Health
              Problems (ICD).

       XDF_F_HEADSIZE (double[3]) [0,0,0] {GDF}
              Size of the subject's head  (circumference,  distance  nasion  –
              inion, left to right mastoid) expressed in millimeters.

       XDF_F_REF_POS (double[3]) [0,0,0] {GDF}
              X, Y, Z coordinates of the reference electrode.

       XDF_F_GND_POS (double[3]) [0,0,0] {GDF}
              X, Y, Z coordinates of the ground electrode.

RETURN VALUE

       The  two  functions  returns  0  in  case  of  success. Otherwise -1 is
       returned and errno is set appropriately.

ERROR

       EINVAL xdf is NULL or field is not a proper value  of  the  enumeration
              xdffield  accepted  by  the function (for example XDF_F_NCHANNEL
              and xdf_set_conf() )

       EPERM  The request submitted to xdf_set_conf() is not allowed for  this
              type of xDF file or is not supported with the mode XDF_READ.

EXAMPLES

       Example of usage of xdf_set_conf() and xdf_get_conf():

              /* Assume xdfr and xdfw reference 2 XDF files opened respectively
               * for reading and for writing */
              const char *subjstr, *sessstr;

              xdf_get_conf(xdfr, XDF_F_SUBJ_DESC, &subjstr,
                                 XDF_F_SESS_DESC, &sessstr,
                                 XDF_NOF);

              printf("subject: %s
recording: %s
", subjstr, sessstr);

              xdf_set_conf(xdfw, XDF_F_SUBJ_DESC, subjstr,
                                 XDF_F_SESS_DESC, sessstr,
                                 XDF_NOF);

SEE ALSO

       xdf_copy_conf(3), xdf_set_chconf(3), xdf_add_channel(3)



  All copyrights belong to their respective owners. Other content (c) 2014-2018, GNU.WIKI. Please report site errors to webmaster@gnu.wiki.
Page load time: 0.156 seconds. Last modified: November 04 2018 12:49:43.