Class: TPrintJobDescription

Declaration: PrintJobDescription.h

Taxonomy Categories:

Member Functions:


Interface Category:

API.

Inherits From:

MCollectible

Inherited By:

None.

Purpose:

The print job description is divided into two parts, those things related to the printer and those related to the job itself. Job-specific options are usually established by the client or user and comprise such things as: the number of copies, the cover page or end page, and the page range. Alternatively, those things that affect the printer can only be set by the user in a printer-specific dialog. Printer job options can comprise such things as: the type of document finishing (staple, collate, print quality, and so on), the print quality (good, better, best, and so on), the resolution, and the paper tray selection. Note that a printer handler developer and an application developer are considered to be separate developers. The application developer controls a print job through a TClientJobDescription and a printer handler developer controls a print job through a TDeviceJobDescription. The two subcomponents of a print job are TClientJobDescription and TDeviceJobDescription. Both of these are combined to create a complete TPrintJobDescription. In this sense, TPrintJobDescription is just a container class. A device job description is obtained from a printer (see TPrinter) and cannot be defaulted. A client print job can be created by the client as a derived class or can be defaulted by the TPrintJobDescription constructor. Because the client job description and device job description are adopted by the constructor of TPrintJobDescription, clients should not create either of these objects on the stack.

Instantiation:

Allocate on the heap or the stack.

Deriving Classes:

Not expected to be derived from. Clients should derive from TClientJobDescription or TDeviceJobDescription. If clients choose to derive from this class GetClientJobDescription or GetDeviceJobDescription may be overridden as long as they return valid objects for their respective return values.

Concurrency:

Not multithread safe.

Resource Use:

No special requirements.

Member Function: TPrintJobDescription::TPrintJobDescription

  1. TPrintJobDescription (const TPrintJobDescription &)
  2. TPrintJobDescription (TDeviceJobDescription * adoptDevice, TClientJobDescription * adoptClient =NIL)
  3. TPrintJobDescription ()

Interface Category:

API.

Purpose:

  1. Copy constructor.
  2. The main constructor used by API clients to create this object.
  3. Default constructor.

Calling Context:

  1. Called to copy an object.
  2. Called by API clients to put together the client and device job descriptions into one TPrintJobDescription object.
  3. Only for internal use by Resurrect. Developers should treat as protected.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TPrintJobDescription::~TPrintJobDescription

virtual ~ TPrintJobDescription ()

Interface Category:

API.

Purpose:

Destructor.

Calling Context:

Called to destroy an object.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TPrintJobDescription::GetClientJobDescription

virtual TClientJobDescription * GetClientJobDescription () const

Interface Category:

API.

Purpose:

Returns a pointer to the (API) client's piece of the job description. Clients do not own the pointer.

Calling Context:

Call this function directly.

Parameters:

Return Value:

Returns a pointer to the TClientJobDescription object.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TPrintJobDescription::GetDeviceJobDescription

virtual TDeviceJobDescription * GetDeviceJobDescription () const

Interface Category:

API.

Purpose:

Returns a pointer to the client's piece of the job description. Clients do not_ own the pointer.

Calling Context:

Call this function directly.

Parameters:

Return Value:

Returns a pointer to the TDeviceJobDescription object.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TPrintJobDescription::operator=

TPrintJobDescription & operator =(const TPrintJobDescription &)

Interface Category:

API.

Purpose:

Assignment operator.

Calling Context:

Called when an object is assigned to another compatible object.

Parameters:

Return Value:

A non-const reference to the left-hand side object.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TPrintJobDescription::Hash

virtual long Hash () const

Interface Category:

API.

Purpose:

Generates a hash value.

Calling Context:

Called to generate a hash value.

Parameters:

Return Value:

A long hash value.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TPrintJobDescription::operator<<=

virtual TStream & operator <<= (TStream & fromwhere)

Interface Category:

API.

Purpose:

Stream-in operator.

Calling Context:

Called to stream in data.

Parameters:

Return Value:

Returns a reference to the stream the object streams itself in from.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TPrintJobDescription::operator>>=

virtual TStream & operator >>=(TStream & towhere) const

Interface Category:

API.

Purpose:

Stream-out operator.

Calling Context:

Called to stream out data.

Parameters:

Return Value:

Returns a reference to the stream the object streams itself out to.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.