browserplugins/browseraudiovideoplugin/inc/BavpPlugin.h
branchRCL_3
changeset 47 6385c4c93049
parent 46 4baee4f15982
child 48 8e6fa1719340
--- a/browserplugins/browseraudiovideoplugin/inc/BavpPlugin.h	Thu Aug 19 09:57:56 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,370 +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:  Interface to Browser for handling embedded video requests.
-*
-*/
-
-
-#ifndef BAVPPLUGIN_H
-#define BAVPPLUGIN_H
-
-//  INCLUDES
-#include <e32std.h>
-#include <npupp.h>
-#include <pluginadapterinterface.h> // For base class MPluginNotifier
-#include <aknnotewrappers.h>  // For displaying note
-#include <drmhelper.h>
-#include <DRMCommon.h>
-#include <cecombrowserplugininterface.h>
-#include "BavpNPObject.h"
-#include <rt_gesturehelper.h>
-
-// FORWARD DECLARATIONS
-class CBavpView;
-class CBavpController;
-
-// CLASS DECLARATION
-
-/******************************************
-This class is specific to ECom Style Plugin.
-This is used for passing plugin specific initialization information to and from
-browser.
-*******************************************/
-IMPORT_C NPError InitializeFuncs( NPPluginFuncs* aPpf );
-
-// CONSTANTS
-const TInt KFirstBavpImplementationValue = 0x10282811;
-const TInt KSecondBavpImplementationValue = 0x10282812;
-const TInt KThirdBavpImplementationValue = 0x10282813;
-const TInt KFourthBavpImplementationValue = 0x10282814;
-
-/**
-*  CBavpPluginEcomMain
-*  Used for passing plugin specific initialization information to and from browser.
-*  @lib npBrowserVideoPlugin.lib
-*  @since 3.2
-*/
-class CBavpPluginEcomMain : public CEcomBrowserPluginInterface
-    {
-    public: // Methods from base classes
-        
-        /**
-        * Two-phased constructor.
-        */
-        static CBavpPluginEcomMain* NewL( TAny* aInitParam );
-        
-        /**
-        * Destructor
-        */
-        ~CBavpPluginEcomMain();
-        
-        /**
-        * Passed from the browser to the plugin and delcares what functions the browser 
-        * makes available
-        */
-        NPNetscapeFuncs* Funcs() { return iNpf; }
-
-    private:
-
-        // Default constructor
-        CBavpPluginEcomMain( NPNetscapeFuncs* aNpf );
-
-        // By default Symbian 2nd phase constructor is private.
-        void ConstructL( NPPluginFuncs* aPluginFuncs );
-
-        // Netscape Function Pointer
-        NPNetscapeFuncs* iNpf;
-    };
-
-/**
-*  CBavpPlugin class 
-*  Interfaces to Browser, used to pass information between browser and plugin
-*  @lib npBrowserVideoPlugin.lib
-*  @since 3.2
-*/
-class CBavpPlugin : public CBase,
-                    public MPluginNotifier
-    {
-    public: // Constructors and destructor
-
-        /**
-        * Two-phased constructor.
-        */
-        static CBavpPlugin* NewL();
-
-        /**
-        * Destructor.
-        */
-        virtual ~CBavpPlugin();
-
-    public: // New methods
-
-       /**
-        * SetWindowL
-        * @since 3.2
-        * @param MPluginAdapter *pluginAdapter: Pointer to Browser adapter class
-        * @param const TRect& aRect: rectangle representing current UI
-        * @return void
-        */
-        void SetWindowL( MPluginAdapter *pluginAdapter, NPWindow* aWindow, NPP aInstance );
-
-        /**
-        * OpenAndPlayFileL
-        * @since 3.2
-        * @param const TDesC& aFileName: Name and path of file to be played
-        * @param const HBufC* originalFileName: name of the file to be played. added for scripting.
-        * @return void
-        */
-        void OpenAndPlayFileL( const TDesC& aFileName, const HBufC* originalFileName );
-
-        /**
-        * OpenAndPlayUrlL
-        * @since 3.2
-        * @param const TDesC& aUrl: Name and path of uri to be played
-        * @return void
-        */
-        void OpenAndPlayUrlL( const TDesC& aUrl );
-        
-        /**
-        * Controller
-        * @since 5.0
-        * @param void
-        * @return controller
-        */
-        CBavpController* Controller() { return iBavpController; }
-        
-        /**
-        * SetNPObject
-        * iNPObject is a scriptable object
-        * @since 5.0
-        * @param BavpNPObject *aObj
-        * @return void
-        */ 
-        void SetNPObject( BavpNPObject* aObj ) { iNPObject = aObj; }
-        
-        /**
-        * NPObject
-        * return the scriptable object
-        * @since 5.0
-        * @param void
-        * @return BavpNPObject*
-        */
-        BavpNPObject* NPObject() const { return iNPObject; }
-
-
-    public: // New methods
-
-        /**
-        * SetAccessPtId
-        * Set access pt id
-        * @since 3.2
-        * @param TUint aAccessPtId, sets the access pt id
-        * @return void
-        */
-        void SetAccessPtId( TUint aAccessPtId );
-
-        /**
-        * SetVolumeAndLoop
-        * Set volume, loop, and infinite values
-        * @since 3.2
-        * @param TInt aVolume, the volume level from web page 
-        * @param TInt aLoop, the loop count from web page 
-        * @param TInt aInfiniteFlag, not used 
-        * @return void
-        */
-        void SetVolumeAndLoop( TInt aVolume, TInt aLoop, TInt aInfiniteFlag );
-
-        /**
-        * SetRtspUri
-        * Set Rtsp uri
-        * @since 3.2
-        * @param TInt aVolume, the volume level from web page 
-        * @param TInt aLoop, the loop count from web page 
-        * @param TInt aInfiniteFlag, not used 
-        * @return void
-        */
-        void SetRtspUriL( const TDesC& aRtspUri );
-
-    public: // Methods from base classes
-
-        /**
-        * From MPluginNotifier
-        * @since 3.2
-        * @param TNotificationType aCallType: Represents a type of notification from Browser
-        * @param void* aParam: Contains value corresponding to notification
-        * @return TInt: Error Code
-        */
-        TInt NotifyL( TNotificationType aCallType, void* aParam );
-
-        /**
-        * Set the mime type
-        * The mimetype is returned from headers
-        * @param NPMIMEType type
-        * @return void
-        */
-        void SetMimeType(NPMIMEType type);
-        
-        NPP  getNPP() {return iNPP;}
-        
-        NPNetscapeFuncs* getNPNFuncs();
-        
-        TBool HandleGesture(void* aEvent);
-    private:
-
-        /**
-        * C++ default constructor.
-        */
-        CBavpPlugin();
-
-        /**
-        * By default Symbian 2nd phase constructor is private.
-        */
-        void ConstructL();
-       
-    public: // Data
-
-        // Initialize as false, then set it whenever error occurs
-        TBool iError; 
-
-    private:    // Data
-
-        // Interface to Browser
-        MPluginAdapter* iPluginAdapter;
-
-        // Audio or Video controller
-        CBavpController* iBavpController;
-
-        // CCoeControl interface
-        CBavpView* iBavpView;
-        
-        BavpNPObject* iNPObject;
-
-        // Resource offset
-        TInt iResourceOffset;
-
-        // Src file scheme, which is changed by script in run time
-        HBufC* iFileName;
-        
-        // Src RTSP scheme uri, which is used to start BavpController 
-        HBufC* iRtspUrl;
-
-        // Access point id  
-        TUint iAccessPtId;
-
-        // Value of the Volume embedded in the HTML file
-        TInt  iVolume;
-
-        // Value of the Loop embedded in the HTML file
-        TInt  iLoop;
-
-        // Flag indication if the loop is set to infinite
-        TBool iInfiniteFlag;
-
-        // DRM Helper instance to address the error case from the plugin level
-        CDRMHelper* iDrmHelper;
-        
-        // Mime type. Added for scripting functionality
-        HBufC8* iMimeType;
-        NPP iNPP;
-        //browser plugin state, used for play and resume 
-        TBool iPauseState; 
-        TBool iIsForeGround;
-        TBool iPauseInBackground;
-        TBool iPlayFromFile;
-    };
-
-/**
-********************************************************************************
-    Plugin API methods. Source located in CBavpApi.cpp
-*********************************************************************************
-*/
-
-/**
- * Create a plugin.
- */
-
-NPError BavpNewp( NPMIMEType pluginType, NPP instance, uint16 mode,
-                  CDesCArray* argn, CDesCArray* argv, NPSavedData* saved );
-
-/**
- * Wrapper the errors
- */
-void BavpConstructL( NPP aInstance, CDesCArray* argn, CDesCArray* argv );
-
-/**
- * Destroy a plugin.
- */
-NPError BavpDestroy( NPP instance, NPSavedData** save );
-
-/**
- * This is the parent window of a plugin.
- */
-NPError BavpSetwindow( NPP instance, NPWindow* window );
-
-/**
- * A new data stream has been created for sending data to the plugin.
- */
-NPError BavpNewstream( NPP instance, NPMIMEType type, NPStream* stream,
-                       NPBool seekable, uint16* stype );
-
-/**
- * A data stream has been terminated.
- */
-NPError BavpDestroystream( NPP instance, NPStream* stream, NPReason reason );
-
-/**
- * A data stream has been fully saved to a file.
- */
-void BavpAsfile( NPP instance, NPStream* stream, const TDesC& fname );
-
-/**
- * Return the maximum number of bytes this plugin can accept from the stream.
- */
-int32 BavpWriteready( NPP instance, NPStream* stream );
-
-/**
- * Receive more data - return number of bytes processed.
- */
-int32 BavpWrite( NPP instance, NPStream* stream,
-                 int32 offset, int32 len, void* buffer );
-
-/**
- * This is the URL being sensed.
- */
-void BavpUrlnotify( NPP instance, const TDesC8& url, NPReason reason,
-                    void* notifyData );
-
-/**
- * Generic hook to retrieve values/attributes from the plugin.
- */
-NPError BavpGetvalue( NPP instance, NPPVariable variable, void *ret_value );
-
-/**
- * Generic hook to set values/attributes within the plugin.
- */
-NPError BavpSetvalue( NPP instance, NPNVariable variable, void *ret_value );
-
-/**
- * Print
- */
-void BavpPrint( NPP instance, NPPrint* platformPrint );
-
-/**
- * Event
- */
-int16 BavpEvent( NPP instance, void* event );
-
-#endif      // BAVPPLUGIN_H
-
-// End of File