1
0
Fork 0
mutter-performance-source/cogl/cogl-spans.h
Robert Bragg 09642a83b5 Removes all remaining use of CoglHandle
Removing CoglHandle has been an on going goal for quite a long time now
and finally this patch removes the last remaining uses of the CoglHandle
type and the cogl_handle_ apis.

Since the big remaining users of CoglHandle were the cogl_program_ and
cogl_shader_ apis which have replaced with the CoglSnippets api this
patch removes both of these apis.

Reviewed-by: Neil Roberts <neil@linux.intel.com>

(cherry picked from commit 6ed3aaf4be21d605a1ed3176b3ea825933f85cf0)

  Since the original patch was done after removing deprecated API
  this back ported patch doesn't affect deprecated API and so
  actually this cherry-pick doesn't remove all remaining use of
  CoglHandle as it did for the master branch of Cogl.
2012-08-06 14:27:39 +01:00

74 lines
1.8 KiB
C

/*
* Cogl
*
* An object oriented GL/GLES Abstraction/Utility Layer
*
* Copyright (C) 2007,2008,2009 Intel Corporation.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*
*/
#ifndef __COGL_SPANS_PRIVATE_H
#define __COGL_SPANS_PRIVATE_H
#include "cogl-object-private.h"
#include "cogl-pipeline-layer-state.h"
typedef struct _CoglSpan
{
float start;
float size;
float waste;
} CoglSpan;
typedef struct _CoglSpanIter
{
int index;
const CoglSpan *spans;
int n_spans;
const CoglSpan *span;
float pos;
float next_pos;
float origin;
float cover_start;
float cover_end;
float intersect_start;
float intersect_end;
gboolean intersects;
gboolean flipped;
CoglPipelineWrapMode wrap_mode;
int mirror_direction;
} CoglSpanIter;
void
_cogl_span_iter_update (CoglSpanIter *iter);
void
_cogl_span_iter_begin (CoglSpanIter *iter,
const CoglSpan *spans,
int n_spans,
float normalize_factor,
float cover_start,
float cover_end,
CoglPipelineWrapMode wrap_mode);
void
_cogl_span_iter_next (CoglSpanIter *iter);
gboolean
_cogl_span_iter_end (CoglSpanIter *iter);
#endif /* __COGL_SPANS_PRIVATE_H */