/**
*/
package org.dresdenocl.modelinstancetype.test.testmodel;
import org.eclipse.emf.ecore.EFactory;
/**
* <!-- begin-user-doc -->
* The <b>Factory</b> for the model.
* It provides a create method for each non-abstract class of the model.
* <!-- end-user-doc -->
* @see org.dresdenocl.modelinstancetype.test.testmodel.TestmodelPackage
* @generated
*/
public interface TestmodelFactory extends EFactory {
/**
* The singleton instance of the factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
TestmodelFactory eINSTANCE = org.dresdenocl.modelinstancetype.test.testmodel.impl.TestmodelFactoryImpl.init();
/**
* Returns a new object of class '<em>Container Class</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Container Class</em>'.
* @generated
*/
ContainerClass createContainerClass();
/**
* Returns a new object of class '<em>Primitive Type Provider Class</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Primitive Type Provider Class</em>'.
* @generated
*/
PrimitiveTypeProviderClass createPrimitiveTypeProviderClass();
/**
* Returns a new object of class '<em>Collection Type Provider Class</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Collection Type Provider Class</em>'.
* @generated
*/
CollectionTypeProviderClass createCollectionTypeProviderClass();
/**
* Returns a new object of class '<em>Enumeration Literal Provider Class</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Enumeration Literal Provider Class</em>'.
* @generated
*/
EnumerationLiteralProviderClass createEnumerationLiteralProviderClass();
/**
* Returns a new object of class '<em>Class1</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Class1</em>'.
* @generated
*/
Class1 createClass1();
/**
* Returns a new object of class '<em>Class2</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Class2</em>'.
* @generated
*/
Class2 createClass2();
/**
* Returns a new object of class '<em>Copyable Class</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Copyable Class</em>'.
* @generated
*/
CopyableClass createCopyableClass();
/**
* Returns a new object of class '<em>C1 Implementation</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>C1 Implementation</em>'.
* @generated
*/
C1Implementation createC1Implementation();
/**
* Returns a new object of class '<em>I1I2 Implementation</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>I1I2 Implementation</em>'.
* @generated
*/
I1I2Implementation createI1I2Implementation();
/**
* Returns a new object of class '<em>I1 Implementation</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>I1 Implementation</em>'.
* @generated
*/
I1Implementation createI1Implementation();
/**
* Returns a new object of class '<em>I2C1 Implementation</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>I2C1 Implementation</em>'.
* @generated
*/
I2C1Implementation createI2C1Implementation();
/**
* Returns a new object of class '<em>I3C2 Implementation</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>I3C2 Implementation</em>'.
* @generated
*/
I3C2Implementation createI3C2Implementation();
/**
* Returns a new object of class '<em>I3 Implementation</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>I3 Implementation</em>'.
* @generated
*/
I3Implementation createI3Implementation();
/**
* Returns a new object of class '<em>Clonable Copyable Class</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Clonable Copyable Class</em>'.
* @generated
*/
ClonableCopyableClass createClonableCopyableClass();
/**
* Returns a new object of class '<em>Initializable Copyable Class</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Initializable Copyable Class</em>'.
* @generated
*/
InitializableCopyableClass createInitializableCopyableClass();
/**
* Returns a new object of class '<em>Non Copyable Class</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Non Copyable Class</em>'.
* @generated
*/
NonCopyableClass createNonCopyableClass();
/**
* Returns a new object of class '<em>Static Property And Operation Class</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Static Property And Operation Class</em>'.
* @generated
*/
StaticPropertyAndOperationClass createStaticPropertyAndOperationClass();
/**
* Returns the package supported by this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the package supported by this factory.
* @generated
*/
TestmodelPackage getTestmodelPackage();
} //TestmodelFactory