| TerraLib 4.1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

E:/Projetos_Primeiro_Semestre_2012/TerraView/terralib/src/terralib/drivers/GL/glutf90.h
Go to the documentation of this file.

    00001 #ifndef __glutf90_h__
    00002 #define __glutf90_h__
    00003
    00004 /* Copyright (c) Mark J. Kilgard & Willam F. Mitchell, 1998. */
    00005
    00006 /* This program is freely distributable without licensing fees
    00007    and is provided without guarantee or warrantee expressed or
    00008    implied. This program is -not- in the public domain. */
    00009
    00010 /* This header provides the binding interface for William Mitchell's
    00011    f90gl Fortran 90 GLUT binding.  Other GLUT language bindings
    00012    can and should use this interace. */
    00013
    00014 /* I appreciate the guidance from William Mitchell
    00015    (mitchell@cam.nist.gov) in developing this friend interface
    00016    for use by the f90gl package.  See ../../README.fortran */
    00017
    00018 #include <GL/glut.h>
    00019
    00020 /* Which callback enumerants for the __glutSetFCB/__glutGetFCB routines. */
    00021 /* NOTE These values are part of a binary interface for the f90gl Fortran
    00022    90 binding and so must NOT changes (additions are allowed). */
    00023
    00024 /* GLUTwindow callbacks. */
    00025 #define GLUT_FCB_DISPLAY         0    /* GLUTdisplayFCB */
    00026 #define GLUT_FCB_RESHAPE         1    /* GLUTreshapeFCB */
    00027 #define GLUT_FCB_MOUSE           2    /* GLUTmouseFCB */
    00028 #define GLUT_FCB_MOTION          3    /* GLUTmotionFCB */
    00029 #define GLUT_FCB_PASSIVE         4    /* GLUTpassiveFCB */
    00030 #define GLUT_FCB_ENTRY           5    /* GLUTentryFCB */
    00031 #define GLUT_FCB_KEYBOARD        6    /* GLUTkeyboardFCB */
    00032 #define GLUT_FCB_KEYBOARD_UP     7    /* GLUTkeyboardFCB */
    00033 #define GLUT_FCB_WINDOW_STATUS   8    /* GLUTwindowStatusFCB */
    00034 #define GLUT_FCB_VISIBILITY      9    /* GLUTvisibilityFCB */
    00035 #define GLUT_FCB_SPECIAL         10   /* GLUTspecialFCB */
    00036 #define GLUT_FCB_SPECIAL_UP      11   /* GLUTspecialFCB */
    00037 #define GLUT_FCB_BUTTON_BOX      12   /* GLUTbuttonBoxFCB */
    00038 #define GLUT_FCB_DIALS           13   /* GLUTdialsFCB */
    00039 #define GLUT_FCB_SPACE_MOTION    14   /* GLUTspaceMotionFCB */
    00040 #define GLUT_FCB_SPACE_ROTATE    15   /* GLUTspaceRotateFCB */
    00041 #define GLUT_FCB_SPACE_BUTTON    16   /* GLUTspaceButtonFCB */
    00042 #define GLUT_FCB_TABLET_MOTION   17   /* GLUTtabletMotionFCB */
    00043 #define GLUT_FCB_TABLET_BUTTON   18   /* GLUTtabletButtonFCB */
    00044 #define GLUT_FCB_JOYSTICK        19   /* GLUTjoystickFCB */
    00045 /* Non-GLUTwindow callbacks. */
    00046 #define GLUT_FCB_OVERLAY_DISPLAY 100  /* GLUTdisplayFCB */
    00047 #define GLUT_FCB_SELECT          101  /* GLUTselectFCB */
    00048 #define GLUT_FCB_TIMER           102  /* GLUTtimerFCB */
    00049
    00050 /* GLUT Fortran callback function types. */
    00051 typedef void (GLUTCALLBACK *GLUTdisplayFCB) (void);
    00052 typedef void (GLUTCALLBACK *GLUTreshapeFCB) (int *, int *);
    00053 /* NOTE the pressed key is int, not unsigned char for Fortran! */
    00054 typedef void (GLUTCALLBACK *GLUTkeyboardFCB) (int *, int *, int *);
    00055 typedef void (GLUTCALLBACK *GLUTmouseFCB) (int *, int *, int *, int *);
    00056 typedef void (GLUTCALLBACK *GLUTmotionFCB) (int *, int *);
    00057 typedef void (GLUTCALLBACK *GLUTpassiveFCB) (int *, int *);
    00058 typedef void (GLUTCALLBACK *GLUTentryFCB) (int *);
    00059 typedef void (GLUTCALLBACK *GLUTwindowStatusFCB) (int *);
    00060 typedef void (GLUTCALLBACK *GLUTvisibilityFCB) (int *);
    00061 typedef void (GLUTCALLBACK *GLUTspecialFCB) (int *, int *, int *);
    00062 typedef void (GLUTCALLBACK *GLUTbuttonBoxFCB) (int *, int *);
    00063 typedef void (GLUTCALLBACK *GLUTdialsFCB) (int *, int *);
    00064 typedef void (GLUTCALLBACK *GLUTspaceMotionFCB) (int *, int *, int *);
    00065 typedef void (GLUTCALLBACK *GLUTspaceRotateFCB) (int *, int *, int *);
    00066 typedef void (GLUTCALLBACK *GLUTspaceButtonFCB) (int *, int *);
    00067 typedef void (GLUTCALLBACK *GLUTtabletMotionFCB) (int *, int *);
    00068 typedef void (GLUTCALLBACK *GLUTtabletButtonFCB) (int *, int *, int *, int *);
    00069 typedef void (GLUTCALLBACK *GLUTjoystickFCB) (unsigned int *buttonMask, int *x, int *y, int *z);
    00070
    00071 typedef void (GLUTCALLBACK *GLUTselectFCB) (int *);
    00072 typedef void (GLUTCALLBACK *GLUTtimerFCB) (int *);
    00073 typedef void (GLUTCALLBACK *GLUTmenuStateFCB) (int *);  /* DEPRICATED. */
    00074 typedef void (GLUTCALLBACK *GLUTmenuStatusFCB) (int *, int *, int *);
    00075 typedef void (GLUTCALLBACK *GLUTidleFCB) (void);
    00076
    00077 /* Functions that set and return Fortran callback functions. */
    00078 GLUTAPI void* APIENTRY __glutGetFCB(int which);
    00079 GLUTAPI void APIENTRY __glutSetFCB(int which, void *func);
    00080
    00081 #endif  /* __glutf90_h__ */

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines