equal
deleted
inserted
replaced
131 // |
131 // |
132 TBool CMMCMonitor::StartMonitoring() |
132 TBool CMMCMonitor::StartMonitoring() |
133 { |
133 { |
134 OstTraceFunctionEntry0( CMMCMONITOR_STARTMONITORING_ENTRY ); |
134 OstTraceFunctionEntry0( CMMCMONITOR_STARTMONITORING_ENTRY ); |
135 CPIXLOGSTRING("ENTER CMMCMonitor::StartMonitoring"); |
135 CPIXLOGSTRING("ENTER CMMCMonitor::StartMonitoring"); |
136 TRAP_IGNORE( RunL() );//Need to TRAP this rather than use RunError |
136 iProperty.Subscribe( iStatus ); |
|
137 SetActive(); |
|
138 User::LeaveIfError( iProperty.Get( KPSUidUikon, KUikMMCInserted, iMmcStatus ) ); |
|
139 |
|
140 for ( TInt driveNumber = EDriveA; driveNumber <= EDriveZ; driveNumber++ ) |
|
141 { |
|
142 const TBool foundMmc = MmcStatus( driveNumber ); |
|
143 if ( !foundMmc ) |
|
144 { |
|
145 continue; |
|
146 } |
|
147 |
|
148 // This drive has been recognized as MMC. |
|
149 TDriveNumber drv = TDriveNumber( driveNumber ); |
|
150 |
|
151 TUint drvStatus( 0 ); |
|
152 |
|
153 const TInt err = DriveInfo::GetDriveStatus( *iFsSession, driveNumber, drvStatus ); |
|
154 if ( err ) |
|
155 { |
|
156 continue; // should not happen |
|
157 } |
|
158 |
|
159 if ( drvStatus & DriveInfo::EDrivePresent ) |
|
160 { |
|
161 iFilePlugin.MountL(drv, EFalse); |
|
162 } |
|
163 } |
137 CPIXLOGSTRING("END CMMCMonitor::StartMonitoring"); |
164 CPIXLOGSTRING("END CMMCMonitor::StartMonitoring"); |
138 OstTraceFunctionExit0( CMMCMONITOR_STARTMONITORING_EXIT ); |
165 OstTraceFunctionExit0( CMMCMONITOR_STARTMONITORING_EXIT ); |
139 return ETrue; |
166 return ETrue; |
140 } |
167 } |
141 |
168 |
240 if ( drvStatus & DriveInfo::EDrivePresent ) |
267 if ( drvStatus & DriveInfo::EDrivePresent ) |
241 { |
268 { |
242 OstTrace0( TRACE_NORMAL, DUP2_CMMCMONITOR_RUNL, "CMMCMonitor::RunL insert event" ); |
269 OstTrace0( TRACE_NORMAL, DUP2_CMMCMONITOR_RUNL, "CMMCMonitor::RunL insert event" ); |
243 CPIXLOGSTRING("CMMCMonitor::RunL insert event"); |
270 CPIXLOGSTRING("CMMCMonitor::RunL insert event"); |
244 // Mount MMC and force reharvest |
271 // Mount MMC and force reharvest |
245 iFilePlugin.MountL(drv, EFalse);//dont force reharvest |
272 iFilePlugin.MountL(drv, ETrue); |
246 } |
273 } |
247 else |
274 else |
248 { |
275 { |
249 OstTrace0( TRACE_NORMAL, DUP3_CMMCMONITOR_RUNL, "CMMCMonitor::RunL eject event" ); |
276 OstTrace0( TRACE_NORMAL, DUP3_CMMCMONITOR_RUNL, "CMMCMonitor::RunL eject event" ); |
250 CPIXLOGSTRING("CMMCMonitor::RunL eject event"); |
277 CPIXLOGSTRING("CMMCMonitor::RunL eject event"); |