/*
 * gauche-sdl-gfx.h - Gauche SDL_gfx extension
 *
 *  Copyright(C) 2003 by Michael Vess (mvess@michaelvess.com)
 *
 *  Permission to use, copy, modify, distribute this software and
 *  accompanying documentation for any purpose is hereby granted,
 *  provided that existing copyright notices are retained in all
 *  copies and that this notice is included verbatim in all
 *  distributions.
 *  This software is provided as is, without express or implied
 *  warranty.  In no circumstances the author(s) shall be liable
 *  for any damages arising out of the use of this software.
 *
 *  $Id: gauche-sdl-gfx.h,v 1.1 2003/01/22 02:26:12 mikiso Exp $
 */

#ifndef GAUCHE_SDL_GFX_H
#define GAUCHE_SDL_GFX_H

#include "../gauche-sdl.h"

#include <SDL_framerate.h>
#include <SDL_gfxPrimitives.h>
#include <SDL_gfxPrimitives_font.h>
#include <SDL_rotozoom.h>

#define SDL_FPSmanager FPSmanager

/*****************************************************************************
 * Framerate
 */

/* FPSmanager */
typedef struct ScmSdlFPSmanagerRec {
    SCM_HEADER;
    SDL_FPSmanager fpsmanager;
} ScmSdlFPSmanager;

SCM_CLASS_DECL(Scm_SdlFPSmanagerClass);
#define SCM_CLASS_SDL_FPSMANAGER          (&Scm_SdlFPSmanagerClass)
#define SCM_SDL_FPSMANAGER(obj)           (&(((ScmSdlFPSmanager*)(obj))->fpsmanager))
#define SCM_SDL_FPSMANAGER_P(obj)         SCM_XTYPEP(obj, SCM_CLASS_SDL_FPSMANAGER)
#define SCM_SDL_FPSMANAGER_OR_NULL(obj)   (SCM_FALSEP(obj)?NULL:SCM_SDL_FPSMANAGER(obj))
#define SCM_SDL_FPSMANAGER_OR_NULL_P(obj) (SCM_FALSEP(obj)||SCM_SDL_FPSMANAGER_P(obj))


#endif /* GAUCHE_SDL_GFX_H */


syntax highlighted by Code2HTML, v. 0.9.1