blob: 3f9c54c01eb3664580443657d8c1da22e0e92f9c [file] [log] [blame]
/**
* *******************************************************************************
* 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:
* Regent L'Archeveque - initial API and implementation
*
* SPDX-License-Identifier: EPL-1.0
* *******************************************************************************
*/
package org.eclipse.apogy.core.environment.earth.orbit.planner.impl;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
import org.eclipse.apogy.common.emf.EObjectReferencesList;
import org.eclipse.apogy.core.environment.earth.orbit.VisibilityPass;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ApogyCoreEnvironmentEarthOrbitPlannerFacade;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ApogyCoreEnvironmentEarthOrbitPlannerPackage;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlanner;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlannerNode;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlannerTool;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Facade</b></em>'.
* <!-- end-user-doc -->
*
* @generated
*/
public abstract class ApogyCoreEnvironmentEarthOrbitPlannerFacadeImpl extends MinimalEObjectImpl.Container implements ApogyCoreEnvironmentEarthOrbitPlannerFacade {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected ApogyCoreEnvironmentEarthOrbitPlannerFacadeImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return ApogyCoreEnvironmentEarthOrbitPlannerPackage.Literals.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ObservationAnalysisPlannerNode generateObservationsPlanTree(List<VisibilityPass> passes, IProgressMonitor monitor) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ObservationAnalysisPlanner computePlanCosts(ObservationAnalysisPlanner planner, IProgressMonitor monitor) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ObservationAnalysisPlannerTool getObservationAnalysisPlannerTool() {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public List<ObservationAnalysisPlannerNode> getLeafs(ObservationAnalysisPlannerNode root) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EObjectReferencesList<ObservationAnalysisPlannerNode> getPlannerSolution(ObservationAnalysisPlannerNode leaf) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EObjectReferencesList<VisibilityPass> getVisibilityPasses(List<ObservationAnalysisPlannerNode> nodesList) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public double getNodeStatelessTotalCost(ObservationAnalysisPlannerNode node) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public double getNodeStatefulTotalCost(ObservationAnalysisPlannerNode node) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public double getNodeTotalCost(ObservationAnalysisPlannerNode node) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public double getSolutionTotalCost(EObjectReferencesList<ObservationAnalysisPlannerNode> plan) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
@SuppressWarnings("unchecked")
public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
switch (operationID) {
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GENERATE_OBSERVATIONS_PLAN_TREE__LIST_IPROGRESSMONITOR:
return generateObservationsPlanTree((List<VisibilityPass>)arguments.get(0), (IProgressMonitor)arguments.get(1));
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___COMPUTE_PLAN_COSTS__OBSERVATIONANALYSISPLANNER_IPROGRESSMONITOR:
return computePlanCosts((ObservationAnalysisPlanner)arguments.get(0), (IProgressMonitor)arguments.get(1));
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_OBSERVATION_ANALYSIS_PLANNER_TOOL:
return getObservationAnalysisPlannerTool();
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_LEAFS__OBSERVATIONANALYSISPLANNERNODE:
return getLeafs((ObservationAnalysisPlannerNode)arguments.get(0));
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_PLANNER_SOLUTION__OBSERVATIONANALYSISPLANNERNODE:
return getPlannerSolution((ObservationAnalysisPlannerNode)arguments.get(0));
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_VISIBILITY_PASSES__LIST:
return getVisibilityPasses((List<ObservationAnalysisPlannerNode>)arguments.get(0));
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_NODE_STATELESS_TOTAL_COST__OBSERVATIONANALYSISPLANNERNODE:
return getNodeStatelessTotalCost((ObservationAnalysisPlannerNode)arguments.get(0));
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_NODE_STATEFUL_TOTAL_COST__OBSERVATIONANALYSISPLANNERNODE:
return getNodeStatefulTotalCost((ObservationAnalysisPlannerNode)arguments.get(0));
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_NODE_TOTAL_COST__OBSERVATIONANALYSISPLANNERNODE:
return getNodeTotalCost((ObservationAnalysisPlannerNode)arguments.get(0));
case ApogyCoreEnvironmentEarthOrbitPlannerPackage.APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_SOLUTION_TOTAL_COST__EOBJECTREFERENCESLIST:
return getSolutionTotalCost((EObjectReferencesList<ObservationAnalysisPlannerNode>)arguments.get(0));
}
return super.eInvoke(operationID, arguments);
}
} //ApogyCoreEnvironmentEarthOrbitPlannerFacadeImpl