diff -r 000000000000 -r 40261b775718 omxil/omxilcomponentcommon/src/common/omxilspecversion.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/omxil/omxilcomponentcommon/src/common/omxilspecversion.h Tue Feb 02 01:56:55 2010 +0200 @@ -0,0 +1,123 @@ +// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// + + +/** + @file + @internalComponent +*/ + +#ifndef OMXILSPECVERSION_H +#define OMXILSPECVERSION_H + +#include +#include + +#include + +class TOmxILVersion + { + +public: + + inline TOmxILVersion(TUint8 aMajor, + TUint8 aMinor, + TUint8 aRev, + TUint8 aStep); + + + inline operator OMX_VERSIONTYPE&(); + +#ifdef _OMXIL_COMMON_SPEC_VERSION_CHECKS_ON + inline TBool operator!=(const OMX_VERSIONTYPE& aVer) const; + + inline TBool operator==(const OMX_VERSIONTYPE& aVer) const; +#endif + +private: + + OMX_VERSIONTYPE iSpecVersion; + + }; + +class TOmxILSpecVersion : public TOmxILVersion + { + +public: + + static const TUint8 KSpecVersionMajor = OMX_VERSION_MAJOR; + static const TUint8 KSpecVersionMinor = OMX_VERSION_MINOR; + static const TUint8 KSpecVersionRevision = OMX_VERSION_REVISION; + static const TUint8 KSpecVersionStep = OMX_VERSION_STEP; + +public: + + inline TOmxILSpecVersion(); + + }; + +inline +TOmxILVersion::TOmxILVersion(TUint8 aMajor, + TUint8 aMinor, + TUint8 aRev, + TUint8 aStep) + { + iSpecVersion.s.nVersionMajor = aMajor; + iSpecVersion.s.nVersionMinor = aMinor; + iSpecVersion.s.nRevision = aRev; + iSpecVersion.s.nStep = aStep; + } + +inline +TOmxILVersion::operator OMX_VERSIONTYPE&() + { + return iSpecVersion; + } + +#ifdef _OMXIL_COMMON_SPEC_VERSION_CHECKS_ON +inline TBool +TOmxILVersion::operator!=( + const OMX_VERSIONTYPE& aVer) const + { + return !operator==(aVer); + } + +inline TBool +TOmxILVersion::operator==( + const OMX_VERSIONTYPE& aVer) const + { + if (iSpecVersion.s.nVersionMajor == aVer.s.nVersionMajor && + iSpecVersion.s.nVersionMinor == aVer.s.nVersionMinor && + iSpecVersion.s.nRevision == aVer.s.nRevision && + iSpecVersion.s.nStep == aVer.s.nStep) + { + return ETrue; + } + return EFalse; + } +#endif + +inline +TOmxILSpecVersion::TOmxILSpecVersion() + : + TOmxILVersion(KSpecVersionMajor, + KSpecVersionMinor, + KSpecVersionRevision, + KSpecVersionStep) + { + } + +#endif // OMXILSPECVERSION_H +