sl@0: // Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // Graphics Resource - logical device driver sl@0: // sl@0: sl@0: #ifndef SGDEVICE_H sl@0: #define SGDEVICE_H sl@0: sl@0: #include sl@0: #include sl@0: sl@0: _LIT(KSgDeviceName, "sgdevice"); sl@0: sl@0: inline TVersion SgDeviceVersionRequired(); sl@0: sl@0: class RSgDevice: public RBusLogicalChannel sl@0: { sl@0: friend class DSgChannel; sl@0: public: sl@0: inline TInt Connect(); sl@0: inline TInt CreateResource(TUint32 aAttribs, const TDesC8& aMetaData, TInt aDataSize, TUint64& aId); sl@0: inline TInt OpenResource(TUint64 aId); sl@0: inline TInt CloseResource(TUint64 aId); sl@0: inline TUint32 ResourceAttributes(TUint64 aId); sl@0: inline TInt GetResourceMetaData(TUint64 aId, TDes8& aMetaData); sl@0: inline TAny* ResourceDataAddress(TUint64 aId); sl@0: inline TInt ResourceDataSize(TUint64 aId); sl@0: inline TInt GlobalResourceCount(); sl@0: inline TInt LocalGraphicsMemoryUsed(); sl@0: inline TInt GlobalGraphicsMemoryUsed(); sl@0: private: sl@0: enum TControl sl@0: { sl@0: EControlCreateResource, sl@0: EControlOpenResource, sl@0: EControlCloseResource, sl@0: EControlResourceAttributes, sl@0: EControlGetResourceMetaData, sl@0: EControlResourceDataAddress, sl@0: EControlResourceDataSize, sl@0: EControlGlobalResourceCount, sl@0: EControlLocalGraphicsMemoryUsed, sl@0: EControlGlobalGraphicsMemoryUsed sl@0: }; sl@0: class TCreateResourceArgs sl@0: { sl@0: public: sl@0: TUint32 iAttributes; sl@0: const TDesC8* iMetaData; sl@0: TInt iDataSize; sl@0: }; sl@0: }; sl@0: sl@0: #include sl@0: sl@0: #endif // SGDEVICE_H