ImagePrint/ImagePrintEngine/DeviceProtocols/upnpprotocolfw2/inc/mpcpobserver.h
author Pat Downey <patd@symbian.org>
Wed, 01 Sep 2010 12:30:38 +0100
branchRCL_3
changeset 28 d59c248c9d36
parent 0 d11fb78c4374
permissions -rw-r--r--
Revert incorrect RCL_3 drop: Revision: 201031 Kit: 201035

/*
* Copyright (c) 2002-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:  Declares the MPCPObserver interface class
*
*/


#ifndef MPCPOBSERVER_H
#define MPCPOBSERVER_H

#include <e32def.h>
#include <e32std.h>

class CUpnpAction;
class CUpnpService;
class CUpnpDevice;
class CUpnpHttpMessage;

/**
*  @brief A virtual MPCPObserver class.
*
*  @since Series60 3.1
*/
class MPCPObserver
    {
    public: // New interface functions

        /**
    	* CreateJobResponse callback function
        * @since Series60 3.1
        * @param aAction the action
        * @param aErrorCode System wide error code
        */
        virtual void CreateJobResponse( CUpnpAction* aAction, TInt aErrorCode ) = 0;

        /**
    	* CancelJobResponse callback function
        * @since Series60 3.1
        * @param aAction the action
        * @param aErrorCode System wide error code
        */
        virtual void CancelJobResponse( CUpnpAction* aAction, TInt aErrorCode ) = 0;

        /**
    	* GetPrinterAttributesResponse callback function
        * @since Series60 3.1
        * @param aAction the action
        * @param aErrorCode System wide error code
        */
        virtual void GetPrinterAttributesResponse( CUpnpAction* aAction, TInt aErrorCode ) = 0;

        /**
    	* GetJobAttributesResponse callback function
        * @since Series60 3.1
        * @param aAction the action
        * @param aErrorCode System wide error code
        */
        virtual void GetJobAttributesResponse( CUpnpAction* aAction, TInt aErrorCode ) = 0;

        /**
    	* GetMarginsResponse callback function
        * @since Series60 3.1
        * @param aAction the action
        * @param aErrorCode System wide error code
        */
        virtual void GetMarginsResponse( CUpnpAction* aAction, TInt aErrorCode ) = 0;

        /**
    	* GetMediaListResponse callback function
        * @since Series60 3.1
        * @param aAction the action
        * @param aErrorCode System wide error code
        */
        virtual void GetMediaListResponse( CUpnpAction* aAction, TInt aErrorCode ) = 0;


        /**
    	* StateUpdatedResponse callback function
        * @since Series60 3.1
		* @param	TDesC8& New printer state
		* @param	TDesC8& Reason for the printer state		
		* @param	TDesC8& List of job ids pending at the printer queue		
		* @param	TDesC8& The end state of last printed job. Format: 
		*					<id>,<name>,<originator>,<completed sheets>,<state>
		* @param	TDesC8& Number of the printed sheets
		* @param	TDesC8& The abort state of last aborted job. Format: 
		*					<id>,<name>,<originator>,<completed sheets>,aborted,<reason>
		* @param	TDesC8& Number of the sheets completedly received in printer
        */
        virtual void StateUpdatedResponse( const TDesC8& aPrinterState, 
                                           const TDesC8& aPrinterStateReasons, 
                                           const TDesC8& aJobIdList,
	                                       const TDesC8& aJobEndState, 
                                           const TDesC8& aJobMediaSheetsCompleted, 
                                           const TDesC8& aJobAbortState,
                                           const TDesC8& aContentCompleteList ) = 0;

        /**
    	* DeviceDiscoveredL callback function
        * @since Series60 3.1
        * @param aDevice the device discovered
        */
        virtual void DeviceDiscoveredL( CUpnpDevice* aDevice ) = 0;

        /**
    	* DeviceDisappeared callback function
        * @since Series60 3.1
        * @param aDevice the device disappeared
        */
        virtual void DeviceDisappeared( CUpnpDevice* aDevice ) = 0;

		/*
		* @function		PrinterStateUpdated
		* @description	Returns the state of the job after printer state updated 
		* @param		TDesC8& New printer state
		*/
		virtual void PrinterStateUpdated( const TDesC8& aEvent ) = 0;
		
		/*
		* @function		PrinterStateReasonsUpdated
		* @description	Returns the state of the job after printer state reason updated 
		* @param		TDesC8& Reason for the printer state		
		*/
		virtual void PrinterStateReasonsUpdated( const TDesC8& aEvent ) = 0;
		
		/*
		* @function		JobIdListUpdated
		* @description	Returns the state of the job after job ID list updated 
		* @param		TDesC8& List of job ids pending at the printer queue		
		*/
		virtual void JobIdListUpdated( const TDesC8& aEvent ) = 0;

		/*
		* @function		JobEndStateUpdatedL
		* @description	Returns the state of the job after job end state updated 
		* @param		TDesC8& The end state of last printed job. Format: 
		*						<id>,<name>,<originator>,<completed sheets>,<state>
		*/
		virtual void JobEndStateUpdated( const TDesC8& aEvent ) = 0;

		/*
		* @function		JobMediaSheetsCompletedUpdated
		* @description	Returns the state of the job after media sheets completed list updated 
		* @param		TDesC8& Number of the printed sheets
		*/
		virtual void JobMediaSheetsCompletedUpdated( const TDesC8& aEvent ) = 0;

		/*
		* @function		JobAbortStateUpdatedL
		* @description	Returns the state of the job after job abort state updated 
		* @param		TDesC8& The abort state of last aborted job. Format: 
		*						<id>,<name>,<originator>,<completed sheets>,aborted,<reason>
		*/
		virtual void JobAbortStateUpdated( const TDesC8& aEvent ) = 0;

		/*
		* @function		ContentCompleteListUpdated
		* @description	Returns the state of the job after content completed list updated 
		* @param		TDesC8& Number of the sheets completedly received in printer
		*/
		virtual void ContentCompleteListUpdated( const TDesC8& aEvent ) = 0;

    };

#endif // MPCPOBSERVER_H

// End Of File