/*******************************************************************************
* Copyright (c) 2013 University of Mannheim: Chair for Software Engineering
* 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:
* Ralph Gerbig - initial API and implementation and initial documentation
*******************************************************************************/
package de.uni_mannheim.informatik.swt.mlm.workbench.interfaces;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.ecore.EObject;
import de.uni_mannheim.informatik.swt.models.plm.PLM.AbstractDSLVisualizer;
/**
* Interface for services that work with visualizers
*
*/
public interface IVisualizationServiceBase {
/**
* Returns the ID of the visualization editor
*
* @return the ID of the visualization editor
*/
public String getVisualizationEditorViewID();
/**
* This method can be used to filter the visibility of the visualization
* editor view.
*
* @param element Element to check visibility for
* @return whether the element is visible
*/
public boolean isVisibleInVisualizerEditorView(EObject element);
/**
*
* xxxItemAdapterProviderFactory needed in VisualizationEditorView
*
* @return the xxxItemAdapterProviderFactory
*/
public AdapterFactory getItemProviderAdapterFactory();
/**
* Needed to create the initial dsl initializer in VisualizationEditorView. Once
* this is created, the rest can be inferred from the meta-model.
*
* @return e.g. GraphicalDSLVisualizer, TextualDSLVisualizer
*/
public AbstractDSLVisualizer createNewSpecificDSLVisualizer();
}