Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

vrj::DrawManager Class Reference

Abstract base class for API-specific Draw Manager. More...

#include <DrawManager.h>

Inheritance diagram for vrj::DrawManager:

Inheritance graph
[legend]
Collaboration diagram for vrj::DrawManager:

Collaboration graph
[legend]
List of all members.

Public Methods

 DrawManager ()
virtual ~DrawManager ()
virtual void draw ()=0
 Enable a frame to be drawn. More...

virtual void sync ()=0
 Blocks until the end of the frame. More...

virtual void setApp (App *app)=0
 Sets the application with which the Draw Manager will interact. More...

virtual void initAPI ()=0
 Initializes the drawing API (if not already running). More...

virtual void addDisplay (Display *disp)=0
 Callback when display is added to Display Manager. More...

virtual void removeDisplay (Display *disp)=0
 Callback when display is removed to Display Manager. More...

virtual void closeAPI ()=0
 Shuts down the drawing API. More...

void setDisplayManager (DisplayManager *dispMgr)
 Setter for Display Manager variable. More...

DisplayManagergetDisplayManager ()
friend VJ_API (std::ostream &) operator<<(std

Protected Attributes

DisplayManagermDisplayManager
 The display manager dealing with. More...


Detailed Description

Abstract base class for API-specific Draw Manager.

Concrete classes are resonsible for all rendering.

Date:
9-7-97

Definition at line 53 of file DrawManager.h.


Constructor & Destructor Documentation

vrj::DrawManager::DrawManager   [inline]
 

Definition at line 56 of file DrawManager.h.

00057       : mDisplayManager(NULL)
00058    {
00059       /* Do nothing. */ ;
00060    }

virtual vrj::DrawManager::~DrawManager   [inline, virtual]
 

Definition at line 62 of file DrawManager.h.

00063    {
00064       /* Do nothing. */ ;
00065    }


Member Function Documentation

virtual void vrj::DrawManager::draw   [pure virtual]
 

Enable a frame to be drawn.

Takes a jccl::Configuration and extracts API-specific stuff.

Implemented in vrj::GlDrawManager.

virtual void vrj::DrawManager::sync   [pure virtual]
 

Blocks until the end of the frame.

Postcondition:
The frame has been drawn.

Implemented in vrj::GlDrawManager.

virtual void vrj::DrawManager::setApp App   app [pure virtual]
 

Sets the application with which the Draw Manager will interact.

Note:
The member variable is not in the base class because its "real" type is only known in the derived classes.

Implemented in vrj::GlDrawManager.

virtual void vrj::DrawManager::initAPI   [pure virtual]
 

Initializes the drawing API (if not already running).

Note:
If the draw manager should be an active object, start the process here.

Implemented in vrj::GlDrawManager.

virtual void vrj::DrawManager::addDisplay Display   disp [pure virtual]
 

Callback when display is added to Display Manager.

Implemented in vrj::GlDrawManager.

virtual void vrj::DrawManager::removeDisplay Display   disp [pure virtual]
 

Callback when display is removed to Display Manager.

Implemented in vrj::GlDrawManager.

virtual void vrj::DrawManager::closeAPI   [pure virtual]
 

Shuts down the drawing API.

Note:
If it was an active object, kill process here.

Implemented in vrj::GlDrawManager.

void vrj::DrawManager::setDisplayManager DisplayManager   dispMgr
 

Setter for Display Manager variable.

Definition at line 40 of file DrawManager.cpp.

References mDisplayManager.

00041 { mDisplayManager = _dispMgr; }

DisplayManager * vrj::DrawManager::getDisplayManager  
 

Definition at line 43 of file DrawManager.cpp.

References mDisplayManager.

00044 {
00045    return mDisplayManager;
00046 }

vrj::DrawManager::VJ_API std::ostream &    [inline]
 

Definition at line 115 of file DrawManager.h.

00119    {
00120       out << "vrj::DrawManager: outstream\n";  // Set a default
00121    }


Member Data Documentation

DisplayManager* vrj::DrawManager::mDisplayManager [protected]
 

The display manager dealing with.

Definition at line 124 of file DrawManager.h.

Referenced by getDisplayManager, vrj::PfDrawManager::initAPI, setDisplayManager, and vrj::PfDrawManager::updatePfProjections.


The documentation for this class was generated from the following files:
Generated on Sun May 2 15:11:07 2004 for VR Juggler by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002