/**
 */
package org.gravity.tgg.pm.uml;

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.gravity.tgg.pm.uml.UmlPackage
 * @generated
 */
public interface UmlFactory extends EFactory {
	/**
	 * The singleton instance of the factory.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	UmlFactory eINSTANCE = org.gravity.tgg.pm.uml.impl.UmlFactoryImpl.init();

	/**
	 * Returns a new object of class '<em>Stereotype Property2 Annotation Node</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Stereotype Property2 Annotation Node</em>'.
	 * @generated
	 */
	StereotypeProperty2AnnotationNode createStereotypeProperty2AnnotationNode();

	/**
	 * Returns a new object of class '<em>Operation2 TMethod Signature</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Operation2 TMethod Signature</em>'.
	 * @generated
	 */
	Operation2TMethodSignature createOperation2TMethodSignature();

	/**
	 * Returns a new object of class '<em>FDependency2 TAccess</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>FDependency2 TAccess</em>'.
	 * @generated
	 */
	FDependency2TAccess createFDependency2TAccess();

	/**
	 * Returns a new object of class '<em>Operation2 TMethod Definition</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Operation2 TMethod Definition</em>'.
	 * @generated
	 */
	Operation2TMethodDefinition createOperation2TMethodDefinition();

	/**
	 * Returns a new object of class '<em>Comment2 TText Annotation</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Comment2 TText Annotation</em>'.
	 * @generated
	 */
	Comment2TTextAnnotation createComment2TTextAnnotation();

	/**
	 * Returns a new object of class '<em>Stereotype2 TAnnotation</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Stereotype2 TAnnotation</em>'.
	 * @generated
	 */
	Stereotype2TAnnotation createStereotype2TAnnotation();

	/**
	 * Returns a new object of class '<em>Type2 TAbstract Type</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Type2 TAbstract Type</em>'.
	 * @generated
	 */
	Type2TAbstractType createType2TAbstractType();

	/**
	 * Returns a new object of class '<em>Property2 TField Definition</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Property2 TField Definition</em>'.
	 * @generated
	 */
	Property2TFieldDefinition createProperty2TFieldDefinition();

	/**
	 * Returns a new object of class '<em>Package2 TPackage</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Package2 TPackage</em>'.
	 * @generated
	 */
	Package2TPackage createPackage2TPackage();

	/**
	 * Returns a new object of class '<em>Model2 Type Graph</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Model2 Type Graph</em>'.
	 * @generated
	 */
	Model2TypeGraph createModel2TypeGraph();

	/**
	 * Returns a new object of class '<em>Property2 TField Signature</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Property2 TField Signature</em>'.
	 * @generated
	 */
	Property2TFieldSignature createProperty2TFieldSignature();

	/**
	 * Returns a new object of class '<em>Operation2 TMethod Name</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Operation2 TMethod Name</em>'.
	 * @generated
	 */
	Operation2TMethodName createOperation2TMethodName();

	/**
	 * Returns a new object of class '<em>Parameter2 TParameter</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Parameter2 TParameter</em>'.
	 * @generated
	 */
	Parameter2TParameter createParameter2TParameter();

	/**
	 * Returns a new object of class '<em>Element2 TAnnotatable</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Element2 TAnnotatable</em>'.
	 * @generated
	 */
	Element2TAnnotatable createElement2TAnnotatable();

	/**
	 * Returns a new object of class '<em>Feature2 TMember</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Feature2 TMember</em>'.
	 * @generated
	 */
	Feature2TMember createFeature2TMember();

	/**
	 * Returns a new object of class '<em>Feature2 TSignature</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Feature2 TSignature</em>'.
	 * @generated
	 */
	Feature2TSignature createFeature2TSignature();

	/**
	 * Returns a new object of class '<em>Class2 TClass</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Class2 TClass</em>'.
	 * @generated
	 */
	Class2TClass createClass2TClass();

	/**
	 * Returns a new object of class '<em>Interface2 TInterface</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Interface2 TInterface</em>'.
	 * @generated
	 */
	Interface2TInterface createInterface2TInterface();

	/**
	 * Returns a new object of class '<em>Primitive Type2 TClass</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Primitive Type2 TClass</em>'.
	 * @generated
	 */
	PrimitiveType2TClass createPrimitiveType2TClass();

	/**
	 * Returns a new object of class '<em>Property2 TField Name</em>'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return a new object of class '<em>Property2 TField Name</em>'.
	 * @generated
	 */
	Property2TFieldName createProperty2TFieldName();

	/**
	 * Returns the package supported by this factory.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the package supported by this factory.
	 * @generated
	 */
	UmlPackage getUmlPackage();

} //UmlFactory
