Class: TVideoDeviceDriver

Declaration: VideoDeviceDriver.h

Taxonomy Categories:

Member Functions:


Interface Category:

API.

Inherits From:

MRemoteDispatcher

Inherited By:

TFrameBufferVideoDeviceDriver

Purpose:

TVideoDeviceDriver is an abstract base class defining protocol for access to the video device's interrupt level routines and the actual hardware video device. The TVideoDeviceDriver derived classes are servers (remote dispatchers.)

Instantiation:

Allocate on the heap or the stack. TVideoDeviceDriver is the abstract base class to the video device drivers. Derived classes are instantiated directly by the configuration manager that has located the video device/device driver pair. For example, the NuBus configuration access manager may find a frame buffer based video card. It would then start the FrameBufferVideoDeviceAccessManager, which instantiates the TFrameBufferVideoDeviceDriver object. The FrameBufferVideoDeviceAccessManager serves just as a main() for the TFrameBufferVideoDeviceDriver server object, which is derived from this base class.

Deriving Classes:

Derive a class from TVideoDeviceDriver to create a device driver with the functionality that a different video device may need. For example, TLiveVideoVideoDeviceDriver may be derived directly from the abstract base class TVideoDeviceDriver and inherit all of the TVideoDeviceDriver request handlers. It also adds a set of request handler member functions for Video overlay support, alpha channel video codes, and live video register support. In general, derived classes may override any of the virtual functions and add request handlers. However, derived classes are only forced to override the pure virtual members.

Concurrency:

Multithread safe.

Resource Use:

No special requirements. This is a server type object that should exist until system shutdown.

Member Function: TVideoDeviceDriver::TVideoDeviceDriver

TVideoDeviceDriver ()

Interface Category:

API.

Purpose:

Default constructor. This is an abstract base class and should not be called directly by external functions.

Calling Context:

Called by the stream-in operators and derived type constructors.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TVideoDeviceDriver::GetScreenWidth

virtual GCoordinate GetScreenWidth () const

Interface Category:

API.

Purpose:

This is called internally when setting up the Animation and GrafDevice objects. These graphics objects need to have knowledge of this aspect of the screen geometry.

Calling Context:

The Video framework itself, while setting up the Graphics system, should call this.

Parameters:

Return Value:

Returns the GCoordinate value for the screen width.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TVideoDeviceDriver::GetScreenHeight

virtual GCoordinate GetScreenHeight () const

Interface Category:

API.

Purpose:

This is called internally when setting up the Animation and GrafDevice objects. These graphics objects need to have knowledge of this aspect of the screen geometry.

Calling Context:

The Video framework itself, while setting up the Graphics system, should call this.

Parameters:

Return Value:

Returns the GCoordinate value for the screen height.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Multithread safe.

Other Considerations:

None.

Member Function: TVideoDeviceDriver::~TVideoDeviceDriver

virtual ~ TVideoDeviceDriver ()

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:

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.