/**
  * <summary>
  *   Changes the decoding method applied to the input (analog or multiplexed binary switches).
  * <para>
  *   Remember to call the <c>saveToFlash()</c> method of the module if the modification must be kept.
  * </para>
  * <para>
  * </para>
  * </summary>
  * <param name="newval">
  *   a value among <c>YAnButton.INPUTTYPE_ANALOG_FAST</c>, <c>YAnButton.INPUTTYPE_DIGITAL4</c> and
  *   <c>YAnButton.INPUTTYPE_ANALOG_SMOOTH</c> corresponding to the decoding method applied to the input
  *   (analog or multiplexed binary switches)
  * </param>
  * <para>
  * </para>
  * <returns>
  *   <c>0</c> if the call succeeds.
  * </returns>
  * <para>
  *   On failure, throws an exception or returns a negative error code.
  * </para>
  */
 public int set_inputType(int newval)
 {
     if (_func == null)
     {
         throw new YoctoApiProxyException("No AnButton connected");
     }
     if (newval == _InputType_INVALID)
     {
         return(YAPI.SUCCESS);
     }
     // our enums start at 0 instead of the 'usual' -1 for invalid
     return(_func.set_inputType(newval - 1));
 }