userlibandfileserver/fileserver/sfile/sf_std.h
branchRCL_3
changeset 43 c1f20ce4abcf
parent 42 a179b74831c9
child 44 3e88ff8f41d5
--- a/userlibandfileserver/fileserver/sfile/sf_std.h	Thu Aug 19 11:14:22 2010 +0300
+++ b/userlibandfileserver/fileserver/sfile/sf_std.h	Tue Aug 31 16:34:26 2010 +0300
@@ -34,7 +34,6 @@
 #include "sf_func.h"
 #include <f32plugin.h>
 #include "f32trace.h"
-#include <utraceefile.h>
 
 #define __PRINT1TEMP_ALWAYS(t,a) {{TBuf<KMaxFileName>temp(a);RDebug::Print(t,&temp);}}
 #define __PRINT2TEMP_ALWAYS(t,a,b) {{TBuf<KMaxFileName>temp(b);RDebug::Print(t,a,&temp);}}
@@ -244,8 +243,7 @@
 
 enum TFsPanic
 	{
-	ELdrImportedOrdinalDoesNotExist,
-	ELdrHeapCorruptionOnRemove
+	ELdrImportedOrdinalDoesNotExist	
 	};
 //
 enum TFsFault
@@ -453,7 +451,8 @@
 	ETraceLddLoadFailure,				//200
 	ETooManyDrivesPerSocket,
 	ENotificationFault,
-	EFsObjectOpen
+	EFsObjectOpen,
+	EContainerHeapCorruptionOnRemove
 	};
 
 
@@ -810,7 +809,7 @@
 NONSHARABLE_CLASS(CPluginThread) : public CRequestThread
 	{
 public:
-	CPluginThread(CFsPlugin& aPlugin);
+	CPluginThread(CFsPlugin& aPlugin, RLibrary aLibrary);
 	~CPluginThread();
 	
 	void CompleteSessionRequests(CSessionFs* aSession, TInt aValue);
@@ -822,7 +821,7 @@
 	void OperationLockSignal();
 
 private:
-	static CPluginThread* NewL(CFsPlugin& aPlugin);
+	static CPluginThread* NewL(CFsPlugin& aPlugin, RLibrary aLibrary);
 	TUint StartL();
 	virtual TInt DoThreadInitialise();
 private:
@@ -831,6 +830,7 @@
 	/** @prototype */
 	RSemaphore iOperationLock;
 
+	RLibrary iLib;	// contains a handle to the library	which created the plugin
 friend class FsPluginManager;
 	};
 
@@ -1716,7 +1716,6 @@
 extern HBufC* TheDriveNames[];
 extern TDrive TheDrives[KMaxDrives];
 extern TFileName TheDefaultPath;
-extern RFTrace TheFtrace;
 
 extern SCapabilitySet AllCapabilities;
 extern SCapabilitySet DisabledCapabilities;
@@ -1875,6 +1874,7 @@
 	TInt iFairSchedulingLen;
 	TBool iNotifyAsyncReadersPending;
 	TBool iDeleteOnClose;
+	TDblQue<CFileShare> iShareList;	// A list containing the CFileShare objects associated with the file
 
 protected:
 	TInt iPromotedShares;
@@ -1884,11 +1884,14 @@
 
     /** 
     maximum file size supported by the filesystem that instantiates the CFileCB, associated with this object.
-    For example, FAT32 supports files not larger than 4GB-1. Other file systems can support larger files. 
+    For example, FAT32 supports files not larger than 4GB-1. Other file systems can support larger files.
     This member allows file server to know maximum allowed position in the file.
     The default value is KMaxTUint64
     */
-    TUint64 iMaxSupportedFileSize; 
+    TUint64 iMaxSupportedFileSize;
+    
+    TInt iNonSequentialFileModes;	// Count of clients without the 'Sequential' mode enabled
+	TBool iSequential;				// Indicates whether the file is in 'Sequential' mode
 
 public:
 	// Provides support for large file size ( file size > 4GB - 1)
@@ -1958,7 +1961,6 @@
 	RLibrary iLibrary;
 	};
 
-
 #include "sf_ops.h"
 #include "sf_std.inl"