ImagePrint/ImagePrintEngine/DeviceProtocols/dpof/inc/cprintercapabilities.h
branchGCC_SURGE
changeset 25 59ea2209bb67
parent 23 08cc4cc059d4
parent 15 a92d00fca574
--- a/ImagePrint/ImagePrintEngine/DeviceProtocols/dpof/inc/cprintercapabilities.h	Fri Jun 11 16:24:10 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,92 +0,0 @@
-/*
-* Copyright (c) 2004-2007 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:  Contains the CPrinterCapabilities class definition.
-*
-*/
-
-
-#ifndef CPRINTERCAPABILITIES_H
-#define CPRINTERCAPABILITIES_H
-
-#include <e32base.h>
-#include <barsread.h>
-
-#include "ccapabilityarray.h"
-
-/**
- *	@brief Class that stores a printer class capabilities in full detail.
- *
- *	class PrinterCapabilities - An array which holds pointers to capabilities that 
- *	exist in the CapabilitiesArray(s).  Each printer that is found will have it's own
- *	PrinterCapabilities object, and when the PrinterCapability functions are called from
- *	the ClientAPI, the data is obtained directly from this PrinterCapabilities class.
- *	Different printers may refer back to the same object from the capabilities Array.  
- *	When the PrinterCapabilities object is created, it will contain the default 
- *	capabilities and current settings.  If the printer is selected for the print job,
- *	the settings and configuration may change to reflect the current print job settings.
- *	
- *	BUILDING PRINTER CAPABILITIES
- *	Each resource contains a printerclass field, which identifies which class of printer this 
- *	capability is defined for.  When a printer is discovered and a new PrinterCapabilities 
- *	object is created,  the CapabilitiyArray is searched for capabilites with that class to 
- *	add.  This occurs in the BuildCCapabilityArray function. 
- *
- *	While a resource file can have the same capabilitiy defined multiple times for multiple 
- *	PrinterClasses, A PrinterClass can have a capability defined only once for the class.
- *	One of the classes is "ELinked".  Capabilities of this class are dependent upon the current
- *	value of other capabilities and can be linked into one or more other PrinterCapability arrays.
- *	Each enumerated value in the resource is a value pair, with the second number being a link code.
- *	If non-zero, then the resource with right LinkID is also added to the PrinterCapabilites.
- *	When SetCurrentCapability is called and a current value is changed, the linked capability must
- *	also be checked to see if it is changed.  
- *
- *	Note that setting the current value can only occur for the current print job, but when it does
- *	the capabilities for a particular printer can actually change during the life of the job,
- *	requiring the application to get the printer capabilities multiple times.  
- *	Notes on implementation Limitations:  
- *
- *	The current implementation uses one and only one CapabilitiesInfo object for
- *	each capabiltiy described in the resource file.  All references to the capability
- *	refer back to this object.  This is fine as long as there is only one print job.
- *	When we have multiple print jobs, this will not work for two reasons.  
- *
- *	1 - There could be multiple current settings fora particular capability. 
- *
- *	2 - Different jobs could configure linked capabilities for a printer. 
- */
-class CPrinterCapabilities : public CBase
-	{
-	public:
-		static CPrinterCapabilities* NewL(CCapabilityArray* aSourceArray, TInt aPrinterClass);
-		~CPrinterCapabilities();
-		TInt Count() const;			
-		void GetIDs(RArray<TInt>& aCapabilityIDs) const;
-		TInt GetCapability(TInt aCapabilityID, TPrintCapability& aCapability) const;
-		TInt SetCurrentValueL(TInt aCapabilityID, TInt aValue);
-		TBool GetCurrentValue(TInt aCapabilityID, TInt &aCapabilityValue) const;
-
-	private:
-		CPrinterCapabilities(CCapabilityArray* aSourceArray, TInt aPrinterClass);
-		void ConstructL();
-		void BuildCapabilityArrayL();
-
-	private:
-		TInt iPrinterClass;
-		RPointerArray<CCapabilityInfo> iPrinterDataArray;
-		CCapabilityArray* iSourceArray;
-	};
-
-#endif // CPRINTERCAPABILITIES_H
-
-//  End of File