830b45c2710fcf32a697f5029db2fe20b3433c6e
[deliverable/tracecompass.git] / org.eclipse.tracecompass.tmf.core / src / org / eclipse / tracecompass / tmf / core / synchronization / SynchronizationAlgorithmFactory.java
1 /*******************************************************************************
2 * Copyright (c) 2014 École Polytechnique de Montréal
3 *
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
8 *
9 * Contributors:
10 * Geneviève Bastien - Initial API and implementation
11 *******************************************************************************/
12
13 package org.eclipse.tracecompass.tmf.core.synchronization;
14
15 import org.eclipse.tracecompass.internal.tmf.core.synchronization.SyncAlgorithmFullyIncremental;
16
17 /**
18 * A factory to generate synchronization algorithm to synchronize traces
19 *
20 * @author Geneviève Bastien
21 */
22 public final class SynchronizationAlgorithmFactory {
23
24 private SynchronizationAlgorithmFactory() {
25
26 }
27
28 /**
29 * Returns the system's default trace synchronization algorithm, ie the
30 * fully incremental convex hull synchronization algorithm.
31 *
32 * @return The default trace synchronization algorithm
33 */
34 public static SynchronizationAlgorithm getDefaultAlgorithm() {
35 return new SyncAlgorithmFullyIncremental();
36 }
37
38 /**
39 * Returns the class implementing the fully incremental convex hull trace
40 * synchronization approach as described in
41 *
42 * Masoume Jabbarifar, Michel Dagenais and Alireza Shameli-Sendi,
43 * "Streaming Mode Incremental Clock Synchronization"
44 *
45 * @return The {@link SynchronizationAlgorithm} implementing the fully
46 * incremental convex hull synchronization algorithm
47 */
48 public static SynchronizationAlgorithm getFullyIncrementalAlgorithm() {
49 return new SyncAlgorithmFullyIncremental();
50 }
51 }
This page took 0.03323 seconds and 4 git commands to generate.