00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "CDynamicCaps.h"
00017
00025 CDynamicCaps* CDynamicCaps::NewL(MExecAsync* aController, CTelephony::TCallId aCallId)
00026 {
00027 CDynamicCaps* self = new(ELeave) CDynamicCaps(aController, aCallId);
00028 CleanupStack::PushL(self);
00029 self->ConstructL();
00030 CleanupStack::Pop(self);
00031 return self;
00032 }
00033
00038 CDynamicCaps::~CDynamicCaps()
00039 {
00040 Cancel();
00041 }
00042
00047 void CDynamicCaps::StartRequestL()
00048 {
00049 _LIT(KDummyAnswerPanic, "CDynamicCaps Get Method");
00050 __ASSERT_ALWAYS(!IsActive(), User::Panic(KDummyAnswerPanic, 1));
00051 iRequestNotify = EFalse;
00052 iTelephony->GetCallDynamicCaps(iCallId, iCallCapsV1Pckg);
00053 if( iCallCapsV1.iControlCaps & CTelephony::KCapsHold )
00054 {
00055 gConsole->Printf(_L("Call can be put on hold\n"));
00056 ExampleNotify();
00057 }
00058 else
00059 {
00060 gConsole->Printf(_L("Call cannot be put on hold\n"));
00061
00062
00063
00064
00065 }
00066 }
00067
00074 CDynamicCaps::CDynamicCaps(MExecAsync* aController, CTelephony::TCallId aCallId)
00075 : CISVAPIAsync(aController)
00076 , iCallCapsV1Pckg(iCallCapsV1)
00077 , iCallId(aCallId)
00078 {
00079 iExtensionId = KDynamicCaps;
00080 }
00081
00085 void CDynamicCaps::ConstructL()
00086 {
00087 CActiveScheduler::Add(this);
00088 }
00089
00093 void CDynamicCaps::RunL()
00094 {
00095
00096 }
00097
00101 void CDynamicCaps::DoCancel()
00102 {
00103
00104 }
00105