1 #ifndef DALI_TOOLKIT_INTERNAL_BUILDER_FILESYSTEM_H
2 #define DALI_TOOLKIT_INTERNAL_BUILDER_FILESYSTEM_H
5 * Copyright (c) 2019 Samsung Electronics Co., Ltd.
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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.
30 #include <dali/devel-api/adaptor-framework/file-loader.h>
32 inline std::string ExpandPath(const std::string &name)
36 wordexp( name.c_str(), &p, 0 );
39 for (size_t i=0; i<p.we_wordc;i++ )
48 inline std::string ExePath(void)
51 ssize_t len = readlink("/proc/self/exe", buf, sizeof(buf) - 1);
52 len = len > 0 ? len : 0;
54 return std::string(buf);
57 inline std::string GetFileContents(const std::string &fn)
59 std::streampos bufferSize = 0;
60 Dali::Vector<char> fileBuffer;
61 if( !Dali::FileLoader::ReadFile( fn, bufferSize, fileBuffer, Dali::FileLoader::FileType::BINARY ) )
66 return std::string( &fileBuffer[0], bufferSize );
69 #endif // DALI_TOOLKIT_INTERNAL_BUILDER_FILESYSTEM_H