diff -r 1a6714c53019 -r cce62ebc198e radioapp/radiouiengine/inc/radioscannerengine.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/radioapp/radiouiengine/inc/radioscannerengine.h Tue Aug 31 15:15:02 2010 +0300 @@ -0,0 +1,96 @@ +/* +* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + +#ifndef RADIOSCANNERENGINE_H +#define RADIOSCANNERENGINE_H + +// System includes +#include +#include +#include + +// User includes +#include "radiouiengineexport.h" + +// Forward declarations +class RadioScannerEnginePrivate; +class RadioUiEnginePrivate; +class RadioStationHandlerIf; +class RadioStation; + +// Constants + +// Class declaration +class UI_ENGINE_DLL_EXPORT RadioScannerEngine : public QObject + { + Q_OBJECT + Q_DECLARE_PRIVATE_D( d_ptr.data(), RadioScannerEngine ) + Q_DISABLE_COPY( RadioScannerEngine ) + + friend class RadioUiEngine; + +public: + + explicit RadioScannerEngine( RadioUiEnginePrivate& uiEngine ); + ~RadioScannerEngine(); + +// New functions + + /*! + * Starts the scanning from minimum frequency + */ + void startScanning(); + + /*! + * Continues the scanning upwards from current frequency + */ + void continueScanning(); + + /*! + * Checks if the scanning is ongoing + */ + bool isScanning() const; + + /*! + * Cancels the scanning process + */ + void cancel(); + + /*! + * Adds a new station that was found + * @param frequency Frequency of the found station + */ + void addScannedFrequency( const uint frequency ); + +signals: + + void stationFound( const RadioStation& station ); + +private: + + void emitStationFound( const RadioStation& station ); + +private: // data + + /** + * Unmodifiable pointer to the private implementation + */ + const QScopedPointer d_ptr; + + }; + +#endif // RADIOSCANNERENGINE_H