/** * Copyright (c) 2010-2016 by the respective copyright holders. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html */ package org.openhab.binding.tinkerforge.internal.model; import org.openhab.binding.tinkerforge.internal.types.DecimalValue; /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>MServo</b></em>'. * * @author Theo Weiss * @since 1.3.0 * <!-- end-user-doc --> * * <p> * The following features are supported: * </p> * <ul> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getDeviceType <em>Device Type</em>}</li> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getVelocity <em>Velocity</em>}</li> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getAcceleration <em>Acceleration</em>}</li> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getMaxPosition <em>Max Position</em>}</li> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getMinPosition <em>Min Position</em>}</li> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getPulseWidthMin <em>Pulse Width * Min</em>}</li> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getPulseWidthMax <em>Pulse Width * Max</em>}</li> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getPeriod <em>Period</em>}</li> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getOutputVoltage <em>Output * Voltage</em>}</li> * <li>{@link org.openhab.binding.tinkerforge.internal.model.MServo#getTargetPosition <em>Target * Position</em>}</li> * </ul> * * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo() * @model superTypes="org.openhab.binding.tinkerforge.internal.model.MSensor * <org.openhab.binding.tinkerforge.internal.model.MDecimalValue> * org.openhab.binding.tinkerforge.internal.model.ProgrammableSwitchActor * org.openhab.binding.tinkerforge.internal.model.MSubDevice * <org.openhab.binding.tinkerforge.internal.model.MBrickServo> * org.openhab.binding.tinkerforge.internal.model.MoveActor * org.openhab.binding.tinkerforge.internal.model.SetPointActor * <org.openhab.binding.tinkerforge.internal.model.TFServoConfiguration>" * @generated */ public interface MServo extends MSensor<DecimalValue>, ProgrammableSwitchActor, MSubDevice<MBrickServo>, MoveActor, SetPointActor<TFServoConfiguration> { /** * Returns the value of the '<em><b>Device Type</b></em>' attribute. * The default value is <code>"servo"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Device Type</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Device Type</em>' attribute. * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_DeviceType() * @model default="servo" unique="false" changeable="false" * @generated */ String getDeviceType(); /** * Returns the value of the '<em><b>Velocity</b></em>' attribute. * The default value is <code>"65535"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Velocity</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Velocity</em>' attribute. * @see #setVelocity(int) * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_Velocity() * @model default="65535" unique="false" * @generated */ int getVelocity(); /** * Sets the value of the '{@link org.openhab.binding.tinkerforge.internal.model.MServo#getVelocity * <em>Velocity</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @param value the new value of the '<em>Velocity</em>' attribute. * @see #getVelocity() * @generated */ void setVelocity(int value); /** * Returns the value of the '<em><b>Acceleration</b></em>' attribute. * The default value is <code>"65535"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Acceleration</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Acceleration</em>' attribute. * @see #setAcceleration(int) * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_Acceleration() * @model default="65535" unique="false" * @generated */ int getAcceleration(); /** * Sets the value of the '{@link org.openhab.binding.tinkerforge.internal.model.MServo#getAcceleration * <em>Acceleration</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @param value the new value of the '<em>Acceleration</em>' attribute. * @see #getAcceleration() * @generated */ void setAcceleration(int value); /** * Returns the value of the '<em><b>Max Position</b></em>' attribute. * The default value is <code>"9000"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Max Position</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Max Position</em>' attribute. * @see #setMaxPosition(Short) * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_MaxPosition() * @model default="9000" unique="false" * @generated */ Short getMaxPosition(); /** * Sets the value of the '{@link org.openhab.binding.tinkerforge.internal.model.MServo#getMaxPosition <em>Max * Position</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @param value the new value of the '<em>Max Position</em>' attribute. * @see #getMaxPosition() * @generated */ void setMaxPosition(Short value); /** * Returns the value of the '<em><b>Min Position</b></em>' attribute. * The default value is <code>"-9000"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Min Position</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Min Position</em>' attribute. * @see #setMinPosition(Short) * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_MinPosition() * @model default="-9000" unique="false" * @generated */ Short getMinPosition(); /** * Sets the value of the '{@link org.openhab.binding.tinkerforge.internal.model.MServo#getMinPosition <em>Min * Position</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @param value the new value of the '<em>Min Position</em>' attribute. * @see #getMinPosition() * @generated */ void setMinPosition(Short value); /** * Returns the value of the '<em><b>Pulse Width Min</b></em>' attribute. * The default value is <code>"1000"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Pulse Width Min</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Pulse Width Min</em>' attribute. * @see #setPulseWidthMin(int) * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_PulseWidthMin() * @model default="1000" unique="false" * @generated */ int getPulseWidthMin(); /** * Sets the value of the '{@link org.openhab.binding.tinkerforge.internal.model.MServo#getPulseWidthMin <em>Pulse * Width Min</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @param value the new value of the '<em>Pulse Width Min</em>' attribute. * @see #getPulseWidthMin() * @generated */ void setPulseWidthMin(int value); /** * Returns the value of the '<em><b>Pulse Width Max</b></em>' attribute. * The default value is <code>"2000"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Pulse Width Max</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Pulse Width Max</em>' attribute. * @see #setPulseWidthMax(int) * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_PulseWidthMax() * @model default="2000" unique="false" * @generated */ int getPulseWidthMax(); /** * Sets the value of the '{@link org.openhab.binding.tinkerforge.internal.model.MServo#getPulseWidthMax <em>Pulse * Width Max</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @param value the new value of the '<em>Pulse Width Max</em>' attribute. * @see #getPulseWidthMax() * @generated */ void setPulseWidthMax(int value); /** * Returns the value of the '<em><b>Period</b></em>' attribute. * The default value is <code>"19500"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Period</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Period</em>' attribute. * @see #setPeriod(int) * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_Period() * @model default="19500" unique="false" * @generated */ int getPeriod(); /** * Sets the value of the '{@link org.openhab.binding.tinkerforge.internal.model.MServo#getPeriod <em>Period</em>}' * attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @param value the new value of the '<em>Period</em>' attribute. * @see #getPeriod() * @generated */ void setPeriod(int value); /** * Returns the value of the '<em><b>Output Voltage</b></em>' attribute. * The default value is <code>"5000"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Output Voltage</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Output Voltage</em>' attribute. * @see #setOutputVoltage(int) * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_OutputVoltage() * @model default="5000" unique="false" * @generated */ int getOutputVoltage(); /** * Sets the value of the '{@link org.openhab.binding.tinkerforge.internal.model.MServo#getOutputVoltage <em>Output * Voltage</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @param value the new value of the '<em>Output Voltage</em>' attribute. * @see #getOutputVoltage() * @generated */ void setOutputVoltage(int value); /** * Returns the value of the '<em><b>Target Position</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Target Position</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Target Position</em>' attribute. * @see #setTargetPosition(short) * @see org.openhab.binding.tinkerforge.internal.model.ModelPackage#getMServo_TargetPosition() * @model unique="false" * @generated */ short getTargetPosition(); /** * Sets the value of the '{@link org.openhab.binding.tinkerforge.internal.model.MServo#getTargetPosition <em>Target * Position</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @param value the new value of the '<em>Target Position</em>' attribute. * @see #getTargetPosition() * @generated */ void setTargetPosition(short value); /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @model annotation="http://www.eclipse.org/emf/2002/GenModel body=''" * @generated */ @Override void init(); /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @model unique="false" positionUnique="false" velocityUnique="false" accelerationUnique="false" * @generated */ boolean setPoint(Short position, int velocity, int acceleration); } // MServo