CGSPluginLoader Class Reference
class CGSPluginLoader : public CActive
|
Private Member Functions
|
|
CGSPluginLoader
()
|
TInt
|
Compare
(const
CGSPluginInterface
&, const
CGSPluginInterface
&)
|
TInt
|
CompareCaption
(const
CGSPluginInterface
&, const
CGSPluginInterface
&)
|
TInt
|
CompareCategory
(const
CGSPluginInterface
&, const
CGSPluginInterface
&)
|
TInt
|
CompareIndex
(const
CGSPluginInterface
&, const
CGSPluginInterface
&)
|
void
|
CompleteOwnRequest
()
|
void
|
ConstructL
(
CAknViewAppUi
*)
|
CGSPluginInterface
&
|
CreatePluginInstanceL
(const
CImplementationInformation
&)
|
void
|
DisplayErrorPopupL
(
TInt
, const
CImplementationInformation
*)
|
void
|
DoCancel
()
|
void
|
InsertPluginInOrderL
(
CGSPluginInterface
*,
CArrayPtrFlat
<
CGSPluginInterface
> *)
|
void
|
LoadNextPluginL
()
|
void
|
NotifyFinished
()
|
void
|
NotifyProgress
()
|
TInt
|
ParseOrderNumber
(const
TDesC8
&,
TInt
&)
|
TInt
|
ParseToUid
(const
TDesC8
&,
TUid
&)
|
void
|
PrintInfoDebugL
(const
CImplementationInformation
&,
TInt
,
TInt
)
|
void
|
PrintOrderTracesL
(
CArrayPtrFlat
<
CGSPluginInterface
> *)
|
TInt
|
RunError
(
TInt
)
|
void
|
RunL
()
|
Constructor & Destructor Documentation
CGSPluginLoader()
CGSPluginLoader
|
(
|
)
|
[private]
|
~CGSPluginLoader()
IMPORT_C
|
~CGSPluginLoader
|
(
|
)
|
|
Member Functions Documentation
AbortAsyncLoad()
IMPORT_C void
|
AbortAsyncLoad
|
(
|
)
|
|
Aborts asynchronous loading of the GS plug-ins.
Compare(const CGSPluginInterface &, const CGSPluginInterface &)
Compares plugins according to comparison criterias.
Note: GS internal comparison constants such as KGSComparisonEqual are different from the ones outputted by this function. This is because this function is also usable by
RArray
sort -functionality but BC cannot be broken in GS.
CompareCaption(const CGSPluginInterface &, const CGSPluginInterface &)
CompareCategory(const CGSPluginInterface &, const CGSPluginInterface &)
Precedence is as follows: 1. KGSPluginProviderInternal 2. EGSPluginProviderOEM 3. EGSPluginProviderOperator 4. EGSPluginProvider3rdParty
CompareIndex(const CGSPluginInterface &, const CGSPluginInterface &)
CompleteOwnRequest()
void
|
CompleteOwnRequest
|
(
|
)
|
[private]
|
Wait for the next round of
CActive
execution.
ConstructL(CAknViewAppUi *)
Symbian OS default constructor
CreatePluginInstanceL(const CImplementationInformation &)
Creates a plugin instance from given UID. Ownership is transferred.
DisplayErrorPopupL(TInt, const CImplementationInformation *)
Display loading error popup message.
DoCancel()
void
|
DoCancel
|
(
|
)
|
[private, virtual]
|
InsertPluginInOrderL(CGSPluginInterface *, CArrayPtrFlat< CGSPluginInterface > *)
Inserts plugin in the correct position in the array using sorting criterias. Assumes aPlugins is ordered.
LoadAsyncL(TUid, TUid, CArrayPtrFlat< CGSPluginInterface > *)
Parameters
TUid
aInterfaceUid
|
Uid ofthe interfaces to be loaded.
|
TUid
aParentUid
|
Uid of the parent. Only children of this parent will be loaded.
|
CArrayPtrFlat
<
CGSPluginInterface
> * aPluginArray
|
An array for the loaded GS plug-ins. CGSPluginLoader does not take the ownership of this array.
|
LoadNextPluginL()
void
|
LoadNextPluginL
|
(
|
)
|
[private]
|
Starts loading next plugin.
LoadSyncL(TUid, TUid)
Load a specific plugin instance synchronously.
Parameters
TUid
aInterfaceUid
|
Uid ofthe interfaces to be loaded.
|
TUid
aImplementationUid
|
Uid of the implementation to load
|
NewL(CAknViewAppUi *)
Parameters
CAknViewAppUi
* aAppUi
|
Pointer to application UI. Does not take ownership.
|
NotifyFinished()
void
|
NotifyFinished
|
(
|
)
|
[private]
|
NotifyProgress()
void
|
NotifyProgress
|
(
|
)
|
[private]
|
ParseOrderNumber(const TDesC8 &, TInt &)
TInt
|
ParseOrderNumber
|
(
|
const
TDesC8
&
|
aSource,
|
|
TInt
&
|
aOrderNumber
|
|
)
|
[private, static]
|
Parsers plugin's order number
ParseToUid(const TDesC8 &, TUid &)
TInt
|
ParseToUid
|
(
|
const
TDesC8
&
|
aSource,
|
|
TUid
&
|
aTarget
|
|
)
|
[private, static]
|
Parses descriptor to UID.
PrintInfoDebugL(const CImplementationInformation &, TInt, TInt)
PrintOrderTracesL(CArrayPtrFlat< CGSPluginInterface > *)
Print ordering debug data.
RequestPriority(CActive::TPriority)
Attempts to change
CActive
priority on next RunL cycle. Use this if needed to change plugin loader priority. Normally when parent plugin view is opened, it is advisable to increase loader priority to get child plugins loaded faster.
RunError(TInt)
TInt
|
RunError
|
(
|
TInt
|
aError
|
)
|
[private, virtual]
|
RunL()
void
|
RunL
|
(
|
)
|
[private, virtual]
|
SetObserver(MGSPluginLoadObserver *)
Sets observer for this loader. Only one observer per loader in one time is possible.
SortPluginsL(CArrayPtrFlat< CGSPluginInterface > *)
Sorts the plugin array.
Sorting criterias:
1. Order number if provider category is Internal. 2. Provider category. Precedence as follows: 1. KGSPluginProviderInternal 2. EGSPluginProviderOEM 3. EGSPluginProviderOperator 4. EGSPluginProvider3rdParty 3. Alphabetical
Member Data Documentation
CGSBaseDocument * iDocument
CAknInfoPopupNoteController * iErrorPopup
RImplInfoPtrArray
iImplInfoArray
TInt
iImplInfoArrayIterator
TInt
|
iImplInfoArrayIterator
|
[private]
|
MGSPluginLoadObserver * iObserver
TUid
iParentUid
TUid
|
iParentUid
|
[private]
|
CArrayPtrFlat< CGSPluginInterface > * iPluginArray
CActive::TPriority
iRequestedPriority
TInt
iRunLDebugCount
TInt
|
iRunLDebugCount
|
[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.