/*
  function block interface
  name: pb_stp
*/

typedef long  T_BOO;
typedef long  T_ANA;
typedef float T_REAL;
typedef long  T_TMR;
typedef char  *T_MSG;

typedef struct {
   /* CALL   */ T_ANA  _number;
   /* CALL   */ T_ANA  _command;
   /* CALL   */ T_BOO  _vmodimod;
   /* CALL   */ T_ANA  _address;
   /* CALL   */ T_ANA  _initparam;
   /* CALL   */ T_ANA  _acc;
   /* CALL   */ T_ANA  _vself;
   /* CALL   */ T_ANA  _vhigh;
   /* CALL   */ T_ANA  _velocity;
   /* CALL   */ T_BOO  _direction;
   /* CALL   */ T_BOO  _mode;
   /* CALL   */ T_BOO  _accmode;
   /* CALL   */ T_ANA  _steps;
} str_arg;

#define NUMBER           (arg->_number)
#define COMMAND          (arg->_command)
#define VMODIMOD         (arg->_vmodimod)
#define ADDRESS          (arg->_address)
#define INITPARAM        (arg->_initparam)
#define ACC              (arg->_acc)
#define VSELF            (arg->_vself)
#define VHIGH            (arg->_vhigh)
#define VELOCITY         (arg->_velocity)
#define DIRECTION        (arg->_direction)
#define MODE             (arg->_mode)
#define ACCMODE          (arg->_accmode)
#define STEPS            (arg->_steps)

#define FBLPNO_TRANSSTATE       0
#define FBLPNO_REMAINSTEPS      1
#define FBLPNO_ERROR            2
