graphics_plat/guestvideodriver_api/ldd/inc/reqhandlerextension.h
branchbug235_bringup_0
changeset 158 13fc3981f713
parent 146 4d1fe4a7ce83
equal deleted inserted replaced
155:8d47cca9cc11 158:13fc3981f713
    19 #define ReqHandlerExtension_H
    19 #define ReqHandlerExtension_H
    20 
    20 
    21 
    21 
    22 #include <kernel/kernel.h>
    22 #include <kernel/kernel.h>
    23 
    23 
       
    24 #ifdef FAISALMEMON_S4_SGIMAGE
    24 #include <sgresource/sgcommon.h>//TSgImageMetaData
    25 #include <sgresource/sgcommon.h>//TSgImageMetaData
       
    26 #endif
    25 
    27 
    26 #include "virtualvideotracing.h"
    28 #include "virtualvideotracing.h"
    27 
    29 
    28 class MReqHandlerCallback
    30 class MReqHandlerCallback
    29     {
    31     {
    30 public:
    32 public:
       
    33 #ifdef FAISALMEMON_S4_SGIMAGE
    31 	virtual void CreateSgImagePbuffer( const TSgImageMetaData& aInfo, TRequestStatus* aStatus, DThread* aThread ) = 0;
    34 	virtual void CreateSgImagePbuffer( const TSgImageMetaData& aInfo, TRequestStatus* aStatus, DThread* aThread ) = 0;
    32 	virtual void CreateSgImageVGImage( const TSgImageMetaData& aInfo, TRequestStatus* aStatus, DThread* aThread ) = 0;
    35 	virtual void CreateSgImageVGImage( const TSgImageMetaData& aInfo, TRequestStatus* aStatus, DThread* aThread ) = 0;
       
    36 #endif
    33 	virtual TInt DestroySgImage( const TUint64 aId ) = 0;    
    37 	virtual TInt DestroySgImage( const TUint64 aId ) = 0;    
    34     };
    38     };
    35 
    39 
    36 NONSHARABLE_CLASS(DReqHandlerExtensionImpl): public DBase
    40 NONSHARABLE_CLASS(DReqHandlerExtensionImpl): public DBase
    37 	{
    41 	{
    38 public:
    42 public:
    39 	TInt Construct();
    43 	TInt Construct();
       
    44 #ifdef FAISALMEMON_S4_SGIMAGE
    40 	void CreateSgImagePbuffer( const TSgImageMetaData& aInfo, TRequestStatus* aStatus, DThread* aThread );
    45 	void CreateSgImagePbuffer( const TSgImageMetaData& aInfo, TRequestStatus* aStatus, DThread* aThread );
    41 	void CreateSgImageVGImage( const TSgImageMetaData& aInfo, TRequestStatus* aStatus, DThread* aThread );
    46 	void CreateSgImageVGImage( const TSgImageMetaData& aInfo, TRequestStatus* aStatus, DThread* aThread );
       
    47 #endif
    42 	TInt DestroySgImage( const TUint64 aId );
    48 	TInt DestroySgImage( const TUint64 aId );
    43 	TInt SetReqHandler( MReqHandlerCallback* aHandler );
    49 	TInt SetReqHandler( MReqHandlerCallback* aHandler );
    44 private:
    50 private:
    45 	DMutex* iMutex;
    51 	DMutex* iMutex;
    46 	MReqHandlerCallback* iCallBackHandler;//not owned
    52 	MReqHandlerCallback* iCallBackHandler;//not owned
    48 
    54 
    49 class ReqHandlerExtension
    55 class ReqHandlerExtension
    50 	{
    56 	{
    51 public:
    57 public:
    52 	//SgImage Creation and Destruction commands:
    58 	//SgImage Creation and Destruction commands:
    53 	IMPORT_C static TInt CreateSgImagePbuffer( const TSgImageMetaData& aInfo );
    59 #ifdef FAISALMEMON_S4_SGIMAGE IMPORT_C 
       
    60 	static TInt CreateSgImagePbuffer( const TSgImageMetaData& aInfo );
    54 	IMPORT_C static TInt CreateSgImageVGImage( const TSgImageMetaData& aInfo );
    61 	IMPORT_C static TInt CreateSgImageVGImage( const TSgImageMetaData& aInfo );
       
    62 #endif
    55 	IMPORT_C static TInt DestroySgImage( const TUint64 aId );
    63 	IMPORT_C static TInt DestroySgImage( const TUint64 aId );
    56 	IMPORT_C static TInt SetReqHandler( MReqHandlerCallback* aHandler );
    64 	IMPORT_C static TInt SetReqHandler( MReqHandlerCallback* aHandler );
    57 	//other functions to be added
    65 	//other functions to be added
    58 	};
    66 	};
    59 
    67