Brief Index      Full Index      I.M. Reference

Set_Driver


Functions

void Set_Driver (int(HC_CDECL *)(HC_ANY_ARGS) action)
void QSet_Driver (const char *segment, int(HC_CDECL *)(HC_ANY_ARGS) action)
void UnSet_Driver (void)
void QUnSet_Driver (const char *segment)

Function Documentation

void Set_Driver ( int(HC_CDECL *)(HC_ANY_ARGS)  action  ) 

Provides a secret hook from the graphics database to the real world.

Parameters:
action - Address of a new action routine, a routine returning nothing.

DETAILS

A running program can ask to be informed whenever a given segment, or something relevant to a given segment, has been changed and the system is about to stop for input. (This is the method whereby segments are connected to display drivers and the outside world.)

This routine would normally never be called by the application programmer. "Driver" attributes will generally only be specified in the HOOPS machine- or site-specific start-up routine.

NOTES

"Driver" attributes can't be Styled into another segment.

RESTRICTIONS

"Driver" attributes can't be Styled into another segment.

In a scene that is a collection of windows and lights, HOOPS redraws all windows with lights, if a new window containing lights is created, or a window containing lights is copied (e.g. to another driver segment like ?hardcopy), or a window containing lights is destroyed. The problem results from lights being added to a segment (via an include or otherwise) before HOOPS has a chance to realize that the segment is a driver (and has an implicit window). The simple workaround is to set a window (-1.0, 1.0, -1.0, 1.0) immediately upon creating each new driver segment.

See also:
Reset_System, Update_Display, Open_Segment, Set_Driver_Options, Set_Rendering_Options, Set_Heuristics, Style_Segment.

void QSet_Driver ( const char *  segment,
int(HC_CDECL *)(HC_ANY_ARGS)  action 
)

Similar to Set_Driver(), but operates on a given segment rather than the currently open one.

Parameters:
segment - Name of the segment(s) to be changed.
action - Address of a new action routine, a routine returning nothing

DETAILS

No additional details. See Set_Driver()

void UnSet_Driver ( void   ) 

Removes all settings established by a previous call to Set_Driver().

DETAILS

No additional details. See Set_Driver()

void QUnSet_Driver ( const char *  segment  ) 

Removes all settings established by a previous call Set_Driver(), but operates on a given segment rather than the currently open one.

Parameters:
segment - Name of the segment(s) to be changed.

DETAILS

No additional details. See Set_Driver()

Main Index
Brief Index      Full Index      I.M. Functions