• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2022 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "image_packer.h"
17 #include "mock_image_related_class.h"
18 #include "securec.h"
19 
20 namespace {
21 const uint8_t COUNT = 64;
22 uint32_t g_mockImagePackerGetSupportedFormatsRet = 0;
23 const uint8_t *g_mockImagePackerStartPackingRet = nullptr;
24 uint32_t g_mockImagePackerFinalizePackingRet = 16;
25 }
26 
MockImagePackerGetSupportedFormats(uint32_t mockRet)27 void MockImagePackerGetSupportedFormats(uint32_t mockRet)
28 {
29     g_mockImagePackerGetSupportedFormatsRet = mockRet;
30 }
31 
MockImagePackerStartPacking(const uint8_t * mockRet)32 void MockImagePackerStartPacking(const uint8_t *mockRet)
33 {
34     g_mockImagePackerStartPackingRet = mockRet;
35 }
36 
MockImagePackerFinalizePacking(uint32_t mockRet)37 void MockImagePackerFinalizePacking(uint32_t mockRet)
38 {
39     g_mockImagePackerFinalizePackingRet = mockRet;
40 }
41 
MockResetImagePackerState()42 void MockResetImagePackerState()
43 {
44     g_mockImagePackerGetSupportedFormatsRet = 0;
45     g_mockImagePackerStartPackingRet = nullptr;
46     g_mockImagePackerFinalizePackingRet = 16; // 16 :initial test result
47 }
48 
49 namespace OHOS {
50 namespace Media {
51 using namespace ImagePlugin;
52 using namespace MultimediaPlugin;
53 
GetSupportedFormats(std::set<std::string> & formats)54 uint32_t ImagePacker::GetSupportedFormats(std::set<std::string> &formats)
55 {
56     return g_mockImagePackerGetSupportedFormatsRet;
57 }
58 
StartPackingImpl(const PackOption & option)59 uint32_t ImagePacker::StartPackingImpl(const PackOption &option)
60 {
61     return 0;
62 }
63 
StartPacking(uint8_t * outputData,uint32_t maxSize,const PackOption & option)64 uint32_t ImagePacker::StartPacking(uint8_t *outputData, uint32_t maxSize, const PackOption &option)
65 {
66     memcpy_s(outputData, COUNT, g_mockImagePackerStartPackingRet, COUNT);
67     return 0;
68 }
69 
StartPacking(const std::string & filePath,const PackOption & option)70 uint32_t ImagePacker::StartPacking(const std::string &filePath, const PackOption &option)
71 {
72     return 0;
73 }
74 
StartPacking(const int & fd,const PackOption & option)75 uint32_t ImagePacker::StartPacking(const int &fd, const PackOption &option)
76 {
77     return 0;
78 }
79 
StartPacking(std::ostream & outputStream,const PackOption & option)80 uint32_t ImagePacker::StartPacking(std::ostream &outputStream, const PackOption &option)
81 {
82     return 0;
83 }
84 
StartPackingAdapter(PackerStream & outputStream,const PackOption & option)85 uint32_t ImagePacker::StartPackingAdapter(PackerStream &outputStream, const PackOption &option)
86 {
87     return 0;
88 }
89 
AddImage(PixelMap & pixelMap)90 uint32_t ImagePacker::AddImage(PixelMap &pixelMap)
91 {
92     return 0;
93 }
94 
AddImage(ImageSource & source)95 uint32_t ImagePacker::AddImage(ImageSource &source)
96 {
97     return 0;
98 }
99 
AddImage(ImageSource & source,uint32_t index)100 uint32_t ImagePacker::AddImage(ImageSource &source, uint32_t index)
101 {
102     return 0;
103 }
104 
FinalizePacking()105 uint32_t ImagePacker::FinalizePacking()
106 {
107     return 0;
108 }
109 
FinalizePacking(int64_t & packedSize)110 uint32_t ImagePacker::FinalizePacking(int64_t &packedSize)
111 {
112     packedSize = g_mockImagePackerFinalizePackingRet;
113     return 0;
114 }
115 
GetEncoderPlugin(const PackOption & option)116 bool ImagePacker::GetEncoderPlugin(const PackOption &option)
117 {
118     return true;
119 }
120 
CopyOptionsToPlugin(const PackOption & opts,PlEncodeOptions & plOpts)121 void ImagePacker::CopyOptionsToPlugin(const PackOption &opts, PlEncodeOptions &plOpts)
122 {}
123 
FreeOldPackerStream()124 void ImagePacker::FreeOldPackerStream()
125 {}
126 
IsPackOptionValid(const PackOption & option)127 bool ImagePacker::IsPackOptionValid(const PackOption &option)
128 {
129     return true;
130 }
131 
132 // class reference need explicit constructor and destructor, otherwise unique_ptr<T> use unnormal
ImagePacker()133 ImagePacker::ImagePacker()
134 {}
135 
~ImagePacker()136 ImagePacker::~ImagePacker()
137 {}
138 } // namespace Media
139 } // namespace OHOS
140