summaryrefslogtreecommitdiffstats
path: root/libvideoeditor/osal/inc/M4OSA_FileReader.h
diff options
context:
space:
mode:
Diffstat (limited to 'libvideoeditor/osal/inc/M4OSA_FileReader.h')
-rwxr-xr-xlibvideoeditor/osal/inc/M4OSA_FileReader.h132
1 files changed, 132 insertions, 0 deletions
diff --git a/libvideoeditor/osal/inc/M4OSA_FileReader.h b/libvideoeditor/osal/inc/M4OSA_FileReader.h
new file mode 100755
index 0000000..f0c75ff
--- /dev/null
+++ b/libvideoeditor/osal/inc/M4OSA_FileReader.h
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 2004-2011 NXP Software
+ * Copyright (C) 2011 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ ************************************************************************
+ * @file M4OSA_FileReader.h
+ * @ingroup OSAL
+ * @brief File reader
+ * @note This file declares functions and types to read a file.
+ ************************************************************************
+*/
+
+
+#ifndef M4OSA_FILEREADER_H
+#define M4OSA_FILEREADER_H
+
+
+#include "M4OSA_Types.h"
+#include "M4OSA_Error.h"
+#include "M4OSA_FileCommon.h"
+#include "M4OSA_Memory.h"
+
+
+
+/** This enum defines the option ID to be used in M4OSA_FileReadGetOption()
+ and M4OSA_FileReadSetOption()*/
+typedef enum M4OSA_FileReadOptionID
+{
+ /** Get the file size (M4OSA_fpos*)*/
+ M4OSA_kFileReadGetFileSize
+ = M4OSA_OPTION_ID_CREATE(M4_READ, M4OSA_FILE_READER, 0x01),
+
+ /** Get the file attributes (M4OSA_FileAttribute*)*/
+ M4OSA_kFileReadGetFileAttribute
+ = M4OSA_OPTION_ID_CREATE(M4_READ, M4OSA_FILE_READER, 0x02),
+
+ /** Get the file URL, provided by the M4OSA_FileReadOpen (M4OSA_Char*)*/
+ M4OSA_kFileReadGetURL
+ = M4OSA_OPTION_ID_CREATE(M4_READ, M4OSA_FILE_READER, 0x03),
+
+ /** Get the file position (M4OSA_fpos*)*/
+ M4OSA_kFileReadGetFilePosition
+ = M4OSA_OPTION_ID_CREATE(M4_READ, M4OSA_FILE_READER, 0x04),
+
+ /** Check end of file: TRUE if the EOF has been reached, FALSE else
+ (M4OSA_Bool*)*/
+ M4OSA_kFileReadIsEOF
+ = M4OSA_OPTION_ID_CREATE(M4_READ, M4OSA_FILE_READER, 0x05),
+
+ /** Check lock of file */
+ M4OSA_kFileReadLockMode
+ = M4OSA_OPTION_ID_CREATE(M4_READWRITE, M4OSA_FILE_READER, 0x06)
+
+} M4OSA_FileReadOptionID;
+
+
+
+
+
+/** This structure stores the set of the function pointer to access to a
+ file in read mode*/
+typedef struct
+{
+ M4OSA_ERR (*openRead) (M4OSA_Context* context,
+ M4OSA_Void* fileDescriptor,
+ M4OSA_UInt32 fileModeAccess);
+
+ M4OSA_ERR (*readData) (M4OSA_Context context,
+ M4OSA_MemAddr8 buffer,
+ M4OSA_UInt32* size);
+
+ M4OSA_ERR (*seek) (M4OSA_Context context,
+ M4OSA_FileSeekAccessMode seekMode,
+ M4OSA_FilePosition* position);
+
+ M4OSA_ERR (*closeRead) (M4OSA_Context context);
+
+ M4OSA_ERR (*setOption) (M4OSA_Context context,
+ M4OSA_FileReadOptionID optionID,
+ M4OSA_DataOption optionValue);
+
+ M4OSA_ERR (*getOption) (M4OSA_Context context,
+ M4OSA_FileReadOptionID optionID,
+ M4OSA_DataOption *optionValue);
+} M4OSA_FileReadPointer;
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+M4OSAL_FILE_EXPORT_TYPE M4OSA_ERR M4OSA_fileReadOpen (M4OSA_Context* context,
+ M4OSA_Void* fileDescriptor,
+ M4OSA_UInt32 fileModeAccess);
+
+M4OSAL_FILE_EXPORT_TYPE M4OSA_ERR M4OSA_fileReadData (M4OSA_Context context,
+ M4OSA_MemAddr8 buffer,
+ M4OSA_UInt32* size);
+
+M4OSAL_FILE_EXPORT_TYPE M4OSA_ERR M4OSA_fileReadSeek (M4OSA_Context context,
+ M4OSA_FileSeekAccessMode seekMode,
+ M4OSA_FilePosition* position);
+
+M4OSAL_FILE_EXPORT_TYPE M4OSA_ERR M4OSA_fileReadClose (M4OSA_Context context);
+
+M4OSAL_FILE_EXPORT_TYPE M4OSA_ERR M4OSA_fileReadGetOption (M4OSA_Context context,
+ M4OSA_FileReadOptionID optionID,
+ M4OSA_DataOption *optionValue);
+
+M4OSAL_FILE_EXPORT_TYPE M4OSA_ERR M4OSA_fileReadSetOption (M4OSA_Context context,
+ M4OSA_FileReadOptionID optionID,
+ M4OSA_DataOption optionValue);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*M4OSA_FILEREADER_H*/
+