gecko-dev/dom/plugins/ipc/BrowserStreamParent.h

79 строки
2.0 KiB
C
Исходник Обычный вид История

/* -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; tab-width: 8 -*- */
2012-05-21 15:12:37 +04:00
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef mozilla_plugins_BrowserStreamParent_h
#define mozilla_plugins_BrowserStreamParent_h
#include "mozilla/plugins/PBrowserStreamParent.h"
#include "mozilla/plugins/AStream.h"
#include "nsNPAPIPluginStreamListener.h"
#include "nsPluginStreamListenerPeer.h"
namespace mozilla {
namespace plugins {
Rename plugin protocols and fix up usage --HG-- rename : dom/plugins/NPP.ipdl => dom/plugins/PPluginInstance.ipdl rename : dom/plugins/NPAPI.ipdl => dom/plugins/PPluginModule.ipdl rename : dom/plugins/NPObject.ipdl => dom/plugins/PPluginScriptableObject.ipdl rename : dom/plugins/NPBrowserStream.ipdl => dom/plugins/PPluginStream.ipdl rename : dom/plugins/NPPInstanceChild.cpp => dom/plugins/PluginInstanceChild.cpp rename : dom/plugins/NPPInstanceChild.h => dom/plugins/PluginInstanceChild.h rename : dom/plugins/NPPInstanceParent.cpp => dom/plugins/PluginInstanceParent.cpp rename : dom/plugins/NPPInstanceParent.h => dom/plugins/PluginInstanceParent.h rename : dom/plugins/NPAPIPluginChild.cpp => dom/plugins/PluginModuleChild.cpp rename : dom/plugins/NPAPIPluginChild.h => dom/plugins/PluginModuleChild.h rename : dom/plugins/NPAPIPluginParent.cpp => dom/plugins/PluginModuleParent.cpp rename : dom/plugins/NPAPIPluginParent.h => dom/plugins/PluginModuleParent.h rename : dom/plugins/NPObjectChild.cpp => dom/plugins/PluginScriptableObjectChild.cpp rename : dom/plugins/NPObjectChild.h => dom/plugins/PluginScriptableObjectChild.h rename : dom/plugins/NPObjectParent.cpp => dom/plugins/PluginScriptableObjectParent.cpp rename : dom/plugins/NPObjectParent.h => dom/plugins/PluginScriptableObjectParent.h rename : dom/plugins/NPBrowserStreamChild.cpp => dom/plugins/PluginStreamChild.cpp rename : dom/plugins/NPBrowserStreamChild.h => dom/plugins/PluginStreamChild.h rename : dom/plugins/NPBrowserStreamParent.cpp => dom/plugins/PluginStreamParent.cpp rename : dom/plugins/NPBrowserStreamParent.h => dom/plugins/PluginStreamParent.h
2009-09-09 10:31:35 +04:00
class PluginInstanceParent;
class BrowserStreamParent : public PBrowserStreamParent, public AStream
{
Rename plugin protocols and fix up usage --HG-- rename : dom/plugins/NPP.ipdl => dom/plugins/PPluginInstance.ipdl rename : dom/plugins/NPAPI.ipdl => dom/plugins/PPluginModule.ipdl rename : dom/plugins/NPObject.ipdl => dom/plugins/PPluginScriptableObject.ipdl rename : dom/plugins/NPBrowserStream.ipdl => dom/plugins/PPluginStream.ipdl rename : dom/plugins/NPPInstanceChild.cpp => dom/plugins/PluginInstanceChild.cpp rename : dom/plugins/NPPInstanceChild.h => dom/plugins/PluginInstanceChild.h rename : dom/plugins/NPPInstanceParent.cpp => dom/plugins/PluginInstanceParent.cpp rename : dom/plugins/NPPInstanceParent.h => dom/plugins/PluginInstanceParent.h rename : dom/plugins/NPAPIPluginChild.cpp => dom/plugins/PluginModuleChild.cpp rename : dom/plugins/NPAPIPluginChild.h => dom/plugins/PluginModuleChild.h rename : dom/plugins/NPAPIPluginParent.cpp => dom/plugins/PluginModuleParent.cpp rename : dom/plugins/NPAPIPluginParent.h => dom/plugins/PluginModuleParent.h rename : dom/plugins/NPObjectChild.cpp => dom/plugins/PluginScriptableObjectChild.cpp rename : dom/plugins/NPObjectChild.h => dom/plugins/PluginScriptableObjectChild.h rename : dom/plugins/NPObjectParent.cpp => dom/plugins/PluginScriptableObjectParent.cpp rename : dom/plugins/NPObjectParent.h => dom/plugins/PluginScriptableObjectParent.h rename : dom/plugins/NPBrowserStreamChild.cpp => dom/plugins/PluginStreamChild.cpp rename : dom/plugins/NPBrowserStreamChild.h => dom/plugins/PluginStreamChild.h rename : dom/plugins/NPBrowserStreamParent.cpp => dom/plugins/PluginStreamParent.cpp rename : dom/plugins/NPBrowserStreamParent.h => dom/plugins/PluginStreamParent.h
2009-09-09 10:31:35 +04:00
friend class PluginModuleParent;
friend class PluginInstanceParent;
public:
BrowserStreamParent(PluginInstanceParent* npp,
NPStream* stream);
virtual ~BrowserStreamParent();
virtual bool IsBrowserStream() override { return true; }
virtual void ActorDestroy(ActorDestroyReason aWhy) override;
virtual bool RecvAsyncNPP_NewStreamResult(
const NPError& rv,
const uint16_t& stype) override;
virtual bool AnswerNPN_RequestRead(const IPCByteRanges& ranges,
NPError* result) override;
virtual bool RecvNPN_DestroyStream(const NPReason& reason) override;
virtual bool RecvStreamDestroyed() override;
int32_t WriteReady();
int32_t Write(int32_t offset, int32_t len, void* buffer);
void StreamAsFile(const char* fname);
void NPP_DestroyStream(NPReason reason);
void SetAlive()
{
if (mState == INITIALIZING) {
mState = ALIVE;
}
}
private:
using PBrowserStreamParent::SendNPP_DestroyStream;
Rename plugin protocols and fix up usage --HG-- rename : dom/plugins/NPP.ipdl => dom/plugins/PPluginInstance.ipdl rename : dom/plugins/NPAPI.ipdl => dom/plugins/PPluginModule.ipdl rename : dom/plugins/NPObject.ipdl => dom/plugins/PPluginScriptableObject.ipdl rename : dom/plugins/NPBrowserStream.ipdl => dom/plugins/PPluginStream.ipdl rename : dom/plugins/NPPInstanceChild.cpp => dom/plugins/PluginInstanceChild.cpp rename : dom/plugins/NPPInstanceChild.h => dom/plugins/PluginInstanceChild.h rename : dom/plugins/NPPInstanceParent.cpp => dom/plugins/PluginInstanceParent.cpp rename : dom/plugins/NPPInstanceParent.h => dom/plugins/PluginInstanceParent.h rename : dom/plugins/NPAPIPluginChild.cpp => dom/plugins/PluginModuleChild.cpp rename : dom/plugins/NPAPIPluginChild.h => dom/plugins/PluginModuleChild.h rename : dom/plugins/NPAPIPluginParent.cpp => dom/plugins/PluginModuleParent.cpp rename : dom/plugins/NPAPIPluginParent.h => dom/plugins/PluginModuleParent.h rename : dom/plugins/NPObjectChild.cpp => dom/plugins/PluginScriptableObjectChild.cpp rename : dom/plugins/NPObjectChild.h => dom/plugins/PluginScriptableObjectChild.h rename : dom/plugins/NPObjectParent.cpp => dom/plugins/PluginScriptableObjectParent.cpp rename : dom/plugins/NPObjectParent.h => dom/plugins/PluginScriptableObjectParent.h rename : dom/plugins/NPBrowserStreamChild.cpp => dom/plugins/PluginStreamChild.cpp rename : dom/plugins/NPBrowserStreamChild.h => dom/plugins/PluginStreamChild.h rename : dom/plugins/NPBrowserStreamParent.cpp => dom/plugins/PluginStreamParent.cpp rename : dom/plugins/NPBrowserStreamParent.h => dom/plugins/PluginStreamParent.h
2009-09-09 10:31:35 +04:00
PluginInstanceParent* mNPP;
NPStream* mStream;
nsCOMPtr<nsISupports> mStreamPeer;
Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat The bulk of this commit was generated with a script, executed at the top level of a typical source code checkout. The only non-machine-generated part was modifying MFBT's moz.build to reflect the new naming. CLOSED TREE makes big refactorings like this a piece of cake. # The main substitution. find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \ xargs perl -p -i -e ' s/nsRefPtr\.h/RefPtr\.h/g; # handle includes s/nsRefPtr ?</RefPtr</g; # handle declarations and variables ' # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h. perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h # Handle nsRefPtr.h itself, a couple places that define constructors # from nsRefPtr, and code generators specially. We do this here, rather # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename # things like nsRefPtrHashtable. perl -p -i -e 's/nsRefPtr/RefPtr/g' \ mfbt/nsRefPtr.h \ xpcom/glue/nsCOMPtr.h \ xpcom/base/OwningNonNull.h \ ipc/ipdl/ipdl/lower.py \ ipc/ipdl/ipdl/builtin.py \ dom/bindings/Codegen.py \ python/lldbutils/lldbutils/utils.py # In our indiscriminate substitution above, we renamed # nsRefPtrGetterAddRefs, the class behind getter_AddRefs. Fix that up. find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \ xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g' if [ -d .git ]; then git mv mfbt/nsRefPtr.h mfbt/RefPtr.h else hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h fi --HG-- rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 08:24:48 +03:00
RefPtr<nsNPAPIPluginStreamListener> mStreamListener;
NPReason mDeferredDestroyReason;
enum {
INITIALIZING,
DEFERRING_DESTROY,
ALIVE,
DYING,
DELETING
} mState;
};
} // namespace plugins
} // namespace mozilla
#endif