diff -r 5e441a173c63 -r 31ea0f8e3c99 userlibandfileserver/fileserver/inc/f32fsys.h --- a/userlibandfileserver/fileserver/inc/f32fsys.h Mon May 24 18:45:46 2010 +0100 +++ b/userlibandfileserver/fileserver/inc/f32fsys.h Thu Jun 10 11:48:01 2010 +0100 @@ -556,6 +556,10 @@ friend class LocalDrives; // for access to iChanged flag friend class CExtNotifyMediaChange; // for access to iChanged flag + +#if defined(_USE_CONTROLIO) || defined(_DEBUG) || defined(_DEBUG_RELEASE) + friend class TFsControlIo; // for access to LocateDrives() +#endif }; class CFileCB; @@ -1614,7 +1618,6 @@ TBool DeleteOnClose() const; - void SetNotifyAsyncReadersPending(TBool aNotifyAsyncReadersPending); TBool NotifyAsyncReadersPending() const; TInt CancelAsyncReadRequest(CFileShare* aShareP, TRequestStatus* aStatusP); @@ -1629,6 +1632,7 @@ IMPORT_C TInt64 Size64() const; IMPORT_C void SetSize64(TInt64 aSize, TBool aDriveLocked); IMPORT_C void SetMaxSupportedSize(TUint64 aMaxFileSize); + IMPORT_C TBool DirectIOMode(const RMessagePtr2& aMessage); TInt64 CachedSize64() const; @@ -1638,6 +1642,17 @@ TInt RemoveLock64(CFileShare* aFileShare,TInt64 aPos,TInt64 aLength); TInt CheckLock64(CFileShare* aFileShare,TInt64 aPos,TInt64 aLength); + /** Sequential mode */ + + IMPORT_C TBool IsSequentialMode() const; + void SetSequentialMode(TBool aSequential); + + /** + The FileShare List contains the file shares of an open file. + */ + TDblQue& FileShareList() const; + void AddShare(CFileShare& aFileShare); + /** Renames the file with the full file name provided. @@ -1954,12 +1969,12 @@ public: /** - The full name of the file, including drive and extensions. + The full name of the file, including its extension. */ HBufC* iFileName; /** - The full name of the file, including drive and extensions - Folded. + The full name of the file, including its extension - Folded. */ HBufC* iFileNameF; @@ -1968,11 +1983,9 @@ TDrive* iCreatedDrive; TDrive* iDrive; CMountCB* iMount; - TFileLocksArray* iFileLocks; ///< an array of file position locks + TFileLocksArray* iFileLocks; // An array of file position locks TDblQueLink iMountLink; - -private: - CFileBody* iBody; + CFileBody* iBody; friend class TDrive; friend class CMountCB; @@ -2025,7 +2038,7 @@ void InitL(); inline CFileCB& File(); - // For serialising aync requests + // For serialising async requests TBool RequestStart(CFsMessageRequest* aRequest); void RequestEnd(CFsMessageRequest* aRequest); TBool RequestInProgress() const; @@ -2050,8 +2063,13 @@ // A pointer to the current request. Used for serializing client // async read/write requests which might otherwise be processed out - // of order due to fair scheduling - CFsMessageRequest* iCurrentRequest; + // of order due to fair scheduling. + CFsMessageRequest* iCurrentRequest; + + // The FileShare List link object. + TDblQueLink iShareLink; + +friend class CFileBody; // For access to iShareLink };