userlibandfileserver/fileserver/inc/f32fsys.inl
changeset 247 d8d70de2bd36
parent 0 a41df078684a
child 257 3e88ff8f41d5
child 273 6a75fa55495f
--- a/userlibandfileserver/fileserver/inc/f32fsys.inl	Tue Jul 06 15:50:07 2010 +0300
+++ b/userlibandfileserver/fileserver/inc/f32fsys.inl	Wed Aug 18 11:08:29 2010 +0300
@@ -270,53 +270,48 @@
 	__IS_DRIVETHREAD();
 	iDriveFlags |= ENotifyOff;
 	}
+
 /**
-
 Locks the drive.This function acquires iLock mutex.
-
 */
 inline void TDrive::Lock()
 	{iLock.Wait();}
+
 /**
-
 UnLocks the drive.This function signals the iLock mutex.
-
 */
-
 inline void TDrive::UnLock()
 	{iLock.Signal();}
 
 
 /**
-
-Gets the reserved space of a drive
-
 @return	Amount of space reserved in bytes.
-
 */
-
 inline TInt TDrive::ReservedSpace() const
-	{return iReservedSpace;}
+	{
+    return iReservedSpace;
+    }
 
 /**
-
-Reserves a space of a drive.
+    Reserves space on a drive. The amount of 'reserved space' is subtracted  
+    from the amount of available free space on the volume reported by file system, when the user 
+    queries it.
 
-@param	aReservedSpace	Amount of space to reserve in bytes.
-
+    @param	aReservedSpace	Amount of space to reserve in bytes.
 */
 inline void TDrive::SetReservedSpace(const TInt aReservedSpace)
-	{iReservedSpace=aReservedSpace; }
+	{
+    iReservedSpace=aReservedSpace; 
+    }
 
 /**
-
-Sets the rugged flag in the drive object.
+    Sets the 'rugged mode' flag in the drive object. The file system associated with this TDrive object 
+    can use this flag for changing its behaviour.
+    For example, FAT file system if this flag is set, operates in 'Rugged FAT' mode, when the performance is 
+    sacrificed for the sake of reliability. 
 
-@param Flag to set or clear the rugged flag.
-@see	IsRugged()
-
+    @param aIsRugged  the 'rugged mode' flag.
 */
-
 inline void TDrive::SetRugged(TBool aIsRugged)
 	{
 	if (!aIsRugged)
@@ -326,17 +321,13 @@
 	}
 
 /**
-
-Returns whether the current drive is running as rugged Fat
-or not.If IsRugged flag is set then in the event of power 
-failure fat/metadata will be in a valid state if the scandrive 
-utility is run immediately after.
-
-@return Is rugged fat flag.
+    @return 'Is rugged' flag.
+    See TDrive::SetRugged()
 */
-
 inline TBool TDrive::IsRugged() const
-	{return !(iDriveFlags & ENotRugged); }
+	{
+    return !(iDriveFlags & ENotRugged); 
+    }
 
 
 /**
@@ -451,64 +442,69 @@
 	{Drive().SetNotifyOff();}
 
 
+//---------------------------------------------------------------------------------------------------------------------------------
 
+/**
+
+    Increment mount's lock counter. This happens on following events:
+        - RemoveResource() call, when file (share) or directory is closed
+        - AddDiskAccess() call,  when disk access object (like Format or RawDisk access) is opened on the mount.
+
+    See also: CMountCB::LockStatus()   
+*/
+inline void CMountCB::IncLock()
+	{
+    iLockMount++;
+    }
+
+
+//---------------------------------------------------------------------------------------------------------------------------------
 
 /**
-Locks the mount by incrementing the internal lock counter.
+    Decrement mount's lock counter. This happens on following events:
+
+    AddResource()       call when file (share) or directory is opened on the mount 
+    RemoveDiskAccess()  call when disk access object (like Format or RawDisk access) is closed.
+
+    See also: CMountCB::LockStatus()   
+*/
+inline void CMountCB::DecLock()
+	{
+    iLockMount--;
+    }
 
