blob: 4139c4d50e591c32f98a556c26cb752235aef940 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2017 Ericsson
*
* All rights reserved. This program and the accompanying materials are
* made available under the terms of the Eclipse Public License 2.0 which
* accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Patrick Tasse - Initial API and implementation
*******************************************************************************/
package org.eclipse.tracecompass.internal.tmf.ui.markers;
import org.eclipse.tracecompass.tmf.core.trace.AbstractTmfTraceAdapterFactory;
import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
import org.eclipse.tracecompass.tmf.ui.widgets.timegraph.model.IMarkerEventSource;
/**
* Configurable marker event source factory.
*/
public class ConfigurableMarkerEventSourceFactory extends AbstractTmfTraceAdapterFactory {
@Override
protected <T> T getTraceAdapter(ITmfTrace trace, Class<T> adapterType) {
if (IMarkerEventSource.class.equals(adapterType)) {
ConfigurableMarkerEventSource adapter = new ConfigurableMarkerEventSource(trace);
adapter.configure(MarkerUtils.getDefaultMarkerSet());
return adapterType.cast(adapter);
}
return null;
}
@Override
public Class<?>[] getAdapterList() {
return new Class[] {
IMarkerEventSource.class
};
}
}