1 /*******************************************************************************
2 * Copyright (c) 2014 École Polytechnique de Montréal
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * Geneviève Bastien - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.tracecompass
.tmf
.core
.synchronization
;
15 import org
.eclipse
.tracecompass
.internal
.tmf
.core
.synchronization
.SyncAlgorithmFullyIncremental
;
18 * A factory to generate synchronization algorithm to synchronize traces
20 * @author Geneviève Bastien
22 public final class SynchronizationAlgorithmFactory
{
24 private SynchronizationAlgorithmFactory() {
29 * Returns the system's default trace synchronization algorithm, ie the
30 * fully incremental convex hull synchronization algorithm.
32 * @return The default trace synchronization algorithm
34 public static SynchronizationAlgorithm
getDefaultAlgorithm() {
35 return new SyncAlgorithmFullyIncremental();
39 * Returns the class implementing the fully incremental convex hull trace
40 * synchronization approach as described in
42 * Masoume Jabbarifar, Michel Dagenais and Alireza Shameli-Sendi,
43 * "Streaming Mode Incremental Clock Synchronization"
45 * @return The {@link SynchronizationAlgorithm} implementing the fully
46 * incremental convex hull synchronization algorithm
48 public static SynchronizationAlgorithm
getFullyIncrementalAlgorithm() {
49 return new SyncAlgorithmFullyIncremental();