Ejemplo n.º 1
0
ECode CSurfaceTexture::constructor(
    /* [in] */ Boolean singleBufferMode)
{
    mCreatorLooper = Looper::GetMyLooper();
    AutoPtr<IWeakReference> wr;
    GetWeakReference((IWeakReference**)&wr);
    return NativeInit(TRUE, 0, singleBufferMode, wr);
}
Ejemplo n.º 2
0
Interceptor::Interceptor(STAUniquePtr<IUnknown> aTarget, IInterceptorSink* aSink)
  : WeakReferenceSupport(WeakReferenceSupport::Flags::eDestroyOnMainThread)
  , mTarget(Move(aTarget))
  , mEventSink(aSink)
  , mMutex("mozilla::mscom::Interceptor::mMutex")
{
  MOZ_ASSERT(aSink);
  MOZ_ASSERT(!IsProxy(mTarget.get()));
  RefPtr<IWeakReference> weakRef;
  if (SUCCEEDED(GetWeakReference(getter_AddRefs(weakRef)))) {
    aSink->SetInterceptor(weakRef);
  }
}
Ejemplo n.º 3
0
ECode CSoundPool::constructor(
    /* [in] */ Int32 maxStreams,
    /* [in] */ Int32 streamType,
    /* [in] */ Int32 srcQuality)
{
    // do native setup
    AutoPtr<IWeakReference> wr;
    GetWeakReference((IWeakReference**)&wr);
    if (NativeSetup(wr.Get(), maxStreams, streamType, srcQuality) != 0) {
        Logger::E(TAG, "Native setup failed");
        return E_RUNTIME_EXCEPTION;
    }
    return NOERROR;
}