/// <summary> /// Initializes a new instance of the <see cref="ChromaContext" /> class. /// </summary> /// <param name="algorithm">The algorithm to use, see <see cref="ChromaprintAlgorithm" /> (default = TEST2)</param> public ChromaContext(ChromaprintAlgorithm algorithm) { this.algorithm = (int)algorithm; var config = FingerprinterConfiguration.CreateConfiguration(algorithm); this.fingerprinter = new Fingerprinter(config); }
/// <summary> /// Initializes a new instance of the <see cref="ChromaContext" /> class. /// </summary> /// <param name="algorithm">The algorithm to use, see <see cref="ChromaprintAlgorithm" /> (default = TEST2)</param> /// <param name="fftService">The FFT service.</param> public ChromaContext(ChromaprintAlgorithm algorithm, IFFTService fftService) { this.Algorithm = (int)algorithm; this.fftService = fftService; var config = FingerprinterConfiguration.CreateConfiguration(algorithm); this.fingerprinter = new Fingerprinter(config, fftService); }
public static FingerprinterConfiguration CreateConfiguration(ChromaprintAlgorithm algorithm) { switch (algorithm) { case ChromaprintAlgorithm.TEST1: return new FingerprinterConfigurationTest1(); case ChromaprintAlgorithm.TEST2: return new FingerprinterConfigurationTest2(); case ChromaprintAlgorithm.TEST3: return new FingerprinterConfigurationTest3(); case ChromaprintAlgorithm.TEST4: return new FingerprinterConfigurationTest4(); } return null; }
public static FingerprinterConfiguration CreateConfiguration(ChromaprintAlgorithm algorithm) { switch (algorithm) { case ChromaprintAlgorithm.TEST1: return(new FingerprinterConfigurationTest1()); case ChromaprintAlgorithm.TEST2: return(new FingerprinterConfigurationTest2()); case ChromaprintAlgorithm.TEST3: return(new FingerprinterConfigurationTest3()); case ChromaprintAlgorithm.TEST4: return(new FingerprinterConfigurationTest4()); } return(null); }
/// <summary> /// Initializes a new instance of the <see cref="NativeChromaContext" /> class. /// </summary> /// <param name="algorithm">The algorithm to use, see <see cref="ChromaprintAlgorithm" /> (default = TEST2)</param> public NativeChromaContext(ChromaprintAlgorithm algorithm) { this.Algorithm = (int)algorithm; ctx = NativeMethods.chromaprint_new(this.Algorithm); }
/// <summary> /// Initializes a new instance of the <see cref="ChromaContext" /> class. /// </summary> /// <param name="algorithm">The algorithm to use, see <see cref="ChromaprintAlgorithm" /> (default = TEST2)</param> public ChromaContext(ChromaprintAlgorithm algorithm) : this(ChromaprintAlgorithm.TEST2, new LomontFFTService()) { }