00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef __DEVICECAPABILITIESSCAN_H__
00010 #define __DEVICECAPABILITIESSCAN_H__
00011
00012 #include <e32base.h>
00013 #include <e32std.h>
00014
00015
00016 class CLogContainer;
00017
00026 class CDeviceCapabilitiesScan : public CActive
00027 {
00028 public:
00029
00033 static CDeviceCapabilitiesScan* NewL(CLogContainer* aLogView);
00034
00038 static CDeviceCapabilitiesScan* NewLC(CLogContainer* aLogView);
00039
00041 ~CDeviceCapabilitiesScan();
00042
00043 public:
00044
00046 void Start();
00047
00048 private:
00049
00053 CDeviceCapabilitiesScan(CLogContainer* aLogView);
00054
00056 void ConstructL();
00057
00058 private:
00059
00061 void RunL();
00062
00064 void DoCancel();
00065
00067 TInt RunError(TInt aError);
00068
00069 private:
00070
00072 void SelfComplete(TInt aErr);
00073
00075 const TDesC& DisplayMode(TDisplayMode aMode);
00076
00078 const TDesC& Orientation(CFbsBitGc::TGraphicsOrientation aOrientation);
00079
00080 private:
00081
00082
00083 void DiscoverPlatformVersionTextL();
00084
00085
00086 void DiscoverDisplayScreensInfoL();
00087
00088
00089 void FormatScreenInfoByModeL(CWsScreenDevice& aScreenDevice, TInt aScreenMode);
00090
00091
00092 void CheckForTouchSupportL();
00093
00094
00095 void DiscoverAvailableInputModesL();
00096
00097
00098 void EnumerateAvailableInputModesL();
00099
00100
00101 void DiscoverMultimediaPluginSupportL();
00102
00103
00104 void DiscoverAvailableSensorsL();
00105
00106
00107 private:
00108
00110 enum TDeviceCapabilitiesScanState
00111 {
00112 EUninitialized,
00113 EDiscoveringPlatformVersion,
00114 EDiscoveringDisplayScreenInfo,
00115 EDiscoveringInputCapabilities,
00116 EDiscoveringMultimediaEcomPlugins,
00117 EDiscoveringAvailableSensors,
00118 EError
00119 };
00120
00121 private:
00122
00124 TDeviceCapabilitiesScanState iState;
00125
00127 CLogContainer* iLogView;
00128
00129 };
00130
00131
00132
00133 #endif // __DEVICECAPABILITIESSCAN_H__
00134
00135
00136
00137