blob: 346a561d44782a1c32671d8ef080cb408cc29b6d [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;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.papyrus.aiml.profile.AIML.datatypes.Device;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Tensor</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getData <em>Data</em>}</li>
* <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getDtype <em>Dtype</em>}</li>
* <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getDevice <em>Device</em>}</li>
* <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#isRequires_grad <em>Requires grad</em>}</li>
* <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#isPin_memory <em>Pin memory</em>}</li>
* <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getShape <em>Shape</em>}</li>
* <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getName <em>Name</em>}</li>
* <li>{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getBase_Class <em>Base Class</em>}</li>
* </ul>
*
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage#getTensor()
* @model
* @generated
*/
public interface Tensor extends EObject {
/**
* Returns the value of the '<em><b>Data</b></em>' attribute list.
* The list contents are of type {@link java.lang.Double}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Data</em>' attribute list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Data</em>' attribute list.
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage#getTensor_Data()
* @model dataType="org.eclipse.uml2.types.Real" ordered="false"
* @generated
*/
EList<Double> getData();
/**
* Returns the value of the '<em><b>Dtype</b></em>' attribute.
* The literals are from the enumeration {@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.EDType}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Dtype</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Dtype</em>' attribute.
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.EDType
* @see #setDtype(EDType)
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage#getTensor_Dtype()
* @model ordered="false"
* @generated
*/
EDType getDtype();
/**
* Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getDtype <em>Dtype</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Dtype</em>' attribute.
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.EDType
* @see #getDtype()
* @generated
*/
void setDtype(EDType value);
/**
* Returns the value of the '<em><b>Device</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Device</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Device</em>' reference.
* @see #setDevice(Device)
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage#getTensor_Device()
* @model ordered="false"
* @generated
*/
Device getDevice();
/**
* Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getDevice <em>Device</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Device</em>' reference.
* @see #getDevice()
* @generated
*/
void setDevice(Device value);
/**
* Returns the value of the '<em><b>Requires grad</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Requires grad</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Requires grad</em>' attribute.
* @see #setRequires_grad(boolean)
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage#getTensor_Requires_grad()
* @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
* @generated
*/
boolean isRequires_grad();
/**
* Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#isRequires_grad <em>Requires grad</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Requires grad</em>' attribute.
* @see #isRequires_grad()
* @generated
*/
void setRequires_grad(boolean value);
/**
* Returns the value of the '<em><b>Pin memory</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Pin memory</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Pin memory</em>' attribute.
* @see #setPin_memory(boolean)
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage#getTensor_Pin_memory()
* @model dataType="org.eclipse.uml2.types.Boolean" ordered="false"
* @generated
*/
boolean isPin_memory();
/**
* Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#isPin_memory <em>Pin memory</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Pin memory</em>' attribute.
* @see #isPin_memory()
* @generated
*/
void setPin_memory(boolean value);
/**
* Returns the value of the '<em><b>Shape</b></em>' attribute list.
* The list contents are of type {@link java.lang.Integer}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Shape</em>' attribute list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Shape</em>' attribute list.
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage#getTensor_Shape()
* @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
* @generated
*/
EList<Integer> getShape();
/**
* Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Name</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage#getTensor_Name()
* @model dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getName();
/**
* Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getName <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Name</em>' attribute.
* @see #getName()
* @generated
*/
void setName(String value);
/**
* Returns the value of the '<em><b>Base Class</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Base Class</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Base Class</em>' reference.
* @see #setBase_Class(org.eclipse.uml2.uml.Class)
* @see org.eclipse.papyrus.aiml.profile.AIML.Tensor.TensorPackage#getTensor_Base_Class()
* @model ordered="false"
* @generated
*/
org.eclipse.uml2.uml.Class getBase_Class();
/**
* Sets the value of the '{@link org.eclipse.papyrus.aiml.profile.AIML.Tensor.Tensor#getBase_Class <em>Base Class</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Base Class</em>' reference.
* @see #getBase_Class()
* @generated
*/
void setBase_Class(org.eclipse.uml2.uml.Class value);
} // Tensor