2 * Copyright (c) 2015 Samsung Electronics Co., Ltd.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 #include "file-loader.h"
30 int ReadFile(const std::string& filename, Dali::Vector<char> & memblock, FileLoader::FileType fileType)
34 return ReadFile( filename, size, memblock, fileType);
37 int ReadFile(const std::string& filename, std::streampos& fileSize, Dali::Vector<char> & memblock, FileLoader::FileType fileType)
43 if( fileType == BINARY )
45 file = new std::ifstream (filename.c_str(), std::ios::in|std::ios::binary|std::ios::ate);
47 else if( fileType == TEXT )
49 file = new std::ifstream (filename.c_str(), std::ios::in|std::ios::ate);
58 fileSize = file->tellg();
60 memblock.Resize( fileSize );
62 file->seekg (0, std::ios::beg);
63 file->read( memblock.Begin(), fileSize );
75 std::streampos GetFileSize(const std::string& filename)
77 std::streampos size = 0;
79 std::ifstream file (filename.c_str(), std::ios::in|std::ios::binary|std::ios::ate);