sphore 0.0.1
SPH openGL rendering engine

src/sphore.h

Go to the documentation of this file.
00001 /********************************************************************
00002  * sphore - SPH Opengl Rendering Engine
00003  *
00004  * This file is (or was) part of sphore.
00005  * sphore comes with ABSOLUTELY NO WARRANTY.
00006  * This is free software; and you are welcome to redistribute
00007  * it under the terms of the GNU General Public License
00008  * (see LICENSE file for details) and the provision that
00009  * this notice remains intact. If you modify this file, please
00010  * note section 2a) of the GPLv2 states that:
00011  *
00012  *  a) You must cause the modified files to carry prominent notices
00013  *     stating that you changed the files and the date of any change.
00014  *
00015  * Copyright (C) 2011 James Wetter. All rights reserved.
00016  * Contact: wetter.j@gmail.com
00017  *
00018  ********************************************************************/
00028 #ifndef SPHORE_H
00029 #define SPHORE_H
00030 
00031 #define SRE_FLOAT_TINY 2.e-38
00032 
00036 typedef unsigned int SREdataID;
00037 
00041 typedef enum
00042 {
00046   SRE_FALSE = 0,
00050   SRE_TRUE
00051 } SREbool;
00052 
00056 typedef enum
00057 {
00061   SRE_DEVICE_INVALID,
00065   SRE_DEVICE_GLUT_WINDOW
00066 } SREdeviceType;
00067 
00078 SREbool SRE_open_device (SREdeviceType type);
00079 
00083 void SRE_close_device ();
00084 
00088 void SRE_start_warnings (void);
00089 
00093 void SRE_stop_warnings (void);
00094 
00098 void SRE_enter_main_loop (void);
00099 
00126 /*
00127 SREbool SRE_remove_data (SREdataID id);
00128 */
00129 
00137 /*
00138 SREbool SRE_use_data (SREdataID id);
00139 */
00140 
00147 void SRE_set_device_size (unsigned int width, unsigned int height);
00148 
00155 void SRE_get_device_size (unsigned int *width, unsigned int *height);
00156 
00162 SREbool SRE_device_open (void);
00163 
00174 void SRE_plot_points (unsigned int n, float *x, float *y, float *z);
00175 
00184 SREbool SRE_set_camera_position (float x, float y, float z);
00185 
00196 SREbool SRE_translate_camera (float x, float y, float z);
00197 
00206 SREbool SRE_set_colour (float red, float green, float blue);
00207 
00222 void
00223 SRE_render_column_int (unsigned int n, float *x, float *y, float *z, float *h,
00224                        float *weight, float *data, float data_min,
00225                        float data_max);
00226 
00236 SREbool SRE_set_viewing_volume (float width, float height, float depth);
00237 
00245 void SRE_get_viewing_volume (float *width, float *height, float *depth);
00246 
00256 void SRE_plot_line (int n, float *x, float *y, float *z);
00257 
00258 SREbool
00259 SRE_read_binary (char *name, int *nparticles, int *ncolumns, float ***data,
00260                  int **types);
00261 
00262 void
00263 SRE_set_colour_ramp (int n, float *controlPoints, float *red, float *green,
00264                      float *blue);
00265 #endif
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines