LCOV - code coverage report
Current view: top level - image - ImageWrapper.cpp (source / functions) Hit Total Coverage
Test: output.info Lines: 4 107 3.7 %
Date: 2017-07-14 16:53:18 Functions: 6 50 12.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
       2             : /* This Source Code Form is subject to the terms of the Mozilla Public
       3             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       4             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
       5             : 
       6             : #include "ImageWrapper.h"
       7             : #include "mozilla/gfx/2D.h"
       8             : #include "mozilla/RefPtr.h"
       9             : #include "Orientation.h"
      10             : 
      11             : #include "mozilla/MemoryReporting.h"
      12             : 
      13             : namespace mozilla {
      14             : 
      15             : using gfx::DataSourceSurface;
      16             : using gfx::IntSize;
      17             : using gfx::SamplingFilter;
      18             : using gfx::SourceSurface;
      19             : using layers::LayerManager;
      20             : using layers::ImageContainer;
      21             : 
      22             : namespace image {
      23             : 
      24             : // Inherited methods from Image.
      25             : 
      26             : already_AddRefed<ProgressTracker>
      27           0 : ImageWrapper::GetProgressTracker()
      28             : {
      29           0 :   return mInnerImage->GetProgressTracker();
      30             : }
      31             : 
      32             : size_t
      33           0 : ImageWrapper::SizeOfSourceWithComputedFallback(MallocSizeOf aMallocSizeOf) const
      34             : {
      35           0 :   return mInnerImage->SizeOfSourceWithComputedFallback(aMallocSizeOf);
      36             : }
      37             : 
      38             : void
      39           0 : ImageWrapper::CollectSizeOfSurfaces(nsTArray<SurfaceMemoryCounter>& aCounters,
      40             :                                     MallocSizeOf aMallocSizeOf) const
      41             : {
      42           0 :   mInnerImage->CollectSizeOfSurfaces(aCounters, aMallocSizeOf);
      43           0 : }
      44             : 
      45             : void
      46           0 : ImageWrapper::IncrementAnimationConsumers()
      47             : {
      48           0 :   MOZ_ASSERT(NS_IsMainThread(), "Main thread only to encourage serialization "
      49             :                                 "with DecrementAnimationConsumers");
      50           0 :   mInnerImage->IncrementAnimationConsumers();
      51           0 : }
      52             : 
      53             : void
      54           0 : ImageWrapper::DecrementAnimationConsumers()
      55             : {
      56           0 :   MOZ_ASSERT(NS_IsMainThread(), "Main thread only to encourage serialization "
      57             :                                 "with IncrementAnimationConsumers");
      58           0 :   mInnerImage->DecrementAnimationConsumers();
      59           0 : }
      60             : 
      61             : #ifdef DEBUG
      62             : uint32_t
      63           0 : ImageWrapper::GetAnimationConsumers()
      64             : {
      65           0 :   return mInnerImage->GetAnimationConsumers();
      66             : }
      67             : #endif
      68             : 
      69             : nsresult
      70           0 : ImageWrapper::OnImageDataAvailable(nsIRequest* aRequest,
      71             :                                    nsISupports* aContext,
      72             :                                    nsIInputStream* aInStr,
      73             :                                    uint64_t aSourceOffset,
      74             :                                    uint32_t aCount)
      75             : {
      76           0 :   return mInnerImage->OnImageDataAvailable(aRequest, aContext, aInStr,
      77           0 :                                            aSourceOffset, aCount);
      78             : }
      79             : 
      80             : nsresult
      81           0 : ImageWrapper::OnImageDataComplete(nsIRequest* aRequest,
      82             :                                   nsISupports* aContext,
      83             :                                   nsresult aStatus,
      84             :                                   bool aLastPart)
      85             : {
      86           0 :   return mInnerImage->OnImageDataComplete(aRequest, aContext, aStatus,
      87           0 :                                           aLastPart);
      88             : }
      89             : 
      90             : void
      91           0 : ImageWrapper::OnSurfaceDiscarded(const SurfaceKey& aSurfaceKey)
      92             : {
      93           0 :   return mInnerImage->OnSurfaceDiscarded(aSurfaceKey);
      94             : }
      95             : 
      96             : void
      97           0 : ImageWrapper::SetInnerWindowID(uint64_t aInnerWindowId)
      98             : {
      99           0 :   mInnerImage->SetInnerWindowID(aInnerWindowId);
     100           0 : }
     101             : 
     102             : uint64_t
     103           0 : ImageWrapper::InnerWindowID() const
     104             : {
     105           0 :   return mInnerImage->InnerWindowID();
     106             : }
     107             : 
     108             : bool
     109           0 : ImageWrapper::HasError()
     110             : {
     111           0 :   return mInnerImage->HasError();
     112             : }
     113             : 
     114             : void
     115           0 : ImageWrapper::SetHasError()
     116             : {
     117           0 :   mInnerImage->SetHasError();
     118           0 : }
     119             : 
     120             : ImageURL*
     121           0 : ImageWrapper::GetURI()
     122             : {
     123           0 :   return mInnerImage->GetURI();
     124             : }
     125             : 
     126             : // Methods inherited from XPCOM interfaces.
     127             : 
     128         448 : NS_IMPL_ISUPPORTS(ImageWrapper, imgIContainer)
     129             : 
     130             : NS_IMETHODIMP
     131           0 : ImageWrapper::GetWidth(int32_t* aWidth)
     132             : {
     133           0 :   return mInnerImage->GetWidth(aWidth);
     134             : }
     135             : 
     136             : NS_IMETHODIMP
     137           0 : ImageWrapper::GetHeight(int32_t* aHeight)
     138             : {
     139           0 :   return mInnerImage->GetHeight(aHeight);
     140             : }
     141             : 
     142             : nsresult
     143           0 : ImageWrapper::GetNativeSizes(nsTArray<IntSize>& aNativeSizes) const
     144             : {
     145           0 :   return mInnerImage->GetNativeSizes(aNativeSizes);
     146             : }
     147             : 
     148             : NS_IMETHODIMP
     149           0 : ImageWrapper::GetIntrinsicSize(nsSize* aSize)
     150             : {
     151           0 :   return mInnerImage->GetIntrinsicSize(aSize);
     152             : }
     153             : 
     154             : NS_IMETHODIMP
     155           0 : ImageWrapper::GetIntrinsicRatio(nsSize* aSize)
     156             : {
     157           0 :   return mInnerImage->GetIntrinsicRatio(aSize);
     158             : }
     159             : 
     160             : NS_IMETHODIMP_(Orientation)
     161           0 : ImageWrapper::GetOrientation()
     162             : {
     163           0 :   return mInnerImage->GetOrientation();
     164             : }
     165             : 
     166             : NS_IMETHODIMP
     167          24 : ImageWrapper::GetType(uint16_t* aType)
     168             : {
     169          24 :   return mInnerImage->GetType(aType);
     170             : }
     171             : 
     172             : NS_IMETHODIMP
     173           0 : ImageWrapper::GetAnimated(bool* aAnimated)
     174             : {
     175           0 :   return mInnerImage->GetAnimated(aAnimated);
     176             : }
     177             : 
     178             : NS_IMETHODIMP_(already_AddRefed<SourceSurface>)
     179           0 : ImageWrapper::GetFrame(uint32_t aWhichFrame,
     180             :                        uint32_t aFlags)
     181             : {
     182           0 :   return mInnerImage->GetFrame(aWhichFrame, aFlags);
     183             : }
     184             : 
     185             : NS_IMETHODIMP_(already_AddRefed<SourceSurface>)
     186           0 : ImageWrapper::GetFrameAtSize(const IntSize& aSize,
     187             :                              uint32_t aWhichFrame,
     188             :                              uint32_t aFlags)
     189             : {
     190           0 :   return mInnerImage->GetFrameAtSize(aSize, aWhichFrame, aFlags);
     191             : }
     192             : 
     193             : NS_IMETHODIMP_(bool)
     194           0 : ImageWrapper::WillDrawOpaqueNow()
     195             : {
     196           0 :   return mInnerImage->WillDrawOpaqueNow();
     197             : }
     198             : 
     199             : NS_IMETHODIMP_(bool)
     200           0 : ImageWrapper::IsImageContainerAvailable(LayerManager* aManager, uint32_t aFlags)
     201             : {
     202           0 :   return mInnerImage->IsImageContainerAvailable(aManager, aFlags);
     203             : }
     204             : 
     205             : NS_IMETHODIMP_(already_AddRefed<ImageContainer>)
     206           0 : ImageWrapper::GetImageContainer(LayerManager* aManager, uint32_t aFlags)
     207             : {
     208           0 :   return mInnerImage->GetImageContainer(aManager, aFlags);
     209             : }
     210             : 
     211             : NS_IMETHODIMP_(DrawResult)
     212           0 : ImageWrapper::Draw(gfxContext* aContext,
     213             :                    const nsIntSize& aSize,
     214             :                    const ImageRegion& aRegion,
     215             :                    uint32_t aWhichFrame,
     216             :                    SamplingFilter aSamplingFilter,
     217             :                    const Maybe<SVGImageContext>& aSVGContext,
     218             :                    uint32_t aFlags,
     219             :                    float aOpacity)
     220             : {
     221           0 :   return mInnerImage->Draw(aContext, aSize, aRegion, aWhichFrame,
     222           0 :                            aSamplingFilter, aSVGContext, aFlags, aOpacity);
     223             : }
     224             : 
     225             : NS_IMETHODIMP
     226           0 : ImageWrapper::StartDecoding(uint32_t aFlags)
     227             : {
     228           0 :   return mInnerImage->StartDecoding(aFlags);
     229             : }
     230             : 
     231             : bool
     232           0 : ImageWrapper::StartDecodingWithResult(uint32_t aFlags)
     233             : {
     234           0 :   return mInnerImage->StartDecodingWithResult(aFlags);
     235             : }
     236             : 
     237             : NS_IMETHODIMP
     238           0 : ImageWrapper::RequestDecodeForSize(const nsIntSize& aSize, uint32_t aFlags)
     239             : {
     240           0 :   return mInnerImage->RequestDecodeForSize(aSize, aFlags);
     241             : }
     242             : 
     243             : NS_IMETHODIMP
     244           0 : ImageWrapper::LockImage()
     245             : {
     246           0 :   MOZ_ASSERT(NS_IsMainThread(),
     247             :              "Main thread to encourage serialization with UnlockImage");
     248           0 :   return mInnerImage->LockImage();
     249             : }
     250             : 
     251             : NS_IMETHODIMP
     252           0 : ImageWrapper::UnlockImage()
     253             : {
     254           0 :   MOZ_ASSERT(NS_IsMainThread(),
     255             :              "Main thread to encourage serialization with LockImage");
     256           0 :   return mInnerImage->UnlockImage();
     257             : }
     258             : 
     259             : NS_IMETHODIMP
     260           0 : ImageWrapper::RequestDiscard()
     261             : {
     262           0 :   return mInnerImage->RequestDiscard();
     263             : }
     264             : 
     265             : NS_IMETHODIMP_(void)
     266           0 : ImageWrapper::RequestRefresh(const TimeStamp& aTime)
     267             : {
     268           0 :   return mInnerImage->RequestRefresh(aTime);
     269             : }
     270             : 
     271             : NS_IMETHODIMP
     272           0 : ImageWrapper::GetAnimationMode(uint16_t* aAnimationMode)
     273             : {
     274           0 :   return mInnerImage->GetAnimationMode(aAnimationMode);
     275             : }
     276             : 
     277             : NS_IMETHODIMP
     278           0 : ImageWrapper::SetAnimationMode(uint16_t aAnimationMode)
     279             : {
     280           0 :   return mInnerImage->SetAnimationMode(aAnimationMode);
     281             : }
     282             : 
     283             : NS_IMETHODIMP
     284           0 : ImageWrapper::ResetAnimation()
     285             : {
     286           0 :   return mInnerImage->ResetAnimation();
     287             : }
     288             : 
     289             : NS_IMETHODIMP_(float)
     290           0 : ImageWrapper::GetFrameIndex(uint32_t aWhichFrame)
     291             : {
     292           0 :   return mInnerImage->GetFrameIndex(aWhichFrame);
     293             : }
     294             : 
     295             : NS_IMETHODIMP_(int32_t)
     296           0 : ImageWrapper::GetFirstFrameDelay()
     297             : {
     298           0 :   return mInnerImage->GetFirstFrameDelay();
     299             : }
     300             : 
     301             : NS_IMETHODIMP_(void)
     302           0 : ImageWrapper::SetAnimationStartTime(const TimeStamp& aTime)
     303             : {
     304           0 :   mInnerImage->SetAnimationStartTime(aTime);
     305           0 : }
     306             : 
     307             : void
     308           0 : ImageWrapper::PropagateUseCounters(nsIDocument* aParentDocument)
     309             : {
     310           0 :   mInnerImage->PropagateUseCounters(aParentDocument);
     311           0 : }
     312             : 
     313             : nsIntSize
     314           0 : ImageWrapper::OptimalImageSizeForDest(const gfxSize& aDest,
     315             :                                       uint32_t aWhichFrame,
     316             :                                       SamplingFilter aSamplingFilter,
     317             :                                       uint32_t aFlags)
     318             : {
     319           0 :   return mInnerImage->OptimalImageSizeForDest(aDest, aWhichFrame,
     320           0 :                                               aSamplingFilter, aFlags);
     321             : }
     322             : 
     323             : NS_IMETHODIMP_(nsIntRect)
     324           0 : ImageWrapper::GetImageSpaceInvalidationRect(const nsIntRect& aRect)
     325             : {
     326           0 :   return mInnerImage->GetImageSpaceInvalidationRect(aRect);
     327             : }
     328             : 
     329             : already_AddRefed<imgIContainer>
     330           0 : ImageWrapper::Unwrap()
     331             : {
     332           0 :   return mInnerImage->Unwrap();
     333             : }
     334             : 
     335             : } // namespace image
     336           9 : } // namespace mozilla

Generated by: LCOV version 1.13