/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
 *
 * The contents of this file are subject to the Mozilla Public
 * License Version 1.1 (the "License"); you may not use this file
 * except in compliance with the License. You may obtain a copy of
 * the License at http://www.mozilla.org/MPL/
 * 
 * Software distributed under the License is distributed on an "AS
 * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
 * implied. See the License for the specific language governing
 * rights and limitations under the License.
 * 
 * The Original Code is mozilla.org code.
 * 
 * The Initial Developer of the Original Code is Netscape
 * Communications Corporation. Portions created by Netscape are
 * Copyright (C) 2000 Netscape Communications Corporation. All
 * Rights Reserved.
 * 
 * Contributor(s): 
 *   Stuart Parmenter <pavlov@netscape.com>
 */

/**
 * gfx idl declarations to be used by all gfx interfaces.
 * @file gfxtypes.idl
 */

#include "nsrootidl.idl"

/*! @verbatim */
%{C++
#include "gfxcompat.h"
%}
/*! @endverbatim */

/**
 * gfx_dimension should be used for widths and heights
 * @var typedef float gfx_dimension
 */
typedef float               gfx_dimension;

/**
 * gfx_coord should be used for x and y coordinates
 * @var typedef float gfx_coord
 */
typedef float               gfx_coord;

/**
 * typedef that should be used for angles
 * @var typedef float gfx_angle
 */
typedef float               gfx_angle;

/**
 * A color is a 32 bit unsigned integer with
 * four components: R, G, B and A.
 *
 * @var typedef PRUint32 gfx_color
 */
typedef PRUint32            gfx_color;

/**
 * typedef that should be used for bit depths
 * @var typedef unsigned short gfx_depth
 */
typedef unsigned short      gfx_depth; // is short ok?

/**
 * typedef that should be used for image formats
 * @var typedef long gfx_format
 * @see gfxIGFXFormat
 */
typedef long                gfx_format;

/**
 * typedef that should be used for gamma levels
 * @var typedef float gfx_gamma
 */
typedef float               gfx_gamma;


