📄 fssmsg.het
字号:
/*S**************************************************************************** ........................................................................ COPYRIGHT (c) Philips Semiconductors Nuremberg 2003 .. All rights are reserved. Reproduction in whole or in part is .. prohibited without the written consent of the copyright owner. . ......................................................................... File name : FssMsg.het.. Project : SSYOL3 WAP/MMS.. Module : OSFS.. %version: 1.1.1 %.. Compiler name and release:...............:........:..........:............:........................... *----------------------------------------------------------------------------* * DESCRIPTION * * This file contains externally used type declarations for FSS message * interface. *----------------------------------------------------------------------------* *----------------------------------------------------------------------------* * FUNCTIONS DEFINED IN THIS FILE *----------------------------------------------------------------------------* * Name | Object *----------------------------------------------------------------------------* * * *----------------------------------------------------------------------------* *----------------------------------------------------------------------------* * EVOLUTION *----------------------------------------------------------------------------* * Date | Author | Description *----------------------------------------------------------------------------* * 27.03.03 | tcmc_sgp | File header is added * 02.05.03 | tcmc_sgp | Structure for Read_write_ready_ind and a * | field in write/read msg structure added****************************************************************************E*/#ifndef FSSMSG_HET#define FSSMSG_HET/*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*//* *//* Structures due to message communication with applications *//* *//*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*//****************************************//* *//* Message header *//* *//****************************************/typedef struct st_FssMsgHeader { t_MsgHeader s_KernelMsgHeader; u32 v_CommandID ; /* Application command number */ s32 v_ErrNumber; /* Status for CNF or ERR msg for answer */ u8 v_Priority; /* Priority usefull for thread management */ u8 v_Behavior; /* If an answer is to send ( not used for some msgs ) */ MC_PCC_FILL_STRUCT2 } t_FssMsgHeader;/************************************************************************//* *//* Messages received from processes and send back as answer *//* *//************************************************************************//* Structure of message for fopen command *//*----------------------------------------*/typedef struct st_FssCmdFOpen { t_FssMsgHeader s_FssMsgHeader; const fssPath * p_FileName; /* Name of file to open */ const ascii * p_Mode; /* Open mode */ s32 v_MaxFileSize; /* Max size of the file */ t_fssFILE * p_Stream; /* File pointer ( for CNF msg only ) */ } t_FssCmdFOpen;/* Structure of message for fclose command *//*-----------------------------------------*/typedef struct st_FssCmdFClose { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer of closed file */ } t_FssCmdFClose;/* Structure of message for remove command *//*-----------------------------------------*/typedef struct st_FssCmdRemove { t_FssMsgHeader s_FssMsgHeader; const fssPath * p_FileName; /* Name of file to open */ } t_FssCmdRemove;/* Structure of message for rename command *//*-----------------------------------------*/typedef struct st_FssCmdRename { t_FssMsgHeader s_FssMsgHeader; const fssPath * p_OldName; /* Old file name*/ const fssPath * p_NewName; /* New file name*/ } t_FssCmdRename;/* Structure of message for SetVBuff command *//*-------------------------------------------*/typedef struct st_FssCmdSetVBuff { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer of concerned file */ ascii * p_Buff; /* Pointer on IO buffer */ s32 v_BuffMode; /* Mode of IO buffer */ t_fss_size_t v_Size; /* Size of the buffer */ } t_FssCmdSetVBuff;/* Structure of message for ftell command *//*----------------------------------------*/typedef struct st_FssCmdFTell { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ s32 v_StreamPosition; /* Position in the stream ( for CNF only ) */ } t_FssCmdFTell;/* Structure of message for fseek command *//*----------------------------------------*/typedef struct st_FssCmdFSeek { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ s32 v_Offset; /* Offset in file */ s32 v_Whence; /* Whence ( mode of indexation ) */ } t_FssCmdFSeek;/* Structure of message for rewind command *//*-----------------------------------------*/typedef struct st_FssCmdRewind { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ } t_FssCmdRewind;/* Structure of message for stat command *//*---------------------------------------*/typedef struct st_FssCmdStat { t_FssMsgHeader s_FssMsgHeader; const fssPath * p_Path; /* Path of file */ t_fss_stat * p_FileInfo; /* pointer on info of the file ( for CNF only ) */ } t_FssCmdStat;/* Structure of message for feof command *//*---------------------------------------*/typedef struct st_FssCmdFeof { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ s32 v_EndOfFileFlag; /* State of end of file flag ( for CNF only ) */ } t_FssCmdFeof;/* Structure of message for fwrite command *//*-----------------------------------------*/typedef struct st_FssCmdFWrite { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ const void * p_SrceBuff; /* Pointer on source buffer */ t_fss_size_t v_ElementSize; /* Size of the structure of the element */ t_fss_size_t v_NumberOfElements; /* Number of elements to write */ t_fss_size_t v_NumbOfElementsWritten;/* Number of elements writen ( for CNF message ) */#ifdef SYNCHRONOUS_FILE_SYSTEM_FTR u8 v_NoDelayFlag; /* Indicates whether delay due to erase operation is accepted */ MC_PCC_FILL_STRUCT3#endif } t_FssCmdFWrite;/* Structure of message for fread command *//*----------------------------------------*/typedef struct st_FssCmdFRead { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ void * p_DestBuff; /* Pointer on dest buffer */ t_fss_size_t v_ElementSize; /* Size of the structure of the element */ t_fss_size_t v_NumberOfElements; /* Number of elements to read */ t_fss_size_t v_NumbOfElementsRead; /* Number of elements read ( for CNF message ) */#ifdef SYNCHRONOUS_FILE_SYSTEM_FTR u8 v_NoDelayFlag; /* Indicates whether delay due to erase operation is accepted */ MC_PCC_FILL_STRUCT3#endif } t_FssCmdFRead;/* Structure of message for fgets command *//*----------------------------------------*/typedef struct st_FssCmdFGets { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ const ascii * p_Buff; /* Pointer on dest buffer */ s32 v_NumberOfChar; /* Number of characters to read */ } t_FssCmdFGets;/* Structure of message for fputs command *//*----------------------------------------*/typedef struct st_FssCmdFPuts { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ const ascii * p_Buff; /* Pointer on source buffer */ } t_FssCmdFPuts;/* Structure of message for fgetc command *//*----------------------------------------*/typedef struct st_FssCmdFGetc { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ s32 v_Char; /* Character getted ( for CNF message only ) */ } t_FssCmdFGetc;/* Structure of message for fputc command *//*----------------------------------------*/typedef struct st_FssCmdFPutc { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ s32 v_Char; /* Character putted */ } t_FssCmdFPutc;/* Structure of message for ferror command *//*-----------------------------------------*/typedef struct st_FssCmdFError { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ s32 v_ErrorFlag; /* Error indicator ( for CNF message only ) */ } t_FssCmdFError;/* Structure of message for clearerror command *//*---------------------------------------------*/typedef struct st_FssCmdClearError { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ } t_FssCmdClearError;/* Structure of message for flush command *//*----------------------------------------*/typedef struct st_FssCmdFFlush { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file */ } t_FssCmdFFlush;/* Structure of message for get volume info command *//*--------------------------------------------------*/typedef struct st_FssCmdGetVolInfo { t_FssMsgHeader s_FssMsgHeader; const fssVolName * p_VolName; /* Name of the volume which info is requested */ t_fssVolInfo * p_VolumeInfo; /* Requested information about volume ( for CNF message only ) */ } t_FssCmdGetVolInfo;/* Structure of message for mkdir command *//*----------------------------------------*/typedef struct st_FssCmdMkDir { t_FssMsgHeader s_FssMsgHeader; const fssPath * p_Path; /* path of directory */ t_fss_mod_t v_Mode; /* Creation mode */ } t_FssCmdMkDir;/* Structure of message for rmdir command *//*----------------------------------------*/typedef struct st_FssCmdRmDir { t_FssMsgHeader s_FssMsgHeader; const fssPath * p_Path; /* path of directory */ } t_FssCmdRmDir;/* Structure of message for chdir command *//*----------------------------------------*/typedef struct st_FssCmdChDir { t_FssMsgHeader s_FssMsgHeader; const fssPath * p_Path; /* Path of directory */ } t_FssCmdChDir;/* Structure of message for getcwd command *//*-----------------------------------------*/typedef struct st_FssCmdGetCwd { t_FssMsgHeader s_FssMsgHeader; fssPath * p_Buff; /* Buffer dest of path */ t_fss_size_t v_Size; /* Size of buff */ } t_FssCmdGetCwd;/* Structure of message for opendir command *//*------------------------------------------*/typedef struct st_FssCmdOpenDir { t_FssMsgHeader s_FssMsgHeader; const fssPath * p_DirName; /* Path of directory */ t_fssDIR * p_DirPtr; /* Pointer on directory structure */ } t_FssCmdOpenDir;/* Structure of message for closedir command *//*-------------------------------------------*/typedef struct st_FssCmdCloseDir { t_FssMsgHeader s_FssMsgHeader; t_fssDIR * p_DirPtr; } t_FssCmdCloseDir;/* Structure of message for readdir command *//*------------------------------------------*/typedef struct st_FssCmdReadDir { t_FssMsgHeader s_FssMsgHeader; t_fssDIR * p_DirPtr; t_fss_dirent * p_DirectoryEntry; t_fss_dirent s_DirectoryEntry; } t_FssCmdReadDir;/* Structure of message for rewinddir command *//*--------------------------------------------*/typedef struct st_FssCmdRewindDir { t_FssMsgHeader s_FssMsgHeader; t_fssDIR * p_DirPtr; } t_FssCmdRewindDir;/* Structure of message for get file addr command *//*-----------------------------------------------*/typedef struct st_FssCmdGetFileAddr { t_FssMsgHeader s_FssMsgHeader; const fssPath * p_FileName; /* Name of file which address is got */ t_fssFileAddr * p_FileAddr; /* Pointer on structure which contains file addresses */ } t_FssCmdGetFileAddr;/* Structure of message for get files addr of directory command *//*--------------------------------------------------------------*/typedef struct st_FssCmdGetFilesAddrOfDir { t_FssMsgHeader s_FssMsgHeader; t_fssDIR * p_DirPtr; /* Directory pointer for which files addr are to get */ s32 v_NumbFilesToGet; /* Number of files for which addr is got */ t_fssFileAddr * p_FileAddr; /* Addr of buffer destination of files addresses */ u32 v_BufferSize; /* Size of buffer destination of addresses */ s32 v_NumbOfFiles; /* Number of files which address is in buffer */ } t_FssCmdGetFilesAddrOfDir;/* Structure of message for set size command *//*--------------------------------------------------------------*/#ifdef SYNCHRONOUS_FILE_SYSTEM_FTRtypedef struct st_FssCmdSetSize { t_FssMsgHeader s_FssMsgHeader; t_fssFILE * p_Stream; /* File pointer on file to set size of */ s32 v_NewSize; /* New size of file after resize */ } t_FssCmdSetSize;/* Structure of message for Delay Ind *//*-----------------------------------------*/typedef struct st_FssDelayInd { t_MsgHeader s_FssMsgHeader; u8 v_EraseStatus; /* Status of the erase operation */ MC_PCC_FILL_STRUCT3 } t_FssDelayInd;#endif /* SYNCHRONOUS_FILE_SYSTEM_FTR */#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -