| /******************************************************************************* |
| * Copyright (c) 2018 Agence spatiale canadienne / Canadian Space Agency |
| * 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 |
| * |
| * Contributors: |
| * Pierre Allard, |
| * Regent L'Archeveque - initial API and implementation |
| * |
| * SPDX-License-Identifier: EPL-1.0 |
| *******************************************************************************/ |
| package org.eclipse.apogy.examples.lander.impl; |
| |
| import org.eclipse.apogy.examples.lander.LanderLegExtension; |
| |
| public abstract class LanderCustomImpl extends LanderImpl { |
| |
| @Override |
| abstract public double getMass(); |
| |
| @Override |
| abstract public double getGravitationalPull(); |
| |
| @Override |
| abstract public boolean init(); |
| |
| @Override |
| abstract public void dispose(); |
| |
| @Override |
| abstract public void commandLegPosition(LanderLegExtension legAExtension, LanderLegExtension legBExtension, |
| LanderLegExtension legCExtension); |
| |
| @Override |
| abstract public void commandAngularVelocities(double xAngularVelocity, double yAngularVelocity); |
| |
| @Override |
| abstract public void commandThrust(double thrustLevel); |
| |
| @Override |
| abstract public void changeThrustBy(double thrustOffset); |
| |
| @Override |
| abstract public void startFlying(boolean logStateChanges); |
| |
| @Override |
| abstract public void stopFlying(); |
| |
| @Override |
| abstract public void moveTo(double x, double y, double z); |
| |
| @Override |
| abstract public void changeAttitude(double xAngle, double yAngle, double zAngle); |
| |
| @Override |
| abstract public void resetAttitude(); |
| |
| } // LanderImpl |