Loading...
Searching...
No Matches
BALL::VIEW::GLDisplayList Class Reference
Visualisation » Renderer

`#include <BALL/VIEW/RENDERING/glDisplayList.h>`

## Classes

class | NestedDisplayList
class | NoDisplayListAvailable
class | DisplayListRedeclaration

## Public Types

Type Definitions.
typedef unsigned long | GLList

## Public Member Functions

Constructors
| GLDisplayList ()
Destructors
virtual | ~GLDisplayList ()
virtual void | clear ()
Accessors: inspectors and mutators
void | startDefinition ()
void | endDefinition ()
void | draw ()
void | useCompileMode ()
void | useCompileAndExecuteMode ()
Predicates
bool | isCompileMode () const
bool | isCompileAndExecuteMode () const

## Static Public Attributes

Predefined static values.
static const GLList | DISPLAYLIST_NOT_DEFINED

## debuggers and diagnostics

virtual bool | isValid () const
virtual void | dump (std::ostream &s=std::cout, Size depth=0) const

## Detailed Description

GLDisplayList class. The class GLDisplayList is a container for graphical objects. Graphical objects can be drawn directly to the screen or they can be stored in a display list for faster drawing afterwards. This class provides the means for storing graphical objects in a own display list. This class is a wrapper class for the OpenGL display list mechanims. It defines some useful methods for easy creation of a display list and handles errors that can occur when using display lists. See the OpenGL defintion of display lists for further information concerning display lists.

Definition at line 31 of file glDisplayList.h.

## Member Typedef Documentation

## GLList

typedef unsigned long BALL::VIEW::GLDisplayList::GLList

GLList definition. A display list is stored as a number. For convienence a type is declared that represents such a display list.

Definition at line 45 of file glDisplayList.h.

## Constructor & Destructor Documentation

## GLDisplayList()

BALL::VIEW::GLDisplayList::GLDisplayList | ( |  | ) |

Default Constructor. There is no copy constructor because the OpenGL display lists cannot be copied. The state of this glDisplayList is set to:

- display list empty
- use compile mode instead of compile and execute mode

## ~GLDisplayList()

virtual BALL::VIEW::GLDisplayList::~GLDisplayList | ( |  | ) |

virtual

Destructor. Calls clear()

## Member Function Documentation

## clear()

virtual void BALL::VIEW::GLDisplayList::clear | ( |  | ) |

virtual

Explicit default initialization. Resets the mode of this glDisplayList to compile.

## draw()

void BALL::VIEW::GLDisplayList::draw | ( |  | ) |

Draw the display list. If this method is called the graphical representation of this will be drawn. Precondition: this glDisplayList has a graphical representation defined before by startDefinition and endDefinition.

See also
  startDefinition
  endDefinition

## dump()

virtual void BALL::VIEW::GLDisplayList::dump | ( | std::ostream & | s = std::cout,
|  | Size | depth = 0 ) const

virtual

Internal value dump. Dump the current state to the output ostream s with dumping depth depth.

Parameters

  s | output stream where to output the state of this glDisplayList
  depth | the dumping depth

## endDefinition()

void BALL::VIEW::GLDisplayList::endDefinition | ( |  | ) |

End the display list. This method is the end command for a display list definition.

See also
  startDefinition

## isCompileAndExecuteMode()

bool BALL::VIEW::GLDisplayList::isCompileAndExecuteMode | ( |  | ) | const

Compile and Execute mode test. Tests if this glDisplayList is set to compile and execute.

See also
  useCompileAndExecuteMode

## isCompileMode()

bool BALL::VIEW::GLDisplayList::isCompileMode | ( |  | ) | const

Compile mode test. Tests if this glDisplayList is set to compile only.

See also
  useCompileMode

## isValid()

virtual bool BALL::VIEW::GLDisplayList::isValid | ( |  | ) | const

inline virtual

Internal state and consistency self-validation. A glDisplayList is valid if a display list is already defined.

Definition at line 211 of file glDisplayList.h.

## startDefinition()

void BALL::VIEW::GLDisplayList::startDefinition | ( |  | ) |

Begin the display list. If graphical objects should be put into a display list they must be put between a startDefinition and endDefinition command. This method indicates the start of a display list. Every object drawn after this method will be compiled into this glDisplayList.

Exceptions

  BALL::VIEW::GLDisplayList::NestedDisplayList | thrown whenever a nested display list definition is tried.
  BALL::VIEW::GLDisplayList::NoDisplayListAvailable | thrown whenever no memory for the display list is available.
  BALL::VIEW::GLDisplayList::DisplayListRedeclaration | thrown whenever this glDisplayList is tried to redefine before destroy is called.

See also
  endDefinition

## useCompileAndExecuteMode()

void BALL::VIEW::GLDisplayList::useCompileAndExecuteMode | ( |  | ) |

Compile and Execute mode switch. Before the definition of the graphical objects between startDefinition and endDefinition the compile and execute mode can be set. If this method is used this glDisplayList will compile the used objects into a display list and simultaneously execute their graphical representation.

See also
  useCompileMode
  startDefinition
  endDefinition

## useCompileMode()

void BALL::VIEW::GLDisplayList::useCompileMode | ( |  | ) |

Compile mode switch. Before the definition of the graphical objects between startDefinition and endDefinition the compile mode can be set. If this method is used this glDisplayList will only compile the graphical representation of the used objects into a display list.

See also
  useCompileAndExecuteMode
  startDefinition
  endDefinition

## Member Data Documentation

## DISPLAYLIST_NOT_DEFINED

const GLList BALL::VIEW::GLDisplayList::DISPLAYLIST_NOT_DEFINED

static

Empty display list. A predefined value for an empty display list is defined as DISPLAYLIST_NOT_DEFINED.

Definition at line 56 of file glDisplayList.h.