-The mount becomes locked on formatting or on the opening of a resource
-(a file or a directory) or raw disk subsession.
-A format, resource or raw disk subsession can only be opened if the mount
-is not locked.
+//---------------------------------------------------------------------------------------------------------------------------------
+
+/**
+    @return value of the Mount's lock counter value.
+    
+    The meaning of 'iLockMount' is overloaded a bit, it's value is:
+        0   when there are no files, directories, formats and any other objects opened on the mount
+        >0  when there are disk access objects opened (raw disk access or format)
+        <0  when there are files or directories opened on the mount, and the value reflects their total number 
 */
-inline void CMountCB::IncLock()
-	{iLockMount++;}
-
+inline TInt CMountCB::LockStatus() const
+	{
+    return iLockMount;
+    }
 
 
 
-/**
-Unlocks the mount by decrementing the internal lock counter.
-
-The mount becomes locked on formatting or on the opening of a resource
-(a file or a directory) or raw disk subsession.
-A format, resource or raw disk subsession can only be opened if the mount
-is not locked.
-*/
-inline void CMountCB::DecLock()
-	{iLockMount--;}
-
-
-
-
-/**
-Gets the current lock status.
-
-It delivers the current lock status by returning the internal lock counter.
-
-@return The current lock status.
-*/
-inline TInt CMountCB::LockStatus() const
-	{return(iLockMount);}
-
-
-
-
+//---------------------------------------------------------------------------------------------------------------------------------
 /**
 Tests whether the mount is currently locked. 
 
 A mount is locked when the internal lock counter is greater than zero.
-On creation, the lock counter is set to zero.
+    This happens when a format, resource or raw disk subsession is opened on the mount.
 
-The mount becomes locked on formatting or on the opening of a resource
-(a file or a directory) or raw disk subsession.
-A format, resource or raw disk subsession can only be opened if the mount
-is not locked.
+    See also: CMountCB::LockStatus()   
 
-@return True if the mount is locked, false, otherwise.
+    @return True if the mount is locked by having disk access objects opened
 */
 inline TBool CMountCB::Locked() const
-	{return iLockMount>0; }
+	{
+    return iLockMount > 0; 
+    }
 
 
 
@@ -537,7 +533,9 @@
 /**
 */
 inline TInt64 CMountCB::Size() const
-	{return(iSize);}
+	{
+    return iSize;
+    }
 
 
 
@@ -547,14 +545,19 @@
 @param aMountNumber - The unique mount number
 */
 const TInt KMountDismounted = 0x80000000;
+
 inline void CMountCB::SetMountNumber(TInt aMountNumber)
-	{ iMountNumber = (aMountNumber &~ KMountDismounted); }
+	{ 
+    iMountNumber = (aMountNumber & ~KMountDismounted); 
+    }
 
 
 
 
 /**
-Set the mount to be dismounted
+    Set the mount flag indicating that it is in 'dismounted' state.
+    The CMountCB object in this case is still alive, but any attempts to access resources on this 
+    mount result in KErrDismounted.
 */
 inline void CMountCB::SetDismounted(TBool aDismounted)
 	{
@@ -568,21 +571,23 @@
 
 
 /**
-Returns the unique mount number
 @return The unique mount number
 */
 inline TInt CMountCB::MountNumber() const
-	{ return(iMountNumber &~ KMountDismounted); }
+	{ 
+    return(iMountNumber &~ KMountDismounted); 
+    }
 
 
 
 
 /**
-Returns ETrue if the mount is flagged as dismounted.
 @return ETrue if the mount is flagged as dismounted
 */
 inline TBool CMountCB::IsDismounted() const
-	{ return(iMountNumber & KMountDismounted); }
+	{ 
+    return(iMountNumber & KMountDismounted); 
+    }