/*******************************************************************************
 * Copyright (c) 2004-2008 Istvan Rath and Daniel Varro
 * 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:
 *    Istvan Rath - initial API and implementation
 *******************************************************************************/

 package org.eclipse.viatra2.treeeditor.providers;

import org.eclipse.viatra2.core.IEntity;

public class ViatraRootProvider
{
	private IEntity rootEntity;
	
	public ViatraRootProvider(IEntity re)
	{
		rootEntity = re;
	}
	
	public IEntity getRootEntity()
	{
		return rootEntity;
	}
}
