Updated all cpp files to new format
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / visuals / animated-image / image-cache.cpp
1 /*
2  * Copyright (c) 2021 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #include "image-cache.h"
18
19 namespace Dali
20 {
21 namespace Toolkit
22 {
23 namespace Internal
24 {
25 ImageCache::ImageCache(TextureManager&                 textureManager,
26                        ImageCache::FrameReadyObserver& observer,
27                        unsigned int                    batchSize)
28 : mTextureManager(textureManager),
29   mObserver(observer),
30   mBatchSize(batchSize),
31   mUrlIndex(0u),
32   mWaitingForReadyFrame(false),
33   mRequestingLoad(false),
34   mTextureManagerAlive(true)
35 {
36   mTextureManager.AddObserver(*this);
37 }
38
39 ImageCache::~ImageCache()
40 {
41   if(mTextureManagerAlive)
42   {
43     mTextureManager.RemoveObserver(*this);
44   }
45 }
46
47 void ImageCache::TextureManagerDestroyed()
48 {
49   mTextureManagerAlive = false;
50 }
51
52 } //namespace Internal
53 } //namespace Toolkit
54 } //namespace Dali