blob: 5378163bdc19dcf9e110e1396ac96472305e05b0 [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.util.List;
import java.util.Map;
import org.eclipse.apogy.common.emf.ApogyCommonEMFPackage;
import org.eclipse.apogy.common.emf.EObjectReferencesList;
import org.eclipse.apogy.common.math.ApogyCommonMathPackage;
import org.eclipse.apogy.common.processors.ApogyCommonProcessorsPackage;
import org.eclipse.apogy.common.topology.ApogyCommonTopologyPackage;
import org.eclipse.apogy.common.topology.bindings.ApogyCommonTopologyBindingsPackage;
import org.eclipse.apogy.core.ApogyCorePackage;
import org.eclipse.apogy.core.environment.ApogyCoreEnvironmentPackage;
import org.eclipse.apogy.core.environment.earth.ApogyCoreEnvironmentEarthPackage;
import org.eclipse.apogy.core.environment.earth.orbit.ApogyCoreEnvironmentEarthOrbitPackage;
import org.eclipse.apogy.core.environment.earth.orbit.planner.AbstractCostFunction;
import org.eclipse.apogy.core.environment.earth.orbit.planner.AbstractObservationPlanExporter;
import org.eclipse.apogy.core.environment.earth.orbit.planner.AbstractStatefulCostFunction;
import org.eclipse.apogy.core.environment.earth.orbit.planner.AbstractStatelessCostFunction;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ApogyCoreEnvironmentEarthOrbitPlannerFacade;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ApogyCoreEnvironmentEarthOrbitPlannerFactory;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ApogyCoreEnvironmentEarthOrbitPlannerPackage;
import org.eclipse.apogy.core.environment.earth.orbit.planner.CostFunctionState;
import org.eclipse.apogy.core.environment.earth.orbit.planner.CrosstrackAngleCostFunction;
import org.eclipse.apogy.core.environment.earth.orbit.planner.DefaultObservationPlanExporter;
import org.eclipse.apogy.core.environment.earth.orbit.planner.EclipseCostFunction;
import org.eclipse.apogy.core.environment.earth.orbit.planner.EclipsePeriod;
import org.eclipse.apogy.core.environment.earth.orbit.planner.MinimumTimeSpamCostFunction;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlanCostsProcessor;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlanGenerator;
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.ObservationAnalysisPlannerResult;
import org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlannerTool;
import org.eclipse.apogy.core.environment.earth.orbit.planner.SimpleResourceCostFunction;
import org.eclipse.apogy.core.environment.earth.orbit.planner.SimpleResourceCostFunctionState;
import org.eclipse.apogy.core.environment.earth.orbit.planner.StatefulCostFunctionMapEntryValue;
import org.eclipse.apogy.core.environment.earth.orbit.planner.StatelessCostFunctionMap;
import org.eclipse.apogy.core.environment.earth.orbit.planner.TimeIntervalCostFunction;
import org.eclipse.apogy.core.environment.orbit.ApogyCoreEnvironmentOrbitPackage;
import org.eclipse.apogy.core.invocator.ApogyCoreInvocatorPackage;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EDataType;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EGenericType;
import org.eclipse.emf.ecore.EOperation;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.ETypeParameter;
import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.ecore.impl.EPackageImpl;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Package</b>.
* <!-- end-user-doc -->
* @generated
*/
public class ApogyCoreEnvironmentEarthOrbitPlannerPackageImpl extends EPackageImpl implements ApogyCoreEnvironmentEarthOrbitPlannerPackage {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass observationAnalysisPlannerToolEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass observationAnalysisPlannerEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass observationAnalysisPlannerNodeEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass observationAnalysisPlanGeneratorEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass observationAnalysisPlanCostsProcessorEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass abstractObservationPlanExporterEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass defaultObservationPlanExporterEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass abstractCostFunctionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass costFunctionStateEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass abstractStatelessCostFunctionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass abstractStatefulCostFunctionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass observationAnalysisPlannerResultEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass statelessCostsMapEntryEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass statelessCostFunctionMapEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass statelessCostFunctionMapEntryEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass statefulCostFunctionMapEntryEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass statefulCostFunctionMapEntryValueEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass eclipseCostFunctionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass timeIntervalCostFunctionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass simpleResourceCostFunctionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass simpleResourceCostFunctionStateEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass minimumTimeSpamCostFunctionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass crosstrackAngleCostFunctionEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EEnum eclipsePeriodEEnum = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EDataType observationPlanEDataType = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EDataType observationAnalysisPlannerNodeListEDataType = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EDataType visibilityPassesListEDataType = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EDataType iProgressMonitorEDataType = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EDataType visibilityPassReferencesListEDataType = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EDataType exceptionEDataType = null;
/**
* Creates an instance of the model <b>Package</b>, registered with
* {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
* package URI value.
* <p>Note: the correct way to create the package is via the static
* factory method {@link #init init()}, which also performs
* initialization of the package, or returns the registered package,
* if one already exists.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see org.eclipse.emf.ecore.EPackage.Registry
* @see org.eclipse.apogy.core.environment.earth.orbit.planner.ApogyCoreEnvironmentEarthOrbitPlannerPackage#eNS_URI
* @see #init()
* @generated
*/
private ApogyCoreEnvironmentEarthOrbitPlannerPackageImpl() {
super(eNS_URI, ApogyCoreEnvironmentEarthOrbitPlannerFactory.eINSTANCE);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private static boolean isInited = false;
/**
* Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
*
* <p>This method is used to initialize {@link ApogyCoreEnvironmentEarthOrbitPlannerPackage#eINSTANCE} when that field is accessed.
* Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #eNS_URI
* @see #createPackageContents()
* @see #initializePackageContents()
* @generated
*/
public static ApogyCoreEnvironmentEarthOrbitPlannerPackage init() {
if (isInited) return (ApogyCoreEnvironmentEarthOrbitPlannerPackage)EPackage.Registry.INSTANCE.getEPackage(ApogyCoreEnvironmentEarthOrbitPlannerPackage.eNS_URI);
// Obtain or create and register package
Object registeredApogyCoreEnvironmentEarthOrbitPlannerPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
ApogyCoreEnvironmentEarthOrbitPlannerPackageImpl theApogyCoreEnvironmentEarthOrbitPlannerPackage = registeredApogyCoreEnvironmentEarthOrbitPlannerPackage instanceof ApogyCoreEnvironmentEarthOrbitPlannerPackageImpl ? (ApogyCoreEnvironmentEarthOrbitPlannerPackageImpl)registeredApogyCoreEnvironmentEarthOrbitPlannerPackage : new ApogyCoreEnvironmentEarthOrbitPlannerPackageImpl();
isInited = true;
// Initialize simple dependencies
EcorePackage.eINSTANCE.eClass();
ApogyCoreEnvironmentEarthOrbitPackage.eINSTANCE.eClass();
ApogyCommonEMFPackage.eINSTANCE.eClass();
ApogyCommonProcessorsPackage.eINSTANCE.eClass();
ApogyCoreEnvironmentEarthPackage.eINSTANCE.eClass();
ApogyCoreEnvironmentOrbitPackage.eINSTANCE.eClass();
ApogyCoreEnvironmentPackage.eINSTANCE.eClass();
ApogyCorePackage.eINSTANCE.eClass();
ApogyCoreInvocatorPackage.eINSTANCE.eClass();
ApogyCommonMathPackage.eINSTANCE.eClass();
ApogyCommonTopologyPackage.eINSTANCE.eClass();
ApogyCommonTopologyBindingsPackage.eINSTANCE.eClass();
// Create package meta-data objects
theApogyCoreEnvironmentEarthOrbitPlannerPackage.createPackageContents();
// Initialize created meta-data
theApogyCoreEnvironmentEarthOrbitPlannerPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theApogyCoreEnvironmentEarthOrbitPlannerPackage.freeze();
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(ApogyCoreEnvironmentEarthOrbitPlannerPackage.eNS_URI, theApogyCoreEnvironmentEarthOrbitPlannerPackage);
return theApogyCoreEnvironmentEarthOrbitPlannerPackage;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getApogyCoreEnvironmentEarthOrbitPlannerFacade() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__GenerateObservationsPlanTree__List_IProgressMonitor() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__ComputePlanCosts__ObservationAnalysisPlanner_IProgressMonitor() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetObservationAnalysisPlannerTool() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetLeafs__ObservationAnalysisPlannerNode() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetPlannerSolution__ObservationAnalysisPlannerNode() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(4);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetVisibilityPasses__List() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(5);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetNodeStatelessTotalCost__ObservationAnalysisPlannerNode() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(6);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetNodeStatefulTotalCost__ObservationAnalysisPlannerNode() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(7);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetNodeTotalCost__ObservationAnalysisPlannerNode() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(8);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetSolutionTotalCost__EObjectReferencesList() {
return apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass.getEOperations().get(9);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getObservationAnalysisPlannerTool() {
return observationAnalysisPlannerToolEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerTool_Planners() {
return (EReference)observationAnalysisPlannerToolEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerTool_ActivePlanner() {
return (EReference)observationAnalysisPlannerToolEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerTool_ObservationPlanExporters() {
return (EReference)observationAnalysisPlannerToolEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getObservationAnalysisPlanner() {
return observationAnalysisPlannerEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlanner_OrbitAnalysisData() {
return (EReference)observationAnalysisPlannerEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlanner_StatelessCostFunctions() {
return (EReference)observationAnalysisPlannerEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlanner_StatefulCostFunctions() {
return (EReference)observationAnalysisPlannerEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlanner_Result() {
return (EReference)observationAnalysisPlannerEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getObservationAnalysisPlanner_Running() {
return (EAttribute)observationAnalysisPlannerEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getObservationAnalysisPlannerNode() {
return observationAnalysisPlannerNodeEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerNode_Result() {
return (EReference)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getObservationAnalysisPlannerNode_Id() {
return (EAttribute)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerNode_Pass() {
return (EReference)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerNode_Parent() {
return (EReference)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerNode_Children() {
return (EReference)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getObservationAnalysisPlannerNode_RootNode() {
return (EAttribute)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(5);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerNode_PlannerRootNode() {
return (EReference)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(6);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerNode_PlannerResult() {
return (EReference)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(7);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerNode_Planner() {
return (EReference)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(8);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerNode_StatefulCostsMapEntries() {
return (EReference)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(9);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getObservationAnalysisPlannerNode_Cost() {
return (EAttribute)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(10);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getObservationAnalysisPlannerNode_CumulativeCost() {
return (EAttribute)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(11);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerNode_FirstLevelNode() {
return (EReference)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(12);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getObservationAnalysisPlannerNode_Level() {
return (EAttribute)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(13);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getObservationAnalysisPlannerNode_SolutionDuration() {
return (EAttribute)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(14);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getObservationAnalysisPlannerNode_PassDuration() {
return (EAttribute)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(15);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getObservationAnalysisPlannerNode_TotalPassesDuration() {
return (EAttribute)observationAnalysisPlannerNodeEClass.getEStructuralFeatures().get(16);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getObservationAnalysisPlanGenerator() {
return observationAnalysisPlanGeneratorEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getObservationAnalysisPlanCostsProcessor() {
return observationAnalysisPlanCostsProcessorEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getAbstractObservationPlanExporter() {
return abstractObservationPlanExporterEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getAbstractObservationPlanExporter__ExportObservationPlan__EObjectReferencesList_ObservationAnalysisPlanner_IProgressMonitor() {
return abstractObservationPlanExporterEClass.getEOperations().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getDefaultObservationPlanExporter() {
return defaultObservationPlanExporterEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getDefaultObservationPlanExporter_FileURL() {
return (EAttribute)defaultObservationPlanExporterEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getAbstractCostFunction() {
return abstractCostFunctionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getAbstractCostFunction_Enable() {
return (EAttribute)abstractCostFunctionEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getAbstractCostFunction_Coefficient() {
return (EAttribute)abstractCostFunctionEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getAbstractCostFunction_ApplicableSpacecrafts() {
return (EReference)abstractCostFunctionEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getAbstractCostFunction_ApplicableEarthOutlooks() {
return (EReference)abstractCostFunctionEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getCostFunctionState() {
return costFunctionStateEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getAbstractStatelessCostFunction() {
return abstractStatelessCostFunctionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getAbstractStatelessCostFunction__ComputeCost__VisibilityPass() {
return abstractStatelessCostFunctionEClass.getEOperations().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getAbstractStatefulCostFunction() {
return abstractStatefulCostFunctionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getAbstractStatefulCostFunction__ComputeCost__CostFunctionState_CostFunctionState_VisibilityPass() {
return abstractStatefulCostFunctionEClass.getEOperations().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EOperation getAbstractStatefulCostFunction__CreateState() {
return abstractStatefulCostFunctionEClass.getEOperations().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getObservationAnalysisPlannerResult() {
return observationAnalysisPlannerResultEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerResult_Planner() {
return (EReference)observationAnalysisPlannerResultEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerResult_PlanRootNode() {
return (EReference)observationAnalysisPlannerResultEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getObservationAnalysisPlannerResult_StatelessCostsMapEntries() {
return (EReference)observationAnalysisPlannerResultEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getStatelessCostsMapEntry() {
return statelessCostsMapEntryEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getStatelessCostsMapEntry_Key() {
return (EReference)statelessCostsMapEntryEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getStatelessCostsMapEntry_Value() {
return (EReference)statelessCostsMapEntryEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getStatelessCostFunctionMap() {
return statelessCostFunctionMapEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getStatelessCostFunctionMap_StatelessCostFunctionMapEntries() {
return (EReference)statelessCostFunctionMapEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getStatelessCostFunctionMapEntry() {
return statelessCostFunctionMapEntryEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getStatelessCostFunctionMapEntry_Key() {
return (EReference)statelessCostFunctionMapEntryEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getStatelessCostFunctionMapEntry_Value() {
return (EAttribute)statelessCostFunctionMapEntryEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getStatefulCostFunctionMapEntry() {
return statefulCostFunctionMapEntryEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getStatefulCostFunctionMapEntry_Key() {
return (EReference)statefulCostFunctionMapEntryEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getStatefulCostFunctionMapEntry_Value() {
return (EReference)statefulCostFunctionMapEntryEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getStatefulCostFunctionMapEntryValue() {
return statefulCostFunctionMapEntryValueEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getStatefulCostFunctionMapEntryValue_State() {
return (EReference)statefulCostFunctionMapEntryValueEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getStatefulCostFunctionMapEntryValue_Cost() {
return (EAttribute)statefulCostFunctionMapEntryValueEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getEclipseCostFunction() {
return eclipseCostFunctionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getEclipseCostFunction_State() {
return (EAttribute)eclipseCostFunctionEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getEclipseCostFunction_Cost() {
return (EAttribute)eclipseCostFunctionEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getTimeIntervalCostFunction() {
return timeIntervalCostFunctionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getTimeIntervalCostFunction_Cost() {
return (EAttribute)timeIntervalCostFunctionEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getSimpleResourceCostFunction() {
return simpleResourceCostFunctionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getSimpleResourceCostFunction_InitialResourceValue() {
return (EAttribute)simpleResourceCostFunctionEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getSimpleResourceCostFunction_MinimumResourceValue() {
return (EAttribute)simpleResourceCostFunctionEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getSimpleResourceCostFunction_MaximumResourceValue() {
return (EAttribute)simpleResourceCostFunctionEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getSimpleResourceCostFunctionState() {
return simpleResourceCostFunctionStateEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getSimpleResourceCostFunctionState_Value() {
return (EAttribute)simpleResourceCostFunctionStateEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getMinimumTimeSpamCostFunction() {
return minimumTimeSpamCostFunctionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getMinimumTimeSpamCostFunction_MinimumTimeSpam() {
return (EAttribute)minimumTimeSpamCostFunctionEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EClass getCrosstrackAngleCostFunction() {
return crosstrackAngleCostFunctionEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getCrosstrackAngleCostFunction_Cost() {
return (EAttribute)crosstrackAngleCostFunctionEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EAttribute getCrosstrackAngleCostFunction_Angle() {
return (EAttribute)crosstrackAngleCostFunctionEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EEnum getEclipsePeriod() {
return eclipsePeriodEEnum;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EDataType getObservationPlan() {
return observationPlanEDataType;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EDataType getObservationAnalysisPlannerNodeList() {
return observationAnalysisPlannerNodeListEDataType;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EDataType getVisibilityPassesList() {
return visibilityPassesListEDataType;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EDataType getIProgressMonitor() {
return iProgressMonitorEDataType;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EDataType getVisibilityPassReferencesList() {
return visibilityPassReferencesListEDataType;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EDataType getException() {
return exceptionEDataType;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public ApogyCoreEnvironmentEarthOrbitPlannerFactory getApogyCoreEnvironmentEarthOrbitPlannerFactory() {
return (ApogyCoreEnvironmentEarthOrbitPlannerFactory)getEFactoryInstance();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private boolean isCreated = false;
/**
* Creates the meta-model objects for the package. This method is
* guarded to have no affect on any invocation but its first.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void createPackageContents() {
if (isCreated) return;
isCreated = true;
// Create classes and their features
apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass = createEClass(APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GENERATE_OBSERVATIONS_PLAN_TREE__LIST_IPROGRESSMONITOR);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___COMPUTE_PLAN_COSTS__OBSERVATIONANALYSISPLANNER_IPROGRESSMONITOR);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_OBSERVATION_ANALYSIS_PLANNER_TOOL);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_LEAFS__OBSERVATIONANALYSISPLANNERNODE);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_PLANNER_SOLUTION__OBSERVATIONANALYSISPLANNERNODE);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_VISIBILITY_PASSES__LIST);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_NODE_STATELESS_TOTAL_COST__OBSERVATIONANALYSISPLANNERNODE);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_NODE_STATEFUL_TOTAL_COST__OBSERVATIONANALYSISPLANNERNODE);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_NODE_TOTAL_COST__OBSERVATIONANALYSISPLANNERNODE);
createEOperation(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, APOGY_CORE_ENVIRONMENT_EARTH_ORBIT_PLANNER_FACADE___GET_SOLUTION_TOTAL_COST__EOBJECTREFERENCESLIST);
observationAnalysisPlannerToolEClass = createEClass(OBSERVATION_ANALYSIS_PLANNER_TOOL);
createEReference(observationAnalysisPlannerToolEClass, OBSERVATION_ANALYSIS_PLANNER_TOOL__PLANNERS);
createEReference(observationAnalysisPlannerToolEClass, OBSERVATION_ANALYSIS_PLANNER_TOOL__ACTIVE_PLANNER);
createEReference(observationAnalysisPlannerToolEClass, OBSERVATION_ANALYSIS_PLANNER_TOOL__OBSERVATION_PLAN_EXPORTERS);
observationAnalysisPlannerEClass = createEClass(OBSERVATION_ANALYSIS_PLANNER);
createEReference(observationAnalysisPlannerEClass, OBSERVATION_ANALYSIS_PLANNER__ORBIT_ANALYSIS_DATA);
createEReference(observationAnalysisPlannerEClass, OBSERVATION_ANALYSIS_PLANNER__STATELESS_COST_FUNCTIONS);
createEReference(observationAnalysisPlannerEClass, OBSERVATION_ANALYSIS_PLANNER__STATEFUL_COST_FUNCTIONS);
createEReference(observationAnalysisPlannerEClass, OBSERVATION_ANALYSIS_PLANNER__RESULT);
createEAttribute(observationAnalysisPlannerEClass, OBSERVATION_ANALYSIS_PLANNER__RUNNING);
observationAnalysisPlannerNodeEClass = createEClass(OBSERVATION_ANALYSIS_PLANNER_NODE);
createEReference(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__RESULT);
createEAttribute(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__ID);
createEReference(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__PASS);
createEReference(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__PARENT);
createEReference(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__CHILDREN);
createEAttribute(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__ROOT_NODE);
createEReference(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__PLANNER_ROOT_NODE);
createEReference(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__PLANNER_RESULT);
createEReference(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__PLANNER);
createEReference(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__STATEFUL_COSTS_MAP_ENTRIES);
createEAttribute(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__COST);
createEAttribute(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__CUMULATIVE_COST);
createEReference(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__FIRST_LEVEL_NODE);
createEAttribute(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__LEVEL);
createEAttribute(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__SOLUTION_DURATION);
createEAttribute(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__PASS_DURATION);
createEAttribute(observationAnalysisPlannerNodeEClass, OBSERVATION_ANALYSIS_PLANNER_NODE__TOTAL_PASSES_DURATION);
observationAnalysisPlanGeneratorEClass = createEClass(OBSERVATION_ANALYSIS_PLAN_GENERATOR);
observationAnalysisPlanCostsProcessorEClass = createEClass(OBSERVATION_ANALYSIS_PLAN_COSTS_PROCESSOR);
abstractObservationPlanExporterEClass = createEClass(ABSTRACT_OBSERVATION_PLAN_EXPORTER);
createEOperation(abstractObservationPlanExporterEClass, ABSTRACT_OBSERVATION_PLAN_EXPORTER___EXPORT_OBSERVATION_PLAN__EOBJECTREFERENCESLIST_OBSERVATIONANALYSISPLANNER_IPROGRESSMONITOR);
defaultObservationPlanExporterEClass = createEClass(DEFAULT_OBSERVATION_PLAN_EXPORTER);
createEAttribute(defaultObservationPlanExporterEClass, DEFAULT_OBSERVATION_PLAN_EXPORTER__FILE_URL);
abstractCostFunctionEClass = createEClass(ABSTRACT_COST_FUNCTION);
createEAttribute(abstractCostFunctionEClass, ABSTRACT_COST_FUNCTION__ENABLE);
createEAttribute(abstractCostFunctionEClass, ABSTRACT_COST_FUNCTION__COEFFICIENT);
createEReference(abstractCostFunctionEClass, ABSTRACT_COST_FUNCTION__APPLICABLE_SPACECRAFTS);
createEReference(abstractCostFunctionEClass, ABSTRACT_COST_FUNCTION__APPLICABLE_EARTH_OUTLOOKS);
costFunctionStateEClass = createEClass(COST_FUNCTION_STATE);
abstractStatelessCostFunctionEClass = createEClass(ABSTRACT_STATELESS_COST_FUNCTION);
createEOperation(abstractStatelessCostFunctionEClass, ABSTRACT_STATELESS_COST_FUNCTION___COMPUTE_COST__VISIBILITYPASS);
abstractStatefulCostFunctionEClass = createEClass(ABSTRACT_STATEFUL_COST_FUNCTION);
createEOperation(abstractStatefulCostFunctionEClass, ABSTRACT_STATEFUL_COST_FUNCTION___COMPUTE_COST__COSTFUNCTIONSTATE_COSTFUNCTIONSTATE_VISIBILITYPASS);
createEOperation(abstractStatefulCostFunctionEClass, ABSTRACT_STATEFUL_COST_FUNCTION___CREATE_STATE);
observationAnalysisPlannerResultEClass = createEClass(OBSERVATION_ANALYSIS_PLANNER_RESULT);
createEReference(observationAnalysisPlannerResultEClass, OBSERVATION_ANALYSIS_PLANNER_RESULT__PLANNER);
createEReference(observationAnalysisPlannerResultEClass, OBSERVATION_ANALYSIS_PLANNER_RESULT__PLAN_ROOT_NODE);
createEReference(observationAnalysisPlannerResultEClass, OBSERVATION_ANALYSIS_PLANNER_RESULT__STATELESS_COSTS_MAP_ENTRIES);
statelessCostsMapEntryEClass = createEClass(STATELESS_COSTS_MAP_ENTRY);
createEReference(statelessCostsMapEntryEClass, STATELESS_COSTS_MAP_ENTRY__KEY);
createEReference(statelessCostsMapEntryEClass, STATELESS_COSTS_MAP_ENTRY__VALUE);
statelessCostFunctionMapEClass = createEClass(STATELESS_COST_FUNCTION_MAP);
createEReference(statelessCostFunctionMapEClass, STATELESS_COST_FUNCTION_MAP__STATELESS_COST_FUNCTION_MAP_ENTRIES);
statelessCostFunctionMapEntryEClass = createEClass(STATELESS_COST_FUNCTION_MAP_ENTRY);
createEReference(statelessCostFunctionMapEntryEClass, STATELESS_COST_FUNCTION_MAP_ENTRY__KEY);
createEAttribute(statelessCostFunctionMapEntryEClass, STATELESS_COST_FUNCTION_MAP_ENTRY__VALUE);
statefulCostFunctionMapEntryEClass = createEClass(STATEFUL_COST_FUNCTION_MAP_ENTRY);
createEReference(statefulCostFunctionMapEntryEClass, STATEFUL_COST_FUNCTION_MAP_ENTRY__KEY);
createEReference(statefulCostFunctionMapEntryEClass, STATEFUL_COST_FUNCTION_MAP_ENTRY__VALUE);
statefulCostFunctionMapEntryValueEClass = createEClass(STATEFUL_COST_FUNCTION_MAP_ENTRY_VALUE);
createEReference(statefulCostFunctionMapEntryValueEClass, STATEFUL_COST_FUNCTION_MAP_ENTRY_VALUE__STATE);
createEAttribute(statefulCostFunctionMapEntryValueEClass, STATEFUL_COST_FUNCTION_MAP_ENTRY_VALUE__COST);
eclipseCostFunctionEClass = createEClass(ECLIPSE_COST_FUNCTION);
createEAttribute(eclipseCostFunctionEClass, ECLIPSE_COST_FUNCTION__STATE);
createEAttribute(eclipseCostFunctionEClass, ECLIPSE_COST_FUNCTION__COST);
timeIntervalCostFunctionEClass = createEClass(TIME_INTERVAL_COST_FUNCTION);
createEAttribute(timeIntervalCostFunctionEClass, TIME_INTERVAL_COST_FUNCTION__COST);
simpleResourceCostFunctionEClass = createEClass(SIMPLE_RESOURCE_COST_FUNCTION);
createEAttribute(simpleResourceCostFunctionEClass, SIMPLE_RESOURCE_COST_FUNCTION__INITIAL_RESOURCE_VALUE);
createEAttribute(simpleResourceCostFunctionEClass, SIMPLE_RESOURCE_COST_FUNCTION__MINIMUM_RESOURCE_VALUE);
createEAttribute(simpleResourceCostFunctionEClass, SIMPLE_RESOURCE_COST_FUNCTION__MAXIMUM_RESOURCE_VALUE);
simpleResourceCostFunctionStateEClass = createEClass(SIMPLE_RESOURCE_COST_FUNCTION_STATE);
createEAttribute(simpleResourceCostFunctionStateEClass, SIMPLE_RESOURCE_COST_FUNCTION_STATE__VALUE);
minimumTimeSpamCostFunctionEClass = createEClass(MINIMUM_TIME_SPAM_COST_FUNCTION);
createEAttribute(minimumTimeSpamCostFunctionEClass, MINIMUM_TIME_SPAM_COST_FUNCTION__MINIMUM_TIME_SPAM);
crosstrackAngleCostFunctionEClass = createEClass(CROSSTRACK_ANGLE_COST_FUNCTION);
createEAttribute(crosstrackAngleCostFunctionEClass, CROSSTRACK_ANGLE_COST_FUNCTION__COST);
createEAttribute(crosstrackAngleCostFunctionEClass, CROSSTRACK_ANGLE_COST_FUNCTION__ANGLE);
// Create enums
eclipsePeriodEEnum = createEEnum(ECLIPSE_PERIOD);
// Create data types
observationPlanEDataType = createEDataType(OBSERVATION_PLAN);
observationAnalysisPlannerNodeListEDataType = createEDataType(OBSERVATION_ANALYSIS_PLANNER_NODE_LIST);
visibilityPassesListEDataType = createEDataType(VISIBILITY_PASSES_LIST);
iProgressMonitorEDataType = createEDataType(IPROGRESS_MONITOR);
visibilityPassReferencesListEDataType = createEDataType(VISIBILITY_PASS_REFERENCES_LIST);
exceptionEDataType = createEDataType(EXCEPTION);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private boolean isInitialized = false;
/**
* Complete the initialization of the package and its meta-model. This
* method is guarded to have no affect on any invocation but its first.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void initializePackageContents() {
if (isInitialized) return;
isInitialized = true;
// Initialize package
setName(eNAME);
setNsPrefix(eNS_PREFIX);
setNsURI(eNS_URI);
// Obtain other dependent packages
EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
ApogyCoreEnvironmentEarthOrbitPackage theApogyCoreEnvironmentEarthOrbitPackage = (ApogyCoreEnvironmentEarthOrbitPackage)EPackage.Registry.INSTANCE.getEPackage(ApogyCoreEnvironmentEarthOrbitPackage.eNS_URI);
ApogyCommonEMFPackage theApogyCommonEMFPackage = (ApogyCommonEMFPackage)EPackage.Registry.INSTANCE.getEPackage(ApogyCommonEMFPackage.eNS_URI);
ApogyCommonProcessorsPackage theApogyCommonProcessorsPackage = (ApogyCommonProcessorsPackage)EPackage.Registry.INSTANCE.getEPackage(ApogyCommonProcessorsPackage.eNS_URI);
ApogyCoreEnvironmentEarthPackage theApogyCoreEnvironmentEarthPackage = (ApogyCoreEnvironmentEarthPackage)EPackage.Registry.INSTANCE.getEPackage(ApogyCoreEnvironmentEarthPackage.eNS_URI);
// Create type parameters
ETypeParameter abstractStatefulCostFunctionEClass_State = addETypeParameter(abstractStatefulCostFunctionEClass, "State");
// Set bounds for type parameters
EGenericType g1 = createEGenericType(this.getCostFunctionState());
abstractStatefulCostFunctionEClass_State.getEBounds().add(g1);
// Add supertypes to classes
observationAnalysisPlannerToolEClass.getESuperTypes().add(theApogyCoreEnvironmentEarthOrbitPackage.getEarthOrbitTool());
observationAnalysisPlannerEClass.getESuperTypes().add(theApogyCommonEMFPackage.getNamedDescribedElement());
g1 = createEGenericType(theApogyCommonProcessorsPackage.getProcessor());
EGenericType g2 = createEGenericType(this.getVisibilityPassesList());
g1.getETypeArguments().add(g2);
g2 = createEGenericType(this.getObservationAnalysisPlannerNode());
g1.getETypeArguments().add(g2);
observationAnalysisPlanGeneratorEClass.getEGenericSuperTypes().add(g1);
g1 = createEGenericType(theApogyCommonEMFPackage.getNamedDescribedElement());
observationAnalysisPlanGeneratorEClass.getEGenericSuperTypes().add(g1);
g1 = createEGenericType(theApogyCommonProcessorsPackage.getProcessor());
g2 = createEGenericType(this.getObservationAnalysisPlanner());
g1.getETypeArguments().add(g2);
g2 = createEGenericType(this.getObservationAnalysisPlanner());
g1.getETypeArguments().add(g2);
observationAnalysisPlanCostsProcessorEClass.getEGenericSuperTypes().add(g1);
g1 = createEGenericType(theApogyCommonEMFPackage.getNamedDescribedElement());
observationAnalysisPlanCostsProcessorEClass.getEGenericSuperTypes().add(g1);
abstractObservationPlanExporterEClass.getESuperTypes().add(theApogyCommonEMFPackage.getNamedDescribedElement());
defaultObservationPlanExporterEClass.getESuperTypes().add(this.getAbstractObservationPlanExporter());
abstractCostFunctionEClass.getESuperTypes().add(theApogyCommonEMFPackage.getNamedDescribedElement());
abstractStatelessCostFunctionEClass.getESuperTypes().add(this.getAbstractCostFunction());
abstractStatefulCostFunctionEClass.getESuperTypes().add(this.getAbstractCostFunction());
eclipseCostFunctionEClass.getESuperTypes().add(this.getAbstractStatelessCostFunction());
g1 = createEGenericType(this.getAbstractStatefulCostFunction());
g2 = createEGenericType(this.getCostFunctionState());
g1.getETypeArguments().add(g2);
timeIntervalCostFunctionEClass.getEGenericSuperTypes().add(g1);
g1 = createEGenericType(theApogyCommonEMFPackage.getTimeInterval());
timeIntervalCostFunctionEClass.getEGenericSuperTypes().add(g1);
g1 = createEGenericType(this.getAbstractStatefulCostFunction());
g2 = createEGenericType(this.getSimpleResourceCostFunctionState());
g1.getETypeArguments().add(g2);
simpleResourceCostFunctionEClass.getEGenericSuperTypes().add(g1);
simpleResourceCostFunctionStateEClass.getESuperTypes().add(this.getCostFunctionState());
g1 = createEGenericType(this.getAbstractStatefulCostFunction());
g2 = createEGenericType(this.getCostFunctionState());
g1.getETypeArguments().add(g2);
minimumTimeSpamCostFunctionEClass.getEGenericSuperTypes().add(g1);
crosstrackAngleCostFunctionEClass.getESuperTypes().add(this.getAbstractStatelessCostFunction());
// Initialize classes, features, and operations; add parameters
initEClass(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass, ApogyCoreEnvironmentEarthOrbitPlannerFacade.class, "ApogyCoreEnvironmentEarthOrbitPlannerFacade", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
EOperation op = initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GenerateObservationsPlanTree__List_IProgressMonitor(), this.getObservationAnalysisPlannerNode(), "generateObservationsPlanTree", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getVisibilityPassesList(), "passes", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getIProgressMonitor(), "monitor", 0, 1, !IS_UNIQUE, IS_ORDERED);
op = initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__ComputePlanCosts__ObservationAnalysisPlanner_IProgressMonitor(), this.getObservationAnalysisPlanner(), "computePlanCosts", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationAnalysisPlanner(), "planner", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getIProgressMonitor(), "monitor", 0, 1, !IS_UNIQUE, IS_ORDERED);
initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetObservationAnalysisPlannerTool(), this.getObservationAnalysisPlannerTool(), "getObservationAnalysisPlannerTool", 0, 1, !IS_UNIQUE, IS_ORDERED);
op = initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetLeafs__ObservationAnalysisPlannerNode(), this.getObservationAnalysisPlannerNodeList(), "getLeafs", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationAnalysisPlannerNode(), "root", 0, 1, !IS_UNIQUE, IS_ORDERED);
op = initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetPlannerSolution__ObservationAnalysisPlannerNode(), this.getObservationPlan(), "getPlannerSolution", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationAnalysisPlannerNode(), "leaf", 0, 1, !IS_UNIQUE, IS_ORDERED);
op = initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetVisibilityPasses__List(), this.getVisibilityPassReferencesList(), "getVisibilityPasses", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationAnalysisPlannerNodeList(), "nodesList", 0, 1, !IS_UNIQUE, IS_ORDERED);
op = initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetNodeStatelessTotalCost__ObservationAnalysisPlannerNode(), theEcorePackage.getEDouble(), "getNodeStatelessTotalCost", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationAnalysisPlannerNode(), "node", 0, 1, !IS_UNIQUE, IS_ORDERED);
op = initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetNodeStatefulTotalCost__ObservationAnalysisPlannerNode(), theEcorePackage.getEDouble(), "getNodeStatefulTotalCost", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationAnalysisPlannerNode(), "node", 0, 1, !IS_UNIQUE, IS_ORDERED);
op = initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetNodeTotalCost__ObservationAnalysisPlannerNode(), theEcorePackage.getEDouble(), "getNodeTotalCost", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationAnalysisPlannerNode(), "node", 0, 1, !IS_UNIQUE, IS_ORDERED);
op = initEOperation(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetSolutionTotalCost__EObjectReferencesList(), theEcorePackage.getEDouble(), "getSolutionTotalCost", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationPlan(), "plan", 0, 1, !IS_UNIQUE, IS_ORDERED);
initEClass(observationAnalysisPlannerToolEClass, ObservationAnalysisPlannerTool.class, "ObservationAnalysisPlannerTool", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getObservationAnalysisPlannerTool_Planners(), this.getObservationAnalysisPlanner(), null, "planners", null, 0, -1, ObservationAnalysisPlannerTool.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerTool_ActivePlanner(), this.getObservationAnalysisPlanner(), null, "activePlanner", null, 1, 1, ObservationAnalysisPlannerTool.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerTool_ObservationPlanExporters(), this.getAbstractObservationPlanExporter(), null, "observationPlanExporters", null, 0, -1, ObservationAnalysisPlannerTool.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(observationAnalysisPlannerEClass, ObservationAnalysisPlanner.class, "ObservationAnalysisPlanner", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getObservationAnalysisPlanner_OrbitAnalysisData(), theApogyCoreEnvironmentEarthOrbitPackage.getOrbitAnalysisData(), null, "orbitAnalysisData", null, 1, 1, ObservationAnalysisPlanner.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlanner_StatelessCostFunctions(), this.getAbstractStatelessCostFunction(), null, "statelessCostFunctions", null, 0, -1, ObservationAnalysisPlanner.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
g1 = createEGenericType(this.getAbstractStatefulCostFunction());
g2 = createEGenericType(this.getCostFunctionState());
g1.getETypeArguments().add(g2);
initEReference(getObservationAnalysisPlanner_StatefulCostFunctions(), g1, null, "statefulCostFunctions", null, 0, -1, ObservationAnalysisPlanner.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlanner_Result(), this.getObservationAnalysisPlannerResult(), this.getObservationAnalysisPlannerResult_Planner(), "result", null, 1, 1, ObservationAnalysisPlanner.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getObservationAnalysisPlanner_Running(), theEcorePackage.getEBoolean(), "running", "false", 0, 1, ObservationAnalysisPlanner.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(observationAnalysisPlannerNodeEClass, ObservationAnalysisPlannerNode.class, "ObservationAnalysisPlannerNode", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getObservationAnalysisPlannerNode_Result(), this.getObservationAnalysisPlannerResult(), this.getObservationAnalysisPlannerResult_PlanRootNode(), "result", null, 0, 1, ObservationAnalysisPlannerNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getObservationAnalysisPlannerNode_Id(), theEcorePackage.getEString(), "id", null, 0, 1, ObservationAnalysisPlannerNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerNode_Pass(), theApogyCoreEnvironmentEarthOrbitPackage.getVisibilityPass(), null, "pass", null, 0, 1, ObservationAnalysisPlannerNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerNode_Parent(), this.getObservationAnalysisPlannerNode(), this.getObservationAnalysisPlannerNode_Children(), "parent", null, 0, 1, ObservationAnalysisPlannerNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerNode_Children(), this.getObservationAnalysisPlannerNode(), this.getObservationAnalysisPlannerNode_Parent(), "children", null, 0, -1, ObservationAnalysisPlannerNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getObservationAnalysisPlannerNode_RootNode(), theEcorePackage.getEBoolean(), "rootNode", null, 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerNode_PlannerRootNode(), this.getObservationAnalysisPlannerNode(), null, "plannerRootNode", null, 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerNode_PlannerResult(), this.getObservationAnalysisPlannerResult(), null, "plannerResult", null, 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerNode_Planner(), this.getObservationAnalysisPlanner(), null, "planner", null, 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerNode_StatefulCostsMapEntries(), this.getStatefulCostFunctionMapEntry(), null, "statefulCostsMapEntries", null, 0, -1, ObservationAnalysisPlannerNode.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getObservationAnalysisPlannerNode_Cost(), theEcorePackage.getEDouble(), "cost", "0", 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEAttribute(getObservationAnalysisPlannerNode_CumulativeCost(), theEcorePackage.getEDouble(), "cumulativeCost", "0", 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerNode_FirstLevelNode(), this.getObservationAnalysisPlannerNode(), null, "firstLevelNode", null, 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEAttribute(getObservationAnalysisPlannerNode_Level(), theEcorePackage.getEInt(), "level", null, 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEAttribute(getObservationAnalysisPlannerNode_SolutionDuration(), theEcorePackage.getEDouble(), "solutionDuration", "0", 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEAttribute(getObservationAnalysisPlannerNode_PassDuration(), theEcorePackage.getEDouble(), "passDuration", "0", 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEAttribute(getObservationAnalysisPlannerNode_TotalPassesDuration(), theEcorePackage.getEDouble(), "totalPassesDuration", "0", 0, 1, ObservationAnalysisPlannerNode.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
initEClass(observationAnalysisPlanGeneratorEClass, ObservationAnalysisPlanGenerator.class, "ObservationAnalysisPlanGenerator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(observationAnalysisPlanCostsProcessorEClass, ObservationAnalysisPlanCostsProcessor.class, "ObservationAnalysisPlanCostsProcessor", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(abstractObservationPlanExporterEClass, AbstractObservationPlanExporter.class, "AbstractObservationPlanExporter", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
op = initEOperation(getAbstractObservationPlanExporter__ExportObservationPlan__EObjectReferencesList_ObservationAnalysisPlanner_IProgressMonitor(), null, "exportObservationPlan", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationPlan(), "plan", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getObservationAnalysisPlanner(), "planner", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getIProgressMonitor(), "monitor", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEException(op, this.getException());
initEClass(defaultObservationPlanExporterEClass, DefaultObservationPlanExporter.class, "DefaultObservationPlanExporter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getDefaultObservationPlanExporter_FileURL(), theEcorePackage.getEString(), "fileURL", null, 0, 1, DefaultObservationPlanExporter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(abstractCostFunctionEClass, AbstractCostFunction.class, "AbstractCostFunction", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getAbstractCostFunction_Enable(), theEcorePackage.getEBoolean(), "enable", "true", 0, 1, AbstractCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getAbstractCostFunction_Coefficient(), theEcorePackage.getEDouble(), "coefficient", "0.5", 0, 1, AbstractCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getAbstractCostFunction_ApplicableSpacecrafts(), theApogyCoreEnvironmentEarthOrbitPackage.getEarthSpacecraft(), null, "applicableSpacecrafts", null, 0, -1, AbstractCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getAbstractCostFunction_ApplicableEarthOutlooks(), theApogyCoreEnvironmentEarthPackage.getEarthOutlook(), null, "applicableEarthOutlooks", null, 0, -1, AbstractCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(costFunctionStateEClass, CostFunctionState.class, "CostFunctionState", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEClass(abstractStatelessCostFunctionEClass, AbstractStatelessCostFunction.class, "AbstractStatelessCostFunction", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
op = initEOperation(getAbstractStatelessCostFunction__ComputeCost__VisibilityPass(), theEcorePackage.getEDouble(), "computeCost", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, theApogyCoreEnvironmentEarthOrbitPackage.getVisibilityPass(), "pass", 0, 1, !IS_UNIQUE, IS_ORDERED);
initEClass(abstractStatefulCostFunctionEClass, AbstractStatefulCostFunction.class, "AbstractStatefulCostFunction", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
op = initEOperation(getAbstractStatefulCostFunction__ComputeCost__CostFunctionState_CostFunctionState_VisibilityPass(), theEcorePackage.getEDouble(), "computeCost", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getCostFunctionState(), "previousState", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, this.getCostFunctionState(), "nextState", 0, 1, !IS_UNIQUE, IS_ORDERED);
addEParameter(op, theApogyCoreEnvironmentEarthOrbitPackage.getVisibilityPass(), "pass", 0, 1, !IS_UNIQUE, IS_ORDERED);
initEOperation(getAbstractStatefulCostFunction__CreateState(), this.getCostFunctionState(), "createState", 0, 1, !IS_UNIQUE, IS_ORDERED);
initEClass(observationAnalysisPlannerResultEClass, ObservationAnalysisPlannerResult.class, "ObservationAnalysisPlannerResult", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getObservationAnalysisPlannerResult_Planner(), this.getObservationAnalysisPlanner(), this.getObservationAnalysisPlanner_Result(), "planner", null, 0, 1, ObservationAnalysisPlannerResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerResult_PlanRootNode(), this.getObservationAnalysisPlannerNode(), this.getObservationAnalysisPlannerNode_Result(), "planRootNode", null, 1, 1, ObservationAnalysisPlannerResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getObservationAnalysisPlannerResult_StatelessCostsMapEntries(), this.getStatelessCostsMapEntry(), null, "statelessCostsMapEntries", null, 0, -1, ObservationAnalysisPlannerResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(statelessCostsMapEntryEClass, Map.Entry.class, "StatelessCostsMapEntry", !IS_ABSTRACT, !IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS);
initEReference(getStatelessCostsMapEntry_Key(), theApogyCoreEnvironmentEarthOrbitPackage.getVisibilityPass(), null, "key", null, 0, 1, Map.Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getStatelessCostsMapEntry_Value(), this.getStatelessCostFunctionMap(), null, "value", null, 1, 1, Map.Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(statelessCostFunctionMapEClass, StatelessCostFunctionMap.class, "StatelessCostFunctionMap", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getStatelessCostFunctionMap_StatelessCostFunctionMapEntries(), this.getStatelessCostFunctionMapEntry(), null, "statelessCostFunctionMapEntries", null, 0, -1, StatelessCostFunctionMap.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(statelessCostFunctionMapEntryEClass, Map.Entry.class, "StatelessCostFunctionMapEntry", !IS_ABSTRACT, !IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS);
initEReference(getStatelessCostFunctionMapEntry_Key(), this.getAbstractStatelessCostFunction(), null, "key", null, 0, 1, Map.Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getStatelessCostFunctionMapEntry_Value(), theEcorePackage.getEDoubleObject(), "value", null, 0, 1, Map.Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(statefulCostFunctionMapEntryEClass, Map.Entry.class, "StatefulCostFunctionMapEntry", !IS_ABSTRACT, !IS_INTERFACE, !IS_GENERATED_INSTANCE_CLASS);
g1 = createEGenericType(this.getAbstractStatefulCostFunction());
g2 = createEGenericType(this.getCostFunctionState());
g1.getETypeArguments().add(g2);
initEReference(getStatefulCostFunctionMapEntry_Key(), g1, null, "key", null, 0, 1, Map.Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getStatefulCostFunctionMapEntry_Value(), this.getStatefulCostFunctionMapEntryValue(), null, "value", null, 0, 1, Map.Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(statefulCostFunctionMapEntryValueEClass, StatefulCostFunctionMapEntryValue.class, "StatefulCostFunctionMapEntryValue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getStatefulCostFunctionMapEntryValue_State(), this.getCostFunctionState(), null, "state", null, 0, 1, StatefulCostFunctionMapEntryValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getStatefulCostFunctionMapEntryValue_Cost(), theEcorePackage.getEDouble(), "cost", null, 0, 1, StatefulCostFunctionMapEntryValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(eclipseCostFunctionEClass, EclipseCostFunction.class, "EclipseCostFunction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getEclipseCostFunction_State(), this.getEclipsePeriod(), "state", "NOT_IN_ECLIPSE", 0, 1, EclipseCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getEclipseCostFunction_Cost(), theEcorePackage.getEDouble(), "cost", "0.0", 0, 1, EclipseCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(timeIntervalCostFunctionEClass, TimeIntervalCostFunction.class, "TimeIntervalCostFunction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getTimeIntervalCostFunction_Cost(), theEcorePackage.getEDouble(), "cost", "0.0", 0, 1, TimeIntervalCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(simpleResourceCostFunctionEClass, SimpleResourceCostFunction.class, "SimpleResourceCostFunction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getSimpleResourceCostFunction_InitialResourceValue(), theEcorePackage.getEDouble(), "initialResourceValue", "0.0", 0, 1, SimpleResourceCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSimpleResourceCostFunction_MinimumResourceValue(), theEcorePackage.getEDouble(), "minimumResourceValue", "-1.0", 0, 1, SimpleResourceCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getSimpleResourceCostFunction_MaximumResourceValue(), theEcorePackage.getEDouble(), "maximumResourceValue", "1.0", 0, 1, SimpleResourceCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(simpleResourceCostFunctionStateEClass, SimpleResourceCostFunctionState.class, "SimpleResourceCostFunctionState", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getSimpleResourceCostFunctionState_Value(), theEcorePackage.getEDouble(), "value", "0.0", 0, 1, SimpleResourceCostFunctionState.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(minimumTimeSpamCostFunctionEClass, MinimumTimeSpamCostFunction.class, "MinimumTimeSpamCostFunction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getMinimumTimeSpamCostFunction_MinimumTimeSpam(), theEcorePackage.getELong(), "minimumTimeSpam", "0", 0, 1, MinimumTimeSpamCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(crosstrackAngleCostFunctionEClass, CrosstrackAngleCostFunction.class, "CrosstrackAngleCostFunction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getCrosstrackAngleCostFunction_Cost(), theEcorePackage.getEDouble(), "cost", "0.0", 0, 1, CrosstrackAngleCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getCrosstrackAngleCostFunction_Angle(), theEcorePackage.getEDouble(), "angle", "10.0", 0, 1, CrosstrackAngleCostFunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
// Initialize enums and add enum literals
initEEnum(eclipsePeriodEEnum, EclipsePeriod.class, "EclipsePeriod");
addEEnumLiteral(eclipsePeriodEEnum, EclipsePeriod.NOT_IN_ECLIPSE);
addEEnumLiteral(eclipsePeriodEEnum, EclipsePeriod.PENUMBRA);
addEEnumLiteral(eclipsePeriodEEnum, EclipsePeriod.UMBRA);
// Initialize data types
initEDataType(observationPlanEDataType, EObjectReferencesList.class, "ObservationPlan", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS, "org.eclipse.apogy.common.emf.EObjectReferencesList<org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlannerNode>");
initEDataType(observationAnalysisPlannerNodeListEDataType, List.class, "ObservationAnalysisPlannerNodeList", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS, "java.util.List<org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlannerNode>");
initEDataType(visibilityPassesListEDataType, List.class, "VisibilityPassesList", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS, "java.util.List<org.eclipse.apogy.core.environment.earth.orbit.VisibilityPass>");
initEDataType(iProgressMonitorEDataType, IProgressMonitor.class, "IProgressMonitor", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
initEDataType(visibilityPassReferencesListEDataType, EObjectReferencesList.class, "VisibilityPassReferencesList", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS, "org.eclipse.apogy.common.emf.EObjectReferencesList<org.eclipse.apogy.core.environment.earth.orbit.VisibilityPass>");
initEDataType(exceptionEDataType, Exception.class, "Exception", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
// Create resource
createResource(eNS_URI);
// Create annotations
// http://www.eclipse.org/emf/2002/GenModel
createGenModelAnnotations();
// http://www.eclipse.org/apogy
createApogyAnnotations();
}
/**
* Initializes the annotations for <b>http://www.eclipse.org/emf/2002/GenModel</b>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void createGenModelAnnotations() {
String source = "http://www.eclipse.org/emf/2002/GenModel";
addAnnotation
(this,
source,
new String[] {
"prefix", "ApogyCoreEnvironmentEarthOrbitPlanner",
"childCreationExtenders", "true",
"extensibleProviderFactory", "true",
"copyrightText", "*******************************************************************************\nCopyright (c) 2018 Agence spatiale canadienne / Canadian Space Agency \nAll rights reserved. This program and the accompanying materials\nare made available under the terms of the Eclipse Public License v1.0\nwhich accompanies this distribution, and is available at\nhttp://www.eclipse.org/legal/epl-v10.html\n\nContributors:\n Regent L\'Archeveque - initial API and implementation\n \nSPDX-License-Identifier: EPL-1.0 \n*******************************************************************************",
"modelName", "ApogyCoreEnvironmentEarthOrbitPlanner",
"complianceLevel", "8.0",
"suppressGenModelAnnotations", "false",
"dynamicTemplates", "true",
"templateDirectory", "platform:/plugin/org.eclipse.apogy.common.emf.codegen/templates",
"modelDirectory", "/org.eclipse.apogy.core.environment.earth.orbit.planner/src-gen",
"editDirectory", "/org.eclipse.apogy.core.environment.earth.orbit.planner.edit/src-gen",
"basePackage", "org.eclipse.apogy.core.environment.earth.orbit"
});
addAnnotation
(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass,
source,
new String[] {
"documentation", "Planner Facade."
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GenerateObservationsPlanTree__List_IProgressMonitor(),
source,
new String[] {
"documentation", "Analyzes and generate the opportunities plan tree. This tree contains all the possible sequences\nto handle the requested observation target. This method runs inside a Job.\n@param passes List of passes to analyze.\n@param monitor Progress monitor. If null, NullProgressMonitor will be used.\n@return Refers the root node of the tree."
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__ComputePlanCosts__ObservationAnalysisPlanner_IProgressMonitor(),
source,
new String[] {
"documentation", "Browses and processes the cost of each branches contained in the plan tree. This method runs in a job.\n@param data Observation analysis data that contains the context and the results required to conduct the analysis.\n@param monitor Progress monitor. If null, NullProgressMonitor will be used.\n@return Refers to the original planner but with updated data."
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetObservationAnalysisPlannerTool(),
source,
new String[] {
"documentation", "Returns the {@link ObservationAnalysisPlannerTool} singleton of the active session.\n@return The reference to the {@link ObservationAnalysisPlannerTool} or null if not found."
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetLeafs__ObservationAnalysisPlannerNode(),
source,
new String[] {
"documentation", "This method returns all the leafs of the specified root node. Each path from root to the leafs represents a solution.\n@param root Refers to the root of the tree structure.\n@return List of Observation Analysis Planner Leaf Nodes."
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetPlannerSolution__ObservationAnalysisPlannerNode(),
source,
new String[] {
"documentation", "This method solution path based on the specified leaf.\n@param leaf Refers to a leaf that represents a solution of the tree structure.\n@return List of {@link ObservationAnalysisPlannerNode} from root to leaf. The leaf\nis included in the list but not the root."
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetVisibilityPasses__List(),
source,
new String[] {
"documentation", "Returns the list of {@link VisibilityPass} contains in the specified list of nodes.\n@param nodesList List of nodes.\n@return Refers the list of passes."
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetNodeStatelessTotalCost__ObservationAnalysisPlannerNode(),
source,
new String[] {
"documentation", "Returns the total cost of all the stateless cost functions applicable to the specified visibility pass.\n@param node Refers the planner node.\n@return The total cost after the application of {@link AbstractCostFunction#getCoefficient()}."
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetNodeStatefulTotalCost__ObservationAnalysisPlannerNode(),
source,
new String[] {
"documentation", "Returns the total cost of all the stateful cost functions applicable to the specified planner node.\n@param node Refers the planner node.\n@return The total cost after the application of {@link AbstractCostFunction#getCoefficient()}."
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetNodeTotalCost__ObservationAnalysisPlannerNode(),
source,
new String[] {
"documentation", "Returns the total cost of all cost functions applicable to the specified planner node.\n@param node Refers the planner node.\n@return The total cost after the application of {@link AbstractCostFunction#getCoefficient()}.\n@see #getStatelessCostFunctionTotalCost(VisibilityPass)\n@see #getStatefulCostFunctionTotalCost(ObservationAnalysisPlannerNode)"
});
addAnnotation
(getApogyCoreEnvironmentEarthOrbitPlannerFacade__GetSolutionTotalCost__EObjectReferencesList(),
source,
new String[] {
"documentation", "Returns the total cost of the specified plan.\n@param plan Refers the plan.\n@return The total cost after the application of {@link AbstractCostFunction#getCoefficient()}.\n@see #getStatelessCostFunctionTotalCost(VisibilityPass)\n@see #getStatefulCostFunctionTotalCost(ObservationAnalysisPlannerNode)"
});
addAnnotation
(observationAnalysisPlannerToolEClass,
source,
new String[] {
"documentation", "Defines the Observation Analysis Tool."
});
addAnnotation
(observationAnalysisPlannerEClass,
source,
new String[] {
"documentation", "Default Apogy Observation Analysis Planner."
});
addAnnotation
(getObservationAnalysisPlanner_StatelessCostFunctions(),
source,
new String[] {
"documentation", "List of stateless cost functions.",
"property", "None"
});
addAnnotation
(getObservationAnalysisPlanner_StatefulCostFunctions(),
source,
new String[] {
"documentation", "List of stateful cost functions.",
"property", "None"
});
addAnnotation
(getObservationAnalysisPlanner_Result(),
source,
new String[] {
"documentation", "Planner result.",
"property", "None"
});
addAnnotation
(getObservationAnalysisPlanner_Running(),
source,
new String[] {
"documentation", "Indicates if the planner is running."
});
addAnnotation
(getObservationAnalysisPlannerNode_Parent(),
source,
new String[] {
"property", "None"
});
addAnnotation
(getObservationAnalysisPlannerNode_Children(),
source,
new String[] {
"property", "None"
});
addAnnotation
(getObservationAnalysisPlannerNode_RootNode(),
source,
new String[] {
"get", "<%org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlannerNode%> _parent = this.getParent();\nreturn (_parent == null);"
});
addAnnotation
(getObservationAnalysisPlannerNode_PlannerRootNode(),
source,
new String[] {
"get", "<%org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlannerNode%> _parent = this.getParent();\nboolean _tripleEquals = (_parent == null);\nif (_tripleEquals)\n{\n\treturn this;\n}\nelse\n{\n\treturn this.getParent().getPlannerRootNode();\n}"
});
addAnnotation
(getObservationAnalysisPlannerNode_PlannerResult(),
source,
new String[] {
"get", "<%org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlannerNode%> _plannerRootNode = this.getPlannerRootNode();\nboolean _tripleEquals = (_plannerRootNode == null);\nif (_tripleEquals)\n{\n\treturn null;\n}\nelse\n{\n\treturn this.getPlannerRootNode().getResult();\n}"
});
addAnnotation
(getObservationAnalysisPlannerNode_Planner(),
source,
new String[] {
"get", "<%org.eclipse.apogy.core.environment.earth.orbit.planner.ObservationAnalysisPlannerResult%> _result = this.getPlannerRootNode().getResult();\nboolean _tripleEquals = (_result == null);\nif (_tripleEquals)\n{\n\treturn null;\n}\nelse\n{\n\treturn this.getPlannerResult().getPlanner();\n}"
});
addAnnotation
(getObservationAnalysisPlannerNode_StatefulCostsMapEntries(),
source,
new String[] {
"documentation", "Map that contains the Stateful cost function results."
});
addAnnotation
(getObservationAnalysisPlannerNode_Cost(),
source,
new String[] {
"documentation", "Cost of the current node. It corresponds to the sum of all applicable {@link StatelessCostFunctions} &\n{@link StatefulCostFunctions}."
});
addAnnotation
(getObservationAnalysisPlannerNode_CumulativeCost(),
source,
new String[] {
"documentation", "Cumulative cost including the cost of this node up to its first level node."
});
addAnnotation
(getObservationAnalysisPlannerNode_FirstLevelNode(),
source,
new String[] {
"documentation", "Returns the level 1 node. The root node (top node without parent) contains the first level nodes."
});
addAnnotation
(getObservationAnalysisPlannerNode_Level(),
source,
new String[] {
"documentation", "Returns the node level."
});
addAnnotation
(getObservationAnalysisPlannerNode_SolutionDuration(),
source,
new String[] {
"documentation", "Returns the solution duration processed from the to date of the last visibility pass (this node) and the from date of\nthe first visibility pass (first level node)."
});
addAnnotation
(getObservationAnalysisPlannerNode_PassDuration(),
source,
new String[] {
"documentation", "Returns the duration of the pass associated to the current node."
});
addAnnotation
(getObservationAnalysisPlannerNode_TotalPassesDuration(),
source,
new String[] {
"documentation", "Returns the sums of the duration of the current pass up to its first first level node pass."
});
addAnnotation
(abstractObservationPlanExporterEClass,
source,
new String[] {
"documentation", "*\nBase class for exporter of Observation Plan."
});
addAnnotation
(getAbstractObservationPlanExporter__ExportObservationPlan__EObjectReferencesList_ObservationAnalysisPlanner_IProgressMonitor(),
source,
new String[] {
"documentation", "*\nExports a given Observation plan to a destination.\n@param plan The Observation Plan.\n@param planner The Planner that produced the Observation plan.\n@param A Progress Monitor that can be used to report progress on the export.\n@throw An exception is a problem occurs during the export."
});
addAnnotation
(defaultObservationPlanExporterEClass,
source,
new String[] {
"documentation", "*\nDefault exporter of Observation Plan. This exporter exports the plan to a csv formatted file which location is specified by a URL."
});
addAnnotation
(getDefaultObservationPlanExporter_FileURL(),
source,
new String[] {
"documentation", "*\nThe URL to the file to which to export the ObservationPlan."
});
addAnnotation
(abstractCostFunctionEClass,
source,
new String[] {
"documentation", "Cost functions are used to compute the impact of executing a {@link Visibility} according\nto a series of custom parameters that are specialized in sub-classes.\nPlease use the {@link Constants#InfiniteCostValue} to specified an infinite cost."
});
addAnnotation
(getAbstractCostFunction_Enable(),
source,
new String[] {
"documentation", "Flag use to enable or disable the cost function."
});
addAnnotation
(getAbstractCostFunction_Coefficient(),
source,
new String[] {
"documentation", "Coefficient use to specify the weight of the cost function."
});
addAnnotation
(getAbstractCostFunction_ApplicableSpacecrafts(),
source,
new String[] {
"documentation", "Specifies the spacecrafts to apply the cost. If empty, the planner\nwill apply to all spacecrafts defined in the {@OrbitAnalysisData}."
});
addAnnotation
(getAbstractCostFunction_ApplicableEarthOutlooks(),
source,
new String[] {
"documentation", "Specifies the outlooks to apply the cost. If empty, the planner\nwill apply to all outlooks defined in the {@OrbitAnalysisData}."
});
addAnnotation
(getAbstractStatefulCostFunction__ComputeCost__CostFunctionState_CostFunctionState_VisibilityPass(),
source,
new String[] {
"documentation", "FIXME Document this."
});
addAnnotation
(getAbstractStatefulCostFunction__CreateState(),
source,
new String[] {
"documentation", "The planner invokes this method to map the cost function to its state. The default implementation\nreturns a new instance of {@link EmptyCostFunctionState}\nThis method may be overloaded to implement specific state depending of the cost function needed.\n@return Refers to the newly created state."
});
addAnnotation
(statelessCostsMapEntryEClass,
source,
new String[] {
"documentation", "Stateless Map and Map Entries."
});
addAnnotation
(statefulCostFunctionMapEntryEClass,
source,
new String[] {
"documentation", "Stateful Map and Map Entries."
});
addAnnotation
(eclipsePeriodEEnum,
source,
new String[] {
"documentation", "Pre-defined Cost Functions."
});
addAnnotation
(eclipseCostFunctionEClass,
source,
new String[] {
"documentation", "This cost function is used in the context of eclipses processing.\nThe cost is applied if at any point in time the visibility pass completely\nor partially overlaps with the specified {@link EclipsePeriod}."
});
addAnnotation
(timeIntervalCostFunctionEClass,
source,
new String[] {
"documentation", "This cost function can be used to determine if a pass overlaps a {@link TimeInterval}.\nThe cost is applied if at any point in time the visibility pass completely\nor partially overlaps with the specified {@link TimeInterval}."
});
addAnnotation
(getTimeIntervalCostFunction_Cost(),
source,
new String[] {
"documentation", "Cost to apply if in the specified interval range."
});
addAnnotation
(simpleResourceCostFunctionEClass,
source,
new String[] {
"documentation", "This cost function may be used to evaluate the impact in term of resource (memory, power etc).\nThe cost is infinite if the value gets under the specified minimum resource value or if the\nvalue gets above the maximum resource value."
});
addAnnotation
(simpleResourceCostFunctionStateEClass,
source,
new String[] {
"documentation", "State used to store the current resource level value. It is used with the {@link SimpleResourceCostFunction}."
});
addAnnotation
(minimumTimeSpamCostFunctionEClass,
source,
new String[] {
"documentation", "This cost function is used to reject {@link VisilibiltyPass} if the current and subsequent passes are within a specified time period.\nIf the process time is less than the specified minimumTimeSpam, the {@link Constants#INFINITE_COST_VALUE} is returned."
});
addAnnotation
(crosstrackAngleCostFunctionEClass,
source,
new String[] {
"documentation", "This cost function returns a zero cost value if the processed {@link VisibilityPass} has a cross angle lower than the\nlimit specified. If at any point in the history this condition is not met, {@link Constants#INFINITE_COST_VALUE} is returned."
});
}
/**
* Initializes the annotations for <b>http://www.eclipse.org/apogy</b>.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void createApogyAnnotations() {
String source = "http://www.eclipse.org/apogy";
addAnnotation
(apogyCoreEnvironmentEarthOrbitPlannerFacadeEClass,
source,
new String[] {
"isSingleton", "true",
"hasCustomClass", "true"
});
addAnnotation
(observationAnalysisPlannerEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(observationAnalysisPlannerNodeEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(getObservationAnalysisPlannerNode_SolutionDuration(),
source,
new String[] {
"units", "ms"
});
addAnnotation
(getObservationAnalysisPlannerNode_PassDuration(),
source,
new String[] {
"units", "ms"
});
addAnnotation
(getObservationAnalysisPlannerNode_TotalPassesDuration(),
source,
new String[] {
"units", "ms"
});
addAnnotation
(observationAnalysisPlanGeneratorEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(observationAnalysisPlanCostsProcessorEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(defaultObservationPlanExporterEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(abstractCostFunctionEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(getAbstractCostFunction_Coefficient(),
source,
new String[] {
"min", "0.0",
"max", "1.0"
});
addAnnotation
(eclipseCostFunctionEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(timeIntervalCostFunctionEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(simpleResourceCostFunctionEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(minimumTimeSpamCostFunctionEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(crosstrackAngleCostFunctionEClass,
source,
new String[] {
"hasCustomClass", "true"
});
addAnnotation
(getCrosstrackAngleCostFunction_Angle(),
source,
new String[] {
"units", "rad"
});
}
} //ApogyCoreEnvironmentEarthOrbitPlannerPackageImpl