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.
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.
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.
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.
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.