williamr@2: /* williamr@2: * Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@2: * under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members williamr@2: * which accompanies this distribution, and is available williamr@2: * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". williamr@2: * williamr@2: * Initial Contributors: williamr@2: * Nokia Corporation - initial contribution. williamr@2: * williamr@2: * Contributors: williamr@2: * williamr@2: * Description: Abstract interface for find media files suitable to be williamr@2: * set as an alert tone in Profiles. williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: williamr@2: #ifndef MPROENGALERTTONESEEKER_H williamr@2: #define MPROENGALERTTONESEEKER_H williamr@2: williamr@2: // INCLUDES williamr@2: #include williamr@2: williamr@2: // FORWARD DECLARATIONS williamr@2: class MProEngAlertToneSeekerExt; williamr@2: class MProEngAlertToneSeekerObserver; williamr@2: williamr@2: // CLASS DECLARATION williamr@2: williamr@2: /** williamr@2: * This class can be used to find media files suitable to be set as an alert williamr@2: * tone in Profiles. williamr@2: * williamr@2: * @lib ProfileEngine.lib williamr@2: * @since Series 60 3.1 williamr@2: */ williamr@2: class MProEngAlertToneSeeker williamr@2: { williamr@2: public: // New functions williamr@2: williamr@2: /** williamr@2: * Asynchronous method that searches all the tone files that can be used williamr@2: * as alert tones in Profiles. The resulting list of the tone paths is williamr@2: * delivered to the MProEngAlertToneSeekerObserver. williamr@2: * This is a very long lasting operation (~minutes), so this shouldn't williamr@2: * be performed too often. williamr@2: * @since S 60 3.1 williamr@2: * @param aObserver Reference to the client-implemented observer which williamr@2: * will get the list of tones after the list has been constructed. williamr@2: */ williamr@2: virtual void FetchAlertToneListL( williamr@2: MProEngAlertToneSeekerObserver& aObserver ) = 0; williamr@2: williamr@2: /** williamr@2: * Cancels the asynchronous fetch operation. williamr@2: * @since S60 3.1 williamr@2: */ williamr@2: virtual void CancelFetch() = 0; williamr@2: williamr@2: public: williamr@2: williamr@2: /** williamr@2: * Destructor. williamr@2: */ williamr@2: virtual ~MProEngAlertToneSeeker() {} williamr@2: williamr@2: private: // Extension interface williamr@2: williamr@2: /** williamr@2: * This member is internal and not intended for use. williamr@2: */ williamr@2: virtual MProEngAlertToneSeekerExt* Extension() { return NULL; } williamr@2: williamr@2: }; williamr@2: williamr@2: #endif // MPROENGALERTTONESEEKER_H williamr@2: williamr@2: // End of File williamr@2: