os/graphics/printingservices/printerdrivers/canon/CANON.H
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 // Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 //
    15 
    16 #ifndef CANON_H
    17 #define CANON_H
    18 
    19 #include <pdrstore.h>
    20 
    21 /**
    22 @internalComponent
    23 */
    24 const TInt KCanonNumScanLinesPerBand = 24;
    25 const TInt KCanonBytesPerDotColumn = 3;
    26 
    27 class CBandedDevice;
    28 
    29 /**
    30 @internalComponent
    31 */
    32 IMPORT_C CPrinterDevice* NewPrinterDeviceL();
    33 
    34 /**
    35 @internalComponent
    36 */
    37 enum TCanonFlags
    38 	{
    39 	ECanonLandscapeNotAvailable = 1
    40 	};
    41 
    42 class CCanonDevice : public CFbsDrvDevice
    43 /**
    44 @internalComponent
    45 */
    46 	{
    47 public:
    48 	CCanonDevice();
    49 	~CCanonDevice();
    50 	TInt CreateContext(CGraphicsContext*& aGC);
    51 	void CreateControlL(CPrinterPort* aPrinterPort);
    52 	};
    53 
    54 class CCanonControl : public CFbsDrvControl
    55 /**
    56 @internalComponent
    57 */
    58 	{
    59 public:
    60 	static CCanonControl* NewL(CPdrDevice* aPdrDevice, CPrinterPort* aPrinterPort, CStreamStore& aStore, TStreamId aResourcesStreamId);
    61 	~CCanonControl();
    62 	// print control functions
    63 protected:
    64 	CCanonControl(CPdrDevice* aPdrDevice, CPrinterPort* aPrinterPort);
    65  	void ConstructL(CStreamStore& aStore, TStreamId aResourcesStreamId);
    66 
    67 	void OutputBandL();
    68 	void MoveToL(const TPoint& aPoint);
    69 	void MoveByL(const TPoint& aPoint);
    70 	TBool TransformBuffer();
    71 
    72 protected:
    73 	TBuf8<KCanonNumScanLinesPerBand >> 3> iScanLine;
    74 	};
    75 
    76 #endif