Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. /*
  2.  * Copyright © 2005 Keith Packard
  3.  *
  4.  * This library is free software; you can redistribute it and/or
  5.  * modify it either under the terms of the GNU Lesser General Public
  6.  * License version 2.1 as published by the Free Software Foundation
  7.  * (the "LGPL") or, at your option, under the terms of the Mozilla
  8.  * Public License Version 1.1 (the "MPL"). If you do not alter this
  9.  * notice, a recipient may use your version of this file under either
  10.  * the MPL or the LGPL.
  11.  *
  12.  * You should have received a copy of the LGPL along with this library
  13.  * in the file COPYING-LGPL-2.1; if not, write to the Free Software
  14.  * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA
  15.  * You should have received a copy of the MPL along with this library
  16.  * in the file COPYING-MPL-1.1
  17.  *
  18.  * The contents of this file are subject to the Mozilla Public License
  19.  * Version 1.1 (the "License"); you may not use this file except in
  20.  * compliance with the License. You may obtain a copy of the License at
  21.  * http://www.mozilla.org/MPL/
  22.  *
  23.  * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY
  24.  * OF ANY KIND, either express or implied. See the LGPL or the MPL for
  25.  * the specific language governing rights and limitations.
  26.  *
  27.  * The Original Code is the cairo graphics library.
  28.  *
  29.  * The Initial Developer of the Original Code is Keith Packard
  30.  *
  31.  * Contributor(s):
  32.  *      Keith Packard <keithp@keithp.com>
  33.  */
  34.  
  35. #ifndef CAIRO_ANALYSIS_SURFACE_H
  36. #define CAIRO_ANALYSIS_SURFACE_H
  37.  
  38. #include "cairoint.h"
  39.  
  40. cairo_private cairo_surface_t *
  41. _cairo_analysis_surface_create (cairo_surface_t         *target);
  42.  
  43. cairo_private void
  44. _cairo_analysis_surface_set_ctm (cairo_surface_t *surface,
  45.                                  const cairo_matrix_t  *ctm);
  46.  
  47. cairo_private void
  48. _cairo_analysis_surface_get_ctm (cairo_surface_t *surface,
  49.                                  cairo_matrix_t  *ctm);
  50.  
  51. cairo_private cairo_region_t *
  52. _cairo_analysis_surface_get_supported (cairo_surface_t *surface);
  53.  
  54. cairo_private cairo_region_t *
  55. _cairo_analysis_surface_get_unsupported (cairo_surface_t *surface);
  56.  
  57. cairo_private cairo_bool_t
  58. _cairo_analysis_surface_has_supported (cairo_surface_t *surface);
  59.  
  60. cairo_private cairo_bool_t
  61. _cairo_analysis_surface_has_unsupported (cairo_surface_t *surface);
  62.  
  63. cairo_private void
  64. _cairo_analysis_surface_get_bounding_box (cairo_surface_t *surface,
  65.                                           cairo_box_t     *bbox);
  66.  
  67. cairo_private cairo_int_status_t
  68. _cairo_analysis_surface_merge_status (cairo_int_status_t status_a,
  69.                                       cairo_int_status_t status_b);
  70.  
  71. cairo_private cairo_surface_t *
  72. _cairo_null_surface_create (cairo_content_t content);
  73.  
  74. #endif /* CAIRO_ANALYSIS_SURFACE_H */
  75.