--- a/videoscheduler/SchedulerServer/inc/CCseSchedulerPluginControllerBase.h Thu Aug 19 10:54:18 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,185 +0,0 @@
-/*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "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: Header for PluginControllerBase-class*
-*/
-
-
-
-
-#ifndef __CCSESCHEDULERPLUGINCONTROLLERBASE_H
-#define __CCSESCHEDULERPLUGINCONTROLLERBASE_H
-
-// INCLUDES
-#include <e32base.h>
-#include <ipvideo/MCsePluginObserver.h>
-#include <ipvideo/MCseScheduleObserver.h>
-#include "MCseSchedulerTimerObserver.h"
-#include "MCsePluginControllerObserver.h"
-
-// CONSTANTS
-// None
-
-// MACROS
-// None
-
-// DATA TYPES
-// None
-
-// FUNCTION PROTOTYPES
-// None
-
-// FORWARD DECLARATIONS
-// None
-
-// CLASS DECLARATION
-class CCseScheduledProgram;
-class CCseSchedulerTimer;
-class CCseSchedulerServerEngine;
-
-/**
-* Base class for plugin controllers. Handles all plugin related stuff except scheduling logic.
-*/
-class CCseSchedulerPluginControllerBase : public CBase,
- public MCseScheduleObserver,
- public MCseSchedulerTimerObserver
- {
- public: // Constructors and destructor
- /**
- * Two-phased constructor.
- * @params aEngine reference to engine
- * @params aPluginUid plugin uid of the plugin this plugin controller is made for
- * @return CCseSchedulerPluginControllerBase pointer to CCseSchedulerPluginControllerBase class
- */
- static CCseSchedulerPluginControllerBase* NewL( MCsePluginControllerObserver& aEngine, TInt32 aPluginUid );
-
- /**
- * Destructor.
- */
- virtual ~CCseSchedulerPluginControllerBase();
-
- protected:
- /**
- * C++ default constructor.
- */
- CCseSchedulerPluginControllerBase( MCsePluginControllerObserver& aEngine, TInt32 aPluginUid );
-
- /**
- * By default Symbian 2nd phase constructor is private.
- */
- void ConstructL();
-
- public: // from MCseScheduleObserver-class
- /**
- * Plugins uses this method to inform common scheduler engine that
- * schedule is handled.
- * @param aDbIdentifier DbIdentifier of scheduled program that just
- * has been processed.
- */
- virtual void ScheduleCompletedL( const TUint32 aDbIdentifier, TInt aCompletitionCode );
-
- public: // from MCseSchedulerTimerObserver-class
- /**
- * Plugins uses this method to inform common scheduler engine that
- * schedule is handled.
- * @param aDbIdentifier DbIdentifier of scheduled program that just
- * has been processed.
- */
- virtual void TimerErrorL( const TInt32 aError );
-
- /**
- * Timer is up, run the Plugins!!!
- */
- virtual void RunPluginsL( );
-
- public: // New methods
-
- /**
- * Sets plugin to be cleared after callstack break.
- * @param aToBeCleared ETrue if controller needs to be cleared.
- */
- void SetToBeCleared( TBool aToBeCleared );
-
- /**
- * Clears controller: clears (takes down all threads running for the plugin)
- * all landlords.
- */
- virtual void ClearControllerL();
-
- /**
- * Cleans the controller from LandLord(s) that aren't needed anymore.
- */
- virtual void DoCleanUp( );
-
- /**
- * Sets schedules to controller. More precise information is found from Uni and Multi
- * controller classes.
- * @params aScheduleArrat Array of schedules to be set into controller. All given
- * schedules should have same start time.
- */
- virtual void SetSchedulesL( RPointerArray<CCseScheduledProgram>& aScheduleArray );
-
- /**
- * Gets plugin id. This Uid of the plugin going to be run when time is right. Can be
- * used, for example, to find right kind of controller to a schedule.
- * @return plugin Uid of the plugin used to run the schedule.
- */
- TInt32 PluginUid( );
-
- /**
- * Checks if the plugin is obsolete (There are no more schedules to be run).
- * @return ETrue if obsolete, EFalse if not.
- */
- TBool IsObsolete() const;
-
- /**
- * Checks if the plugin is set to be cleared.
- * @return ETrue if set, EFalse if not.
- */
- TBool IsToBeCleared();
-
- /**
- * Checks if there are active plugins in controller.
- * @return ETrue if active plugins found, EFalse otherwise
- */
- virtual TBool IsControllerActive();
-
- protected: //data
- /**
- * Array containing schedules to be run. Own.
- */
- RPointerArray<CCseScheduledProgram> iScheduleArray;
-
- /**
- * Timer class. Own.
- */
- CCseSchedulerTimer* iTimer;
-
- /**
- * Reference to engine
- */
- MCsePluginControllerObserver& iEngine;
-
- /**
- * Uid of the plugin contrelled by this controller.
- */
- TInt32 iPluginUid;
-
- /**
- * Boolean indicating if this plugin controller is to cleared
- * (plugin running is deleted).
- */
- TBool iToBeCleared;
- };
-
-#endif // __CCSESCHEDULERPLUGINCONTROLLERBASE_H