/* * types.h * * Data types * * (c) 2008 Thomas White * * This file is part of OpenMooCow - accelerometer moobox simulator * * OpenMooCow is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * OpenMooCow is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with OpenMooCow. If not, see . * */ #ifndef TYPES_H #define TYPES_H #include #include #include #include typedef struct { FILE *fh1; FILE *fh2; int ax; int ay; int az; int bx; int by; int bz; int lval; /* The "mooing" contribution */ int lax; int lay; int laz; int lbx; int lby; int lbz; } AccelHandle; typedef struct { long moo_len; long moo_pos; Sint16 *moo_buf; int aplay_fallback; } AudioContext; typedef struct { int pos; /* Slider position, 0=bottom, 1000=top */ int moo; } PhysicsContext; typedef struct { GtkWidget *window; GtkWidget *notebook; GtkWidget *acceldata; GtkWidget *cow; GtkWidget *ax; GtkWidget *ay; GtkWidget *az; GtkWidget *bx; GtkWidget *by; GtkWidget *bz; GtkWidget *moo; AccelHandle *accel; guint accel_timeout; AudioContext *audio; PhysicsContext *physics; } MainWindow; #endif /* TYPES_H */