da62c9cb8e1afd016626fc222e19e7f67c3d69ea
[platform/core/uifw/dali-adaptor.git] / dali / internal / system / common / file-writer.h
1 #ifndef DALI_INTERNAL_PORTABLE_FILE_WRITER_H
2 #define DALI_INTERNAL_PORTABLE_FILE_WRITER_H
3
4 /*
5  * Copyright (c) 2017 Samsung Electronics Co., Ltd.
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  */
19
20 // INTERNAL INCLUDES
21 #include <dali/internal/system/common/file-closer.h>
22
23 // EXTERNAL INCLUDES
24
25 namespace Dali
26 {
27 namespace Internal
28 {
29 namespace Platform
30 {
31
32 class FileWriter : public FileCloser
33 {
34 public:
35   /**
36    * Opens a file pointer onto the memory for writing to.
37    * Note, in some implementations, the vector may be resized to be larger than dataSize.
38    * @param[in,out] vector The vector to write to
39    * @param[in] dataSize the amount of data to be written
40    */
41   FileWriter( Dali::Vector<uint8_t>& vector, size_t dataSize )
42   : FileCloser( vector, dataSize, "wb" )
43   {
44   }
45 };
46
47 } /* namespace Platform */
48 } /* namespace Internal */
49 } /* namespace Dali */
50
51 #endif // DALI_INTERNAL_PORTABLE_FILE_WRITER_H