diff -r 26673e532f65 -r 159fc2f68139 ImagePrint/ImagePrintEngine/ImagePrintServer/inc/rimageprintclient.h --- a/ImagePrint/ImagePrintEngine/ImagePrintServer/inc/rimageprintclient.h Tue May 25 12:42:41 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,310 +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: -* -*/ - - -#ifndef RIMAGEPRINTCLIENT_H -#define RIMAGEPRINTCLIENT_H - -#include - -class TPrintCapability; -class TIdleGuardData; -class TDiscoveryGuardData; -class TJobGuardData; - -class RImagePrintClient : public RSessionBase - { - public: - - /** - * Constructor - */ - IMPORT_C RImagePrintClient(); - - /** - * Connect to the ImagePrint server - * - * @return KErrNone if successful, otherwise another of the system-wide error codes - */ - IMPORT_C TInt ConnectL(); - - /** - * Close the session - */ - IMPORT_C void Close(); - - /** - * Count connections to the server ( all clients in all prosesses ) - * - * @param aConnections holder for connnections count - * @return KErrNone if successful, otherwise another of the system-wide error codes - */ - IMPORT_C TInt CountConnections( TInt& aConnections ) const; - - /** - * Inform server about foreground/background state of the client - * - * @param aFg foreground/background flag - * @return KErrNone if successful, otherwise another of the system-wide error codes - */ - IMPORT_C TInt SetForeground( TInt aFg ) const; - - - /** - * Reserves ImagePrint engine for this client - * - * @return KErrNone if successful, KErrInUse if used by another client - */ - IMPORT_C TInt ReserveEngine() const; - - /** - * Releases ImagePrint engine - * - * @return KErrNone if successful, KErrInUse if used by another client - */ - IMPORT_C TInt ReleaseEngine() const; - - /** - * Get protocols supported by ImagePrint engine - * - * @return OR:ed protocols or KErrInUse if used by another client - */ - IMPORT_C TInt SupportedProtocols() const; - - /** - * Gets the number of pages to be printed - * - * @return Number of pages to print or KErrInUse if used by another client - */ - IMPORT_C TInt GetNumPrintPages() const; - - /** - * Gets the status of the printing job created - * - * @return Printing job status or KErrInUse if used by another client - */ - IMPORT_C TInt GetJobStatus() const; - - /** - * Gets the status of the printer - * - * @param aPrinterID The exposed ID of the printer the client wants to know about. - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt GetPrinterStatus( TInt aPrinterID ) const; - - /** - * Cancel discovery - * - * @return KErrNone or KErrInUse if used by another client - */ - IMPORT_C TInt CancelDiscovery() const; - - /** - * Submits a print job already created. The actual job execution is asynchronous so this - * function returns immediately. If successful, notification of job status and job - * completion is received by the client through the MPrintEventObserver. - * - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt SubmitPrintJob() const; - - /** - * Cancels the print job. This is an asynchronous command. MPrintEventObserver::PrintJobProgressEvent - * will be called with the status of TPrintJobProgressEventStatus::EDone when the cancellation - * is completed. The notification can potentially be received by the client before - * this command returns to the client. - * - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt CancelPrintJob() const; - - /** - * Continues printing and / or submitting a print job. - * - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt ContinuePrintJob() const; - - /** - * Removes a specified cached printer. - * - * @param aPrinterID The exposed ID of the printer the client wants to remove. - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt RemoveCachedPrinter( TInt aPrinterID ) const; - - /** - * Gets the icon representing a given layout or template. - * - * @param aTemplateID ID of the template / layout of interest. - * @param aFbsBitmapHandle Handle to the appropriate bitmap. - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt GetJobTemplateIcon( TInt aTemplateID, TInt& aFbsBitmapHandle ) const; - - /** - * Gets the number of pages in the preview. - * - * @return Number of pages in the preview. - */ - IMPORT_C TInt GetNumPreviewPages() const; - - /** - * Sets a print job setting. - * - * @param aCapabilityID ID of the capability of interest. - * @param aValue New capability value. - * @param aAffectedCapability ID of any affected capability. - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt SetJobSetting( TInt aCapabilityID, TInt aValue, TInt& aAffectedCapability ) const; - - /** - * Gets a setting configured for the created print job. - * - * @param aCapabilityID ID of the capability of interest. - * @param aValue Capability value. - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt GetJobSetting( TInt aCapabilityID, TInt& aValue ) const; - - /** - * Gets the detail of a certain capability of a certain printer. - * - * @param aPrinterID The exposed ID of the printer the client wants to know about. - * @param aCapabilityID ID of the capability of interest. - * @param aCapability Capability information. - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt GetPrinterCapability(TInt aPrinterID, TInt aCapabilityID, TPrintCapability& aCapability) const; - - /** - * Gets the IDs of the capabilities supported by the printer specified. - * - * @param aPrinterID The exposed ID of the printer the client wants to know about. - * @param aCapabilityIDs Array containing the ID's of the capabilities of the specified printer. - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt GetPrinterCapabilityIDs( TInt aPrinterID, RArray& aCapabilityIDs ) const; - - /** - * Registers the IdleObserver to send idle event notifications. Asynchronous function. - * - * @param aData place holder for idle event. On function completion contains idle event data. - * @param aStatus request status - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt RegisterIdleObserver( TIdleGuardData& aData, TRequestStatus& aStatus ); - - /** - * Cancel registering idle observer - * - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt CancelRegisterIdleObserver() const; - - /** - * Start discovery and set request for discovery event. Asynchronous function. - * - * @param aData place holder for discovery event. On function completion contains discovery event data. - * @param aProtocols OR:ed protocol ids - * @param aStatus request status - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt StartDiscovery( TDiscoveryGuardData& aData, TUint aProtocols, TRequestStatus& aStatus ); - - /** - * Set next request for discovery event. Asynchronous function. - * - * @param aData place holder for discovery event. On function completion contains discovery event data. - * @param aStatus request status - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt ContinueDiscovery( TDiscoveryGuardData& aData, TRequestStatus& aStatus ); - - /** - * Create print job and set request for print job event. Asynchronous function. - * - * @param aPrinterID printer id - * @param aData place holder for print job event. On function completion contains print job event data. - * @param aImages array of image file names - * @param aStatus request status - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt CreateJob( TInt aPrinterID, TJobGuardData& aData, RPointerArray& aImages, TRequestStatus& aStatus ); - - /** - * Set next request for print job event. Asynchronous function. - * - * @param aData place holder for print job event. On function completion contains print job event data. - * @param aStatus request status - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt ContinueCreateJob( TJobGuardData& aData, TRequestStatus& aStatus ); - - /** - * Cancel starting discovery - * - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt CancelStartDiscovery() const; - - /** - * Cancel creating print job - * - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt CancelCreateJob() const; - - /** - * PictBridge USB mode checker - * - * @return TInt value more than 0, if PictBridge USB mode is on; 0 if off; negative value if error - */ - IMPORT_C TInt IsPictBridgeMode() const; - - /** - * Set number of copies - * - * @param aArray array of number of copies elements. Each array element corresponds to the array - * of image file names of created print job - * @return Any standard Symbian error code or error codes [ KErrInvalidSequence (-50) / KErrInvalidData (-51) ]. - */ - IMPORT_C TInt SetNumberOfCopies( const RArray& aArray ) const; - - public: - - /** - * Version getter - * - * @return version of the client - */ - TVersion Version() const; - - private: - - TPtr8 iDicsoveryDataPtr; - TPtr8 iIdleDataPtr; - TPtr8 iJobDataPtr; - TPrintCapability* iCapability; - }; - - -#endif // RIMAGEPRINTCLIENT_H - -// End of File