/******************************************************************************* * sdr-trunk * Copyright (C) 2014-2018 Dennis Sheirer * * This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public * License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any * later version. * * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along with this program. * If not, see * ******************************************************************************/ package io.github.dsheirer.bits; import io.github.dsheirer.dsp.symbol.ISyncDetectListener; public class SyncDetector implements ISyncProcessor { private long mPattern; private ISyncDetectListener mListener; public SyncDetector(long pattern) { mPattern = pattern; } public SyncDetector(long pattern, ISyncDetectListener listener) { this(pattern); mListener = listener; } public void setListener(ISyncDetectListener listener) { mListener = listener; } @Override public boolean checkSync(long value) { if(value == mPattern) { if(mListener != null) { mListener.syncDetected(); } return true; } return false; } }