#include <Astro/sky.hxx>
#include <Autopilot/autopilot.hxx>
#include <Cockpit/hud.hxx>
-#include <Debug/fg_debug.h>
+#include <Debug/logstream.hxx>
#include <GUI/gui.h>
#include <Include/fg_constants.h>
#include <Objects/material.hxx>
// Handle keyboard events
void GLUTkey(unsigned char k, int x, int y) {
- fgFLIGHT *f;
+ FGState *f;
fgTIME *t;
fgVIEW *v;
struct fgWEATHER *w;
float fov, tmp;
static bool winding_ccw = true;
- f = current_aircraft.flight;
+ f = current_aircraft.fdm_state;
t = &cur_time_params;
v = ¤t_view;
w = ¤t_weather;
- fgPrintf( FG_INPUT, FG_DEBUG, "Key hit = %d", k);
+ FG_LOG( FG_INPUT, FG_DEBUG, "Key hit = " << k );
puKeyboard(k, PU_DOWN );
if ( GLUT_ACTIVE_ALT && glutGetModifiers() ) {
- fgPrintf( FG_INPUT, FG_DEBUG, " SHIFTED\n");
+ FG_LOG( FG_INPUT, FG_DEBUG, " SHIFTED" );
switch (k) {
case 1: // Ctrl-A key
fgAPToggleAltitude();
return;
}
} else {
- fgPrintf( FG_INPUT, FG_DEBUG, "\n");
+ FG_LOG( FG_INPUT, FG_DEBUG, "" );
switch (k) {
case 50: // numeric keypad 2
controls.move_elevator(-0.05);
controls.set_rudder(0.0);
return;
case 57: // numeric keypad 9 (Pg Up)
- controls.move_throttle( fgCONTROLS::FG_ALL_ENGINES, 0.01 );
+ controls.move_throttle( FGControls::ALL_ENGINES, 0.01 );
return;
case 51: // numeric keypad 3 (Pg Dn)
- controls.move_throttle( fgCONTROLS::FG_ALL_ENGINES, -0.01 );
+ controls.move_throttle( FGControls::ALL_ENGINES, -0.01 );
return;
case 98: // b key
int b_ret;
double b_set;
b_ret = int( controls.get_brake( 0 ) );
b_set = double(!b_ret);
- controls.set_brake( fgCONTROLS::FG_ALL_WHEELS, b_set);
+ controls.set_brake( FGControls::ALL_WHEELS, b_set);
return;
case 104: // h key
HUD_brightkey( false );
case 112: // p key
t->pause = !t->pause;
// printf position and attitude information
- fgPrintf( FG_INPUT, FG_INFO,
- "Lon = %.4f Lat = %.4f Altitude = %.1f\n",
- FG_Longitude * RAD_TO_DEG,
- FG_Latitude * RAD_TO_DEG,
- FG_Altitude * FEET_TO_METER);
- fgPrintf( FG_INPUT, FG_INFO,
- "Heading = %.2f Roll = %.2f Pitch = %.2f\n",
- FG_Psi * RAD_TO_DEG,
- FG_Phi * RAD_TO_DEG,
- FG_Theta * RAD_TO_DEG);
+ FG_LOG( FG_INPUT, FG_INFO,
+ "Lon = " << f->get_Longitude() * RAD_TO_DEG
+ << " Lat = " << f->get_Latitude() * RAD_TO_DEG
+ << " Altitude = " << f->get_Altitude() * FEET_TO_METER );
+ FG_LOG( FG_INPUT, FG_INFO,
+ "Heading = " << f->get_Psi() * RAD_TO_DEG
+ << " Roll = " << f->get_Phi() * RAD_TO_DEG
+ << " Pitch = " << f->get_Theta() * RAD_TO_DEG );
return;
case 116: // t key
t->warp_delta += 30;
// if( fg_DebugOutput ) {
// fclose( fg_DebugOutput );
// }
- fgPrintf( FG_INPUT, FG_EXIT,
- "Program exiting normally at user request.\n");
+ FG_LOG( FG_INPUT, FG_ALERT,
+ "Program exiting normally at user request." );
+ exit(-1);
}
}
}
// Handle "special" keyboard events
void GLUTspecialkey(int k, int x, int y) {
- fgCONTROLS *c;
fgVIEW *v;
- c = current_aircraft.controls;
v = ¤t_view;
- fgPrintf( FG_INPUT, FG_DEBUG, "Special key hit = %d", k);
+ FG_LOG( FG_INPUT, FG_DEBUG, "Special key hit = " << k );
puKeyboard(k + PU_KEY_GLUT_SPECIAL_OFFSET, PU_DOWN);
if ( GLUT_ACTIVE_SHIFT && glutGetModifiers() ) {
- fgPrintf( FG_INPUT, FG_DEBUG, " SHIFTED\n");
+ FG_LOG( FG_INPUT, FG_DEBUG, " SHIFTED" );
switch (k) {
case GLUT_KEY_END: // numeric keypad 1
v->goal_view_offset = FG_PI * 0.75;
return;
}
} else {
- fgPrintf( FG_INPUT, FG_DEBUG, "\n");
+ FG_LOG( FG_INPUT, FG_DEBUG, "" );
switch (k) {
case GLUT_KEY_F8: // F8 toggles fog ... off fastest nicest...
current_options.cycle_fog();
if ( current_options.get_fog() == fgOPTIONS::FG_FOG_DISABLED ) {
- fgPrintf( FG_INPUT, FG_INFO, "Fog disabled\n" );
+ FG_LOG( FG_INPUT, FG_INFO, "Fog disabled" );
} else if ( current_options.get_fog() ==
fgOPTIONS::FG_FOG_FASTEST )
{
- fgPrintf( FG_INPUT, FG_INFO,
- "Fog enabled, hint set to fastest\n" );
+ FG_LOG( FG_INPUT, FG_INFO,
+ "Fog enabled, hint set to fastest" );
} else if ( current_options.get_fog() ==
fgOPTIONS::FG_FOG_NICEST )
{
- fgPrintf( FG_INPUT, FG_INFO,
- "Fog enabled, hint set to nicest\n" );
+ FG_LOG( FG_INPUT, FG_INFO,
+ "Fog enabled, hint set to nicest" );
}
return;
current_options.get_textures() ?
current_options.set_textures(false) :
current_options.set_textures(true);
- fgPrintf( FG_INPUT, FG_INFO, "Toggling texture\n" );
+ FG_LOG( FG_INPUT, FG_INFO, "Toggling texture" );
} else {
- fgPrintf( FG_INPUT, FG_INFO,
- "No textures loaded, cannot toggle\n" );
+ FG_LOG( FG_INPUT, FG_INFO,
+ "No textures loaded, cannot toggle" );
}
return;
case GLUT_KEY_F10: // F10 toggles menu on and off...
- fgPrintf(FG_INPUT, FG_INFO, "Invoking call back function");
+ FG_LOG(FG_INPUT, FG_INFO, "Invoking call back function");
hideMenuButton ->
setValue ((int) !(hideMenuButton -> getValue() ) );
hideMenuButton -> invokeCallback();
controls.set_rudder(0.0);
return;
case GLUT_KEY_PAGE_UP: // numeric keypad 9 (Pg Up)
- controls.move_throttle( fgCONTROLS::FG_ALL_ENGINES, 0.01 );
+ controls.move_throttle( FGControls::ALL_ENGINES, 0.01 );
return;
case GLUT_KEY_PAGE_DOWN: // numeric keypad 3 (Pg Dn)
- controls.move_throttle( fgCONTROLS::FG_ALL_ENGINES, -0.01 );
+ controls.move_throttle( FGControls::ALL_ENGINES, -0.01 );
return;
}
}
// $Log$
+// Revision 1.35 1998/12/05 16:13:17 curt
+// Renamed class fgCONTROLS to class FGControls.
+//
+// Revision 1.34 1998/12/05 15:54:17 curt
+// Renamed class fgFLIGHT to class FGState as per request by JSB.
+//
+// Revision 1.33 1998/12/03 01:17:12 curt
+// Converted fgFLIGHT to a class.
+//
+// Revision 1.32 1998/11/06 21:18:06 curt
+// Converted to new logstream debugging facility. This allows release
+// builds with no messages at all (and no performance impact) by using
+// the -DFG_NDEBUG flag.
+//
+// Revision 1.31 1998/11/02 18:25:37 curt
+// Check for __CYGWIN__ (b20) as well as __CYGWIN32__ (pre b20 compilers)
+// Other misc. tweaks.
+//
// Revision 1.30 1998/10/25 14:08:46 curt
// Turned "struct fgCONTROLS" into a class, with inlined accessor functions.
//