CDiscoverer Class Reference
class CDiscoverer : public CBase |
- Since
- 7.0 Responsible for Interface Implementation Collections, installed in the Interface Implementation Collection directories.
Nested Classes and Structures
Constructor & Destructor Documentation
CDiscoverer(MDiscovererObserver &, RFs &)
Intended Usage : Standardised default c'tor Error Condition : None
- Since
- 7.0
- Pre-condition
- None
- Post-condition
- CDiscoverer is fully constructed
Parameters
MDiscovererObserver & aDiscovererObserver | A reference to the owning client of the CDiscoverer |
RFs & aFs | A reference to an connected file server instance. |
~CDiscoverer()
Intended Usage : Standard default d'tor Error Condition : None
- Since
- 7.0
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- CDiscoverer is totally destroyed.
Member Functions Documentation
CompleteNotificationProcessing()
void | CompleteNotificationProcessing | ( | ) | [private] |
Intended Usage : Signal that the directory change notification has been fully processed on all drives. Error Condition : None
- Since
- 7.0
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- An asynchronous re-scan of the Interface Implementation Collection directories is complete.
ConstructL()
void | ConstructL | ( | ) | [private] |
Intended Usage : Standardised 2nd, (Initialisation) phase of two phase construction. Error Condition : Leaves with error code : usually KErrNoMemory.
- leave
- KErrNoMemory.
- Since
- 7.0
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- CDiscoverer is fully initialised.
DriveMountedL(TDriveUnit)
Intended Usage : Signal a drive is available. Error Condition : Depends on the observer implementation.
- leave
- Depends on the observer implementation.
CRegistrar.
- Since
- 7.0
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- The drive mount has been signalled to the observer.
Parameters
TDriveUnit aDrive | The drive to be noted as available. |
DriveUnmountedL(TDriveUnit)
Intended Usage : Signal a drive is unavailable. Error Condition : Leaves with an error code
- leave
- KErrNoMemory
- Since
- 7.0
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- The drive dismount has been signalled to the observer.
Parameters
TDriveUnit aDrive | The drive to be noted as unavailable. |
InitialiseEvent()
void | InitialiseEvent | ( | ) | [private] |
Intended Usage : called during the CDiscoverer's construction to change the state.
- Pre-condition
- : non
- Post-condition
- : State is changed from EDisc_Undefined to EDisc_NoPluginsDisc.
IsAnyDllRegisteredWithDriveL(const TDriveUnit)
LanguageChangeNotificationL()
void | LanguageChangeNotificationL | ( | ) | [private] |
Intended Usage : Called by iLanguageChangeNotifier when it is notified of language downgrade path changed. Error Condition : None
- Since
- 9.3
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- CDiscoverer has been notified that a rescan may be required
LocaleChangedL(TAny *)
TInt
| LocaleChangedL | ( | TAny * | | ) | [private, static] |
Intended Usage : Callback function to be attached to an instance of
CEnvironmentChangeNotifier to rebuild registry data. Note that this has to be a static member function.
- Pre-condition
- : CDiscoverer is fully constructed.
- Post-condition
- : Call LanguageChangeNotificationL method to rescan resource files.
NewL(MDiscovererObserver &, RFs &)
Intended Usage : Standardised safe construction which leaves nothing on the cleanup stack. Error Condition : Not enough memory available.
- leave
- KErrNoMemory
- Since
- 7.0
- Pre-condition
- None
- Post-condition
- CDiscoverer is fully constructed, and initialised.
Parameters
MDiscovererObserver & aDiscovererObserver | A reference to the owning client of the CDiscoverer |
RFs & aFs | A reference to a connected file server instance. |
NotificationL(TInt, const TDriveUnit &)
ProcessDNEventL(TNotificationFlag, const TDriveUnit &)
ProcessEntryL(const TDriveName &, CPluginBase *&, TBool)
Intended Usage : Verify that a Interface Implementation Collection directories entry is valid discovery. Error Condition : Depends on the observer implementation.
- leave
- Depends on the observer implementation. (
CRegistrar).
- Since
- 9.1
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- The directory entry has been processed by the observer.
Parameters
const TDriveName & aDrive | the drive name containing this entry |
CPluginBase *& aEntry | A directory entry for an Interface Implementation Collection. |
TBool aAnyDllDiscovered | a flag to tell if any Dll is discovered in the drive. |
ProcessSSAEventL(TStartupStateIdentifier)
RediscoveryScanDirectoryL(const TDriveUnit &)
void | RediscoveryScanDirectoryL | ( | const TDriveUnit & | aDriveUnit | ) | [private] |
Resume()
Intended Usage : Re-enable the Discoverer to continue checking for new interface implementations. Error Condition : Where resume of the discoverer fails. KErrResumeFailed.
- Since
- 7.0
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- The operation of the discoverer has been resumed. Or where resumption failed, no change.
ScanDirectoryCancel()
void | ScanDirectoryCancel | ( | ) | [private] |
Intended Usage : Cancel any scan of the Interface Implementation Collection directories in progress. Error Condition : None
- Since
- 7.0
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- The re-scan of the Interface Implementation Collection directories has beed aborted.
SetBurChangeCallBack(const TCallBackWithArg &)
Set the iBurChangeCallBack member
SetSwiChangeCallBack(const TCallBackWithArg &)
Set the iSwiChangeCallBack member
StartNotifiers()
void | StartNotifiers | ( | ) | [private] |
Intended Usage : start the iRscDirNotifierList and iSwiChangeNotifier when EDisc_AllPlugins state is reached.
- Pre-condition
- : CDiscoverer is fully constructed. and iRscDirNotifierList and iSwiChangeNotifier are fully constructed.
- Post-condition
- : iRscDirNotifierList Activate and iSwiChangeNotifier Subscribe methods are called.
Suspend()
Intended Usage : Temporarily stop looking for new interface implementations. Error Condition : Where suspension of the discoverer fails. KErrSuspendFailed.
- Since
- 7.0
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- The operation of the discoverer has been suspended. Or where suspend failed, no change.
SwiChangeNotificationL(TInt)
void | SwiChangeNotificationL | ( | TInt | aSwiOperation | ) | [private] |
Intended Usage : Called by iSwiChangeNotifier when it is notified of a SWI changed. Error Condition : None
- Since
- 9.2
- Pre-condition
- CDiscoverer is fully constructed.
- Post-condition
- CDiscoverer has been notified that a re-scan of the removable plugin directories is required and has stored current SWI operation.
Parameters
TInt aSwiOperation | the SWI operation that is currently taking place |
SwiOperationInProgress()
TBool
| SwiOperationInProgress | ( | ) | [private] |
Intended Usage : Determine if any SWI operation is currently in progress
- Pre-condition
- : CDiscoverer is fully constructed.
- Post-condition
- : None
ValidateEntryL(const TEntry &, const TDriveName &, CPluginBase *&, TBool)
Intended Usage : Verify that a Interface Implementation Collection directories entry is valid discovery. Error Condition : No memory
- leave
- KErrNoMemory
- Since
- 9.1
- Pre-condition
- CDiscoverer is fully constructed, aEntry, aPath and aEntryToFill are all valid references.
- Post-condition
- aEntryToFill is created and valid, with the full path and filename as its name entry.
Parameters
const TEntry & aEntry | A directory entry for an Interface Implementation Collection. |
const TDriveName & aDriveName | The drive containing this entry |
CPluginBase *& aEntryToFill | A newly created directory entry with the filename updated to include the full path. |
TBool aIsRO | Indicates whether current drive is Read Only |
ValidateEntryL(RResourceArchive &, CPluginBase *&)
Intended Usage : Verify that a Interface Implementation Collection directories entry is valid discovery. Error Condition : No memory
- leave
- KErrNoMemory
- Since
- 9.1
- Pre-condition
- CDiscoverer is fully constructed,
- Post-condition
- aEntryToFill is created and valid, with the full path and filename as its name entry.
Parameters
RResourceArchive & aRscArchive | A referernce to the resource archive |
CPluginBase *& aEntryToFill | A newly created directory entry with the filename updated to include the full path. |
Member Enumerations Documentation
Enum TDiscovererState
Enumerators
EDisc_Undefined |
Undefined state
|
EDisc_NoPluginsDisc |
Initialize state
|
EDisc_CriticalPluginsDisc |
Discover plugins on Ro Internal drive units
|
EDisc_AllPluginsDisc |
All plugins are discovered.
|
EDisc_PluginsDirty |
Plugins added or removed, going to rediscover all plugins
|
Enum TNotificationFlag
Transition flag for Notification
Enumerators
EPluginsModified |
A new plugin added or removed
|
EPluginsRediscover |
should do a rediscovery
|
Member Type Definitions Documentation
Typedef RDirChangeNotifierPointerArray
Member Data Documentation
TCallBackWithArg
iBurChangeCallBack
CEComCachedDriveInfo * iCachedDriveInfo
cached info of drives A to Z
CDirScanner * iDirScanner
The internal Interface Implementation Collection identifier and registration handler
MDiscovererObserver & iDiscovererObserver
RArray< TUint > iDrivesDiscovered
The list of existing drives
RFs & iFs
A reference to the connected file server instance
TBool
iLanguageChangeDiscoveryPending
TBool
| iLanguageChangeDiscoveryPending | [private] |
CEnvironmentChangeNotifier * iLanguageChangeNotifier
RDirChangeNotifierPointerArray
iRscDirNotifierList
CIdleScanningTimer * iScanningTimer
TCallBackWithArg
iSwiChangeCallBack
TBool
iSwiChangeDiscoveryPending
TBool
| iSwiChangeDiscoveryPending | [private] |
CSwiChangeNotifier * iSwiChangeNotifier
TInt
iSwiOperation
TInt
| iSwiOperation | [private] |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.