contentmgmt/contentaccessfwfordrm/inc/agentfactory.h
branchRCL_3
changeset 61 641f389e9157
parent 45 030c4fbc13d7
child 62 a71299154b21
equal deleted inserted replaced
60:f18401adf8e1 61:641f389e9157
     1 /*
     1 /*
     2 * Copyright (c) 2003 - 2007,2009 Nokia Corporation and/or its subsidiary(-ies).
     2 * Copyright (c) 2003 - 2007,2009-2010 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     4 * This component and the accompanying materials are made available
     5 * under the terms of the License "Eclipse Public License v1.0"
     5 * under the terms of the License "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
   116 		 
   116 		 
   117 		 @param aVirtualPath The content object to read from
   117 		 @param aVirtualPath The content object to read from
   118 		 @param aShareMode The share mode for opening the file containing the content object
   118 		 @param aShareMode The share mode for opening the file containing the content object
   119 		 @return A pointer to the CAgentData object.
   119 		 @return A pointer to the CAgentData object.
   120 		 */
   120 		 */
   121 		virtual CAgentData* CreateDataConsumerL(const TVirtualPathPtr& aVirtualPath, TContentShareMode aShareMode)  = 0;
   121 		 virtual CAgentData* CreateDataConsumerL(const TVirtualPathPtr& aVirtualPath, TContentShareMode aShareMode)  = 0;
   122 
   122 
   123 		/**
   123 		/**
   124 		 Factory function creates a CAgentData object for reading 
   124 		 Factory function creates a CAgentData object for reading 
   125 		 from a content object.
   125 		 from a content object.
   126 		 
   126 		 
   171 		@return A pointer to a ContentAccess::CAgentRightsManager object.
   171 		@return A pointer to a ContentAccess::CAgentRightsManager object.
   172 		@leave KErrCANotSupported If the agent does not provide any rights management functions
   172 		@leave KErrCANotSupported If the agent does not provide any rights management functions
   173 		*/
   173 		*/
   174 		virtual CAgentRightsManager* CreateRightsManagerL() = 0;
   174 		virtual CAgentRightsManager* CreateRightsManagerL() = 0;
   175 
   175 
       
   176 #ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT		
       
   177 		/**
       
   178 		Factory function creates a CAgentData object from header data of WMDRM file or stream content
       
   179 		for reading/decrypting WMDRM data packets.
       
   180 		 
       
   181 		@param aHeaderData	Header data of WMDRM file or stream content.
       
   182 		@return				A pointer to CAgentData object.
       
   183 		*/
       
   184 		IMPORT_C virtual CAgentData* CreateDataConsumerL(const TDesC8& aHeaderData);
       
   185 		
       
   186 		/**
       
   187 		Factory function creates a CAgentContent object from header data of WMDRM file or stream content
       
   188 		for browsing WMDRM content.
       
   189 		 
       
   190 		@param aHeaderData	Header data of WMDRM file or stream content.
       
   191 		@return 			A pointer to CAgentContent object.
       
   192 		*/
       
   193 		IMPORT_C virtual CAgentContent* CreateContentBrowserL(const TDesC8& aHeaderData);
       
   194 #endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
       
   195 
   176 	private:
   196 	private:
   177 		// ECOM session key. This is set by 
   197 		// ECOM session key. This is set by 
   178 		// REComSession::CreateImplementationL() during construction
   198 		// REComSession::CreateImplementationL() during construction
   179 		TUid iEcomKey;
   199 		TUid iEcomKey;
   180 		};
   200 		};