messagingfw/biomsgfw/BIUTINC/CBioAsyncWaiter.h
changeset 62 db3f5fa34ec7
parent 0 8e480a14352b
equal deleted inserted replaced
60:9f5ae1728557 62:db3f5fa34ec7
       
     1 // Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #ifndef __CBIOASYNCWAITER_H__
       
    17 #define __CBIOASYNCWAITER_H__
       
    18 
       
    19 #include <e32base.h>
       
    20 
       
    21 /**
       
    22 Utility class for waiting for asychronous requests.
       
    23 
       
    24 This class allows asynchronous requests to be made from synchronous
       
    25 objects. This object is used by passing its iStatus to an asynchronous
       
    26 request and then calling Start(). The result of the request can be 
       
    27 obtained by calling the Result() method.
       
    28 
       
    29 @publishedAll
       
    30 @released
       
    31 */
       
    32 class CBioAsyncWaiter : public CActive
       
    33 	{
       
    34 public:
       
    35 	IMPORT_C static CBioAsyncWaiter* NewLC();
       
    36 	IMPORT_C ~CBioAsyncWaiter();
       
    37 	
       
    38 	IMPORT_C void StartAndWait();
       
    39 	IMPORT_C TInt Result() const;
       
    40 	
       
    41 private:
       
    42 	CBioAsyncWaiter();
       
    43 	
       
    44 	// from CActive
       
    45 	virtual void RunL();
       
    46 	virtual void DoCancel();
       
    47 	
       
    48 private:
       
    49 	TInt iError;
       
    50 	};
       
    51 
       
    52 #endif // __CBIOASYNCWAITER_H__