| // ***************************************************************************** |
| // Copyright (c) 2018 Agence spatiale canadienne / Canadian Space Agency |
| // All rights reserved. This program and the accompanying materials |
| // are made available under the terms of the Eclipse Public License v1.0 |
| // which accompanies this distribution, and is available at |
| // http://www.eclipse.org/legal/epl-v10.html |
| // |
| // Contributors: |
| // Pierre Allard - initial API and implementation |
| // |
| // SPDX-License-Identifier: EPL-1.0 |
| // ***************************************************************************** |
| @GenModel(prefix="ApogyEarthAtmosphereEnvironment", |
| childCreationExtenders="true", |
| extensibleProviderFactory="true", |
| multipleEditorPages="false", |
| copyrightText="******************************************************************************* |
| Copyright (c) 2018 Agence spatiale canadienne / Canadian Space Agency |
| All rights reserved. This program and the accompanying materials |
| are made available under the terms of the Eclipse Public License v1.0 |
| which accompanies this distribution, and is available at |
| http://www.eclipse.org/legal/epl-v10.html |
| |
| Contributors: |
| Pierre Allard - initial API and implementation |
| |
| SPDX-License-Identifier: EPL-1.0 |
| *******************************************************************************", |
| modelName="ApogyEarthAtmosphereEnvironment", |
| complianceLevel="8.0", |
| suppressGenModelAnnotations="false", |
| dynamicTemplates="true", |
| templateDirectory="platform:/plugin/org.eclipse.apogy.common.emf.codegen/templates") |
| @GenModel(modelDirectory="/org.eclipse.apogy.core.environment.earth.atmosphere/src-gen") |
| @GenModel(editDirectory= "/org.eclipse.apogy.core.environment.earth.atmosphere.edit/src-gen") |
| //@GenModel(testsDirectory="/org.eclipse.apogy.core.environment.earth.atmosphere.tests/src-gen") |
| |
| package org.eclipse.apogy.core.environment.earth.atmosphere |
| |
| import org.eclipse.apogy.common.topology.TransformNode |
| import org.eclipse.apogy.core.environment.WorksiteNode |
| import org.eclipse.apogy.core.environment.earth.EarthWorksite |
| import org.eclipse.apogy.core.environment.earth.surface.EarthSky |
| import org.eclipse.apogy.common.Apogy |
| |
| /** |
| * Defines a worksite above the surface, in the atmosphere, below 100km altitude. |
| */ |
| @Apogy(hasCustomClass="true") |
| class EarthAtmosphereWorksite extends EarthWorksite |
| { |
| /* |
| * The EarthSky associated with the worksite, |
| */ |
| refers derived transient volatile EarthSky[1] earthSky |
| } |
| |
| /* |
| * SurfaceWorksiteNode specialized for the Earth Surface. |
| */ |
| @Apogy(hasCustomClass="true") |
| class EarthAtmosphereWorksiteNode extends WorksiteNode |
| { |
| refers transient TransformNode skyTransformNode |
| } |
| |
| @Apogy(isSingleton="true", hasCustomClass="true") |
| class ApogyEarthAtmosphereFacade |
| { |
| /* |
| * Refers to the active EarthSurfaceWorksite. May be null. |
| */ |
| refers transient EarthAtmosphereWorksite activeEarthAtmosphereWorksite |
| |
| /* |
| * Create an empty EarthAtmosphereWorksite with the CSA Mars Yard coordinates. |
| */ |
| op EarthAtmosphereWorksite createAndInitializeDefaultCSAEarthAtmosphereWorksite() |
| |
| } |