epoc32/include/mmf/devvideo/devvideoplay.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
--- a/epoc32/include/mmf/devvideo/devvideoplay.h	Wed Mar 31 12:27:01 2010 +0100
+++ b/epoc32/include/mmf/devvideo/devvideoplay.h	Wed Mar 31 12:33:34 2010 +0100
@@ -1,9 +1,9 @@
 // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
-// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
+// under the terms of "Eclipse Public License v1.0"
 // which accompanies this distribution, and is available
-// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
 //
 // Initial Contributors:
 // Nokia Corporation - initial contribution.
@@ -171,6 +171,8 @@
 	IMPORT_C TVideoInputBuffer();
 
 public:
+	/**
+	 */
 	enum TVideoBufferOptions
 		{
 		/** The sequence number field is valid. */
@@ -178,7 +180,11 @@
 		/** The decoding timestamp field is valid */
 		EDecodingTimestamp  = 0x00000002,
 		/** The presentation timestamp field is valid.*/
-		EPresentationTimestamp = 0x00000004
+		EPresentationTimestamp = 0x00000004,
+		/** Content protected pictures cannot be displayed on unprotected 
+		    external displays such as TV-out.
+		*/
+		EContentProtected = 0x00000008
 		};
 
 	/**
@@ -433,6 +439,23 @@
 			KErrNoMemory when there is no memory to expand the list."
 	*/
 	IMPORT_C void GetSupportedScreensL(RArray<TInt>& aSupportedScreens) const;
+	
+	/** Sets a flag indicating whether the PostProcessor supports per picture content protection.
+	    E.g. Where content protection within a video stream can alter.
+	 @param "aSetting" "Set to TRUE to indicate PostProcessor supports content protection. 
+	 @See TVideoPicture::TVideoPictureOptions::EContentProtected 
+	 @See TVideoInputBuffer::TVideoBufferOptions::EContentProtected 
+	*/
+	IMPORT_C void SetSupportsContentProtected(const TBool aSetting);
+		
+	/** Returns whether the PostProcessor supports per picture content protection.
+	    E.g. Where content protection within a video stream can alter.
+	 @return "True if the PostProcessor supports Content Protection." 
+	 @See TVideoPicture::TVideoPictureOptions::EContentProtected
+	 @See TVideoInputBuffer::TVideoBufferOptions::EContentProtected
+	*/
+	IMPORT_C TBool SupportsContentProtected() const;
+	
 private:
 	CPostProcessorInfo(TUid aUid,
 					   TVersion aVersion,
@@ -465,6 +488,7 @@
 	RArray<TUint32> iSupportedCombinations;
 	RArray<TScaleFactor> iSupportedScaleFactors;
 	RArray<TInt> iSupportedScreens;
+	TBool iSupportsContentProtected;
 	};
 
 
@@ -668,6 +692,23 @@
 			KErrNoMemory when there is no memory to expand the list."
 	*/
 	IMPORT_C void GetSupportedScreensL(RArray<TInt>& aSupportedScreens) const;
+
+	/** Sets a flag indicating whether the Decoder supports per picture content protection.
+	    E.g. Where content protection within a video stream can alter.
+	 @param "aSetting" "Set to TRUE to indicate decoder supports content protection. 
+	 @See TVideoPicture::TVideoPictureOptions::EContentProtected 
+	 @See TVideoInputBuffer::TVideoBufferOptions::EContentProtected 
+	*/
+	IMPORT_C void SetSupportsContentProtected(const TBool aSetting);
+		
+	/** Returns whether the Decoder supports per picture content protection.
+	    E.g. Where content protection within a video stream can alter.
+	 @return "True if the Decoder supports Content Protection." 
+	 @See TVideoPicture::TVideoPictureOptions::EContentProtected
+	 @See TVideoInputBuffer::TVideoBufferOptions::EContentProtected
+	*/
+	IMPORT_C TBool SupportsContentProtected() const;
+
 private:
 	CVideoDecoderInfo(TUid aUid,
 					  TVersion aVersion,
@@ -700,6 +741,7 @@
 	HBufC8* iCodingStandardSpecificInfo;
 	HBufC8* iImplementationSpecificInfo;
 	RArray<TInt> iSupportedScreens;
+	TBool iSupportsContentProtected;
 	};
 
 
@@ -2022,9 +2064,8 @@
 	*/
 	virtual void MdvpoStreamEnd() = 0;
 	};
-
-
-
+	
+	
 #include <mmf/devvideo/devvideoplay.inl>
 
 #endif