10e98b08fSopenharmony_ci/*
20e98b08fSopenharmony_ci * Copyright (c) 2020 Huawei Device Co., Ltd.
30e98b08fSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
40e98b08fSopenharmony_ci * you may not use this file except in compliance with the License.
50e98b08fSopenharmony_ci * You may obtain a copy of the License at
60e98b08fSopenharmony_ci *
70e98b08fSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
80e98b08fSopenharmony_ci *
90e98b08fSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
100e98b08fSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
110e98b08fSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
120e98b08fSopenharmony_ci * See the License for the specific language governing permissions and
130e98b08fSopenharmony_ci * limitations under the License.
140e98b08fSopenharmony_ci */
150e98b08fSopenharmony_ci
160e98b08fSopenharmony_ci#ifndef HAL_FILE_SYSTEM_API_H
170e98b08fSopenharmony_ci#define HAL_FILE_SYSTEM_API_H
180e98b08fSopenharmony_ci
190e98b08fSopenharmony_ci#ifdef __cplusplus
200e98b08fSopenharmony_ci#if __cplusplus
210e98b08fSopenharmony_ciextern "C" {
220e98b08fSopenharmony_ci#endif
230e98b08fSopenharmony_ci#endif /* __cplusplus */
240e98b08fSopenharmony_ci
250e98b08fSopenharmony_ciint HalFileOpen(const char* path, int oflag, int mode);
260e98b08fSopenharmony_ci
270e98b08fSopenharmony_ciint HalFileClose(int fd);
280e98b08fSopenharmony_ci
290e98b08fSopenharmony_ciint HalFileRead(int fd, char* buf, unsigned int len);
300e98b08fSopenharmony_ci
310e98b08fSopenharmony_ciint HalFileWrite(int fd, const char* buf, unsigned int len);
320e98b08fSopenharmony_ci
330e98b08fSopenharmony_ciint HalFileDelete(const char* path);
340e98b08fSopenharmony_ci
350e98b08fSopenharmony_ciint HalFileStat(const char* path, unsigned int* fileSize);
360e98b08fSopenharmony_ci
370e98b08fSopenharmony_ciint HalFileSeek(int fd, int offset, unsigned int whence);
380e98b08fSopenharmony_ci
390e98b08fSopenharmony_ci#ifdef __cplusplus
400e98b08fSopenharmony_ci#if __cplusplus
410e98b08fSopenharmony_ci}
420e98b08fSopenharmony_ci#endif
430e98b08fSopenharmony_ci#endif /* __cplusplus */
440e98b08fSopenharmony_ci
450e98b08fSopenharmony_ci#endif  // HAL_FILE_SYSTEM_API_H