Logo Search packages:      
Sourcecode: hamlib version File versions  Download package

int HAMLIB_API rig_set_bank ( RIG rig,
vfo_t  vfo,
int  bank 
)

set the current memory bank

Parameters:
rigThe rig handle
vfoThe target VFO
bankThe memory bank

Sets the current memory bank number. It is not mandatory for the radio to be in memory mode. Actually it depends on rigs. YMMV.

Returns:
RIG_OK if the operation has been sucessful, otherwise a negative value if an error occured (in which case, cause is set appropriately).
See also:
rig_set_mem()

Definition at line 167 of file mem.c.

References caps, rig_state::current_vfo, RIG_EINVAL, RIG_ENAVAIL, RIG_ENTARGET, RIG_OK, RIG_VFO_CURR, state, and rig_caps::targetable_vfo.

{
      const struct rig_caps *caps;
      int retcode;
      vfo_t curr_vfo;

      if (CHECK_RIG_ARG(rig))
            return -RIG_EINVAL;

      caps = rig->caps;

      if (caps->set_bank == NULL)
            return -RIG_ENAVAIL;
      
      if ((caps->targetable_vfo&RIG_TARGETABLE_PURE) ||
                  vfo == RIG_VFO_CURR || vfo == rig->state.current_vfo)
            return caps->set_bank(rig, vfo, bank);

      if (!caps->set_vfo)
            return -RIG_ENTARGET;
      curr_vfo = rig->state.current_vfo;
      retcode = caps->set_vfo(rig, vfo);
      if (retcode != RIG_OK)
            return retcode;

      retcode = caps->set_bank(rig, vfo, bank);
      caps->set_vfo(rig, curr_vfo);
      return retcode;
}

Generated by  Doxygen 1.6.0   Back to index