blob: a547b5a44f2b41de5f9581301c9b6a72a8226a37 [file] [log] [blame]
/**
* Copyright (c) 2020 CEA LIST
*
* All rights reserved. This program and the accompanying materials are
* made available under the terms of the Eclipse Public License v2.0 which
* accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
*/
package org.eclipse.papyrus.aiml.profile.AIML.Tensor.impl;
import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.ecore.impl.EPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.AIMLPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.Convolution_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Convolution_layers.impl.Convolution_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.DataParallel_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.DataParallel_layers.impl.DataParallel_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.Distance_functionsPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Distance_functions.impl.Distance_functionsPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.Dropout_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Dropout_layers.impl.Dropout_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.Layer_weight_constraintsPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_constraints.impl.Layer_weight_constraintsPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.Layer_weight_initializersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_initializers.impl.Layer_weight_initializersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.Layer_weight_regularizersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Layer_weight_regularizers.impl.Layer_weight_regularizersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.Linear_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Linear_layers.impl.Linear_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.Loss_functionsPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Loss_functions.impl.Loss_functionsPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Module.ModulePackage;
import org.eclipse.papyrus.aiml.profile.AIML.Module.impl.ModulePackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.NonLinearActivationsPackage;
import org.eclipse.papyrus.aiml.profile.AIML.NonLinearActivations.impl.NonLinearActivationsPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.Normalization_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Normalization_layers.impl.Normalization_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.Padding_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Padding_layers.impl.Padding_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.Pooling_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Pooling_layers.impl.Pooling_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.Recurrent_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Recurrent_layers.impl.Recurrent_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.SoftMinMaxActivationsPackage;
import org.eclipse.papyrus.aiml.profile.AIML.SoftMinMaxActivations.impl.SoftMinMaxActivationsPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.Sparse_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Sparse_layers.impl.Sparse_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Tensor.EDType;
import org.eclipse.papyrus.aiml.profile.AIML.Tensor.ETensorTypes;
import org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor;
import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorFactory;
import org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.Transformer_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Transformer_layers.impl.Transformer_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.Vision_layersPackage;
import org.eclipse.papyrus.aiml.profile.AIML.Vision_layers.impl.Vision_layersPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.datatypes.DatatypesPackage;
import org.eclipse.papyrus.aiml.profile.AIML.datatypes.impl.DatatypesPackageImpl;
import org.eclipse.papyrus.aiml.profile.AIML.impl.AIMLPackageImpl;
import org.eclipse.uml2.types.TypesPackage;
import org.eclipse.uml2.uml.UMLPackage;
/**
* <!-- begin-user-doc -->
* An implementation of the model <b>Package</b>.
* <!-- end-user-doc -->
* @generated
*/
public class TensorPackageImpl extends EPackageImpl implements TensorPackage {
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EClass tensorEClass = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EEnum edTypeEEnum = null;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
private EEnum eTensorTypesEEnum = 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.papyrus.aiml.profile.AIML.Tensor.TensorPackage#eNS_URI
* @see #init()
* @generated
*/
private TensorPackageImpl() {
super(eNS_URI, TensorFactory.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 TensorPackage#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 TensorPackage init() {
if (isInited) return (TensorPackage)EPackage.Registry.INSTANCE.getEPackage(TensorPackage.eNS_URI);
// Obtain or create and register package
Object registeredTensorPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
TensorPackageImpl theTensorPackage = registeredTensorPackage instanceof TensorPackageImpl ? (TensorPackageImpl)registeredTensorPackage : new TensorPackageImpl();
isInited = true;
// Initialize simple dependencies
EcorePackage.eINSTANCE.eClass();
TypesPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(AIMLPackage.eNS_URI);
AIMLPackageImpl theAIMLPackage = (AIMLPackageImpl)(registeredPackage instanceof AIMLPackageImpl ? registeredPackage : AIMLPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ModulePackage.eNS_URI);
ModulePackageImpl theModulePackage = (ModulePackageImpl)(registeredPackage instanceof ModulePackageImpl ? registeredPackage : ModulePackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
DatatypesPackageImpl theDatatypesPackage = (DatatypesPackageImpl)(registeredPackage instanceof DatatypesPackageImpl ? registeredPackage : DatatypesPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Pooling_layersPackage.eNS_URI);
Pooling_layersPackageImpl thePooling_layersPackage = (Pooling_layersPackageImpl)(registeredPackage instanceof Pooling_layersPackageImpl ? registeredPackage : Pooling_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Convolution_layersPackage.eNS_URI);
Convolution_layersPackageImpl theConvolution_layersPackage = (Convolution_layersPackageImpl)(registeredPackage instanceof Convolution_layersPackageImpl ? registeredPackage : Convolution_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_constraintsPackage.eNS_URI);
Layer_weight_constraintsPackageImpl theLayer_weight_constraintsPackage = (Layer_weight_constraintsPackageImpl)(registeredPackage instanceof Layer_weight_constraintsPackageImpl ? registeredPackage : Layer_weight_constraintsPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Padding_layersPackage.eNS_URI);
Padding_layersPackageImpl thePadding_layersPackage = (Padding_layersPackageImpl)(registeredPackage instanceof Padding_layersPackageImpl ? registeredPackage : Padding_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(NonLinearActivationsPackage.eNS_URI);
NonLinearActivationsPackageImpl theNonLinearActivationsPackage = (NonLinearActivationsPackageImpl)(registeredPackage instanceof NonLinearActivationsPackageImpl ? registeredPackage : NonLinearActivationsPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(SoftMinMaxActivationsPackage.eNS_URI);
SoftMinMaxActivationsPackageImpl theSoftMinMaxActivationsPackage = (SoftMinMaxActivationsPackageImpl)(registeredPackage instanceof SoftMinMaxActivationsPackageImpl ? registeredPackage : SoftMinMaxActivationsPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Normalization_layersPackage.eNS_URI);
Normalization_layersPackageImpl theNormalization_layersPackage = (Normalization_layersPackageImpl)(registeredPackage instanceof Normalization_layersPackageImpl ? registeredPackage : Normalization_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Recurrent_layersPackage.eNS_URI);
Recurrent_layersPackageImpl theRecurrent_layersPackage = (Recurrent_layersPackageImpl)(registeredPackage instanceof Recurrent_layersPackageImpl ? registeredPackage : Recurrent_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Transformer_layersPackage.eNS_URI);
Transformer_layersPackageImpl theTransformer_layersPackage = (Transformer_layersPackageImpl)(registeredPackage instanceof Transformer_layersPackageImpl ? registeredPackage : Transformer_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Linear_layersPackage.eNS_URI);
Linear_layersPackageImpl theLinear_layersPackage = (Linear_layersPackageImpl)(registeredPackage instanceof Linear_layersPackageImpl ? registeredPackage : Linear_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Dropout_layersPackage.eNS_URI);
Dropout_layersPackageImpl theDropout_layersPackage = (Dropout_layersPackageImpl)(registeredPackage instanceof Dropout_layersPackageImpl ? registeredPackage : Dropout_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Sparse_layersPackage.eNS_URI);
Sparse_layersPackageImpl theSparse_layersPackage = (Sparse_layersPackageImpl)(registeredPackage instanceof Sparse_layersPackageImpl ? registeredPackage : Sparse_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Distance_functionsPackage.eNS_URI);
Distance_functionsPackageImpl theDistance_functionsPackage = (Distance_functionsPackageImpl)(registeredPackage instanceof Distance_functionsPackageImpl ? registeredPackage : Distance_functionsPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Loss_functionsPackage.eNS_URI);
Loss_functionsPackageImpl theLoss_functionsPackage = (Loss_functionsPackageImpl)(registeredPackage instanceof Loss_functionsPackageImpl ? registeredPackage : Loss_functionsPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Vision_layersPackage.eNS_URI);
Vision_layersPackageImpl theVision_layersPackage = (Vision_layersPackageImpl)(registeredPackage instanceof Vision_layersPackageImpl ? registeredPackage : Vision_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(DataParallel_layersPackage.eNS_URI);
DataParallel_layersPackageImpl theDataParallel_layersPackage = (DataParallel_layersPackageImpl)(registeredPackage instanceof DataParallel_layersPackageImpl ? registeredPackage : DataParallel_layersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_regularizersPackage.eNS_URI);
Layer_weight_regularizersPackageImpl theLayer_weight_regularizersPackage = (Layer_weight_regularizersPackageImpl)(registeredPackage instanceof Layer_weight_regularizersPackageImpl ? registeredPackage : Layer_weight_regularizersPackage.eINSTANCE);
registeredPackage = EPackage.Registry.INSTANCE.getEPackage(Layer_weight_initializersPackage.eNS_URI);
Layer_weight_initializersPackageImpl theLayer_weight_initializersPackage = (Layer_weight_initializersPackageImpl)(registeredPackage instanceof Layer_weight_initializersPackageImpl ? registeredPackage : Layer_weight_initializersPackage.eINSTANCE);
// Create package meta-data objects
theTensorPackage.createPackageContents();
theAIMLPackage.createPackageContents();
theModulePackage.createPackageContents();
theDatatypesPackage.createPackageContents();
thePooling_layersPackage.createPackageContents();
theConvolution_layersPackage.createPackageContents();
theLayer_weight_constraintsPackage.createPackageContents();
thePadding_layersPackage.createPackageContents();
theNonLinearActivationsPackage.createPackageContents();
theSoftMinMaxActivationsPackage.createPackageContents();
theNormalization_layersPackage.createPackageContents();
theRecurrent_layersPackage.createPackageContents();
theTransformer_layersPackage.createPackageContents();
theLinear_layersPackage.createPackageContents();
theDropout_layersPackage.createPackageContents();
theSparse_layersPackage.createPackageContents();
theDistance_functionsPackage.createPackageContents();
theLoss_functionsPackage.createPackageContents();
theVision_layersPackage.createPackageContents();
theDataParallel_layersPackage.createPackageContents();
theLayer_weight_regularizersPackage.createPackageContents();
theLayer_weight_initializersPackage.createPackageContents();
// Initialize created meta-data
theTensorPackage.initializePackageContents();
theAIMLPackage.initializePackageContents();
theModulePackage.initializePackageContents();
theDatatypesPackage.initializePackageContents();
thePooling_layersPackage.initializePackageContents();
theConvolution_layersPackage.initializePackageContents();
theLayer_weight_constraintsPackage.initializePackageContents();
thePadding_layersPackage.initializePackageContents();
theNonLinearActivationsPackage.initializePackageContents();
theSoftMinMaxActivationsPackage.initializePackageContents();
theNormalization_layersPackage.initializePackageContents();
theRecurrent_layersPackage.initializePackageContents();
theTransformer_layersPackage.initializePackageContents();
theLinear_layersPackage.initializePackageContents();
theDropout_layersPackage.initializePackageContents();
theSparse_layersPackage.initializePackageContents();
theDistance_functionsPackage.initializePackageContents();
theLoss_functionsPackage.initializePackageContents();
theVision_layersPackage.initializePackageContents();
theDataParallel_layersPackage.initializePackageContents();
theLayer_weight_regularizersPackage.initializePackageContents();
theLayer_weight_initializersPackage.initializePackageContents();
// Mark meta-data to indicate it can't be changed
theTensorPackage.freeze();
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(TensorPackage.eNS_URI, theTensorPackage);
return theTensorPackage;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EClass getTensor() {
return tensorEClass;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EAttribute getTensor_Data() {
return (EAttribute)tensorEClass.getEStructuralFeatures().get(0);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EAttribute getTensor_Dtype() {
return (EAttribute)tensorEClass.getEStructuralFeatures().get(1);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EReference getTensor_Device() {
return (EReference)tensorEClass.getEStructuralFeatures().get(2);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EAttribute getTensor_Requires_grad() {
return (EAttribute)tensorEClass.getEStructuralFeatures().get(3);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EAttribute getTensor_Pin_memory() {
return (EAttribute)tensorEClass.getEStructuralFeatures().get(4);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EAttribute getTensor_Shape() {
return (EAttribute)tensorEClass.getEStructuralFeatures().get(5);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EAttribute getTensor_Name() {
return (EAttribute)tensorEClass.getEStructuralFeatures().get(6);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EReference getTensor_Base_Class() {
return (EReference)tensorEClass.getEStructuralFeatures().get(7);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EEnum getEDType() {
return edTypeEEnum;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public EEnum getETensorTypes() {
return eTensorTypesEEnum;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public TensorFactory getTensorFactory() {
return (TensorFactory)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
tensorEClass = createEClass(TENSOR);
createEAttribute(tensorEClass, TENSOR__DATA);
createEAttribute(tensorEClass, TENSOR__DTYPE);
createEReference(tensorEClass, TENSOR__DEVICE);
createEAttribute(tensorEClass, TENSOR__REQUIRES_GRAD);
createEAttribute(tensorEClass, TENSOR__PIN_MEMORY);
createEAttribute(tensorEClass, TENSOR__SHAPE);
createEAttribute(tensorEClass, TENSOR__NAME);
createEReference(tensorEClass, TENSOR__BASE_CLASS);
// Create enums
edTypeEEnum = createEEnum(ED_TYPE);
eTensorTypesEEnum = createEEnum(ETENSOR_TYPES);
}
/**
* <!-- 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
TypesPackage theTypesPackage = (TypesPackage)EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
DatatypesPackage theDatatypesPackage = (DatatypesPackage)EPackage.Registry.INSTANCE.getEPackage(DatatypesPackage.eNS_URI);
UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
// Create type parameters
// Set bounds for type parameters
// Add supertypes to classes
// Initialize classes, features, and operations; add parameters
initEClass(tensorEClass, Tensor.class, "Tensor", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
initEAttribute(getTensor_Data(), theTypesPackage.getReal(), "data", null, 0, -1, Tensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
initEAttribute(getTensor_Dtype(), this.getEDType(), "dtype", null, 0, 1, Tensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
initEReference(getTensor_Device(), theDatatypesPackage.getDevice(), null, "device", null, 0, 1, Tensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
initEAttribute(getTensor_Requires_grad(), theTypesPackage.getBoolean(), "requires_grad", null, 0, 1, Tensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
initEAttribute(getTensor_Pin_memory(), theTypesPackage.getBoolean(), "pin_memory", null, 0, 1, Tensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
initEAttribute(getTensor_Shape(), theTypesPackage.getInteger(), "shape", null, 0, -1, Tensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
initEAttribute(getTensor_Name(), theTypesPackage.getString(), "name", null, 0, 1, Tensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
initEReference(getTensor_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, Tensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
// Initialize enums and add enum literals
initEEnum(edTypeEEnum, EDType.class, "EDType"); //$NON-NLS-1$
addEEnumLiteral(edTypeEEnum, EDType.FLOAT32);
addEEnumLiteral(edTypeEEnum, EDType.FLOAT64);
addEEnumLiteral(edTypeEEnum, EDType.FLOAT16);
addEEnumLiteral(edTypeEEnum, EDType.UINT8);
addEEnumLiteral(edTypeEEnum, EDType.INT8);
addEEnumLiteral(edTypeEEnum, EDType.INT16);
addEEnumLiteral(edTypeEEnum, EDType.INT32);
addEEnumLiteral(edTypeEEnum, EDType.INT64);
addEEnumLiteral(edTypeEEnum, EDType.BOOL);
initEEnum(eTensorTypesEEnum, ETensorTypes.class, "ETensorTypes"); //$NON-NLS-1$
addEEnumLiteral(eTensorTypesEEnum, ETensorTypes.FLOAT_TENSOR);
addEEnumLiteral(eTensorTypesEEnum, ETensorTypes.DOUBLE_TENSOR);
addEEnumLiteral(eTensorTypesEEnum, ETensorTypes.HALF_TENSOR);
addEEnumLiteral(eTensorTypesEEnum, ETensorTypes.BYTE_TENSOR);
addEEnumLiteral(eTensorTypesEEnum, ETensorTypes.CHAR_TENSOR);
addEEnumLiteral(eTensorTypesEEnum, ETensorTypes.SHORT_TENSOR);
addEEnumLiteral(eTensorTypesEEnum, ETensorTypes.INT_TENSOR);
addEEnumLiteral(eTensorTypesEEnum, ETensorTypes.LONG_TENSOR);
addEEnumLiteral(eTensorTypesEEnum, ETensorTypes.BOOL_TENSOR);
}
} //TensorPackageImpl