00001 #ifndef CCALLTERMINATOR_H 00002 #define CCALLTERMINATOR_H 00003 00004 #include <Etel3rdParty.h> 00005 00006 class MTerminatorObserver 00007 { 00008 public: 00009 virtual void CallTerminatedL( TInt aError ) = 0; 00010 virtual void CallRejectedL( TInt aError ) = 0; 00011 }; 00012 00013 class CCallTerminator: public CActive 00014 { 00015 public: 00016 CCallTerminator(MTerminatorObserver&, CTelephony*); 00017 ~CCallTerminator(); 00018 00019 void Terminate(); 00020 void Reject(); 00021 00022 private: 00023 void RunL(); 00024 void DoCancel(); 00025 00026 private: 00027 MTerminatorObserver& iObserver; 00028 CTelephony* iTelephony; 00029 CTelephony::TCallId iCallId; 00030 }; 00031 00032 #endif // CCALLTERMINATOR_H