epoc32/include/caf/agent.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
child 4 837f303aceeb
permissions -rw-r--r--
Final list of Symbian^2 public API header files
     1 /*
     2 * Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     5 * under the terms of the License "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description: 
    15 *
    16 */
    17 
    18 
    19 
    20 
    21 /**
    22  @file
    23  @publishedPartner
    24  @released
    25 */
    26 
    27 #ifndef __CAF_AGENT_H__
    28 #define __CAF_AGENT_H__
    29 
    30 #include <e32base.h>
    31 
    32 /** Maximum length of an Agent name, a longer name will be truncated */
    33 const TInt KMaxAgentNameLength = KMaxFileName;
    34 const TInt KMaxSIDLength = 8;
    35 
    36 namespace ContentAccess
    37 	{
    38 
    39 	/** Represents the name of a single CAF agent. This allows 
    40 	applications to reference a particular agent within the 
    41 	Content Access Framework.
    42 
    43 	@publishedPartner
    44 	@released
    45 	*/
    46 	class TAgent 
    47 		{
    48 	public:
    49 		/** The name of the agent 
    50 		@return The name of the agent
    51 		*/
    52 		IMPORT_C const TDesC& Name() const;
    53 
    54 		/** The UID of the agent DLL
    55 		@return The UID of the agent ECOM implementation DLL 
    56 
    57 		@internalComponent
    58 		@released
    59 		*/
    60 		TUid ImplementationUid() const;
    61 
    62 		/** Set the value of this TAgent
    63 		@param aName The name of the agent
    64 		@param aUid The agent implementation Uid
    65 		
    66 		@internalComponent
    67 		@released
    68 		*/
    69 		void SetValue(const TDesC& aName, TUid aUid);
    70 
    71 	private:
    72 
    73 		TBuf <KMaxAgentNameLength> iName;
    74 		TUid iImplementationUid;
    75 		};
    76 	}
    77 
    78 #endif