diff -r 000000000000 -r 2e3d3ce01487 startupservices/startupanimation/sanimengine/inc/sanimengine.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/startupservices/startupanimation/sanimengine/inc/sanimengine.h Tue Feb 02 10:12:00 2010 +0200 @@ -0,0 +1,159 @@ +/* +* Copyright (c) 2007 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: Declaration of CSAnimEngine class +* +*/ + + +#ifndef SANIMENGINE_H +#define SANIMENGINE_H + +#include +#include // For TDisplayMode. + +class MSAnimObserver; +class RFs; + +/** +* Start-up Animation Engine interface class. +* +* @lib None +* @since S60 3.2 +*/ +NONSHARABLE_CLASS( CSAnimEngine ) : public CBase + { + +public: + + /** + * Constructs a CSAnimEngine object. + * + * @since S60 3.2 + * + * @param aFs Fileserver reference. + * @param aObserver Observer for animation events.. + * @return The new object + */ + IMPORT_C static CSAnimEngine* NewL( RFs& aFs, MSAnimObserver& aObserver ); + + /** + * Destructor. + * + * @since S60 3.2 + */ + virtual ~CSAnimEngine(); + + /** + * Set the file name identifying the image / animation to show and other + * properties that affect how the image / animation is shown. + * + * @since S60 3.2 + * + * @param aImageFileName Identifies the image file to use. + * @param aDisplayMode Display mode to use, if supported by the image. + * @param aSize Requested size for the image. + * @param aFrameDelay Frame delay to use. + * @param aScalingEnabled Identifies whether to try to scale the image to fit + * the screen size or just use the target size of the animation as it is. + * @param aRepeatCount How many times to repeat the animation. + * Zero indicates infinite. For future use - not currently used. + * @return KErrNone if file was found, a plug-in for the file type was found + * and successfully loaded. One of the system-wide error codes otherwise. + */ + virtual TInt SetImageProperties( + const TDesC& aImageFileName, + const TDisplayMode aDisplayMode, + const TSize& aSize, + const TTimeIntervalMicroSeconds32& aFrameDelay, + const TBool aScalingEnabled, + const TInt aRepeatCount ) = 0; + + /** + * Set the file name identifying the tone to play and other properties that + * affect how the tone is played. + * + * @since S60 3.2 + * + * @param aToneFileName Identifies the tone file to use. + * @param aVolume Volume level to use. + * @param aVolumeRamp Volume ramp: the period over which the volume level is + * to rise smoothly from nothing to the normal volume level. + * @param aRepeatCount How many times to repeat the tone. + * Zero indicates infinite. For future use - not currently used. + * @return KErrNone if file was found, a plug-in for the file type was found + * and successfully loaded. One of the system-wide error codes otherwise. + */ + virtual TInt SetToneProperties( + const TDesC& aToneFileName, + const TInt aVolume, + const TTimeIntervalMicroSeconds& aVolumeRamp, + const TInt aRepeatCount ) = 0; + + /** + * Load the parts of the show (image/animation and/or tone) from file(s). + * Completes immediately with KErrNone if the show has no parts. + * + * @since S60 3.2 + * + * @param aStatus Request to complete when loading is complete. + */ + virtual void Load( TRequestStatus& aStatus ) = 0; + + /** + * Get the backgroud colour of the image. + * Should only be called after successfully loading the image. + * + * @since S60 3.2 + * + * @return The backgroud colour requested for the image. + */ + virtual TRgb BackroundColour() const = 0; + + /** + * Start the show (image/animation and/or tone). + * Completes immediately with KErrNone if the show has no parts. + * + * @since S60 3.2 + * + * @param aStatus Request to complete when all parts of the show have + * finished. + */ + virtual void Start( TRequestStatus& aStatus ) = 0; + + /** + * Cancel activity. + * + * @since S60 3.2 + */ + virtual void Cancel() = 0; + +protected: + + /** + * Constructor. + * + * @since S60 3.2 + */ + CSAnimEngine(); + +private: + + /** Copy constructor. */ + CSAnimEngine( const CSAnimEngine& ); + /** Assignment operator. */ + CSAnimEngine& operator=( const CSAnimEngine& ); + + }; + +#endif // SANIMENGINE_H