serviceproviders/sapi_logging/loggingservice/inc/loggingasyncservice.h
changeset 26 5d0ec8b709be
parent 5 989d2f495d90
child 36 c210248fa89d
equal deleted inserted replaced
23:50974a8b132e 26:5d0ec8b709be
   191         CLogsEvent         *iUpdatedEvent ;
   191         CLogsEvent         *iUpdatedEvent ;
   192         CLogIter*          iIter ;
   192         CLogIter*          iIter ;
   193         TInt               iTask ;
   193         TInt               iTask ;
   194         RFs                iFs ;
   194         RFs                iFs ;
   195         TTimeIntervalMicroSeconds32 iInterval ;
   195         TTimeIntervalMicroSeconds32 iInterval ;
       
   196         CLogViewEvent* iLogViewEvent;
       
   197         CLogFilter* iFilter;
   196 
   198 
   197     };
   199     };
   198 
   200 
   199 /**
   201 /**
   200 * Notify Callback class, used to get notifications for async events
   202 * Notify Callback class, used to get notifications for async events
   211         * @param aTransId , Transaction id
   213         * @param aTransId , Transaction id
   212         * @param aStatus
   214         * @param aStatus
   213         * @param iter , Logging iterator
   215         * @param iter , Logging iterator
   214         */
   216         */
   215         virtual void HandleNotifyL(TUint aTransid ,TUint aStatus , CLogIter *iter ) = 0 ;
   217         virtual void HandleNotifyL(TUint aTransid ,TUint aStatus , CLogIter *iter ) = 0 ;
       
   218 		
       
   219         /**
       
   220         * HandleReqeustL , method to get output on notification
       
   221         * methods
       
   222         * @param aTransId , Transaction id
       
   223         * @param aStatus
       
   224         * @param aLogEvent , event containing the output
       
   225         */
       
   226         virtual void HandleReqeustL(TUint aTransid, TUint aStatus, CLogsEvent *aLogEvent) = 0;
   216 
   227 
   217         /**
   228         /**
   218         * CancelNotifyL , generic method to get updates on the async
   229         * CancelNotifyL , generic method to get updates on the async
   219         * methods
   230         * methods
   220         *
   231         *
   232         ;
   243         ;
   233         }
   244         }
   234 
   245 
   235     } ;
   246     } ;
   236 
   247 
       
   248 /**
       
   249  * Utility class for waiting for asychronous requests
       
   250 */
       
   251 class CAsyncWaiter : public CActive
       
   252     {
       
   253 public:
       
   254     /**
       
   255      * Two-phased constructor.
       
   256      * @param aPriority  set aPriority to  EPriorityStandard
       
   257      * @return CAsyncWaiter object
       
   258     */
       
   259     static CAsyncWaiter* NewL( TInt aPriority = EPriorityStandard );
       
   260     static CAsyncWaiter* NewLC( TInt aPriority = EPriorityStandard );
       
   261     /**
       
   262      * Destructor.
       
   263     */
       
   264     ~CAsyncWaiter();
       
   265     
       
   266     /**
       
   267      * Starts the active scheduler.
       
   268     */
       
   269     void StartAndWait();
       
   270     /**
       
   271      * Starts the active scheduler.
       
   272     */
       
   273     TInt Result() const;
       
   274     
       
   275 private:
       
   276     
       
   277     /** 
       
   278      * Constructor.
       
   279      * @param aPriority 
       
   280     */
       
   281     CAsyncWaiter( TInt aPriority );
       
   282     
       
   283     /**
       
   284      * Inherited from CActive class 
       
   285     */
       
   286     void RunL();
       
   287     
       
   288     /**
       
   289      * Inherited from CActive class 
       
   290     */
       
   291     void DoCancel();
       
   292     
       
   293 private:
       
   294     
       
   295     /**
       
   296      * wait scheduler
       
   297      */
       
   298     CActiveSchedulerWait iWait;
       
   299     
       
   300     /**
       
   301      * error
       
   302     */
       
   303     TInt iError;
       
   304     };
       
   305 
       
   306     
       
   307 
       
   308 
       
   309 
   237 #endif
   310 #endif