📄 test_e1122000.cpp
字号:
/*
* ==============================================================================
* ==============================================================================
*/
// INCLUDE FILES
#include <avkon.hrh>
#include <aknnotewrappers.h>
#include <stringloader.h>
#include <f32file.h>
#include <s32file.h>
#include <aknlists.h>
#include <eikstart.h>
#include <aknmessagequerydialog.h>
#include <Test_E1122000.rsg>
#include "Test_E1122000.h"
#include "Test_E1122000.hrh"
#include "Results_Container.h"
#include "PropertyContainer.h"
/*
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
*/
void CTestAppUi::ConstructL()
{
// Initialise app UI with standard value.
BaseConstructL(CAknAppUi::EAknEnableSkin);
iSensrvChannelFinder = CSensrvChannelFinder::NewL();
GetAllChannelsL();
iResultsContainer = CResultsContainer::NewL(ClientRect(),iChannelInfoList);
AddToStackL(iResultsContainer);
}
/*
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
*/
CTestAppUi::CTestAppUi()
{
// No implementation required
}
/*
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
*/
CTestAppUi::~CTestAppUi()
{
if(iProppertyContainer)
{
RemoveFromStack(iProppertyContainer);
}
delete iProppertyContainer;
if ( iResultsContainer )
{
RemoveFromStack(iResultsContainer);
}
delete iResultsContainer;
if(iSensrvSensorChannel)
{
iSensrvSensorChannel->StopDataListening();
iSensrvSensorChannel->CloseChannel();
}
delete iSensrvSensorChannel;
iChannelInfoList.Reset();
delete iSensrvChannelFinder;
if( iDoorObserver )
{
iDoorObserver->NotifyExit( MApaEmbeddedDocObserver::EEmpty );
}
}
/*
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
*/
_LIT( KTimeString, "%-B%:0%J%:1%T%:2%S%.%*C4%:3%+B" );
void CTestAppUi::DataReceived( CSensrvChannel& aChannel, TInt aCount, TInt aDataLost )
{
TBuf<250> progressBuf;
TInt errErr(KErrNone);
iDataLostCount = iDataLostCount + aDataLost;
iDataCount = iDataCount + aCount;
if( aChannel.GetChannelInfo().iChannelType == KSensrvChannelTypeIdOrientationData )
{
TSensrvOrientationData data;
TRAP(errErr,
for( TInt i = 0; i < aCount; i++ )
{
TPckgBuf<TSensrvOrientationData> dataBuf;
aChannel.GetData( dataBuf );
data = dataBuf();
data.iTimeStamp.FormatL(progressBuf, KTimeString );
}
);
if(errErr != KErrNone)
{
progressBuf.Zero();
}
switch ( data.iDeviceOrientation )
{
case TSensrvOrientationData::EOrientationDisplayUp:
{
progressBuf.Append( _L( "Display up" ) );
break;
}
case TSensrvOrientationData::EOrientationDisplayDown:
{
progressBuf.Append( _L( "Display down" ) );
break;
}
case TSensrvOrientationData::EOrientationDisplayLeftUp:
{
progressBuf.Append( _L( "Display left up" ) );
break;
}
case TSensrvOrientationData::EOrientationDisplayRightUp:
{
progressBuf.Append( _L( "Display right up" ) );
break;
}
case TSensrvOrientationData::EOrientationDisplayUpwards:
{
progressBuf.Append( _L( "Display upwards" ) );
break;
}
case TSensrvOrientationData::EOrientationDisplayDownwards:
{
progressBuf.Append( _L( "Display downwards" ) );
break;
}
default:
{
progressBuf.Append( _L( "Unknown orientation" ) );
break;
}
}
}
else if ( aChannel.GetChannelInfo().iChannelType == KSensrvChannelTypeIdRotationData )
{
TSensrvRotationData data;
TRAP(errErr,
for( TInt i = 0; i < aCount; i++ )
{
TPckgBuf<TSensrvRotationData> dataBuf;
aChannel.GetData( dataBuf );
data = dataBuf();
data.iTimeStamp.FormatL( progressBuf, KTimeString );
}
);
if(errErr != KErrNone)
{
progressBuf.Zero();
}
progressBuf.Append(_L(". Rot ,X=" ));
progressBuf.AppendNum(data.iDeviceRotationAboutXAxis);
progressBuf.Append(_L(" ,Y=" ));
progressBuf.AppendNum(data.iDeviceRotationAboutYAxis);
progressBuf.Append(_L(" ,Z=" ));
progressBuf.AppendNum(data.iDeviceRotationAboutZAxis);
if(iData1Max < data.iDeviceRotationAboutXAxis)
{
iData1Max = data.iDeviceRotationAboutXAxis;
}
if(iData2Max < data.iDeviceRotationAboutYAxis)
{
iData2Max = data.iDeviceRotationAboutYAxis;
}
if(iData3Max < data.iDeviceRotationAboutZAxis)
{
iData3Max = data.iDeviceRotationAboutZAxis;
}
if(iData1Min > data.iDeviceRotationAboutXAxis)
{
iData1Min = data.iDeviceRotationAboutXAxis;
}
if(iData2Min > data.iDeviceRotationAboutYAxis)
{
iData2Min = data.iDeviceRotationAboutYAxis;
}
if(iData3Min > data.iDeviceRotationAboutZAxis)
{
iData3Min = data.iDeviceRotationAboutZAxis;
}
}
else if(aChannel.GetChannelInfo().iChannelType == KSensrvChannelTypeIdAccelerometerDoubleTappingData)
{
TSensrvTappingData data;
TRAP(errErr,
for( TInt i = 0; i < aCount; i++ )
{
TPckgBuf<TSensrvTappingData> dataBuf;
aChannel.GetData( dataBuf );
data = dataBuf();
data.iTimeStamp.FormatL(progressBuf, KTimeString );
}
);
if(errErr != KErrNone)
{
progressBuf.Zero();
}
progressBuf.Append(_L(" ,Tap dir=" ));
progressBuf.AppendNum(data.iDirection);
if(iData1Max < data.iDirection)
{
iData1Max = data.iDirection;
}
if(iData1Min > data.iDirection)
{
iData1Min = data.iDirection;
}
}
else if( aChannel.GetChannelInfo().iChannelType == KSensrvChannelTypeIdAccelerometerXYZAxisData )
{
TSensrvAccelerometerAxisData data;
TRAP(errErr,
for( TInt i = 0; i < aCount; i++ )
{
TPckgBuf<TSensrvAccelerometerAxisData> dataBuf;
aChannel.GetData(dataBuf);
data = dataBuf();
data.iTimeStamp.FormatL( progressBuf, KTimeString );
}
);
if(errErr != KErrNone)
{
progressBuf.Zero();
}
progressBuf.Append(_L(".XYZ ,X=" ));
progressBuf.AppendNum(data.iAxisX);
progressBuf.Append(_L(" ,Y=" ));
progressBuf.AppendNum(data.iAxisY);
progressBuf.Append(_L(" ,Z=" ));
progressBuf.AppendNum(data.iAxisZ);
if(iData1Max < data.iAxisX)
{
iData1Max = data.iAxisX;
}
if(iData2Max < data.iAxisY)
{
iData2Max = data.iAxisY;
}
if(iData3Max < data.iAxisZ)
{
iData3Max = data.iAxisZ;
}
if(iData1Min > data.iAxisX)
{
iData1Min = data.iAxisX;
}
if(iData2Min > data.iAxisY)
{
iData2Min = data.iAxisY;
}
if(iData3Min > data.iAxisZ)
{
iData3Min = data.iAxisZ;
}
}
else if(aChannel.GetChannelInfo().iChannelType == KSensrvChannelTypeIdMagnetometerXYZAxisData)
{
TSensrvMagnetometerAxisData data;
TRAP(errErr,
for( TInt i = 0; i < aCount; i++ )
{
TPckgBuf<TSensrvMagnetometerAxisData> dataBuf;
aChannel.GetData( dataBuf );
data = dataBuf();
data.iTimeStamp.FormatL(progressBuf, KTimeString );
}
);
if(errErr != KErrNone)
{
progressBuf.Zero();
}
progressBuf.Append(_L(".Mang ,X=" ));
progressBuf.AppendNum(data.iAxisXRaw);
progressBuf.Append(_L(" ,Y=" ));
progressBuf.AppendNum(data.iAxisYRaw);
progressBuf.Append(_L(" ,Z=" ));
progressBuf.AppendNum(data.iAxisZRaw);
if(iData1Max < data.iAxisXRaw)
{
iData1Max = data.iAxisXRaw;
}
if(iData2Max < data.iAxisYRaw)
{
iData2Max = data.iAxisYRaw;
}
if(iData3Max < data.iAxisZRaw)
{
iData3Max = data.iAxisZRaw;
}
if(iData1Min > data.iAxisXRaw)
{
iData1Min = data.iAxisXRaw;
}
if(iData2Min > data.iAxisYRaw)
{
iData2Min = data.iAxisYRaw;
}
if(iData3Min > data.iAxisZRaw)
{
iData3Min = data.iAxisZRaw;
}
}
else
{
progressBuf.Copy(_L("Channel = " ));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -