CPrinterDriver Class Reference

class CPrinterDriver : public CBase

Provides access to a store containing printer specification data.

Printer specification data is held as a direct file store, and usually has a .pdr file type.

A printer driver is implemented as two files: a PDR file containing the printer specification data and a PDL file containing the code to link the printer with the graphics printing system.

The printer specification data is generated by compiling a text file (a .pd file type) using the pdrtran tool. Printer specification data defines:

the name of the associated PDL

a list of one or more models supported by this driver, identified by name and UID

device information such as the size of the device, typeface information for each model, including which typefaces are supported, the heights available in each typeface and the width of each character in a font.

CPrinterDriverUI

Inherits from

Constructor & Destructor Documentation

CPrinterDriver()

CPrinterDriver()[private]

~CPrinterDriver()

IMPORT_C~CPrinterDriver()

Destructor.

It frees all resources owned by the object, prior to its destruction. In particular, it closes the printer specification data store and any open session with the file server.

Member Functions Documentation

Close()

IMPORT_C voidClose()

Closes the printer specification data store and frees resources.

An open session with the file server remains open.

CreatePrinterDeviceL(TUid)

IMPORT_C CPrinterDevice *CreatePrinterDeviceL(TUidaModelUid)

Creates the physical graphics device to be used for printing.

Parameters

TUid aModelUidThe UID of a specific model which is defined in the printer specification data.

CreatePrinterDriverUIL()

IMPORT_C CPrinterDriverUI *CreatePrinterDriverUIL()

Constructs a printer specific user interface.

The user interface object is optional, but if it exists, it is implemented as part of a UDL (i.e. a UI DLL).

DeletePrinterDevice()

voidDeletePrinterDevice()[private]

DoCreatePrinterDeviceL(TUid)

voidDoCreatePrinterDeviceL(TUidaModelUid)[private]

Parameters

TUid aModelUid

DoOpenPdrL(const TDesC &)

voidDoOpenPdrL(const TDesC &aName)[private]

Parameters

const TDesC & aName

LoadLibraryL(RLibrary &, const TDesC &, TUid)

voidLoadLibraryL(RLibrary &aLibrary,
const TDesC &aExt,
TUidaUid2
)[private]

Parameters

RLibrary & aLibrary
const TDesC & aExt
TUid aUid2

Model(TInt)

IMPORT_C TPrinterModelEntryModel(TIntaNum)const

Gets the specified printer model.

Parameters

TInt aNumAn index into the list of printer models defined in the printer specification data.

NewL()

IMPORT_C CPrinterDriver *NewL()[static]

Constructs, and returns a pointer to a new instance for accessing a printer specification data store.

NumModels()

IMPORT_C TIntNumModels()const

Gets the number of printer models defined by the printer specification.

OpenPdrL(const TDesC &)

IMPORT_C voidOpenPdrL(const TDesC &aName)

Opens the specified printer specification data store.

Parameters

const TDesC & aName

PrinterDevice()

CPrinterDevice *PrinterDevice()[inline]

Gets the associated graphics printer device.

Member Data Documentation

RFs iFs

RFs iFs[private]

TPrinterModelHeader * iModelList

TPrinterModelHeader *iModelList[private]

TInt iNumModels

TInt iNumModels[private]

RLibrary iPdlLibrary

RLibrary iPdlLibrary[private]

TFileName iPdlName

TFileName iPdlName[private]

TUid iPdlUid

TUid iPdlUid[private]

CFileStore * iPdrStore

CFileStore *iPdrStore[private]

CPrinterDevice * iPrinterDevice

CPrinterDevice *iPrinterDevice[private]

RLibrary iUdlLibrary

RLibrary iUdlLibrary[private]